UML系统分析和设计
- 格式:doc
- 大小:189.50 KB
- 文档页数:24
UML系统建模基础教程课后答案第一章面向对象设计与UML1.填空题(1)UML(2)封装继承多态(3)继承(4)瀑布模型喷泉模型基于组件的开发模型XP开发模型2.选择题(1) C(2) A B C D(3) A B C D(4) A B C(5) A3.简答题1.试述对象和类的关系。
(1)类是具有相同或相似结构、操作和约束规则的对象组成的集合,而对彖是某一类的具体化实例,每一个类都是具有某些共同特征的对象的抽象。
类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类対象的抽象就是类.类描述了一组有相同特性和相同行为的对象。
第二章UML通用知识点综述1.填空题(1)依赖泛化关联实现(2)视图图模型元素(3)实现视图部署视图(4)构造型标记值约束(5)规格说明修饰通用划分2.选择题(1) D(2) C(3) A(4) A B(5) D3.简答题(1)在UML中面向对象的事物有哪几种?在UML中,定义了四种基本的面向对象的事物,分别是结构事物、行为事物、分组事物和注释事物等。
(2)请说出构件的种类。
构件种类有:源代码构件、二进制构件和可执行构件。
(3)请说出试图有哪些种类。
在UML中主要包括的视图为静态视图、用例视图、交互视图、实现视图、状态机视图、活动视图、部署视图和模型管理视图。
(4)请说出视图和图的关系。
视图和图是包含和被包含的关系。
在每一种视图中都包含一种或多种图。
(5)请简述UML的通用机制。
UML提供了一些通用的公共机制,使用这些通用的公共机制(通用机制)能够使UML在各种图中添加适当的描述信息,从而完善UML的语义表达。
逋常,使用模型元素的基本功能不能够完善的表达所要描述的实际信息,这些通用机制可以有效地帮助表达,帮助我们进行有效的UML 建模。
UML提供的这些通用机制,贯穿于整个建模过程的方方面面。
前面我们提到,UML的通用机制包括规格说明、修饰和通用划分三个方面。
第三章Rational统一过程1.填空题(1)角色活动产物工作流(2)逻辑视图过程视图物理视图开发视图用例视图(3)设计开发验证(4)二维(5)周期迭代过程里程碑2.选择题(1) A B C D(2) A C D(3) A C D(4) A B C(5) A B C D3.简答题(1)请描述迭代过程有几个阶段。
UML在系统分析与设计中的作用随着信息技术的发展和应用广泛,系统分析与设计成为了软件开发过程中不可或缺的一环。
而UML(统一建模语言)作为一种标准化的建模语言,被广泛应用于系统分析与设计中。
本文将探讨UML在系统分析与设计中的作用。
首先,UML提供了一种统一的语言和视图,使得系统分析与设计的过程变得更加可视化和易于理解。
通过使用UML,分析师和设计师可以使用统一的符号和图形来描述系统的各个方面,包括需求、功能、结构、行为等等。
这种统一的语言和视图可以帮助团队成员之间更好地沟通和协作,减少了因为不同人对系统理解的差异而导致的沟通障碍。
其次,UML提供了丰富的建模工具和技术,可以支持系统分析与设计的各个阶段。
例如,用例图可以帮助分析师识别系统的功能需求和用户需求,类图可以帮助设计师描述系统的静态结构,时序图和活动图可以帮助设计师描述系统的动态行为等等。
这些建模工具和技术提供了一种结构化的方法来分析和设计系统,使得开发团队能够更加系统地思考和解决问题。
此外,UML还提供了一种可扩展的建模框架,可以根据具体的需求和问题进行定制和扩展。
UML的核心语言是一种通用的建模语言,但是它也允许用户定义自己的建模元素和规则。
这种可扩展性使得UML能够适应不同领域和行业的需求,例如软件开发、系统集成、业务流程建模等等。
通过定制和扩展UML,分析师和设计师可以更好地应对特定领域和行业的挑战。
最后,UML还提供了一种规范化的文档和交流方式,可以帮助团队成员更好地记录和传递系统分析与设计的结果。
在系统分析与设计的过程中,团队成员需要产生大量的文档和图形来描述系统的各个方面。
使用UML,可以统一这些文档和图形的格式和结构,使得团队成员能够更加方便地阅读和理解这些文档和图形。
同时,UML还提供了一种标准化的交流方式,使得团队成员之间能够更加清晰地传递和分享信息。
综上所述,UML在系统分析与设计中发挥着重要的作用。
它提供了一种统一的语言和视图,使得系统分析与设计的过程变得更加可视化和易于理解。
基于UML的面向对象的系统分析与设计基于UML的面向对象的系统分析与设计引言:在当今信息社会中,随着科技的不断进步和应用的不断扩展,各行各业都离不开计算机系统的支持。
为了满足用户的需求,开发出高质量、高效率的系统就显得尤为重要。
而面向对象的系统分析与设计作为一个重要的环节,可以帮助我们更好地理解用户需求并将其转化为实现系统的蓝图。
本文将介绍基于UML的面向对象的系统分析与设计方法,并通过一个实例来演示其应用过程。
一、基于UML的系统分析与设计基础1.1 面向对象的概念面向对象是一种思想方式和编程方法,它将问题领域的实体抽象为类,通过类的组织和交互来描述系统的行为。
面向对象的设计方法使得系统更易于理解、维护和扩展。
1.2 UML的介绍UML(Unified Modeling Language)是一种用于面向对象系统建模的标准化语言,它提供了丰富的符号和图形表示方法,可以帮助分析和设计人员更好地表达复杂的系统结构和行为。
二、基于UML的系统分析与设计方法2.1 需求分析系统的需求分析是整个分析与设计过程的起始点,通过与用户的交流和讨论,了解用户的需求并进行准确定义。
在这一阶段,分析人员可以运用UML中的用例图、活动图等工具来分析和描述用户需求。
2.2 类建模在需求分析阶段的基础上,分析人员将用户需求转化为类模型。
通过识别和分析系统中的实体、属性和行为,可以确定类的结构和关系。
在这一阶段,可以运用UML中的类图来进行类的建模。
2.3 行为建模在类建模完成后,需要进一步分析和设计系统的行为。
行为建模通常包括状态图、顺序图和活动图等。
通过这些图形化表示,可以描述系统中各个类之间的交互和信息流动,保证系统的正确性和健壮性。
2.4 设计模式的应用设计模式是一种被广泛应用的解决问题的模板,它提供了一些经验性的指导原则和设计思路。
在系统分析与设计过程中,分析人员可以借鉴各种设计模式,通过复用已有的解决方案来提高系统的可靠性和效率。
基于UML的图书管理系统的分析与设计的开题报告一、选题背景随着社会的不断发展,图书管理系统在现代化管理社会中扮演着越来越重要的角色。
传统的图书管理方式已经无法满足现代社会的需求。
因此,借助计算机技术对图书管理系统进行改进和优化成为发展趋势之一。
本项目基于UML,设计和分析一个图书管理系统,主要是为了提高图书馆的管理效率,提高用户的使用体验,简化借还书的流程和方便图书馆管理人员管理书籍,提供了更加完善的图书馆服务。
二、研究目的和意义本课题旨在通过分析和设计,打造一个高效、实用、具有扩展性的图书管理系统,实现信息化管理的目的,主要具体研究内容如下:1.分析现有图书管理系统的优缺点,确定系统需求。
2.设计系统的框架结构和组成部分,构建系统用例和分析设计模型图。
3.使用UML对系统进行建模,包括用例建模、活动图建模、类图建模和时序图建模。
4.实现前后端的技术选型和开发工作。
本项目的意义在于提供了一个高校图书馆图书管理系统的解决方案,优化了传统的图书管理方式,提高了图书馆的管理效率和用户体验。
同时,本项目具有可扩展性,可根据用户需求进行定制开发,为图书馆提供更加个性化的服务。
三、研究内容和技术路线本课题主要分为以下几个部分:1.需求分析部分。
分析图书管理系统的需求,包括功能需求和非功能需求。
2.系统设计部分。
确定系统的框架结构和组成部分,构建系统用例和分析设计模型图。
3.系统建模部分。
使用UML对系统进行建模,包括用例建模、活动图建模、类图建模和时序图建模。
4.系统实现部分。
实现前后端的技术选型和开发工作,包括数据库设计和开发、界面设计和开发、系统模块设计和开发等。
技术路线如下:1.前端技术选择HTML5、CSS3、JavaScript等实现页面的开发。
2.后端技术主要使用PHP语言来实现,结合Sql Server 2005数据库进行数据交互。
3.系统设计采用UML图进行建模和分析,包括用例图、活动图、类图和时序图。
图书管理系统的分析与设计(样例)内容:1、需求分析(1)域描述(2)功能性需求——用例图(3)用例的事件流描述——用例文档2、静态模型(1)系统包图(2)类图3、动态模型(1)交互图——顺序图、协作图(2)状态机图(3)活动图4、物理模型(1)组件图(2)部署图1.某图书借阅管理系统需求说明如下:(1)管理员应建立图书书目,以提供图书检索之便利。
一条书目可有多本同ISBN号的图书,每一本图书只能对应于一个书目。
(2)图书可被读者借阅。
读者在办理图书借阅时,管理员应记录借书日期,并记录约定还书日期,以督促读者按时归还。
一个读者可借阅多本图书,一本图书每次只能被一个读者借阅。
(3)图书将由管理员办理入出库。
图书入出库时,应记录图书状态变更,如:存库、外借,并记录变更日期。
一个管理员可办理多本图书入出库,但一本图书的某次入出库办理,必须有确定的管理员经手。
试以上述说明为依据,对该问题做用例建模、活动建模、类分析建模。
✧需求分析图书馆图书管理系统的域描述如下:在图书管理系统中,要为每个借阅者建立一个账户,并给借阅者发放借阅卡(借阅卡可以提供借阅卡号、借阅者名),账户中存储借阅者的个人信息、借阅信息以及预订信息。
持有借阅卡的借阅者可以借阅书刊、返还书刊、查询书刊信息、预订书刊并取消预订,但这些操作都是通过图书管理员进行的,也即借阅者不直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。
在借阅书刊时,需要输入所借阅的书刊名、书刊的ISBN/ISSN号,然后输入借阅者的图书卡号和借阅者名,完成后提交所填表格,系统验证借阅者是否有效(在系统中存在账户),若有效,借阅请求被接受,系统查询数据库系统,看借阅者所借阅的书刊是否存在,若存在,则借阅者可借出书刊,建立并在系统中存储借阅记录。
借阅者还书后,删除关于所还书刊的借阅记录。
如果借阅者所借的书刊已被借出,借阅者还可预订该书刊,一旦借阅者预订的书刊可以获得,就将书刊直接寄给预订人(为了简化系统,预订书刊可获得时就不通知借阅者了)。
医院挂号管理系统系统分析与设计(UML)
医院挂号管理系统是一种信息化管理系统,主要用于医院的病人挂号、预约、诊断等工作。
该系统包含了医院前台的管理功能、医生诊断功能、药品管理功能、收费功能等。
系统结构
该系统主要包含三个模块:前台管理模块、医生诊断模块、药品管理模块。
以下是该系统的各个模块的UML类图。
前台管理模块
该模块主要负责病人挂号、预约、收费等工作。
以下是该模块的类图:
- 挂号员类:负责病人挂号、预约等工作。
- 病人类:病人信息,包含姓名、年龄、电话等。
- 挂号记录类:挂号及预约记录,包含病人信息、挂号时间、预约时间等。
医生诊断模块
- 药品管理员类:负责药品的管理工作,包括添加、删除、修改药品等。
- 药品类:药品信息,包括名称、价格、功效等。
系统流程
以下是该系统的流程图:
1. 病人挂号:病人持有身份证或其他有效证件,到医院前台,填写基本信息,完成挂号或预约。
2. 医生诊断:医生根据病人的病情进行诊断,开具治疗方案。
3. 开药:医生开具处方后,药品管理员在药品管理模块中根据处方添加相应的药品。
4. 收费:病人到前台缴纳相应的费用,完成诊疗流程。
总结
该系统采用UML建模开发流程,可以方便开发人员进行设计、开发和测试。
通过该系统,医院可以更加高效、便捷地管理病人信息和药品信息,提供更好的服务。
UML系统分析与设计课程整体设计方案摘要:本文介绍了职业教育课程工作过程系统化的开发与设计,以工作过程分析为起点,选用适于教学的典型工作任务为载体整合教学内容,在课程教学过程中凸现以学生为主体、以职业能力的培养为主线、“教学做一体化”的特点。
我院软件技术专业“UML系统分析与设计”课程设计把握上述原则,对实现人才培养目标、提高学生的职业关键能力起到了强有力的支撑作用。
关键词:工作过程系统化;软件模型建立;课程开发与设计1工作过程系统化的课程开发职业教育课程的开发是工作过程导向的,依据并围绕职业活动中“为完成一件工作任务并获得工作成果而进行的一个完整的工作程序(工作过程)”选择课程内容,并以之为参照系对知识内容实施序化,着眼于蕴含在行动体系中的隐性实践知识的生成与构建,筑造课程内容结构[1-2]。
工作过程系统化的课程开发,以工作过程分析为起点,选用适于教学的典型工作任务为载体整合教学内容,在课程教学过程中凸现以学生为主体、以职业能力的培养为主线、“教学做一体化”的特点。
工作过程系统化的课程开发模式将职业活动中的各个元素渗透到教学的整个过程,实现学习者从经验层面向策略层面的能力发展,培养企业真正需要的人才;与此同时,工作过程系统化的课程开发也关注如何在满足社会需求的同时实现人的个性需求、如何在就业导向的职业教育大目标下人保持个人的可持续发展[3]。
2软件技术专业整体课程设计软件技术专业以培养具有良好职业道德素养,具有一定的专业理论知识,具有较强的实践动手能力,具备可持续发展能力,适应软件开发、测试、维护、应用、推广、支持及服务等岗位需要的德、智、体全面发展的高级技术应用型人才为目标。
对软件技术专业进行职业专门化方向研究后,认定软件技术专业人才面向的岗位及岗位群有项目经理、数据库开发工程师、程序设计工程师、系统测试工程师、系统维护与售后工程师等。
软件技术专业的就业岗位主要包括:1)软件设计员、软件项目经理、软件项目组长、程序员、编码员:程序模块设计、代码编写、软件文档制作等相关技术岗位;2)测试员:与软件测试、质量保证等工作相关的技术岗位;3)软件技术支持、推广、维护等人员:与软件应用、服务、推广、维护等工作相关的技术支持岗位;4)企业信息员:与企业信息化,如企业管理系统应用、数据库应用程序维护及开发等工作相关的一般技术岗位;5)办公室文员:与办公自动化,如桌面应用程序开发、Web应用系统开发等工作相关的一般技术岗位。
UML分析模型与设计模型的关系与对比解析在软件开发领域,UML(统一建模语言)是一种常用的工具,用于描述、设计和分析软件系统。
在使用UML进行软件开发过程中,分析模型和设计模型是两个重要的概念,它们之间有着密切的关系。
本文将对UML分析模型和设计模型的关系进行解析,并进行对比分析。
一、UML分析模型的概念与作用UML分析模型是对问题领域进行描述和分析的模型。
它主要关注的是系统的需求、功能和行为等方面。
通过使用UML的各种图形和符号,可以对系统进行建模,从而更好地理解和分析系统的需求和功能。
UML分析模型的作用有以下几个方面:1. 系统需求分析:通过UML分析模型,可以对系统的需求进行详细的分析和描述,包括功能需求、性能需求等。
这有助于开发团队更好地理解和满足用户的需求。
2. 系统行为分析:UML分析模型可以描述系统的行为,包括用例图、活动图等。
通过这些图形,可以清晰地展示系统的各种行为,帮助开发团队更好地理解系统的运行流程。
3. 系统结构分析:UML分析模型可以描述系统的结构和组成部分,包括类图、对象图等。
通过这些图形,可以清晰地展示系统的各个组成部分之间的关系,有助于开发团队更好地设计和实现系统。
二、UML设计模型的概念与作用UML设计模型是对软件系统进行设计和实现的模型。
它主要关注的是系统的结构和实现细节等方面。
通过使用UML的各种图形和符号,可以对系统进行详细的设计和实现。
UML设计模型的作用有以下几个方面:1. 系统结构设计:通过UML设计模型,可以对系统的结构进行详细的设计,包括类的设计、接口的设计等。
这有助于开发团队更好地组织和管理系统的各个组成部分。
2. 系统行为设计:UML设计模型可以描述系统的行为,包括状态图、序列图等。
通过这些图形,可以清晰地展示系统的各种行为,有助于开发团队更好地设计和实现系统的功能。
3. 系统实现细节设计:UML设计模型可以描述系统的实现细节,包括类的属性和方法等。
UML分析与设计1. UML(UNIFIED MODELING LANGUAGE)概述 (1)1.1UML是什么? (1)1.2UML的组成 (1)1.3UML的功能 (1)2. UML图(重点) (1)2.1用例图 (1)2.1.1 用例 (1)2.1.2 参与者(活动者) (1)2.1.3 用例图 (1)2.1.4 包含和扩展 (1)2.1.5 用例模型 (2)2.2类图 (2)2.2.1 类 (2)2.2.2 类之间的关系 (2)2.2.3 类图 (5)2.3对象图 (5)2.3.1 2004年5月下午试题试题三 (6)2.4功能复用及解题方法 (8)2.4.1 引用机制(聚合或组合) (8)2.4.2 继承机制(泛化的反关系)实现功能复用 (8)2.4.3 两者对比 (8)2.5顺序图(序列图) (9)2.5.1 2004年11月下午试题三(15分) (10)2.6协作图 (11)2.7状态图 (11)2.8活动图 (12)2.8.1 基本活动图 (12)2.8.2 带泳道的活动图 (12)2.9构件图 (13)2.10部署图 (14)2.11各种图总结 (14)3. 视图 (14)3.1用例视图 (14)3.2设计视图 (15)3.3过程视图 (15)3.4实现视图 (15)3.5配置视图 (15)1.UML(Unified Modeling Language)概述1.1 UML是什么?⏹UML是一种语言。
⏹UML只是一种可视化的语言。
⏹UML是一种可用于详细描述的语言。
⏹UML是一种构造语言。
⏹UML是一种文档化语言。
⏹UML是一种描述面向对象软件分析和设计结果的语言。
错误说法:UML是指导软件开发的思想。
1.2 UML的组成UML由模型元素、扩展机制、图及视图等部分组成,由模型元素或扩展机制构成图,由图构成视图。
1.3 UML的功能⏹为软件系统的产出建立可视化模型⏹规约软件系统的产出⏹构造软件系统的产出⏹为软件系统的产出建立文档2.UML图(重点)由模型元素和扩展机制构成。
基于UML面向对象的系统分析设计方法研究1、引言UML是一种编制系统蓝图的标准化语言,可以实现大型复杂系统各种成分描述的可视化、说明并构造系统模型,以及建立各种所需的文档,它是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
UML的发展对软件工程的发展做出了杰出的贡献。
UML支持从需求分析开始的软件开发的全过程。
UML通过三类图形建立系统模型:用例(Use Case)图、静态结构图(对象类图、对象图、组件图、配置图)和动态行为图(顺序图、协同图、状态图、活动图),这些图可以从不同的抽象角度实现系统的可视化。
URM的发展经历了以下几个阶段。
最初的阶段是专家的联合行动,由三位OO(面向对象)方法学家[8]将他们各自的方法结合在一起,形成UML 0.9。
第二阶段是公司的联合行动,由十几家公司组成的“UML 伙伴组织”将各自的意见加入UML,形成UML 1.0和1.1,并作为向OMG申请成为建模语言规范的提案。
第三阶段是在OMG控制下的修订与改进,OMG于11月正式采纳UML 1.1作为建模语言规范,然后成立任务组进行不断的修订,并产生了UML 1.2、1.3和1.4版本,其中UML 1.3是较为重要的修订版。
目前正处于UML的重大修订阶段,目标是推出UML 2.0,作为向ISO提交的标准提案。
1.1 UML的特点UML具有以下特点[1]:(1)面向对象。
UML支持面向对象技术的主要概念,提供了一批基本的模型元素的表示图形和方法,能简洁明了地表达面向对象的各种概念。
(2)可视化,表示能力强。
通过UML的模型图能清晰地表示系统的逻辑模型和实现模型。
可用于各种复杂系统的建模。
(3)独立于过程。
UML是系统建模语言,独立于开发过程。
(4)独立于程序设计语言。
用UML建立的软件系统模型可以用Java、VC++、SmalltaIk等任何一种面向对象的程序设计来实现。
(5)易于掌握使用。
UML图形结构清晰,建模简洁明了,容易掌握使用。
系统设计与分析(UML)题库目录:一、填空题 (8)1.UML提供一系列的图支持面向对象的分析与设计,其中(A )给出系统的静态设计视图; B 对系统的行为进行组织和建模是非常重要的;(D )和( F )都是描述系统动态视图的交互图,其中(D )描述了以时间顺序组织的对象之间的交互活动,( F )强调收发消息的对象的组织结构. (8)2.可以用()和()两种方法找概念类。
(8)3.领域模型是一组表示真实世界的(),不是()的模型。
(8)4.在协作图中通过()表示出消息的时间顺序。
(8)5.顺序图是由()、()、()和()等构成的 (8)6.在UML的关系中,用来描述弗雷与子类之间关系的是()关系 (8)7.在UML部署图中,具有计算能力的节点、能够执行软组件的节点通常被称为() (8)8.面向对象程序的基本特征是:()、()、()和()。
(8)9.用于对面向对象系统的物理方面建模进行描述图形是()。
(8)10.要表示单个对象在生命期内的状态变化,应采用的UML图为()。
.. 811.在UML中,用例可以进一步使用()来详细描述。
(8)12.软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述(),也不描述(),它只描述系统的()及其相互的()。
(9)13.一个UML模型只描述了一个系统要做什么,它并没告诉我们系统是怎么做。
(9)14.接口是可以在整个模型中反复使用的一组行为,是一个没有属性而只有方法的类。
(9)15.多重性指的是,某个类有多个个对象可以和另一个类的1个对象关联。
(9)16.当一个类的对象可以充当多种角色时,自身关联就可能发生。
(9)17.在泛化关系中,子类可以替代父类。
也就是说,后者出现的地方,前者都可以出现。
但是反过来却不成立。
(9)18.最通常的依赖关系是一个类操作的形构中用到了另一个类的定义。
(9)19.软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述活动,也不描述系统怎样开发,它只描述系统的组成元素及其相互的交互协作。
软工14级《UML系统分析与设计》大作业问题定义:设计某医药公司进销存管理信息系统的进货、库存、销售三个组成部分。
进货子系统有药品验收处理1 产生进货传票(进货传票编码、商品编码、品名、规格、厂商、有效期、进价、进货数量)。
2进货传票将被打印给供货商作为收货凭证。
一次进货可有多项药品,由进货传票编码唯一标识;一种药品由商品编码唯一标识。
系统设有一个商品目录(商品编码、品名、规格、厂商、有效期、销售价格)。
3当进货的药品是新药品(商品目录中没有的药品)时,进货子系统自动把新药品写入商品目录。
库存子系统有1进货入库2销售出库处理维护库存帐(商品编码、品名、规格、厂商、有效期、进货量、进价、出库量、销售价、库存数量、库存下限量、库存上限量),库存帐不能做修改操作,当进货入库时,根据进货传票产生一条新记录,库存数量加上进货量;当销售出库时,根据销售传票产生一条新记录,库存数量减去出库量;商品编码是各药品的唯一标识字。
库存子系统设库存自动报警,当库存数量大于库存上限量或者小于库存下限量时,给出警告信息。
销售子系统有定价处理和销售处理。
1定价处理有一个商品价格表(商品编码、品名、规格、厂商、有效期、建议价格、销售价格、批准责任人)首先由销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价;2销售处理在公司的销售窗口,售货员根据顾客要求查找商品目录和库存帐,如果有货(库存数量满足顾客要求),一项销售成立,产生销售传票的一条记录,一次销售可有多项记录,由销售传票唯一标识。
销售传票的数据结构是(销售传票编码、商品编码、品名、规格、厂商、有效期、销售价、销售数量)。
销售传票是库存子系统记录库存帐的依据。
销售传票将被打印给顾客作为提货凭证。
以上为本次试题的基本部分(称基本系统),为必做部分。
事实上的进销存系统还有其它组成,例如“退货处理”、“客户管理”、“供货商管理”、“定价管理”等,有兴趣的同学可以选做或者补充某些附加容。
作业要求:1.针对上述需求,请用面向对象的系统分析和设计方法完成附件中作业要求;2.解答时可以查询资料、可以讨论、可以使用建模工具(如Rose、together等),必须用打印文档交卷,注明、学号;3.提交的文档格式如附件所示,需要提交设计的视图,此处所占的分数比重较大,没有的话扣分。
4.自己在完成课程设计的心得体会(个人总结)一定要写,所占的分数比重较大。
5.根据基本系统的静态模型利用工具导出各子系统的java或者c++程序结构。
6.完成时间:各班学习委员收集后统一于17周的星期一上午缴给我。
附件:(选择1)附件:(选择2)选择1:1、需求收集、描述1.1:发掘业务过程:药品验收处理:处理维护库存帐:、定价处理和销售处理:1.2领域分析备选类:商品编码、品名、规格、厂商、有效期、进价、出库量、销售价、进货数量、销售价格、出库量、库存数量、库存下限量、库存上限量、建议价格、销售价格、批准责任人、销售数量、销售传票编码、顾客、销售员、销售传票、进货传票、进货传票编码、仓库管理员、药品确定候选类:进货传票、商品目录、供应商、药品、售货员、顾客、库存帐、商品价格表、批准责任人、销售传票1.3确定系统完全需求生成包图:高层用例图:人员管理2.系统USE CASE模型2.1 分析(按照需求设计用例)用例1:进货场景1:药品库存量低于库存下限量时候,系统会自动发出警报,表示需要进货,就会列出需要进货的药品名和药品数量,然后产生进货传票,打印进货传票给供应商供应药品。
场景2:当有新药品的时候,公司会会为了适应顾客的需求,就会引进新药品。
根据高层的研究,列出药品名和数量,产生打印传票给供应商供应药品。
用例2:进货入库、销售出库场景1:医药公司根据进货传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量低于下限量,就会进货入库。
场景2:医药公司根据销售传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量高于上限量,就会销售出库。
用例3:销售场景1:公司根据顾客的需求,在库存量满足顾客的需求时,售货员就把药品销售给顾客,售货员将给顾客提货凭证,输入药品的相关信息,产生销售传票并打印给顾客。
场景2:当有新药品进货时,销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价,开始销售。
2.2 角色定义2.3 USE CASE工作描述2.3.1进货:2.3.2 进货入库,销售出库:2.3.3 销售:2.4 USE CASE视图确定药品销售价格商品目录3. 系统逻辑结构设计3.1进货系统(描述涉及概念、映射对象、涉及角色)3.1.1事件流过程(主要事件流脚本)1)进货负责人通过系统发出的警告确定进货药名和数量2)进货负责人通过系统输入进货药名和数量3)系统产生进货传票4)判断是否有新药品,是否修改商品目录5)进货负责人把进货传票发给供应商3.1.2 时序图3.1.3 状态图(主要类的状态图)3.2销售系统(SaleSystem)3.2.1事件流过程(主要事件流脚本)定价处理事件流:1)销售管理员向系统发出“定价处理”请求2)销售管理员输入拟定的建议价格3)销售管理员将拟定的建议价格发给销售经理4)销售经理审核并确定销售价格,修改商品目录销售处理事件流:1)顾客买药品2)售货员根据顾客要求查看库存帐和商品目录3)销售成功并打印销售传票4)顾客拿到销售传票和领取药品3.2.2 时序图定价处理时序图:销售处理时序图:3.2.3状态图(主要类的状态图)定价处理状态图:销售处理状态图:3.3库存系统(ValueManager)(主要事件流脚本)3.3.1事件流过程1)仓库管理员向系统发出“进货入库”请求2)仓库管理员接到供应商发送的进货传票的信息3)仓库管理员根据进货传票产生一条新记录,库存数量加上进货量4)仓库管理员检查库存帐,是否超过上限量。
5)仓库管理员收到售货员销售传票6)仓库管理员据销售传票产生一条新记录,库存数量减去出库量7)仓库管理员检查库存帐,是否低于下限量。
3.3.2时序图3.3.3状态图(主要类的状态图)3.4系统整体的类的组织结构4. 完成系统组件图设计5. 完成正向工程实现代码框架4.1设计完成系统详细类图(系统静态结构,应该包含类及之间的详细信息) 4.1.1 药品类Drugs4.1.2 供应商类Supplier4.1.3 进货传票类StockTicket4.1.4 仓库管理员类StockMan4.1.5 库存帐类StockAccount4.1.6 销售管理员类SaleManager4.1.7 销售经理类Manager4.1.8 顾客类Customer4.1.9 销售传票类SaleTicket4.1.10 商品目录类Catalogue4.1.11 商品价格类PriceList4.1.12 售货员类SaleMan4.2生成代码框架(参照自己设计的4.1)4.2.1药品类Drugspublic class Drugs {private int Drugs_code;private int Drugs_name;private int Specifications;private int Manufacturer;private int Date;private int Price;public Drugs() { }public void Set_Druge() { }public void Get_Druge() { }}4.2.2供应商类Supplierpublic class Supplier {private int Supplier_name;private int Address;private int Tel;public Drugs theDrugs;public Supplier() { }public void PurchaseVoucher() { }}4.2.3 进货传票类StockTicketpublic class StockTicket extends Drugs { private int Stock_name;private int Stock_price;private int Amount;public StockTicket() { }public void set_saleticket() { }public void get_saleticker() { }}4.2.4 仓库管理员类StockManpublic class StockMan {private int ID;private int name;private int sex;public StockAccount theStockAccount; public StockMan(){ }}4.2.5库存帐类StockAccountpublic class StockAccount extends Drugs { private int Purchase_ticket;private int purchase_price;private int purchase_amount;private int Sale_ticket;private int Sale_price;private int Sale_amountprivate int upperLimit;private int lowerLimit;public StockAccount() { }public void Add() { }public void get_Stock() { }public void Sub() { }public void set_Stock() { }}4.2.6 销售管理员类SaleManager public class SaleManager {private int ID;private int name;private int sex;public PriceList thePriceList;public SaleManager() { }}4.2.7 销售经理类Managerpublic class Manager {private int ManagerID;private int name;private int title;public StockTicket theStockTicket;public Manager() { }public void Examine() { }}4.2.8顾客类Customerpublic class Customer {private int ID;public Drugs theDrugs;public Customer() { }}4.2.9 销售传票类SaleTicketpublic class SaleTicket extends Drugs { private int Sale_name;private int Sale_price;private int Sale_amount;public SaleTicket() { }public void set_SaleTicker() { }public void get_SaleTicker() { }}4.2.10商品目录类Cataloguepublic class Catalogue extends Drugs { private int sale_Price;public Catalogue() { }public void set_Catalogue() { }public void get_Catalogue() { }public void Set_CataloguePrice() { }}4.2.11商品价格类PriceListpublic class PriceList extends Drugs {private int suggested_price;private int sale_price;private int charge_price;public PriceList() { }public void set_Price(){ }public void get_Price(){ }public void set_suggestedPrice() { }}4.2.12 售货员类SaleManpublic class SaleMan {private int ID;private int name;private int sex;public SaleTicket theSaleTicket;public SaleMan() { }public void Sale_ticket() { }}6.个人总结这次作业。