基于UML的项目客户关系管理系统面向对象设计

2024-09-12

基于UML的项目客户关系管理系统面向对象设计(共4篇)

1.基于UML的项目客户关系管理系统面向对象设计 篇一

基于面向对象的卫星模拟器设计方法

卫星系统的复杂性是卫星模拟器研制的难点.针对面向功能方法的.不足,提出了面向时象的卫星模拟器设计方法,并使用OMT技术进行了卫星模拟器建模示例.

作 者:吴振宇 熊晓将 宋秋静 WU Zhen-yu XIONG Xiao-jiang SONG Qiu-jing  作者单位:中国空间技术研究院・北京・100094 刊 名:飞行器测控学报  ISTIC英文刊名:JOURNAL OF SPACECRAFT TT & C TECHNOLOGY 年,卷(期):2008 27(2) 分类号:V411.8 关键词:面向对象   卫星   模拟器  

 

2.基于UML的项目客户关系管理系统面向对象设计 篇二

面向对象方法(Object-Oriented Method)是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO(Object-Oriented)方法。面向对象方法不仅是一种软件工程的开发技术,而且是一种对客观事物进行分析与处理的思想方法。

1 统一建模语言

1.1 UML的定义统一建模语言UML(Unified

Modeing Language)是一种建模语言,是第三代用来为面向对象开发系统的产品进行说明、可视化和编制文档的方法,它用若干个视图构造系统的模型,每个视图描述系统的一个方面。UML吸取了面向对象技术领域中其他流派的长处,它适用于各种规模的系统开发,使用UML进行系统分析和设计,可以加速开发进程,提高代码编写质量,并能促进软件复用,方便集成已有的系统。

1.2 UML的图形统一建模语言UML的图形可以划分为5类。

(1)用例图(Use Case Diagram)。用例是对系统提供的功能的描述。用例图从用户角度描述系统功能,指出各功能的操作者,用例图定义了系统的功能需求。(2)静态图(Static diagram)。静态图包括类图、对象图和包图。类图描述系统中类的静态结构,不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,而且包括类的内部结构。对象图是类图的实例,使用与类图基本相同的标识,与类图不同之处在于对象图显示类的多个对象实例,而不是实际的类。包由包或类组成,包图表示包与包之间的关系,用于描述系统的分层结构。(3)行为图(Behavior diagram)。行为图包括状态图、活动图、交互图(顺序图、协作图)。状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件,是对类图的补充;活动图描述满足用例要求所要进行的活动以及活动间的约束关系,它是一种特殊的状态图,强调对象间的控制流程;顺序图展现了一组对象和由这组对象收发的消息,用于按时间顺序对控制流建模。(4)交互图(Interactive diagram)。交互图包括顺序图和合作图,描述对象间的交互关系。顺序图显示对象之间的动态合作关系,强调对象之间消息发送的顺序;协作图与顺序图相似,除描述对象间的协作关系,强调对象之间的关系。(5)实现图(Implementation diagram)。实现图包括构件图和配置图。构件图描述代码部件的物理结构及各部件之间的依赖关系;配置图定义系统中软硬件的物理体系结构,它可以显示实际的计算机和设备以及它们之间的连接关系,也可显示连接的类型及部件之间的依赖性。

1.3 UML在面向对象信息系统开发中的建模过程

图1是UML建模过程的一个高层视图,这是一个迭代递增的开发过程,每次迭代都包含软件生存周期的所有阶段,采用这种开发方法不是在项目结束后一次性提交软件,而是分块逐次开发和提交,每次迭代都可以分为以下5个阶段:第1阶段,需求分析。需求分析是捕获用户要求,包括功能性需求和非功能性需求。第2阶段,系统分析。系统分析是对用例图的进一步扩展,是从逻辑概念角度表达系统的结构和功能。第3阶段,系统设计。系统设计是在系统分析的基础上将分析模型中概念性的模型转化为与具体语言挂钩的设计模型。第4阶段,系统实施。将设计模型转换为系统的源代码,是信息系统最终产品的最重要部分之一,这部分工作重点在系统编程工作。第5阶段,系统测试。在系统构建后,对系统的功能和结构进行确认,使用多种测试方法和手段来保证系统的正确性。

2 基于Web的教务管理信息系统开发实例

以基于Web的教务管理信息系统开发为例,说明UML在面向对象信息系统开发中的应用,重点对前3部分内容进行说明。

2.1 需求分析

基于Web的教务管理信息系统开发要根据高职院校实际情况,充分考虑教务管理工作业务流程、业务项目和业务规范,基于校园网络、为教学管理提供科学、规范、高效、准确、便捷的高职院校教务管理平台。通过系统调研可知,系统面向的用户有4类:系统管理员、教务管理员、教师、学生;系统主要实现的功能有5项:系统管理、学籍管理、教学管理、考务管理、师资管理,系统用例图

2.2 系统分析

系统分析是对在需求分析的基础上,提取系统的类,用包类、类图、顺序图等描述它们合作的概况。

2.2.1 包图。

基于Web的教务管理信息系统划分为人员、事务和接口3个包,分别控制不同的应用。系统分析包图如图3所示。

2.2.2 类图。

统一建模语言UML用类图描述系统中的静态结构,根据系统划分的3类包图,分别绘制人员、接口和事物包中的类图,以人员包为例,类图如图4所示。

2.2.3 顺序图。

顺序图用于描述对象间的动态关系,着重体现对象间消息传递的时间顺序,以课程管理为例,顺序图如图5所示。

2.3 系统设计

系统设计是通过考虑现实环境,将分析阶段的模型扩展和转化为可行的技术实现方案。

2.3.1 活动图。

活动图既可用于描述操作(类的方法)的行为,也可用于描述用例和对象内部的工作过程,用活动图建模后可以清楚地了解进程的操作过程,以教务员课程管理为例,活动图如图6所示。

2.3.2 协作图。

协作图用于描述系统中相互协作对象间的交互关系和关联链接关系,与顺序图不同之处在于,顺序图侧重于表示交互的时间顺序,而协作图侧重于表示交互对象的静态链接关系,以教务员排课课程管理为例,协作图如图7所示。

2.4 系统实施和系统测试

2.4.1 系统实施。

系统实施是信息系统开发的一个重要阶段,其目的是把系统分析和系统设计成果转化为可实际运行的系统,主要任务就是根据构造模型进行编码,并对已构造的模型进行修正。

2.4.2 系统测试。

系统测试是信息系统开发的最后一个阶段,其目的是保证新系统运行的正确性和有效性。

3 结束语

综上,在面向对象信息系统开发中,以UML为工具为系统进行建模,可以针对系统开发不同阶段的具体任务,建立不同的模型。

摘要:对UML的定义进行了描述,对UML的图形进行了分类说明,提出UML在面向对象信息系统开发中的建模过程,结合基于Web的教务管理信息系统实例,说明了UML在面向对象信息系统开发中的应用。

关键词:UML,面向对象,图,信息系统

参考文献

[1]邵维忠,杨芙清.面向对象的系统设计[M].北京:清华大学出版社,2003.

[2]张京,李飞跃等.面向对象软件工程UML[M].北京:人民邮电出版社,2008年9月.

3.基于UML的项目客户关系管理系统面向对象设计 篇三

[quote:3348e888c8]第十章 对话框对象

对话框是一种界面元素,它的生成属性由用户自己根据业务需要定制的,用户可以设置它的位置、大小、标题以及各种控件的组合,

对话框大凡都用作为子窗口,以执行一项与输入或选择有关的专门任务。例如,可以用一个子对话框来接受构置打印机的参数设置。ObjectUNIXClass Library提供了三个Dialog类的派生类:TInputDialog、TFileDialog、TPrintFialog。TInputDialog从用户输入接受一个文本行,TFileDialog索取一个文件名,TPrintDialog设置打印参数。

10.1 使用对话框对象

一般对话框在应用程序主窗口生成时,就已经生成了对话框对象,用户可以在需要时随时显示它,只到用户删除该对话框对象。在对话框对象显示时,用户没有必要设置变量去保存被对话框覆盖的主窗口区域,因为Object UNIX Class Library以及替您完成了这些操作。退出显示对话框后,系统自动为您恢复到对话框显示之前的状态。每次在对话框显示时,TDialog基类函数会保存被覆盖的区域屏幕内存数据,而在退出显示时,释放它。

10.2 构造和初始化对话框对象

TDialog的构造函数需要七个参数:对话框标题、相对于主窗口的列行坐标、对话框大小以及前景和背景颜色。

为了接受实际的派生类传递参数,需要重载了它的构造函数:

AboutDialog=new AboutDialog(”Sample Dialog“,17,6,46,13,

BLACK_CYAN,CYAN_CYAN);

下面以显示版本信息为例,构造一个新的对话框对象:

TAboutDialog::TAboutDialog(char *caption,int left,int top,

int width,int height,int ftcolor,int bkcolor)

:TDialog(caption,left,top,width,height,ftcolor,bkcolor)

{

Caption=caption;

Left=left;

Top=top;

Width=width;

Height=height;

BKColor=bkcolor;

FTColor=ftcolor;

InitDialog;//调用对话框初始化函数,设置界面控件对象

}

void TAbout::InitDialog(void)

{

TDialog::InsertControl((TControl *)new TLabel(”Object UNIX

Class(SCO UNIX版)“,5,2,FTColor));

TDialog::InsertControl((TControl *)new TLabel(”All Rights Reserved“,

14,4,FTColor));

TDialog::InsertControl((TControl *)new TLabel(”Version

1.0“,17,6,FTColor));

TDialog::InsertControl((TControl *)new TLabel(”C++类库例子程序“,

11,8,FTColor));

TDialog::InsertControl((TControl *)new TLine(M_HORZ,0,10,Width,10,

FTColor));

TDialog::InsertControl((TControl *)new TButton(EXIT_BUTTON,”退出“,

19,11,BLACK_CYAN,WHITE_MAGENTA));

}

10.3 生成和执行对话框

当TDialog被执行或生成时,将要建立子对话框对象和界面元素的联系,

对话框的执行依赖于用户的输入;当取得输入和关闭对话框之时,执行过程方告停止。例如,当关闭一个文本编辑窗口时,将要执行一个对话框来确定是否保存编辑内容。

事实上,在对话框执行期间,其父窗口是不起作用的。它不能响应用户输入。另外,Object UNIX Class Library提供的对话狂对象自动支持数据传输机制,也就是说,当用户在对话框上进行某些操作如输入和选择后退出显示对话框时,当用户再次启动对话框时,原来的数据还保留着。

如果用户不想保留数据传输机制,需要每次都是显示初始化状态的对话框时,需要用户重载对话框类成员函数ExecDialog。

10.4 关闭对话框

通过调用对话框的Close成员函数可以关闭对话框。Object UNIX Class Library定义,所有关闭对话框的行为只能通过按下按钮控件操作来进行,并且定义,只有OK_BUTTON和EXIT_BUTTON这两类才能关闭对话框,所以,用户在设计对话框时,一定要有一个按钮控件,并且按钮控件的标识有一个必须为OK_BUTTON或EXIT_BUTTON。

10.5 控件管理和事件消息处理

控件是由父对话框来建立和管理的,但它提供较少的管理。所以,对于控件间的控制与管理,需要用户根据需要自己管理。Object UNIX Class提供了必要的接口。

对话框对象和它的控件元素之间能够进行双向通信。一方面,对话框需要管理和查询它的控制,例如,对话框可能要填充一个列表或者从一个编辑控件中索取文本;另一方面,当对话框可能需要知道的事件时,对话框控件需要通知对话框。例如,当按钮控件被触发时,它要通知它的父对话框。

通过把控件同其它控件对象相关联,可以简化对话框对象和其控件之间的通信,因此,您需要为每个有键盘事件的控件或者需要知道它属性值的控件定义一个类数据控件成员,这样,您就可以直接引用该控件并取得该控件的全部信息。

为了响应对话框以及控件事件,需要重载类成员虚函数PressEnterEvent。该函数提供用户处理控件按键时间的接口。详细的控件时间响应请参阅前几章的说明。

10.5.1 定义消息响应函数

您可以在自己派生的对话框中定义相对应的事件响应函数,以对应当某控件按下回车键时产生事件而去执行该时间响应函数。系统将自动地在当某控件得到焦点时,如果按下回车时,自动执行您已经预先定义的函数。

在派生对话框类定义中可以定义如下:

void PressExitButtonEvent(void);

在对话框成员函数定义中,可以如下定义:

void TAboutDialog:ressExitButtonEvent(void)

{

}

10.5.2 执行消息响应函数

为使消息响应函数赋予某指定控件,需要把定义好的消息响应函数传递给指定的控件。您可以在控件实例化时,传递该消息响应函数。

下面以按钮控件为例:

void TAboutDialog::InitDialog(void)

{

TDialog::InsertControl((TControl *)new TButton(EXIT_BUTTON,”退出“,

19,11,BLACK_CYAN,WHITE_MAGENTA,

(KEYEVENTFUNCTION)PressExitButtonEvent));

…}

上例表示在对话框初始化时,把PressExitButtonEvent消息响应函数赋给退出按钮控件,这样,当您按下退出按钮时,将自动执行PressExitButtonEvent函数。

[/quote:3348e888c8]

4.基于面向对象的光缆设计系统 篇四

目前,大部分企业采用Excel软件对光缆进行设计和计算,但光缆的结构复杂多变,计算较为繁琐和容易出错,一旦有些材料价格发生变化,则需要重新调整计算。在很多项目投标报价中,客户要求对每种结构从2~144芯进行报价,并提供各结构图,因此计算量相当大,需要花费长时间进行重复的工作。为此,我们基于面向对象对光缆设计系统进行了开发。

经过仔细分析和研究,我们发现光缆的结构虽然复杂多变,但光缆材料就那么十几个大类,结构形状的组成也就只有圆柱形和圆管形,而且排列有序。基于以上分析,结合面向对象程序设计方法(封装、继承、多态等),我们在计算机内构造了复杂的光缆对象,将零散的光缆设计参数、结构图和成本数据等对象进行了整合,形成关联,最终将光缆的二维结构图(截面图)、三维结构图、技术参数、制造成本、结构净重输出到Word和Excel面向客户。

2设计实例

现以GYTA型光缆为例介绍基于面向对象的光缆设计系统的设计。首先将光缆各单元模块(包括中心加强单元、层绞套管组合、中心束管套管、带状束管套管、层绞带状套管组合、阻水带、玻纤纱、阻水缆膏、铝带、钢带、撕裂绳、芳纶纱、钢丝铠装、平行钢丝护套、塑料护套、8字护套、色条等)进行对象化。各单元模块相互之间再根据直径进行关联(如图1所示),例如由中心加强件直径和套管直径可算出缆芯直径,由缆芯直径可算出铝带纵包直径,由铝带直径可算出护套直径(具体的计算公式可参见表1),各级直径具有承上启下的作用,这样就可以对光缆进行灵活多变的组合。根据客户要求,只需将各单元模块调出进行组合,不必再对各级之间的关系进行衔接,例如套管组合之后可以是芳纶,可以是内护层,可以是复合带铠装,当然也可以是阻水带或无纺布层,甚至还可以再加几层套管组合,从而形成多层绞合的大芯数光缆。

注:1)表中 N 为束管内光纤数,Rf为光纤直径,D 为套管直径,n为缆芯绞合数,p 为绞合节距,B 为套管壁厚,更多计算公式可参见文献[1]和[2]。

基于面向对象的光缆设计系统的软件设计,通常采用的设计语言是C#[3],但C# 与Direct3DX有兼容性和性能问题,因此我们建议设计语言采用C++ 或Java。设计平 台采用MicrosoftVisualStudio2010,若使用Java,建议设计 平台采用Eclipse。数据库可采用MicrosoftSQLServer2008或MYSQL,实现数据保存,权限管理。光缆二维截面图形采用GDI+ 绘制,三维图形采用Direct3DX模拟。采用NPOI导出数据到Word或Excel进行数据输出,其他相关软件还有WPF、DEV。基于面向对象的光缆设计系统的软件设计分为对象、核心运算和输出三大部分,整个系统的设计流程如图2所示。首先是根据输入的各项参数通过单元模块设计转化成 光缆的各 结构对象,将所有对 象放在ArrayList中(如图3所示);其次是核心运算部分,主要是对各对象组成的ArrayList进行分析计算;最后是数据输出部分,包括结构图输出、参数输出、成本输出等,如图4所示。

参考文献

[1]陈炳炎.光纤光缆的设计和制造[M].2版.杭州:浙江大学出版社,2011.

[2]邹林森.光纤与光缆[M].武汉:武汉工业大学出版社,2000.

上一篇:小学三年级数学培优辅差工作总结下一篇:收据使用方法