中南大学软件工程基础实验报告
中南大学软件体系结构实验报二

实验2 UML实验(2)实验学时: 2每组人数: 1实验类型: 3 (1:基础性2:综合性3:设计性4:研究性)实验要求: 1 (1:必修2:选修3:其它)实验类别: 3 (1:基础2:专业基础3:专业4:其它)一、实验目的1. 学习类图的绘制;2. 学习从系统需求中识别类,并构建相应的面向对象模型;3. 学习使用顺序图描述对象之间的交互;4. 学习使用活动图为业务流程建模;5. 学习使用PowerDesigner实现正向工程和逆向工程。
二、实验内容1. 根据以下描述绘制类图,再正向工程生成Java源代码(也可生成其他面向对象语言的源代码,如C++或C#等):图形(Shape)可分为圆形(Circle)、矩形(Rectangle)、椭圆形(Ellipse)等具体图形,在Shape 类中提供了一个抽象的draw()方法用于绘制图形,而在具体的图形类中实现该抽象draw()方法。
提供一个图形工厂类(ShapeFactory),该类提供一个静态方法createShape(char type),其返回类型为Shape,参数type为所需绘制图形对应的代码,例如“c”表示圆形,“r”表示矩形,“e”表示椭圆形等,在createShape()方法中,可以使用条件语句来判断所需绘制图形的类型,并根据参数的不同返回不同的具体形状对象。
【注:“创建关系”是一种特殊的“依赖关系”】2. 根据以下描述绘制类图:某商场会员管理系统包含一个会员类(Member),会员的基本信息包括会员编号、会员姓名、联系电话、电子邮箱、地址等,会员可分为金卡会员(GoldMember)和银卡会员(SilverMember)两种,不同类型的会员在购物时可以享受不同的折扣;每个会员可以拥有一个或多个订单(Order),每一个订单又可以包含至少一条商品销售信息(ProductItem),商品销售信息包括订单编号、商品编号、商品数量、商品单价和折扣等;每一条商品销售信息对应一类商品(Product),商品信息包括商品编号、商品名称、商品单价、商品库存量、商品产地等。
软件工程实验报告材料

软件工程实验报告材料一、实验目的本次软件工程实验的主要目的是通过实际项目的开发,深入理解和掌握软件工程的基本原理、方法和技术,提高软件开发的能力和质量。
具体包括以下几个方面:1、熟悉软件开发的完整生命周期,包括需求分析、设计、编码、测试和维护等阶段。
2、掌握面向对象的分析与设计方法,能够运用 UML 等工具进行系统建模。
3、学会使用一种或多种编程语言和开发工具,实现软件系统的功能。
4、培养团队合作精神,提高沟通和协调能力,共同完成项目开发任务。
5、了解软件测试的方法和技术,能够进行有效的测试用例设计和测试执行。
二、实验环境1、操作系统:Windows 102、开发工具:Visual Studio 20193、编程语言:C4、数据库管理系统:SQL Server 20195、版本控制工具:Git三、实验项目描述本次实验的项目是开发一个学生成绩管理系统,该系统主要用于学校对学生成绩的管理和统计分析。
系统的主要功能包括学生信息管理、课程信息管理、成绩录入、成绩查询、成绩统计分析等。
四、实验过程1、需求分析通过与学校管理人员和教师的沟通交流,了解他们对学生成绩管理系统的需求和期望。
对收集到的需求进行整理和分析,确定系统的功能和性能要求。
编写需求规格说明书,详细描述系统的功能、界面设计、数据存储等方面的需求。
2、设计根据需求规格说明书,进行系统的总体设计和详细设计。
运用面向对象的分析与设计方法,使用 UML 工具绘制系统的用例图、类图、时序图等。
确定系统的架构和模块划分,设计数据库表结构和数据存储方式。
3、编码根据设计文档,选择合适的编程语言和开发工具,进行系统的编码实现。
遵循编程规范和代码质量标准,编写清晰、可维护的代码。
在编码过程中,进行代码的调试和测试,确保代码的正确性和稳定性。
4、测试制定测试计划,设计测试用例,包括功能测试、性能测试、安全测试等。
对系统进行全面的测试,发现并修复存在的问题和缺陷。
中南大学软件体系结构实验3-创建型设计模式实验

实验3 创建型设计模式实验实验学时: 2每组人数: 1实验类型: 3 (1:基础性 2:综合性 3:设计性 4:研究性)实验要求: 1 (1:必修 2:选修 3:其它)实验类别: 3 (1:基础 2:专业基础 3:专业 4:其它)一、实验目的1.熟练使用面向对象设计原则对系统进行重构;2.熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的创建型设计模式,包括简单工厂模式、工厂方法模式、抽象工厂模式和单例模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式。
二、实验内容1.在某图形库API中提供了多种矢量图模板,用户可以基于这些矢量图创建不同的显示图形,图形库设计人员设计的初始类图如下所示:Circle+ + + + +init ()setColor ()fill ()setSize ()display ()...: void: void: void: void: voidTriangle+++++init ()setColor ()fill ()setSize ()display ()...: void: void: void: void: voidRectangle+++++init ()setColor ()fill ()setSize ()display ()...: void: void: void: void: voidClient在该图形库中,每个图形类(如Circle、Triangle等)的init()方法用于初始化所创建的图形, setColor()方法用于给图形设置边框颜色,fill()方法用于给图形设置填充颜色,setSize()方法用于设置图形的大小,display()方法用于显示图形。
客户类(Client)在使用该图形库时发现存在如下问题:①由于在创建窗口时每次只需要使用图形库中的一种图形,因此在更换图形时需要修改客户类源代码;②在图形库中增加并使用新的图形时需要修改客户类源代码;③客户类在每次使用图形对象之前需要先创建图形对象,有些图形的创建过程较为复杂,导致客户类代码冗长且难以维护。
软件基础实验报告

实验名称:软件基础实验实验日期:2023年4月15日实验地点:计算机实验室实验目的:1. 熟悉软件工程的基本概念和原则。
2. 掌握软件需求分析、设计、实现和测试的基本方法。
3. 培养团队协作和沟通能力。
实验内容:一、实验环境1. 操作系统:Windows 102. 编程语言:Java3. 开发工具:Eclipse4. 数据库:MySQL二、实验内容概述本次实验以一个简单的学生信息管理系统为例,通过实际操作,让学生了解软件开发的整个过程,包括需求分析、系统设计、编码实现和系统测试。
三、实验步骤1. 需求分析- 分析学生信息管理系统的功能需求,如学生信息录入、查询、修改、删除等。
- 分析非功能需求,如系统性能、安全性、易用性等。
2. 系统设计- 设计系统架构,包括前端界面和后端数据库。
- 设计数据库表结构,如学生信息表、课程信息表等。
- 设计界面布局和交互逻辑。
3. 编码实现- 使用Java语言实现学生信息管理系统的功能。
- 使用Eclipse开发工具进行编码。
- 使用MySQL数据库存储数据。
4. 系统测试- 进行单元测试,确保每个模块的功能正确。
- 进行集成测试,确保系统各模块之间能够正常工作。
- 进行性能测试,确保系统满足性能要求。
四、实验结果与分析1. 需求分析通过与用户沟通,明确了学生信息管理系统的功能需求和非功能需求,为后续开发奠定了基础。
2. 系统设计设计了合理的系统架构,包括前端界面和后端数据库,使得系统具有良好的可扩展性和易维护性。
3. 编码实现使用Java语言实现了学生信息管理系统的功能,包括学生信息录入、查询、修改、删除等,满足了需求分析中的功能需求。
4. 系统测试进行了单元测试、集成测试和性能测试,确保了系统的稳定性和性能。
五、实验总结通过本次实验,我们掌握了软件工程的基本概念和原则,熟悉了软件需求分析、设计、实现和测试的基本方法。
同时,培养了团队协作和沟通能力。
在实验过程中,我们遇到了一些问题,如数据库连接失败、界面布局不合理等。
软件工程实习报告(三篇)

软件工程实习报告一、实习概况本次实习是我在某软件公司进行的为期三个月的实习。
实习期间,我被分配到了软件开发部门,参与了一个基于Java的项目的开发工作。
在这个项目中,我主要负责了功能模块的设计、编码和测试工作。
通过这次实习,我深入了解了软件开发的流程和方法,并学习到了许多实用的技术和工具。
二、实习内容1. 需求分析与设计在项目启动前,我参与了需求分析的工作。
通过与产品部门的沟通和确认,我明确了项目的功能需求和业务逻辑。
然后,我和团队成员们一起进行了系统设计。
我们使用UML建模工具进行了类图和时序图的绘制,以明确系统的结构和交互流程。
2. 编码与调试在需求分析和设计完成后,我开始了编码和调试工作。
我们项目采用了Java作为开发语言,所以我使用了Eclipse作为开发工具。
我根据需求文档和设计图,先编写了基础代码框架,然后逐步完善各个功能模块。
在编码过程中,我遵循了代码规范和设计原则,并积极参与了代码评审和重构工作。
3. 测试与集成在编码完成后,我进行了功能测试和集成测试。
我使用Junit进行了单元测试,并通过Mockito框架进行了模拟和验证工作。
在测试中,我发现了一些潜在的问题,并及时修复了它们。
在集成测试中,我与其他成员合作,测试了系统各个模块之间的交互和兼容性。
4. 文档编写与维护在实习期间,我还负责了部分文档的编写和维护工作。
我参与了用户手册和技术文档的编写,以便使用人员和开发人员可以更好地理解项目的功能和实现细节。
我还负责了项目的版本控制和文档管理工作,确保了项目资料的安全和可追溯性。
三、实习收获1. 技术能力的提升在实习期间,我得到了大量的实践机会,提升了自己的技术能力。
我学会了使用Eclipse进行项目开发,掌握了Java语言的常用库和框架,并熟悉了常见的设计模式和软件开发方法。
我还学会了使用Git进行版本控制和团队协作,以及使用Junit和Mockito进行测试和调试。
2. 项目管理和沟通能力的提升在实习期间,我参与了团队的讨论和决策,学会了如何与他人进行有效的沟通和协作。
软件工程实验报告总结

软件工程实验报告总结(3篇)经过这学期软件工程实验的学习,深深感到用户需求对软件的重要性。
成功的软件产品是建立在成功的需求基础之上的,而高质量的需求来源于用户与开发人员之间有效的沟通与合作。
当用户有一个问题可以用计算机系统来解决,而开发人员开始帮助用户解决这个问题,沟通就开始了。
需求获取可能是最困难、最关键、最易出错及最需要沟通交流的活动。
对需求的获取往往有错误的认识:用户知道需求是什么,我们所要做的就是和他们交谈从他们那里得到需求,只要问用户系统的目标特征,什么是要完成的,什么样的系统能适合商业需要就可以了,但是实际上需求获取并不是想象的这样简单,这条沟通之路布满了荆棘。
首先需求获取要定义问题范围,系统的边界往往是很难明确的,用户不了解技术实现的细节,这样造成了系统目标的混淆。
其次是对问题的理解,用户对计算机系统的能力和限制缺乏了解,任何一个系统都会有很多的用户或者不同类型的用户,每个用户只知道自己需要的系统,而不知道系统的整体情况,他们不知道系统作为一个整体怎么样工作效率更好,也不太清楚那些工作可以交给软件完成,他们不清楚需求是什么,或者说如何以一种精确的方式来描述需求,他们需要开发人员的协助和指导,但是用户与开发人员之间的交流很容易出现障碍,忽略了那些被认为是认为是""很明显很明显""的信息。
最后是需求的确认,因为需求的不稳定性往往随着时间的推移产生变动,使之难以确认。
为了克服以上的问题,必须有组织的执行需求的获取活动。
需求获取活动要完成的任务或者步骤的过程如下:1、编写项目视图和范围文档系统的需求包括四个不同的层次:业务需求、用户需求和功能需求、非功能性需求。
业务需求说明了提供给用户新系统的最初利益,,反映了组织机构或用户对系统、产品高层次的目标要求,初利益它们在项目视图与范围文档中予以说明。
用户需求文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明。
中南大学软件体系结构实验报告一

实验1 UML实验(1)实验学时: 2每组人数: 1实验类型: 3 (1:基础性2:综合性3:设计性4:研究性)实验要求: 1 (1:必修2:选修3:其它)实验类别: 3 (1:基础2:专业基础3:专业4:其它)一、实验目的1.学会安装和使用建模工具PowerDesigner,熟练使用PowerDesigner绘制常用的UML 图形,熟悉常用的UML符号;2.构建用例模型来描述软件需求,包括绘制用例图,撰写用例文档并制作用例检查矩阵;3. 绘制状态图描述对象的状态及转换。
二、实验内容1. 某酒店订房系统描述如下:(1) 顾客可以选择在线预订,也可以直接去酒店通过前台服务员预订;(2) 前台服务员可以利用系统直接在前台预订房间;(3) 不管采用哪种预订方式,都需要在预订时支付相应订金;(4) 前台预订可以通过现金或信用卡的形式进行订金支付,但是网上预订只能通过信用卡进行支付;(5) 利用信用卡进行支付时需要和信用卡系统进行通信;(6) 客房部经理可以随时查看客房预订情况和每日收款情况。
绘制该酒店订房系统的用例图。
2. 根据以下场景绘制用例图:某企业为了方便员工用餐,为企业餐厅开发了一个订餐系统(COS:Cafeteria Ordering System),企业员工可通过企业内联网使用该系统。
该系统功能描述如下:(1) 企业的任何员工都可以查看菜单和今日特价;(2) 系统的顾客是注册到系统的员工,可以在线订餐(以下操作均需先登录)、注册工资支付、修改订餐信息和删除订餐信息,在注册工资支付时需要通过工资系统进行身份验证;(3) 餐厅员工是特殊的顾客,可以进行备餐(系统记录备餐信息)、生成付费请求和请求送餐,其中对于注册使用工资支付的顾客生成付费请求并发送给工资系统;(4) 菜单管理员是餐厅员工的一种,可以管理菜单;(5) 送餐员也是餐厅员工的一种,可以打印送餐说明、记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。
中南大学软件工程大二实训总结

中南大学软件工程大二实训总结转眼间实训已过去一段时间,之前的兴奋、喜悦如今已经让我熟悉,在实训的每一天都会让我有成为一名真正的财富者拥有的冲动。
也许,在这期间不一定会让一个人有着翻天覆地的变化,但变化就是这样一点一点产生的。
通过这一期的实训,虽然倍感折磨,但是收获却是很大的,学习中我不但有了学习成果的喜悦,而且自己也日渐成熟,有种说不出的喜悦。
在实训的过程中,我深深的体会到了自己在专业知识方面的欠缺和不足,也意识到了自己作为计算机软件专业的学生,要想在以后的职业中崭露头角,除了要有过硬的理论知识,健康的体魄之外,还必须具备良好的心理素质,是自己在以后的途中无论经历什么样的困难,都立于不败之地。
通过实训老师的课堂讲解与企业文化标准的培训,使我加深了对自己专业的认识,从而确定自己以后的努力方向,要想在短暂的实训时间内尽多的学到东西,就需要我们跟老师或同学进行良好的沟通,加深彼此的了解,只有我们跟老师多沟通,让老师更了解我们,才能更真切的对我们进行培训工作。
由此,班级的文化“共享”就在生活中慢慢形成了。
“纸上得来终觉浅,绝知此事要躬行!”在这短短的时间里,让我深深的感觉到自己在实际应用中所学来专业知识的匮乏。
让我真真领悟到“学无止境”这句话的涵义。
而老师在专业认识周到中所讲的,都是课本上没有而对我们非常有实际意义的。
这又给我们的实训增添了浓墨淡彩的光辉。
我懂得了实际生活中,专业知识是怎样应用与实践的。
在这些过程中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中的各个成员合作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。
靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每一个成员的意见,是我们的组合达到更加完美。
这次实训除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。
当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中南大学软件工程基础实验报告————————————————————————————————作者:————————————————————————————————日期:软件工程基础实验报告软件工程基础实验报告指导老师:王春生姓名:学号:专业班级:完成日期: 2015.6.11 学院:信息科学与工程目录实验一熟悉Visio的工作环境-------------------------------------------3实验二运用Visio建模工具进行功能分析和建模-----------------8实验三完成用例图、uml类图、数据流图(DFD)------------13实验一熟悉Visio的工作环境一、实验目的1.了解visio 工具软件的功能特色、工作环境和基本操作等各方面知识2.掌握应用Visio工具绘制软件开发图形的基本操作,了解系统开发模板和建模方法二、实验内容1、了解Visio的工作环境2、了解Visio软件的菜单、工具、绘图等操作3、按照实验步骤绘制图形,完成用例图、ER图、数据流图4、了解类图和状态图在visio下的基本绘图操作5、(选做)绘制状态图*三、实验步骤1.绘制用例图用例图是指由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的动态视图。
用例图(User Case)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
2.绘制ER图(实体关系图)E-R方法是“实体-联系方法”(Entity-Relationship Approach)的简称。
它是描述现实世界概念结构模型的有效方法。
是表示概念模型的一种方式,用矩形表示实体型,矩形框内写明实体名;用椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来;用菱形表示实体型之间的联系,在菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1,1:n 或m:n)。
由于Visio 默认的绘图模板并没有E-R图这一项,但是画E-R图必须的基本图形Visio还是有的,所以我们就得先把必要的图形添加到“我的模板”。
以添加椭圆和矩形为例,打开Visio,在主界面的选择绘图类型下选择“框图”,然后选择“基本框图”。
完成下面ER图:3.绘制数据流图数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
4.了解绘制类图类图的常用的六种关系1.泛化(Generalization):是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。
例如:老虎是动物的一种,即有老虎的特性也有动物的共性。
2.实现(Realization)是一种类与接口的关系,表示类是接口所有特征和行为的实现.3.关联(Association):是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的,也可以是单向的。
双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。
4.聚合(Aggregation):是整体与部分的关系,且部分可以离开整体而单独存在。
如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。
5.组合(Composition):是整体与部分的关系,但部分不能离开整体而单独存在。
如公司和部门是整体和部分的关系,没有公司就不存在部门。
6.依赖(Dependency):是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖.5.绘制状态图*(选做)状态图(Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应的。
状态图有初态(实心圆)、终态(同心圆)和中间状态(圆角矩形)。
在活动表中常使用3种标准事件,entry事件指定进入该状态的动作,exit事件指退出该状态的动作,do事件则指定该状态下的动作。
四、实验绘图1.用例图2.ER图3.数据流图4.状态图五、实验总结在本此实验中我了解visio 工具软件的功能特色、工作环境和基本操作等各方面知识,掌握了应用Visio工具绘制软件开发图形的基本操作,学会了绘制用例图、ER图(实体关系图)、绘制数据流图和状态图,了解了绘制类图的方法和类图的常用的六种关系,即:泛化(Generalization)、实现(Realization)、关联(Association)、聚合(Aggregation)、组合(Composition)、依赖(Dependency)。
实验二运用Visio建模工具进行功能分析和建模一、实验目的:熟悉在Microsoft Visio 环境下软件和软件设计模板和方法,根据需求分析完成特定的系统设计二、实验要求:根据银行计算机储蓄系统项目需求来分析项目的业务逻辑,掌握运用Microsoft Visio建模工具进行功能分析和建模,并完成ER图、存款数据流图、取款数据流图、存款状态图、取款状态图。
三、实验内容:随着社会经济的发展,XX银行的业务不断上涨,传统的业务处理能已经难以适应当下的发展。
为了解决此问题,XX银行经理请同学们设计一套银行计算机储蓄系统。
具体内容如下:银行能为储户提供存款和提款功能,如果存款,储户填写存款单,交业务员输入系统,同时系统还要记录存款人的信息,完成后由系统打印存款单给储户。
如果是取款:储户填写取款单给业务员,业务员把取款金额输入系统并要求储户输入密码确定身份。
核对正确后系统计算出利息并打印利息清单给储户。
系统的层次方框图如下:基本描述:在本系统中,有业务员、顾客、银行三个实体,他们的属性如下:业务员:编号、姓名、性别、单位、年龄、工资、住址储户:账号、姓名、性别、身份证号、年龄、住址。
银行:名称、地址、经理、联系方式。
业务员可以为储户办理业务,储户可以在银行存取款并产生余额,业务员可以对银行进行管理。
当储户进行存款操作时候,储户递交存款单(存折),然后业务员进行验收存款单,如果填错请重新填写,接着业务员输入存款信息,储户输入密码,系统接受到存款信息进行存款处理并记录存款信息,接着系统返回存款信息并打印存单给储户。
当储户进行取款操作时候,储户递交取款单(存折),然后业务员进行验收,如有误请重填、然后储户输入密码、系统进行密码核对、如有误请重输,然后系统计算利息,更新余额信息、进行取款处理并记录取款信息,然后打印清单并把清单和现金转交给储户。
请仔细阅读需求分析,认真思考,完成ER图、存款数据流图、取款数据流图、存款状态图、取款状态图。
四、实验方案分析与设计:利用实验室的台式机对项目进行:E-R图建模;数据流图建模;UML状态图建模;对上述系统的需求进行详细的分析,并利用Visio将模型绘制、表达出来。
五、实验器材(设备、元器件):硬件:PC机;软件:MS Visio。
六、实验步骤:1.打开Visio。
2.对银行计算机储蓄系统进行分析3.对系统进行E-R图建模。
4.对系统的存款和取款进行数据流图建模6.对系统的存款和取款进行UML状态图建模。
7.对模型进行简要分析。
七、实验数据绘图1.ER图2.存款数据流图4.存款状态图八、实验总结在本次实验中掌握了运用Microsoft Visio建模工具进行功能分析和建模的方法,绘出ER图、存款数据流图、取款数据流图、存款状态图、取款状态图以后就可以清楚明白的知道银行计算机储蓄系统项目的业务逻辑。
这对我们今后的学习和工作都有很大帮助。
在实验过程中,由于实验一花费太多时间,以至于实验二有部分并没有完成,剩下的部分是在实验后补上的。
也许其中还有一些不完善的地方,只有以后来慢慢改正。
实验三完成用例图、uml类图、数据流图(DFD)一、实验目的:熟悉在Microsoft Visio 环境下软件和软件设计模板和方法熟悉在Microsoft Visio 环境下UML 建模方法与过程二、实验要求:根据网上图书销售系统系统项目需求来分析项目的业务逻辑,掌握运用Microsoft Visio建模工具进行功能分析和建模,并完成用例图、uml类图、数据流图(DFD)三、实验内容:实验1:某公司要开发一套网上图书销售系统,它的基本功能包括:用户可以商品查询、订购、个人信息维护、订单维护(包括增加、删除、订单状态查询)。
一般员工可以对订单进行处理,包括查询订单、接受订单、发货、缺货处理、库存查询。
同时员工也可以拒绝订单和更新库存。
管理员可以对系统进行直接管理,除了进行订单处理之外还可以使用图书信息维护、员工信息维护、销售记录查询、新书采购等功能。
1)请根据以上实验1需求对系统的参与者:管理员、一般员工、顾客进行UML 用例建模顾客可以使用网上图书销售系统在线购买商品,顾客的订单中可以有多本图书,一个顾客只能对应一条历史记录,但他有多个订单的记录。
一般员工和管理员都能处理多个订单。
只有管理员可以查看记录。
用户可以查看图书信息、搜索图书、预订图书、付款等功能实验2:▪用户(customer):用户ID、用户名、密码、注册日期、电话号码。
▪一般员工(employee): 员工ID、用户名、密码▪管理员(admin):员工ID、用户名、密码▪图书(book):图书编号、图书名、价格、作者、出版社。
▪订单(order):订单编号、用户编号、下单时间。
▪订单列表(orderlist) 订单编号、图书编号、购书数量。
▪销售记录(record):记录编号、用户ID、图书ID、订单编号2)请根据以上实验2系统需求设计出简要的类图实验3:顾客可以向网上图书销售系统提交订单,系统首先会校验订单,然后查看库存单,如果库存不足则更新缺货记录,订单处理后产生可供货订单,然后进行供货处理,供货处理会更新库存单和订单记录并产生备货单发给仓库。
经理可以根据订单记录进行销售统计来产生的统计表查看业务。
系统进行缺货统计后会发送缺货通知单后给采购部门,采购部门进行采购后会上报进货通知单,系统会根据进货通知单进行处理并修改缺货记录和库存记录并反馈到供货处理。
3)请根据以上实验3的数据流图(DFD)的顶层图来设计数据流图(DFD)的0层图四、实验绘图(1) UML用例建模(2)类图(3)数据流图(DFD)的0层图五、实验总结在本此实验中我学会了根据项目需求来分析项目的业务逻辑,掌握了运用Microsoft Visio建模工具进行功能分析和建模的方法,进一步熟悉了绘制用例图、uml类图、数据流图(DFD)的方法。