《系统分析与设计实验报告课案.docx》由会员分享,可在线阅读,更多相关《系统分析与设计实验报告课案.docx(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、系统分析与设计实验报告课案 鞋店进销存管理系统 一.项目背景 随着计算机技术的不断发展, 它已经成为人们工作和生活中不可缺少的工具。早在1954年,银行、大公司和大企业纷纷采用计算机进行账户和账目管理、生产管理、库存管理、销售管理、统计报表等。从数据的收集、存储、整理到检索统计,应用的范围日益扩大,使计算机的应用很快超过科学计算,成为最大的计算机应用领域。 鞋店管理的特点是信息处理量比较大,所存的鞋种类多,而且由于进货单、销售单、需求单等单据发行量特别大,关联信息多,查询和统计的方式各不相同等原因,因此在管理上实现起来有一定困难。在管理的过程中经常会出现信息的重复传递,单据报表种类繁多,各个部
2、门管理规格不统一等问题。 在本系统的设计过程中,为了克服这些困难,满足计算机管理的需要,我们采取了下面的一些原则: 1、统一各种原始单据的格式,统一账目和报表的格式。 2、删除不必要的管理冗余,实现管理规范化、科学化。 3、程序代码标准化,软件统一化,确保软件的可维护性和实用性。 4、界面尽量简单化,做到实用,方便,尽量满足书店中不同层次员工 的需要。 二.定义 “鞋店进销存管理系统”为用户提供添加、修改、查询、退货操作等服务。用户在登陆界面输入用户名,密码后系统核对正确进入系统内部。系统就要求用户选择事务类型(添加、修改、查询、退货等),直至用户选择退出应用服务,询问用户是否退出应用服务,如
3、果用户选择结束,系统重回登陆界面。用户进入添加界面后,首先可以输入的数字必须大于等于100),否则系统显示输入有误。用户点击确认后,由系统查询,判断该取值是否超出库存量,如果没有,则系统会显示确认界面,用户单点击“确认”后,系统自动生成账单,并在后台进行工作,系统进行清点并发出命令给仓库管理人员,并将数据更新到数据库中;否则提示用户库存量不足,请重新输入,重复上述过程。 三参考资料 系统分析与设计 四系统分析与设计 4.1需求分析 4.1.1识别参与者 用户(下订单者),系统维护人员,仓库管理人员 4.1.2 对需求进行捕获与描述 4.1.3 用例图 通过已掌握的需求,初步了解系统所要完成的功
4、能。下面给出用例图。 4.1.4 分析与讨论 1) 建模用例图的步骤、方法? 1. 确定系统的边界和范围;(方法:分析系统内部元素,把系统内部元素和外 部事物划分开) 2. 识别系统的参与者; 3. 发现用例; 4. 描述用例及确定用例关系;(方法:对用例概要描述;对用例详细描述。根据用例事件流,将公共行为抽取出来,已包含关系构建用例关系;变化部分,抽取出来,放到扩展用例中) 5. 建立用例图; 6. 定义用例图的层次结构; 2) 如何识别系统的参与者?应该如何划分用例,应注意哪些问题? 通过回答以下问题来识别系统的参与者: 1. 谁使用系统的主要功能? 2. 谁改变系统的数据? 3. 谁从系
5、统中获取数据? 4. 谁支持、维护系统? 5. 谁需要借助系统的支持来完成工作? 6. 系统需要操纵哪些硬件? 7. 系统需要和哪些外部系统交互? 8. 谁对系统运行结果感兴趣? 划分用例: 1. 每个参与者打算在这个系统里做些什么事情? 2. 参与者使用本系统要实现的目标是什么? 3. 参与者是否会在系统中创建、修改、删除、访问、存储数据?如果是,如何来完成这些操作? 4. 参与者是否会将外部的某些事件通知给该系统? 3) 心得 用例图主要用来描述用户、需求、系统功能单元之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。 用途:帮助开发团队以一种可视化的方式理解系统的功能需求。用例
6、图所包含的元素如下: 1. 参与者表示与您的应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示。 2. 用例用例就是外部可见的系统功能,对系统提供的服务进行描述。用椭圆表示 3. 子系统用来展示系统的一部分功能,这部分功能联系紧密。 4. 关系用例图中涉及的关系有:关联、泛化、包含、扩展; a. 关联表示参与者与用例之间的通信,任何一方都可发送或接受消息。 b. 泛化就是继承关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。 c. 包含包含关系用来把一个较复杂用例所表示的功能分解
7、成较小的步骤; d. 扩展扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。 e. 依赖表示源用例依赖于目标用例; 4.2 建立对象模型 4.2.1 候选类的数据字典 4.2.2定义类 “用户”类 ?属性 姓名(name):文本(char) 账号(userID):文本(char) 联系电话(TelNum):整形(int) 住址(Address):文本(char) ?操作 输入Input() 修改密码changePWD() 查询inquiry() “账单”类 ?属性 账单号(AccountNumber):整形(int) 余额(balance):字符串(string) ?操作 打开op
8、en() 扣除存款deductFunds () 存入存款withdrawFunds() “下单账目”类 ?属性 姓名(name):文本(char) 账号(userID):文本(char) 联系电话(TelNum):整形(int) 库存量(Amount):字符串(string) 下单数量(DepositAmount): 字符串(string) ?操作 添加add () 取消Cancel () “修改账目”类 ?属性 姓名(name):文本(char) 账号(userID):文本(char) 联系电话(TelNum):整形(int) 库存量(Amount):字符串(string) 退单数量(Dep
9、ositAmount): 字符串(string) ?操作 修改deposit () 取消Cancel () “屏幕”类 ?属性 ?操作 初始化initialize () 提示prompt () 输入input() “系统维护人员”类 ?属性 姓名(name):文本(char) 员工号(ID):整形(int) 联系电话(TelNum):整形(int) ?操作 维护Maintain() “仓库管理人员”类 ?属性 姓名(name):文本(char) 员工号(ID):整形(int) 联系电话(TelNum):整形(int) ?操作 配款DepositCash() 管理manage() “数据连接”类
10、 ?属性 ?操作 连接Connect() 取消Cancel () 4.2.3绘制类图 (在类图中标示出类的属性、操作、类之间的关系及多重性,并对所给出的类图解释说明。) 4.2.4包图 对于大型复杂系统,常需要把大量的模型元素用包组织起来,以方便处理。对所选系统的类进行分组,以便更清晰地了解系统的结构。 (画出包图并说相应解释说明) 4.2.5分析与讨论 1)建模类图的步骤、方法? 构建类图的步骤: 1. 确定类;(方法:行为分析、名词识别法、CRC分析法、根据边界类、控制类、实体类的划分、参考设计模式确定、通过领域进行分析等) 2. 识别类的属性和操作;(方法:结合需求陈述、领域知识和常识以
11、及经验等) 3. 识别类之间的关联;(方法:使用普通关联列表的方法) 4. 定义类的结构和层次。 2)识别类有哪些方法,你是如何识别类的? 行为分析、名词识别法、CRC分析法、根据边界类、控制类、实体类的划分、参考设计模式确定、通过领域进行分析等。 我通过名名词识别法确定类。 3)解释关联的多重性?如何确定类的属性、操作、类之间的关联关系、组织类之间的继承? 关联的多重性:关联表示了对象间的结构关系,在建模过程中,通常需要说明一个关联实例中有多少个相互连接的对象。 确定类的属性:从常识性、专业性、功能性、存储性、操作性、标志性、关联性发现和确定类的属性,进而筛选类的属性; 确定类的操作:综合对
12、象模型、动态模型和功能模型,确定类的操作; 确定类之间的关联关系:使用普通关联列表的方法帮助发现关联。并分析关联的多重性。 组织类之间的继承:自顶向下和自底向上的方法。 4.3 建立动态模型 系统的动态行为模型由交互图(顺序图和协同图)、状态机图和活动图表达。在系统的分析和设计中应当对主要的Use Case和对象类绘制这些图形,以便分析系统的行为,印证和修改系统的静态结构,满足用户的需求,达到系统的目标。 4.3.1顺序图 下单的用例图 4.3.2 通信图 (将以上顺序图转换为通信图) 4.3.3活动图 活动图的主要作用是表示系统的业务工作流和并发处理过程。针对自选系统主要的业务工作流绘制活动
13、图。 绘制活动图需要确定参与活动的对象、动作状态、动作流,以及对象流。 4.3.4状态图 状态机图表现一个对象(类)的生命史。对于一些实现重要行为动作的对象应当绘制状态机图。绘制状态机图需要确定一个对象的生命期可能出现的全部状态,哪些事件将引起状态的转移,将会发生哪些动作。 (绘制所选系统的一个对象的状态图并解释说明) 4.3.5 分析与讨论 比较顺序图与通信图、活动图与状态图的应用。 顺序图:描述的是参与交互的对象及对象之间消息交换的顺序,用来表示用例中的行为顺序。 通信图:强调发送和接收消息的信息的对象及其组织结构的交互图,用以描述对象以及对象之间的交互关系。 活动图:用来描述达到一个目标所实施一系列活动的过程,描述了系统的动态特征。状态图:描述系统中类和对象随时间变化的动态行为。 4.4物理模型 4.4.1 建立构件图 系统实现的源代码、二进制码、执行码可以按照模块化的思想,用构件分别组织起来,明确系统各部分的功能职责和软件结构。 (学生补充自选系统的运行软件织成的构件图并解释说明,如果需要,可以绘制系统的源代码、二进制码和执行码的构件的跟踪关系图。) 4.4.2 建立部署图 (学生补充自选系统的部署图并解释说明)
限制150内