图书管理系统面向对象分析与设计.doc_第1页
图书管理系统面向对象分析与设计.doc_第2页
图书管理系统面向对象分析与设计.doc_第3页
图书管理系统面向对象分析与设计.doc_第4页
图书管理系统面向对象分析与设计.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南文理学院芙蓉学院软件工程课程设计报告题 目 模拟超市收银系统 学生姓名 周建玲 学 号 11170103 专业班级 计科1101 指导老师 周学清 设计时间 2014.6.17 评阅意见:评定成绩: 指导老师签名: 年 月 日目 录1、引言31.1 问题的提出31.2 设计思想31.3开发目的31.4背景说明32、需求分析42.1需求调查分析33、用况健模43.1用例建模分析43.2用例图44、 静态建模54.1概念结构设计74.2逻辑结构设计9超市收银概念类图125、系统设计136、对象设计13超市收银系统设计类图157、动态建模16超市收银系统顺序图188、物理建模18超市收银系统物理结点图199、心得体会及总结201、引言1.1 问题的提出 由收银员输入顾客的会员卡卡号(若有卡)、所购商品的货号等。从数据库(或文件)中取出有关价格信息,再把这些信息返回给收银台。同时把该收银台的销售总量和有关种类商品的剩余量以及该持卡顾客的消费情况交数据库(或文件)存储以供查询。另外,对没有卡的消费情况不记录该顾客的消费情况等个人信息。如果一个未持卡顾客一次性购物满200元,可为其发放一张会员卡,以后在该商场购物可获得9折优惠。超市是一个客流量很大的地方,每天都有很多的顾客要消费买东西,收银员要和很多的顾客结算,并且要给这些结算存档,以便日后查看或统计。如果只用人工的方法去处理这些结算和计算的数据将是一件很复杂繁琐的事情,而且将要投入大量的人力物力,并且会浪费大量的时间。为了解决此类问题,并且实现科学化,实用化的超市管理,我们就需要设计开发超市管理系统,并用于实践测试,使超市收银进入现代化、简单化。1.2 设计思想 该设计的指导思想是一切步骤简单化、实用化,系统的功能全面,界面尽可能美观大方,操作尽量简单明了,而且作为一个实用的应用系统要有较好的容错性,子出现错误操作时能够尽可能及时地给出提示,以使用户及时进行改正,以及避免错误的操作。1.3开发目的(1)大大提高超市的运作效率;(2)通过全面的信息采集和处理,辅助提高超市的决策水平;(3)使用本系统,可以迅速提升超市的管理水平,为降低经营成本, 提高效益。1.4背景说明21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。2需求分析21需求调查分析需求调查分析的结果一般用文字描述,必要时也可用业务流程图辅助描述。“图书管理系统”需求陈述如下:本系统主要实现的功能:(1)营业员前台收银管理主要对销售管理(如商品录入,条形码扫描和结账)和会员业务管理(添加VIP、删除VIP、打折);(2) 后台管理员管理只要是管理员对供应商品信息和普通管理员信息的管理,其中包括统计数据,发布公告,管理权限,设置密码,初始化系统,恢复数据,备份数据,导入导出数据。一个更为完善的超市收银管理系统,应提供更为强大的数据库,对信息的保护手段仅限于设置用户级别,以及提供数据文件的备份,比较简单,不能防止恶意的破坏,安全性能有待进一步完善。 2-1-1业务流程图3. 用况健模3.1用例建模分析(1)商品信息:包括商品位唯一的编号、商品名、商品单价,出厂日期,过期日期,厂家信息,库存总量。(2)交易清单:包括交易的流水账号、每类商品的编号、商品名、数量、该类商品的单价和总金额、交易的时间、负责本次收银的员工号。(3)收银管理获取权限:销售员登陆,取得进行相关收银的权限。商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、商品名称等来实现精确或模糊的商品扫描录入,如果是采用模糊扫描的话,则在查询到满足条件的商品信息后要在匹配的结果中选择需要的商品。该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入。收银业务:通过录入商品编号或直接输入商品名称(对于同类多件商品可采用一次录入然后修改数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,经收银员确认后打印交易清单。果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行优惠(折扣可以在系统中定义),并将所购物品的总金额累计到该会员的总消费金额中。 (4)商品信息管理管理员登陆之后,即可进行相应权限的操作,包括商品信息的录入,修改以及删除。在管理员操作之后立即跟新数据库,以及形成文档日志,记录对商品信息进行操作的信息。以便恢复数据库和记录操作情况。(5)经理管理经理登陆系统后,可以添加,删除以及修改商品信息管理员,以及收银员的信息和密码。并可提现,系统自动保存提现记录。以及查看销售盈利情况。(6)客户信息管理收银员登陆后,本模块实现添加,删除以及查询积分卡信息。3.2用例图确定用况之间的关系,以下是超市收银系统总体用例图: 图3-1-1 总体用例图以下是超市收银系统后台管理部分用例图: 图3-1-2普通管理员管理用例图以下是超市收银系统前台收银用例图:图3-1-3超市收银系统前台收银用例图 以下是后台超级管理员管理系统用例图:图3-1-4 系统管理员管理用例图4.静态建模4.1概念结构设计顾 客会员号积 分系统分为三个实体:顾客,商品,仓库。顾客实体图: 图4-1-1 顾客实体图商品实体图:商 品商品号商品名单 价说 明图4-1-2 商品实体图仓库实体图:仓 库仓库号进货日期库存量商品号 图4-1-3 仓库实体图系统E-R图:存 放商 品仓 库选 购顾 客购物号日 期mnmn收 银 员 号图4-1-4 系统E-R模型 图4-1-5 实体联系(E-R)图类之间的关系如图图4-1-6所示。图4-1-6 超市收银概念类图4.2逻辑结构设计首先使用本章介绍的CRC或OMT技术,通过寻找系统需求陈述中的名词,结合图书管理的领域知识,首先给出候选的对象类,经过筛选、审查,根据E-R模型设计数据库表结构关系模式如下库存表(仓库号,进货时期,商品号,库存量)商品表(商品号,商品名,单价,说明)会员表(会员号,积分)购物表(购物号,商品号,数量,会员号,日期,收银员号)超市收银系统各表结构设计如下:这里仅以“会员”类为例列出该类的属性和操作,其它类的属性可参阅附录D“图书管理系统软件设计规格说明书”中4.2“数据表结构”,操作与“会员”类的类似。 私有属性 会员编号(借书证号码和用户名与此同):文本会员姓名:文本会员类别编号:文本会员性别:文本出生日期:时间/日期会员状态:文本办证日期:时间/日期证件名称:文本证件号码:文本会员单位:文本联系地址:文本联系电话:文本EMAIL:文本用户密码:文本办证操作员:文本备注:文本 公共操作永久写入会员信息永久读取会员信息新增会员删除会员修改会员信息获取会员信息查找会员信息商品表:列 名数据类型长 度允许空商品号char10否商品名char10否单 价smallmoney8否说 明char30是 表4-2-1 商品表库存表:列 名数据类型长 度允许空仓库号char10否进货日期datetime8否商品号char10否库存量int6否 表4-2-2 库存表会员表:列 名数据类型长 度允许空会员号char10否积 分int8否 表4-2-3 会员表购物表:列 名数据类型长 度允许空购物号char10否商品号char10否数 量int6否会员号char10是收银员号char10是日 期datetime8否表4-2-4 购物表各表关系如下:仓库号进货日期商品号库存量购物号商品号数 量会员号日 期商品号商品名单 价说 明会员号积 分收银员号表4-2-5 关系图5系统设计“超市收银管理系统”系统设计用包图描述,如图5-1-1所示。图5-1-1超市收银管理系统包图6对象设计对象设计主要有两个任务:一是对类的属性和操作的实现细节进行设计。如上面“会员”类的属性“联系电话”有多个时,决定用一个链表或数组来存放,也可能需要增加属性和操作,如“会员”类中增加属性“相片”,而后设计每一个操作的算法。二是分别从人机交互、数据管理、任务管理和问题域方面考虑,以实现的角度添加一些类,或优化类的结构。如从数据管理方面,需要添加一个“永久数据”类作为需要永久保存数据类的父类,承担读写数据库的责任;从人机交互方面,需要添加一个“对话框”类(其父类是“窗口”类)来实现人机交互的功能,则图6-1-1可改进为图6-1-2。 类图一般包含3个组成部分。第一个是类名;第二个是属性(attributes);第三个是该类提供的方法。类名部分是不能省略的,其他组成部分可以省略。类名书写规范:正体字说明类是可被实例化的,斜体字说明类为抽象类。属性和方法书写规范:修饰符 描述信息 属性、方法名称 参数 :返回类型|类型属性和方法之前可附加的可见性修饰符:加号(+)表示public;减号(-)表示private;#号表示protected;省略这些修饰符表示具有package(包)级别的可见性。如果属性或方法具有下划线,则说明它是静态的。描述信息使用 结尾。类的性质是由一个属性、一个赋值方法和一个取值方法组成。书写方式和方法类似。以下是超市收银系统前台收银设计类图:图6-1-1 前台收银设计类图以下是超市收银系统后台管理设计类图:图6-1-2 后台管理设计类图 以下是超市收银系统设计类图:图6-1-3 超市收银系统设计类图7动态建模顺序图是将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。消息用从一个对象的生命线到另一个对象生命线的箭头表示。顺序图是一种动态建模方法以下是超市收银系统的顺序图:图7-1-1 超市收银系统顺序图状态转换图指明了作为外部事件结果的系统行为,描绘了系统各种行为模式和在不同状态间转换的方式,状态转换图主要包括两方面;状态与事件;状态是任何可以被观察到的系统模式,状态分为初态(初始状态)、终态(即最终状态)和中间状态;事件是在某个特定时刻发生的事情情,它是对引起系统做动作或从一个状态换到另一状态的外界事件的抽象。初态-实心圆 终态-一对同心圆中间态-圆形矩形,分上(状态名称)、中(状态变量的名字和值)、下(活动表)三部分。主要符号可如下图表示状态变量1 状态1活动表1活动表2 状态1初始事件事件结束事件 状态变量2图7-1-2 超市收银系统状态关系图图7-1-3 超市收银系统状态图8.物理建模“超市收银系统”物理结点分布如图8-1-1所示。图8-1-1 超市收银系统物理结点图9、心得体会及总结时间如梭,两周的课程设计就已经完成了,我学习到了很多知识,专业知识方面更是有了很大的提高,培养了我们的动手能力,使我们能够熟练的理论联系实际,提高了我们在实际问题中解决问题的能力,让我更加了解了软件工程面向对象的思想。 在这次课程设计中,我们分别画了用例图,概念类图,顺序图,协作图,设计类图,状态图,包图和部署图。这期间我们学会了用starUML软件画图,也学会了用Visio软件画图,熟练的掌握了这两个软件的操作,提高了我们自身的实际操作能力。同时,在软件开发方面也积累了不少经验,对软件工程的知识重要性的认识更深了,懂得了面向对象的基本思想。通过这次课程设计的锻炼,自己分析问题和解决问题的能力都得到了锻炼和提高,完善了自己的知识结构,加深了对所学知识的理解。在今后的学习中,我会做到取长补短,不断学习新的知识,吸取经验,达到进步的目的。在学和做的过程中自身的努力以及相关图书馆资料的帮助,也让我对数据库的知识运用也有了进一步的了解。在这个快速发展的当代社会里,数据库已经普遍

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论