《UML系统分析和设计》
第6章 uml系统分析与设计

识别参与者需要注意的问题 参与者代表角色 角色不是对职位进行建模
参与者间的关系
在用例图中, 在用例图中,使用泛化 关系来描述多个参与者 之间的公共行为。 之间的公共行为。 参与者间的泛化关系 示例: 示例:
用例( Case) 2.2 用例(Use Case)
用例是对系统行为的动态描述, 用例是对系统行为的动态描述,用来描述 一个参与者( 一个参与者(Actor)使用系统完成某个事 ) 件时的事情发生顺序。 件时的事情发生顺序。用例是系统的使用 过程。更确切的说, 过程。更确切的说,用例不是需求或者功 能的规格说明, 能的规格说明,但用例也展示和体现出了 其所描述的过程中的需求情况。 其所描述的过程中的需求情况。 用例用一个椭圆来表示, 用例用一个椭圆来表示,用例的名字可以 书写在椭圆的内部或下方。 书写在椭圆的内部或下方。
3.1
确定系统涉及的总体信息
图书馆管理员: 图书馆管理员: ① 书籍借出处理 ② 书籍归还处理 ③ 预定信息处理
3.1
① ② ③ ④ ⑤ ⑥ ⑦ ⑧
确定系统涉及的Βιβλιοθήκη 体信息系统管理员: 系统管理员: 增加书目 删除或更新书目 增加书籍 减少书籍 增加读者帐户信息 删除或更新读者帐户信息 书籍信息查询 读者信息查询
所有种类的用户都必须在登录账号后才能 进行相应的操作
初稿
修改稿
3
实例——图书馆管理系统的用例图 实例——图书馆管理系统的用例图 ——
3.1 确定系统涉及的总体信息 3.2 确定系统的参与者 3.3 确定系统的用例 3.4 图书馆管理系统的用例图
3.1
确定系统涉及的总体信息
读者: 读者: ① 借书 ② 还书 ③ 书籍预定
实例分析1 实例分析1—家教网站
uml系统分析与设计uml系统建模基础教程课后习题答案.docx

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)请描述迭代过程有几个阶段。
第04章:UML系统分析与设计-类图和对象图

类图的组成
在标准的UML定义中,有时还应当指明类的另一种信 息,那就是类的职责。类的职责指的是对该类的所有 对象所具备的那些相同的属性和操作共同组成的功能 或服务的抽象。
在声明类的职责的时候,可以非正式的在类图的下方 增加一栏,将该类的职责逐条描述出来。类的职责的 描述并不是必须的,因此也可以将其作为文档的形似 存在,也就是说类的职责其实只是一段或多段文本描 述。一个类可以有多种职责,设计得好的类一般至少 有一种职责。
类图的组成
泛化关系是用来描述类的一般和具体之间的关系。具体描 述建立在对类的一般描述的基础之上,并对其进行了扩展。 因此,在具体描述中不仅包含一般描述中所拥有的所有特 性、成员和关系,而且还包含了具体描述补充的信息。
类图的组成
关联关系是一种结构关系,指出了一个事物对象与另一个 事物对象之间的语义上的连接。
类图的概念
1. 类图的概念
类图(Class diagram)显示了系统的静态结构,而系统的 静态结构构成了系统的概念基础。
类图,就是用于对系统中的各种概念进行建模,并描绘出 它们之间关系的图。
在大多数的 UML 模型中,我们可以将这些概念的类型概 括为以下四种,分别是: 1类 2 接口 3 数据类型 4 构件
在设计数据库时,通常将数据库模式看作为数据库概念设计的蓝 图,在很多领域中,都需要在关系数据库或面向数据库中存储永 久信息。系统分析者可以使用类图来对这些数据库进行模式建模。
类图的组成
1. 类
类是面向对象系统组织结构的核心。类是对一组具有相 同属性、操作、关系和语义的事物的抽象。
在UML的图形表示中,类的表示法是一个矩形,这个矩 形由三个部分构成,分别是:类的名称(Name)、类的 属性(Attribute)和类的操作(Operation)。
基于UML的系统分析与设计

系统分析
详细来说,分析阶段旳活动主要是: 辨认对象; 为对象分类; 拟定类旳属性和操作; 拟定类之间旳关系: 拟定对象之间旳交互: 拟定对象旳状态变化等。
1.辨认对象
辨认对象并不是从零开始旳工作,应该最 大程度地利用已经有旳劳动成果。比较经 典旳可利用旳资料有。
用例模型和用例描述。 术语表。权威旳术语定义集合。
邮件管理、协议管理
用例旳优化
拆分
对较大旳或复杂旳用例 用例描述,描述到了第四级,仍无法描述清楚,
需用例拆分 主流→子流→分支流→子分支流
用例旳优化
拆分例子 管理顾客涉及处理:添加顾客、修改顾客
信息、删除顾客、查找顾客、修改顾客口 令、变更顾客级别 拆分为:维护顾客信息、管理顾客权限两 个用例(按业务有关性)
基于UML旳系统分析与设计
UML建模
一种系统开发措施应由建模语言和开发过 程构成。
建模语言是设计旳表达符号,而过程则是描 述怎样进行开发所需旳环节。
UML旳开发过程涉及需求获取、系统分析、 系统设计、实现和测试5个环节。
第一阶段
需求获取
需求获取
1.需求获取 系统开发旳第一步工作就是进行需求搜
5.拟定顾客界面
拟定参加者怎样开启用例,以及用例以什 么形式向参加者提供信息,
是在构造顾客界面旳原型。 这项活动旳输入是:用例模型、详细描述
旳用例描述。 活动旳成果是顾客界面旳简图。 目旳是为参加者拟定顾客界面旳外观和感
UML系统分析与设计课程整体设计方案

UML系统分析与设计课程整体设计方案摘要:本文介绍了职业教育课程工作过程系统化的开发与设计,以工作过程分析为起点,选用适于教学的典型工作任务为载体整合教学内容,在课程教学过程中凸现以学生为主体、以职业能力的培养为主线、“教学做一体化”的特点。
我院软件技术专业“UML系统分析与设计”课程设计把握上述原则,对实现人才培养目标、提高学生的职业关键能力起到了强有力的支撑作用。
关键词:工作过程系统化;软件模型建立;课程开发与设计1工作过程系统化的课程开发职业教育课程的开发是工作过程导向的,依据并围绕职业活动中“为完成一件工作任务并获得工作成果而进行的一个完整的工作程序(工作过程)”选择课程内容,并以之为参照系对知识内容实施序化,着眼于蕴含在行动体系中的隐性实践知识的生成与构建,筑造课程内容结构[1-2]。
工作过程系统化的课程开发,以工作过程分析为起点,选用适于教学的典型工作任务为载体整合教学内容,在课程教学过程中凸现以学生为主体、以职业能力的培养为主线、“教学做一体化”的特点。
工作过程系统化的课程开发模式将职业活动中的各个元素渗透到教学的整个过程,实现学习者从经验层面向策略层面的能力发展,培养企业真正需要的人才;与此同时,工作过程系统化的课程开发也关注如何在满足社会需求的同时实现人的个性需求、如何在就业导向的职业教育大目标下人保持个人的可持续发展[3]。
2软件技术专业整体课程设计软件技术专业以培养具有良好职业道德素养,具有一定的专业理论知识,具有较强的实践动手能力,具备可持续发展能力,适应软件开发、测试、维护、应用、推广、支持及服务等岗位需要的德、智、体全面发展的高级技术应用型人才为目标。
对软件技术专业进行职业专门化方向研究后,认定软件技术专业人才面向的岗位及岗位群有项目经理、数据库开发工程师、程序设计工程师、系统测试工程师、系统维护与售后工程师等。
软件技术专业的就业岗位主要包括:1)软件设计员、软件项目经理、软件项目组长、程序员、编码员:程序模块设计、代码编写、软件文档制作等相关技术岗位;2)测试员:与软件测试、质量保证等工作相关的技术岗位;3)软件技术支持、推广、维护等人员:与软件应用、服务、推广、维护等工作相关的技术支持岗位;4)企业信息员:与企业信息化,如企业管理系统应用、数据库应用程序维护及开发等工作相关的一般技术岗位;5)办公室文员:与办公自动化,如桌面应用程序开发、Web应用系统开发等工作相关的一般技术岗位。
UML系统分析与设计教程第二版教学设计

UML系统分析与设计教程第二版教学设计介绍UML是一种被广泛使用的面向对象分析和设计(OOAD)工具,可以用来模拟软件开发中的流程。
本教程将提供UML系统分析与设计的教学设计,适用于学生、软件工程师或任何想了解UML的人。
教学目标通过学习本课程,学生应能掌握以下技能:•理解和运用UML的核心概念和通用建模技术•使用UML对软件进行系统建模和分析•对复杂系统进行建模和分析教学重点•UML的基本概念和原则•UML图形的使用方法和含义•对系统进行建模和分析的方法和流程教学大纲第一节:UML简介•UML的定义和用途•UML图形的分类与含义•UML的优点和局限性第二节:UML基础知识•UML核心概念和原则•类图、时序图和用例图的基本元素和使用方法第三节:UML高级应用•组合、聚合和泛化的区别•状态图和活动图的建模技术•UML建模规范的介绍和应用第四节:UML与软件开发•UML的集成开发环境•使用UML进行软件架构设计•对UML进行版本控制和文档管理教学方法该课程采用理论和实践相结合的教学方法。
学生将在课堂上学习UML的基础知识,然后使用软件进行实操操作。
通过实践,学生能够更好地理解UML的实际运用,掌握UML建模和分析的技能。
基本要求•学生需要具备基本的编程知识和计算机应用能力•学生需要了解面向对象编程(OOP)的概念和基本语法•学生需要有一台个人电脑,并安装适合的UML建模工具教学评估教师将在每节课程结束后进行小测验,以检查学生的理解情况。
此外,教师还将指导学生完成一个UML建模的小项目,并进行评估。
评估成绩将计入学生的课程成绩和期末考试成绩。
结语随着软件开发的不断发展,UML已成为了重要的建模和分析工具。
本教程将帮助学生了解和掌握UML的核心概念和基本技术,提高软件建模和分析的能力,为未来的工作奠定基础。
UML系统分析与设计教程第二版教学设计 (3)

UML系统分析与设计教程第二版教学设计一、引言UML(Unified Modeling Language)是软件工程中广泛使用的一种建模语言,可以用于描述系统的结构、行为和交互。
UML系统分析与设计教程是一本经典的UML教材,在软件工程领域具有较高的知名度和影响力。
本文将介绍针对UML系统分析与设计教程第二版的教学设计,主要包括教学目标、教学策略、教学内容和教学评价等方面。
二、教学目标本次教学的主要目标是让学生掌握UML的基本概念、建模方法和应用技巧,具备使用UML进行软件系统设计和分析的能力,进一步提升学生的软件工程能力。
具体目标包括:1.理解UML的基本概念和历史背景;2.掌握UML的建模方法和图表符号的含义;3.能够使用UML进行系统需求分析和设计,并完成相应的UML图表;4.掌握UML的应用技巧,如设计模式和代码生成等。
三、教学策略1.教学以实践为主,通过实际的案例让学生熟悉UML的建模方法和应用技巧;2.强调理论与实践相结合,让学生在实际操作中巩固理论知识;3.强调团队合作,通过小组讨论和合作完成项目;4.强调自主学习和持续学习,让学生能够独立学习和掌握新技能。
四、教学内容本次教学的主要内容包括以下几个方面:1. UML基础1.1 UML的基本概念和历史背景; 1.2 UML的体系结构和核心组件; 1.3 UML 图表符号的含义和应用。
2. UML建模方法2.1 UML用例图; 2.2 UML类图; 2.3 UML时序图和活动图; 2.4 UML状态图。
3. UML应用技巧3.1 设计模式的应用; 3.2 代码生成和反向工程; 3.3 UML工具的使用。
五、教学评价本次教学的评价主要包括以下几个方面:1.学生的作业质量和完成度;2.学生对UML建模方法和应用技巧的掌握程度;3.学生对UML在软件系统设计中的应用理解程度;4.学生的课堂表现和团队合作能力。
六、总结通过本次教学,学生将深入学习和实践UML建模方法和应用技巧,为提高其软件工程综合能力奠定更坚实的基础。
《UML系统分析和设计》

《UML系统分析和设计》软工14级《UML系统分析与设计》大作业问题定义:设计某医药公司进销存管理信息系统的进货、库存、销售三个组成部分。
进货子系统有药品验收处理1 产生进货传票(进货传票编码、商品编码、品名、规格、厂商、有效期、进价、进货数量)。
2进货传票将被打印给供货商作为收货凭证。
一次进货可有多项药品,由进货传票编码唯一标识;一种药品由商品编码唯一标识。
系统设有一个商品目录(商品编码、品名、规格、厂商、有效期、销售价格)。
3当进货的药品是新药品(商品目录中没有的药品)时,进货子系统自动把新药品写入商品目录。
库存子系统有1进货入库2销售出库处理维护库存帐(商品编码、品名、规格、厂商、有效期、进货量、进价、出库量、销售价、库存数量、库存下限量、库存上限量),库存帐不能做修改操作,当进货入库时,根据进货传票产生一条新记录,库存数量加上进货量;当销售出库时,根据销售传票产生一条新记录,库存数量减去出库量;商品编码是各药品的唯一标识字。
库存子系统设库存自动报警,当库存数量大于库存上限量或者小于库存下限量时,给出警告信息。
销售子系统有定价处理和销售处理。
1定价处理有一个商品价格表(商品编码、品名、规格、厂商、有效期、建议价格、销售价格、批准责任人)首先由销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价;2销售处理在公司的销售窗口,售货员根据顾客要求查找商品目录和库存帐,如果有货(库存数量满足顾客要求),一项销售成立,产生销售传票的一条记录,一次销售可有多项记录,由销售传票唯一标识。
销售传票的数据结构是(销售传票编码、商品编码、品名、规格、厂商、有效期、销售价、销售数量)。
销售传票是库存子系统记录库存帐的依据。
销售传票将被打印给顾客作为提货凭证。
以上为本次试题的基本部分(称基本系统),为必做部分。
事实上的进销存系统还有其它组成,例如“退货处理”、“客户管理”、“供货商管理”、“定价管理”等,有兴趣的同学可以选做或者补充某些附加内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《UML系统分析和设计》软工14级《UML系统分析与设计》大作业问题定义:设计某医药公司进销存管理信息系统的进货、库存、销售三个组成部分。
进货子系统有药品验收处理1 产生进货传票(进货传票编码、商品编码、品名、规格、厂商、有效期、进价、进货数量)。
2进货传票将被打印给供货商作为收货凭证。
一次进货可有多项药品,由进货传票编码唯一标识;一种药品由商品编码唯一标识。
系统设有一个商品目录(商品编码、品名、规格、厂商、有效期、销售价格)。
3当进货的药品是新药品(商品目录中没有的药品)时,进货子系统自动把新药品写入商品目录。
库存子系统有1进货入库2销售出库处理维护库存帐(商品编码、品名、规格、厂商、有效期、进货量、进价、出库量、销售价、库存数量、库存下限量、库存上限量),库存帐不能做修改操作,当进货入库时,根据进货传票产生一条新记录,库存数量加上进货量;当销售出库时,根据销售传票产生一条新记录,库存数量减去出库量;商品编码是各药品的唯一标识字。
库存子系统设库存自动报警,当库存数量大于库存上限量或者小于库存下限量时,给出警告信息。
销售子系统有定价处理和销售处理。
1定价处理有一个商品价格表(商品编码、品名、规格、厂商、有效期、建议价格、销售价格、批准责任人)首先由销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价;2销售处理在公司的销售窗口,售货员根据顾客要求查找商品目录和库存帐,如果有货(库存数量满足顾客要求),一项销售成立,产生销售传票的一条记录,一次销售可有多项记录,由销售传票唯一标识。
销售传票的数据结构是(销售传票编码、商品编码、品名、规格、厂商、有效期、销售价、销售数量)。
销售传票是库存子系统记录库存帐的依据。
销售传票将被打印给顾客作为提货凭证。
以上为本次试题的基本部分(称基本系统),为必做部分。
事实上的进销存系统还有其它组成,例如“退货处理”、“客户管理”、“供货商管理”、“定价管理”等,有兴趣的同学可以选做或者补充某些附加内容。
作业要求:1.针对上述需求,请用面向对象的系统分析和设计方法完成附件中作业要求;2.解答时可以查询资料、可以讨论、可以使用建模工具(如Rose、together等),必须用打印文档交卷,注明姓名、学号;3.提交的文档格式如附件所示,需要提交设计的视图,此处所占的分数比重较大,没有的话扣分。
4.自己在完成课程设计的心得体会(个人总结)一定要写,所占的分数比重较大。
5.根据基本系统的静态模型利用工具导出各子系统的java或者c++程序结构。
6.完成时间:各班学习委员收集后统一于17周的星期一上午缴给我。
附件:(选择1)附件:(选择2)1.自行选择一个工程,项目的规模不小于100个类(包的层次不小于3级),使用逆向工程从代码还原出系统UML模型,并推导出系统的需求;例如:包---包----包--- …..选择1:1、 需求收集、描述 1.1:发掘业务过程: 药品验收处理:生成进货传票商品目录供应商供应商供应药品是否是新药品?是新药品就写入商品目录药品入库处理维护库存帐:进货传票销售传票加法减法进货销售库存量上限库存量下限库存量大于低于系统自动报警、定价处理和销售处理:1.2领域分析备选类:商品编码、品名、规格、厂商、有效期、进价、出库量、销售价、进货数量、销售价格、出库量、库存数量、库存下限量、库存上限量、建议价格、销售价格、批准责任人、销售数量、销售传票编码、顾客、销售员、销售传票、进货传票、进货传票编码、仓库管理员、药品确定候选类:进货传票、商品目录、供应商、药品、售货员、顾客、库存帐、商品价格表、批准责任人、销售传票1.3确定系统完全需求生成包图:销售子系统进货子系统库存子系统依赖关系,其余不做说明的是泛化关系图像用户界面Windows 图像用户界面高层用例图:系统管理高层管理人员管理药品销售进货入库药品库存销售出库定价处理药品进货销售处理2.系统USE CASE模型2.1 分析(按照需求设计用例)用例1:进货场景1:药品库存量低于库存下限量时候,系统会自动发出警报,表示需要进货,就会列出需要进货的药品名和药品数量,然后产生进货传票,打印进货传票给供应商供应药品。
场景2:当有新药品的时候,公司会会为了适应顾客的需求,就会引进新药品。
根据高层的研究,列出药品名和数量,产生打印传票给供应商供应药品。
用例2:进货入库、销售出库场景1:医药公司根据进货传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量低于下限量,就会进货入库。
场景2:医药公司根据销售传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量高于上限量,就会销售出库。
用例3:销售场景1:公司根据顾客的需求,在库存量满足顾客的需求时,售货员就把药品销售给顾客,售货员将给顾客提货凭证,输入药品的相关信息,产生销售传票并打印给顾客。
场景2:当有新药品进货时,销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价,开始销售。
参与者功能描述进货负责人负责进货管理、引进新药品仓库管理员负责管理进货入库和销售出库销售管理员负责定销售药品的建议价格销售经理负责审核确定销售价、更新药品的价格售货员负责根据顾客要求查找药品目录和库存帐供应商负责供应药品顾客购买药品2.3.1进货:USE CASE名称进货目的医药公司系统名称进货子系统进货子系统(from Use Case View)进货负责人(from Use Case View)场景1:进货药名、数量供应商(from Use Case View)场景2:新药品主程序:进货负责人根据不同场景,打印进货传票,传给供应商,供应商根据传票供应药品给医药公司。
USE CASE名称进货入库,销售出库目的药品入库、药品销售出库系统名称库存子系统库存子系统仓库管理员供应商送货员进货入库销售经理销售出库主程序:仓库管理员根据进货传票产生的新记录,目前库存量加上进货库存量,查看警告信息,如果库存量低于下限量,就会进货入库;如果库存量高于上限量,就会销售出库。
USE CASE名称销售目的销售药品系统名称销售子系统销售子系统销售管理员销售经理售货员销售处理定价处理顾客主程序:公司根据顾客的需求,在库存量满足顾客的需求时,售货员就把药品销售给顾客,售货员将给顾客提货凭证,输入药品的相关信息,产生销售传票并打印给顾客。
当有新药品进货时,销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价,开始销售给顾客。
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 进货传票类 StockTicket 4.1.4 仓库管理员类 StockMan 4.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 销售管理员类SaleManagerpublic 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.个人总结这次作业。