《UML系统分析和设计》
- 格式:doc
- 大小:173.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系统分析与设计”课程设计把握上述原则,对实现人才培养目标、提高学生的职业关键能力起到了强有力的支撑作用。
关键词:工作过程系统化;软件模型建立;课程开发与设计1工作过程系统化的课程开发职业教育课程的开发是工作过程导向的,依据并围绕职业活动中“为完成一件工作任务并获得工作成果而进行的一个完整的工作程序(工作过程)”选择课程内容,并以之为参照系对知识内容实施序化,着眼于蕴含在行动体系中的隐性实践知识的生成与构建,筑造课程内容结构[1-2]。
工作过程系统化的课程开发,以工作过程分析为起点,选用适于教学的典型工作任务为载体整合教学内容,在课程教学过程中凸现以学生为主体、以职业能力的培养为主线、“教学做一体化”的特点。
工作过程系统化的课程开发模式将职业活动中的各个元素渗透到教学的整个过程,实现学习者从经验层面向策略层面的能力发展,培养企业真正需要的人才;与此同时,工作过程系统化的课程开发也关注如何在满足社会需求的同时实现人的个性需求、如何在就业导向的职业教育大目标下人保持个人的可持续发展[3]。
2软件技术专业整体课程设计软件技术专业以培养具有良好职业道德素养,具有一定的专业理论知识,具有较强的实践动手能力,具备可持续发展能力,适应软件开发、测试、维护、应用、推广、支持及服务等岗位需要的德、智、体全面发展的高级技术应用型人才为目标。
对软件技术专业进行职业专门化方向研究后,认定软件技术专业人才面向的岗位及岗位群有项目经理、数据库开发工程师、程序设计工程师、系统测试工程师、系统维护与售后工程师等。
软件技术专业的就业岗位主要包括:1)软件设计员、软件项目经理、软件项目组长、程序员、编码员:程序模块设计、代码编写、软件文档制作等相关技术岗位;2)测试员:与软件测试、质量保证等工作相关的技术岗位;3)软件技术支持、推广、维护等人员:与软件应用、服务、推广、维护等工作相关的技术支持岗位;4)企业信息员:与企业信息化,如企业管理系统应用、数据库应用程序维护及开发等工作相关的一般技术岗位;5)办公室文员:与办公自动化,如桌面应用程序开发、Web应用系统开发等工作相关的一般技术岗位。
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系统分析与设计教程第二版教学设计一、引言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系统分析和设计》软工14级《UML系统分析与设计》大作业问题定义:设计某医药公司进销存管理信息系统的进货、库存、销售三个组成部分。
进货子系统有药品验收处理1 产生进货传票(进货传票编码、商品编码、品名、规格、厂商、有效期、进价、进货数量)。
2进货传票将被打印给供货商作为收货凭证。
一次进货可有多项药品,由进货传票编码唯一标识;一种药品由商品编码唯一标识。
系统设有一个商品目录(商品编码、品名、规格、厂商、有效期、销售价格)。
3当进货的药品是新药品(商品目录中没有的药品)时,进货子系统自动把新药品写入商品目录。
库存子系统有1进货入库2销售出库处理维护库存帐(商品编码、品名、规格、厂商、有效期、进货量、进价、出库量、销售价、库存数量、库存下限量、库存上限量),库存帐不能做修改操作,当进货入库时,根据进货传票产生一条新记录,库存数量加上进货量;当销售出库时,根据销售传票产生一条新记录,库存数量减去出库量;商品编码是各药品的唯一标识字。
库存子系统设库存自动报警,当库存数量大于库存上限量或者小于库存下限量时,给出警告信息。
销售子系统有定价处理和销售处理。
1定价处理有一个商品价格表(商品编码、品名、规格、厂商、有效期、建议价格、销售价格、批准责任人)首先由销售管理员定建议价格,经过经理批准后确定销售价,并自动更新商品目录的销售价;2销售处理在公司的销售窗口,售货员根据顾客要求查找商品目录和库存帐,如果有货(库存数量满足顾客要求),一项销售成立,产生销售传票的一条记录,一次销售可有多项记录,由销售传票唯一标识。
销售传票的数据结构是(销售传票编码、商品编码、品名、规格、厂商、有效期、销售价、销售数量)。
销售传票是库存子系统记录库存帐的依据。
销售传票将被打印给顾客作为提货凭证。
以上为本次试题的基本部分(称基本系统),为必做部分。
事实上的进销存系统还有其它组成,例如“退货处理”、“客户管理”、“供货商管理”、“定价管理”等,有兴趣的同学可以选做或者补充某些附加内容。
UML系统分析与设计教程6.4 参与者:①教师②学生③系统管理员。
用例:①注册选修课程②选择所教课程③获取学生注册情况④维护教师信息⑤维护课程信息⑥维护学生信息1.用例图1.用例注册选修课程的描述1.1 前置条件在用例注册选修课程开始之前,用例维护课程信息的分支流“创建选修课程”必须完成。
1.2 后置条件如果这个用例成功,学生的选修计划表则被删除、创建或打印。
否则,系统的状态没有变化。
1.3 扩充点注册课程不超过6门(E-9)。
一门课的注册学生不能多于80个(E-10)。
一门课的注册学生不能少于5个(E-11)。
课程注册不能超过截止日期(E-12)。
1.4 事件流1.4.1 基流当学生输入密码并登录到课程管理系统时,用例注册选修课程开始。
如果系统验证密码是正确的(E-1),则提示学生选择当前学期还是以后的学期(E-2),然后系统提示学生选择所想要的动作:ADD(添加)、DELETE(删除)、REVIEW(查看)、PRINT(打印)、QUIT (退出)。
如果所选的活动是ADD,执行分支流S-1,添加所选课程。
如果所选的活动是DELETE,执行分支流S-2,删除所选课程。
如果所选的活动是REVIEW,执行分支流S-3,查看所选课程。
如果所选的活动是PRINT,执行分支流S-4,打印所选课程。
如果所选的活动是QUIT,用例结束并退出。
1.4.2 分支流S-1:添加所选课程系统提示含有课程名和课程代号的域,学生输入希望选修的课程名或课程代号(E-3),系统显示信息表示该课程可以选修(E-4),并建立该课程与该学生的连接(E-5)。
用例重新开始。
S-2:删除所选课程系统提示含有课程名和课程代号的域,学生输入希望取消的课程名或课程代号,系统删除该课程与该学生的连接(E-6)。
用例重新开始。
S-3:查看所选课程系统检索(E-7)并显示出学生所选的所有课程的信息,包括课程名、课程代码、上课时间、上课地点、授课老师、学生数量。
《系统分析与设计(UML)》教学大纲一、课号:00503504二、总学时:64学时三、适用专业:高等工程专科三年制计算机软件类专业四、选用教材:《面向对象软件工程与UML》张京等编著人民邮电出版社2008年9月五、课程的目的及要求:《系统分析与设计(UML)》是计算机软件和计算机信息管理专业的一门核心专业课程,同时,该课程在计算机应用、计算机网络等诸多计算机类专业中也是一门非常重要的专业学习领域课程。
软件开发是建立计算机应用系统的重要环节,通过软件工程学把软件开发纳入工程化的轨道,而系统分析与设计是用以指导软件人员进行软件的开发、设计的科学。
《系统分析与设计(UML )»作为计算机软件类教学体系中的一门核心课程,其教学效果直接决定学生毕业以后从事实际工作期间的软件开发设计能力。
该课程的主要任务是:通过课堂教学和实习指导使学生较全面地了解软件开发和维护各个阶段的具体工作步骤及使用的技术和方法(特别是要具有系统分析与设计的能力),为学生今后从事软件开发打下良好基础。
该课程釆用教学与实践相结合,在教学设计中按照实际的软件企业开发流程让学生自主完成项目开发的形式,组队合作完成(每队3-4,少数工作量大的可以5人,原则上不得少于3人)。
本课程的目标是使学生掌握系统分析与设计的基本概念、基本原理、面向对象的软件开发方法和CASE技术,了解软件工程各领域的发展动向;开发软件项目的工程化的方法及在开发过程中应遵循的流程、准则、标准和规范等,使学生掌握开发高质量软件的方法,加强学生软件开发和系统设计能力的培养,提高学生撰写项目技术文档能力,综合实践软件技术专业课程中所学习的理论、方法和技术,获得软件项目开发经验,熟悉软件开发环境和掌握具体的CASEX具的使用。
通过本课程的教学,应使学生达到下列基本要求:1 .掌握软件生存周期模型及软件工程的基本概念2.掌握软件生产的管理手段3.掌握需求分析的方法,掌握数据流图和数据字典的用途和编写4.掌握总体设计和详细设计的方法和工具5.掌握面向对象的分析和设计方法6.掌握Power Designer的使用7.能熟练地用PD工具绘出实际的概念数据模型(CDM)、物理数据模型(PDM)、面向对象模型(00M)图。
系统设计与分析(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.软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述活动,也不描述系统怎样开发,它只描述系统的组成元素及其相互的交互协作。
UML与系统分析与设计的关系解析在软件开发领域,系统分析与设计是一个至关重要的环节。
它涉及到对系统需求的分析、设计和实现等多个方面,以确保软件能够满足用户的需求并且具备良好的可扩展性和可维护性。
而在系统分析与设计过程中,UML(统一建模语言)作为一种通用的建模语言,被广泛应用于软件开发中。
本文将探讨UML与系统分析与设计之间的关系,并分析UML在系统分析与设计中的应用。
首先,我们需要了解UML的基本概念和用途。
UML是一种图形化的建模语言,它提供了一套丰富的符号和规范,用于描述软件系统的结构、行为和交互等方面。
它能够帮助开发人员更好地理解和沟通系统的需求和设计。
UML包含了多种图表,如用例图、类图、时序图等,每种图表都有特定的用途和表达能力。
通过使用UML,开发人员可以清晰地表示系统的各个方面,从而更好地进行系统分析与设计。
系统分析与设计是软件开发过程中的关键环节,它涉及到对系统需求的分析和理解,以及对系统架构和设计的制定。
在系统分析阶段,开发人员需要与用户进行沟通,了解用户的需求和期望。
这时,UML的用例图和活动图等可以帮助开发人员更好地理解和描述用户需求,从而准确地把握系统的功能和行为。
在系统设计阶段,开发人员需要根据需求分析的结果,设计系统的结构和组件。
这时,UML的类图和组件图等可以帮助开发人员进行系统的结构化设计,明确系统的各个组件之间的关系和依赖。
通过使用UML,开发人员可以更好地进行系统分析与设计,确保系统的质量和可维护性。
除了在系统分析与设计过程中的应用,UML还可以在软件开发的其他阶段发挥重要作用。
在系统实现阶段,开发人员可以使用UML的类图和时序图等来指导编码工作,明确类与类之间的关系和交互过程。
在系统测试阶段,开发人员可以使用UML的序列图和状态图等来描述系统的行为和状态,从而进行测试用例的设计和执行。
在系统维护阶段,开发人员可以使用UML的活动图和组件图等来理解和修改系统的功能和结构。
●丢弃关于实现的关联关系。
●不要为动作建模。
●如果可能,将三元关联(Ternary Associations)分解为二元关联(Binary Associations)。
●不要为导出关联(Derived Associations)建模。
接下来,根据下述准则对识别出的关联关系进行细化。
●为每个关联找一个合适的名字。
●如果必要,为关联添加对象的角色名。
●尽可能使用受限关联(Qualified Associations)。
●规定关联的阶元(Multiplicity)。
●找出遗漏的关联。
(6)抽象出类和对象的属性。
(7)丢弃不必要或不正确的属性。
(8)使用继承关系来建立类之间的层次关系。
(9)遍历访问路径,找出不足。
3.建立动态模型(Dynamic Model)动态模型主要描述了随着时间的变化而变化的对象及对象间的关系,动态模型对于具有重要动态行为的系统(例如,交互式系统和实时系统)尤其重要。
动态模型描述了系统的可能控制流,而对象模型描述了可能的信息流。
建立动态模型的步骤如下。
(1)识别出用例和典型的交互作用脚本。
(2)识别出对象间的事件,为每个脚本建立事件跟踪图。
(3)为系统建立事件流图。
(4)为具有重要的动态行为的类建立状态图。
(5)检查多个状态图共享事件的一致性和完整性。
4.建立功能模型(Functional Model)功能模型完全由数据流图和约束组成,而数据流图由过程、数据流、参与者和数据存储组成。
其中,一个过程将输入数据值转变为输出数据值。
建立功能模型的步骤如下。
(1)识别出输入值和输出值。
(2)根据需要使用数据流图描述功能依赖关系。
(3)描述每个功能的作用。
(4)识别约束。
(5)规定优化标准。
5.细化对象模型、动态模型和功能模型,并建立文档当分析完成后,要验证分析模型是否满足系统最初的需求,这个活动需要该问题领域的专家参与,以检验产生的分析模型。
2.2.2 系统设计在系统设计阶段,主要确定系统的高层次结构。
《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.个人总结这次作业。