光盘商店管理系统需求分析(共18页).doc
《光盘商店管理系统需求分析(共18页).doc》由会员分享,可在线阅读,更多相关《光盘商店管理系统需求分析(共18页).doc(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上光盘商店管理系统面向对象系统分析 撰写时间:2009年12月15日 版权所有:软件工程实验第四小组目 录1.引言1.1 编写目的光盘商店管理系统作为光盘商店管理人员管理商店的系统平台,因此,要求运用该系统能够使商店管理更加合理化、规范化、系统化。为了设计一个更加完善的系统,我们必须对系统做一个详细的分析。本次我们小组运用面向对象的分析方法,借助用例图、流程图和类图等形式,完成可行性研究报告,并且对问题域和系统责任进行分析和理解,对系统中的事物和它们之间的关系产生正确的认识,找出了系统所需的类和对象,定义这些类和对象的属性操作,以及它们之间形成的各种关系。根据本小组之前
2、完成的相关文档和图,包括可行性研究报告、用例图、流程图、发现对象类和建立类图等,在此,我们做了一个总结!1.2 项目背景开发项目名称:光盘商店管理系统。项目任务提出者:班软件工程实验小组。项目用户:光盘商店管理人员。实现项目单位:班软件工程实验小组项目与其他软件,系统的关系:本项目采用C/S模式,客户端的程序是建立在Windows XP 系统上以.net开发环境的应用程序,服务器端采用Windows XP 为操作系统的工作站,是采用SQL 2000的为开发软件的数据库服务程序。2.需求分析2.1 系统中的用例 需求分析的时候,我们清楚这个系统的责任,具体有哪些人参与其中,每个人的责任和工作以及
3、权限是什么,在此,为了把这些内容描述出来,我们采用了用例图,每个用例表示一个工作内容。2.1.1、系统中的参与者图2.1.1 参与者2.1.2、仓库管理员的用例 仓库管理员对光盘商店的仓库进行进出库的管理,主要工作有库存管理与采购管理,我们可以得到仓库管理员的用例图如下:图2.1.2 仓库管理员的用例图2.1.3、老板的用例 老板也是系统中的用户,可以设置多个不同的老板用户,它在系统中的执行的权限即实际老板的权限,主要工作是:对系统中各种数据进行查询和分析并做出商店下一阶段的计划或经营决策、对会员进行管理。因此我们可以得出老板的用例图如下:图2.1.3 老板的用例图2.1.4、销售员的用例 作
4、为商店,销售员当然是必不可少的,而且一般要设置多个,负责商店的一切销售事物,具体工作有:光盘销售,光盘订购,光盘出租和会员登记。因此我们可得出销售员的用例图如下:图2.1.4 销售员的用例图2.1.5、系统管理员的用例 系统管理员的主要工作有:用户管理和数据备份。其用例图如下:图2.1.5 系统管理员的用例图2.1 系统流程 用例图只是描述了系统中的各项业务需求,以及各个角色在系统中的责任与工作,但是并未描述一个角色在做某个工作的时候是如何进行的,因此,列出用例只是我们需求分析的第一步,我们还应该对这些工作的流程进行描述,为此,我们引入了以下的系统流程图。 明确系统流程,我们必须首先确定系统的
5、范围,由用例图进行分析和归纳,我们可以把本光盘商店管理系统分为:用户管理模块,光盘销售模块,会员信息管理模块,仓库管理模块,系统维护模块,数据查询模块。2.2.1、用户管理模块本模块主要是对系统中的管理用户进行一系列管理。包括用户登录注销、增加删除和修改。该模块又可分为2 个子模块:用户登录用户信息管理其中,在用户登录引入了验证码。验证机制利用系统自动产生随机数法,较有效的防止了穷举法。用户密码要求加密,加密方法引入MD5,防止直接打开数据库读取密码。当输入用户ID和密码、验证码其中一项错误时,就返回错误信息,回到登录界面。由以上描述我们得出本模块的流程如下:图2.2.1 用户管理模块流程图2
6、.2.2、光盘销售模块本模块主要是为销售员提供销售管理该模块又可分为三个子模块:商品销售商品出租商品订购该子系统如下图所示:图2.2.2 光盘销售模块的流程图2.2.3、会员信息管理模块本模块主要是对商店的会员进行管理,包括增加,删除,修改,查询,升级。该子系统如下图所示:图2.2.3 会员信息管理模块2.2.4、仓库管理模块 本模块主要是对仓库进行管理,主要包括订货,入库。图2.2.4 仓库管理模块2.2.5、数据查询模块 本模块主要是对数据库中的数据进行查询,包括报表汇总,盈亏情况,商品销量趋势等。该子系统如下图所示:图2.2.5 数据查询模块2.3 系统中的对象类 以上我们已经把系统中的
7、用例以及系统的核心流程描述出来了,接下来我们就必须根据用例图和系统流程图把系统中的名词(即对象类)提取出来,并将其尽享抽象,得出系统中涉及到的各个类。2.3.1、系统中的对象图2.3.1 系统中的对象2.3.2、系统中的类 对2.3.1中所提到的对象进行抽象,可得到系统中的类如下:图2.3.2 系统中的类2.1 系统核心数据流 以上我们已经把系统中的类分析出来了,那么接下我的分析工作就转移到分析类鱼类之间的关系了,那么我们要如何来得出获得类与类之间的关系呢?为了解决这个问题,我们引入了数据流图,将系统中的数据流分析出来,并从中分析出个各类之间的关系。2.4.1、系统最顶层数据流 最顶层数据流图
8、描述的是系统中各个参与者与系统之间的关系,由某个参与者发出的数据通过光盘商店管理系统之后种植与哪一个参与者。但此时并不考虑数据在系统中是如何流动的,而只是说明是和人将何种数据流入系统,又是何种数据从系统中流出到何人。 那么通过分析,我们得出系统最顶层数据流图如下:图2.4.1 最顶层数据流图2.4.2、系统详细数据流 对系统最顶层数据流图中的各个数据流进行细化,将每个数据流在系统中的流动细节详细的描述出来,即何时在何地产生何数据通过何路径于何时流向何地。 经过分析,我们可以得出系统详细数据流图如下:图2.4.2 系统详细数据流图2.5 系统中的类图 类图是面向对象分析方法最重要的部分,之前的分
9、析都是为了创建类图,至此我们已经分析了系统用例,参与者,系统流程,对象类和核心数据流,最后我们就可以根据以上的分析结果,特别是对象类和核心数据流两个部分,来创建类图。2.5.1、类图 以下便是我们的类图:图2.5.1 类图2.5.2、各个类的详细描述Store(仓库管理员)Bool storeLackOfGoods(Table t ):缺货登记 输入:存储量低于下限的光盘的明细表 输出:登记成功或失败及可能导致失败的原因Bool storeStock(Table t):采购 输入:所销售的光盘的明细表 输出:交易完成Bool storeWriteDB(Table t):入库 输入:所入库的光盘
10、的明细表 输出:相关数据表更新完成Bool storeUpdPrice(string a ,double b):价格更新 输入:光盘编号,价格 输出:更改成功或失败及失败的原因Warn(报警)WarnCDID(光盘编号)=int(15),对应光盘类的光盘编号属性,用于区别不同的光盘WarnMaxSize(上限)=int(15),某种光盘库存的上限WarnMinSize(下限)=int(15), 某种光盘库存的下限Void WarnLackOfGoods(int a):缺货报警If(CDNum WarnMaxSize):提示直销;Managar(系统管理员)Bool ManagarDataCop
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 光盘 商店 管理 系统 需求 分析 18
限制150内