我们面向对象课的第一次作业--需求分析,我贴出来大家给我提提意见,我第一次写这个东西,有不妥的地方请大家不要见笑

hawkgao 2001-09-09 10:21:33
XX超市管理系统软件需求说明书
1引言
1. 1编写目的
本说明书提供给XX超市项目负责人及其本项目组其他成员阅读。
1.2背景
a. 软件系统的名称:XX超市管理系统。
b. 本项目的任务提出者:XX超市。
c. 项目开发者:四川师范大学 昆仑GROUP。
d. 硬件情况:本项目在XX超市现有计算机硬件系统上运行。
e. 该软件系统同超市的财务管理软件联系。
1.3参考资料
a. 本项目的经核准的计划任务书或合同。(副本1)
2任务概述
2.1目标
本软件开发意图:有效控制商品在超市内的流动。从商品的入库、上架、出售、打折、非正常损耗、过期清仓,进行全程监控。使其流动状况能被管理部门及时掌握,并且提高商品出售的服务质量。本软件由销售终端和服务器组成。功能:
a. 收银台终端:商品出售时将出售情况实时反馈回中心服务器,并打印出售凭条。
b. 服务器:记录商品的入库、上架、出售、打折、非正常损耗、过期清仓。

本软件产品是一项相对独立的软件,同公司财务管理软件联系。
2. 2用户的特点
a. 销售终端由受过一般中等教育的售货员使用。
b. 服务器端由受过中等以上教育的中层管理人员使用。并由有专业数据库知识的技术人员进行管理。
3. 3假定和约束
1. 经费限制:
a. 总费用:XXXXXX
b. 业务活动费用开销:XXXXX以内。
c. 开发所需硬件资源开销:XXXXX以内。
2. 开发时间限制:
a. alfa版本在XXXX年X月XX日前交付测试。
b. 最终版本在XXXX年X月XX日前交付。
3需求规定
3.1对功能的规定
销售终端功能:将商品出售情况实时传回服务器更新数据。
a. 输入:用条形码阅读器读入商品编码,会员卡持有顾客同样用条形码阅读器读入会员卡编码 或手动输入商品编码。如果是顾客该次购买的最后一个商品,输入结算要求。
b. 处理:将商品编码和会员卡编码传回服务器,修改商品信息和会员卡信息。
c. 输出:显示商品:品名、售价、库存。如果是顾客该次购买的最后一个商品,购物金额结算,打印购物凭条。
服务器功能:
1. 录商品入库情况:
a. 输入:商品名称、商品生产 过期日期、商品入库日期、商品上架日期、在商品过期日期前多少日进行商品即将过期的提醒、生产厂家、厂家联系方式、厂家备注、。
b. 处理:将商品名称、商品生产日期、商品过期日期、在商品过期日期前多少日进行商品即将过期的提醒,生产厂家,录入商品数据表。将商品名称、生产厂家、厂家联系方式、厂家备注,录入厂家数据表。
c. 输出:输出输入的数据,确认正确。
2. 查询商品情况:
a. 输入:商品名称/商品编号/商品种类(种类也包括“全部”(将所有商品列出)),并且输入按哪种方式输出(商品名称----字母排序,产地名称----字母排序,售价----从低到高或者从高到低,热销度----从高到低或者从低到高)。
b. 处理:用输入的商品名称/商品编号/商品种类,对于商品编号和商品种类采取精确字符串匹配搜索,对于商品名称采用模糊字符串匹配搜索。找到商品纪录后再从厂家记录表里面找到厂家的信息。计算热销度:热销度=Km*((以销售量/总量)*100%/(当前日期-入库日起))。Km位商品的加权参数。
c. 输出:通过设定的输出模式讲商品的属性和商品的厂家属性输出。
3. 查询会员记录:
a. 输入:输入会员卡号。
b. 处理:查找会员列表,找到该会员。
c. 输出:输出该会员记录。
4. 商品过期提醒:
a. 输入:每天6:00从系统提取当日日期。
b. 处理:对具有过期日期的商品进行计算,寻找达到过期提醒日期的商品和已经过期的商品。
c. 输出:输出达到过期提醒商品的列表或者已经过期商品日期的列表。
5. 修改商品信息(先利用功能2查找到需要修改的商品记录):
a. 输入:修改的信息。
b. 处理:修改相关列表的内容。
c. 输出:输出修改后的信息。
6. 接受从销售终端传回的数据并修改数据库:
a. 输入:商品编号。
b. 处理:利用功能2查找到需要修改的商品记录,并且修改记录。并且累加本天销售额,记录入日销售清单。如果有会员号码传回,则同时通过功能3查询会员记录,并修改其中的总购买金额量。
c. 输出:输出商品的名称、售价到销售终端。
7. 记录日销售额,月销售额,年销售额:
a. 输入:日销售额:在每天凌晨23:59:59计算从前一天0:00:00到今天23:59:59的销售额输入。
月销售额:每月的第一天的23:59:59从上个月的日销售额表输入。
年销售额:每一个财年的最后一天的23:59:59将月销售额表输入
b. 处理:日销售额:将输入的总金额记录入日销售清单,并且保存日销售清单。
月销售额:将日销售额表中的记录累加记录入月销售清单。从本月日销售清单中记录下月销售清单
年销售额:将月销售额表中的记录累加记录入年销售清单。从本年月销售清单中记录下年销售清单
c. 输出:打印销售报表。
8. 查询日销售情况、月销售情况、年销售情况。
a. 输入:日期/月份/年份
b. 处理:查询日销售清单/月销售清单/年销售清单。
c. 输出:日销售额:输出日销售清单
月销售额:输出月销售清单
年销售额:输出年销售清单
9. 备份文件。
a. 输入:无
b. 处理:每天 1:00:00将所有的数据库文件都备份到备用硬盘上,备用硬盘上已经存在的文件进行更新。
c. 输出:无
3.2对性能的规定
3.2.1精度
对价格的精确度,精确到分。
3.2.2时间特性要求
该软件对从售货终端传来的数据进行实时处理。其他处理速度的要求普通。
3.3数据管理能力要求
3.5故障处理要求
故障1:XXXXXXXXXXXXXXXXX
故障 2:XXXXXXXXXXXXXXXXX
…………
故障 n:XXXXXXXXXXXXXXXXXX
3.6其他专门要求
需要设立:
最高管理员权限:拥有该软件所有功能的使用权。
普通管理员权限:具有处功能5外的所有功能的使用权。
售货员权限:仅具有功能6。
4运行环境规定
4.1设备
处理器型号及内存容量:
售货终端:CPU 486DX,内存16MB以上;操作系统:windows 95
服务器:PentiumⅢ,内存256MB以上;操作系统:Windows2000 Advance Server;外存:磁盘阵列。
4. 2支持软件
销售终端:Windows95.
服务器:Windows2000 Advance Server

4.3接口
数据通信协议:TCP/IP。
5. 4控制
销售终端输入采用条码阅读器。





小组成员:高翔(99级2班)、王畅(99级1班)、
翟姗姗、李岚、刘晓、
张娟娟、唐然

2001-9-6
...全文
321 点赞 收藏 28
写回复
28 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
sdyqingdao 2001-09-13
我没做过pos
但我感觉概念太少,在分析阶段,你怎么抽提对象?能抽提多少对象?
回复
yueyue 2001-09-12
study...
回复
dannyxu 2001-09-12
典型的传统需求说明,采用IPO说明功能处理流程。
建议采用RUP的方法,从各个方面反映系统的需求:
1。图表和文字形式说明参与系统交互的角色(Actor),系统交互的所有功能(用例--Use case),以及角色和这些功能之间的关系
2。文字具体说明用例的交互流程(从角色的角度出发)、预期条件、产生结果、特殊需求等。
3。通过图表反映角色和用例之间的交互过程
4。术语表(定义系统应用到的专业术语,统一称谓)

文字说明应该准确清晰,不应该出现“普通”、“基本”等模糊的字眼。

还有很多很多了,要看项目的大小具体而定,建议参阅RUP文档。
有关文档可以到www.umlchina.com下载(工具部分)
回复
benson 2001-09-12
图表太少了,不够形象!!
回复
tony_2008 2001-09-11
to 3nt(3nt)
老兄,你说的sdmagazine杂志是在哪看到的,是在网上吗?我没有见过。麻烦你给我介绍一下。
回复
hawkgao 2001-09-11
谢谢fita(天外飞仙),谢谢各位大虾,我会多多给分的,但是CSDN有个给了分就看不到的怪癖,为了更多的大虾能给我指点指点我只能等一段时间才能给大家的分了。请原谅小弟啊。还请多多指教
回复
3nt 2001-09-11
补充一句,sdmagazine应该是个每个开发人员的必读刊物。很多超一流大腕都在上面开了专栏,像Grady Booch ,Bertrand Meyer,scott ambler等等,我仿佛记得几年前它的主编是yourdon.
回复
3nt 2001-09-11
to tony_2008()
www.sdmagazine.com/documents/s=1123/sdm0109a/0109a.htm
回复
hawkgao 2001-09-10
runstar(飘的一代)(劢劢) 你敢找本班长的麻烦,活得不耐烦了!!!!!!!
回复
runstar 2001-09-10
瓜高,还有叶涛的嘛,怎么不加他的名字!你哀求!
回复
tony_2008 2001-09-10
3nt兄说得不错,真正的pos系统要比这个复杂很多倍。不过作为学生你能写到这样已经很不错了。第一:销售数据实时更新服务器不可取,应存入临时表,首先是速度非常慢,试想一个大型
超市同一时刻可能有上千甚至上万条数据去同时更新后台数据库,系统非得瘫痪不可。再一个如果
出现收银员录错,更改也太麻烦。第二,变价处理怎么做。包括以销变价和未销变价,临时的促销变价,会员价怎么处理(许多大的超市有金卡会员、银卡会员,二者的会员价是不同的)。实际上
变价处理是这个系统很复杂的一部分。第三、批次表非常重要,其中涉及到很多方面。销售顺序
的先进先出原则,退货怎么处理,肯定要安批次表处理。第四、商品损溢怎么处理,应当建立商品
损溢表,盘点怎么处理,包括盘亏、盘盈。第五、商品信息应当怎么管理,是管理到大类、中类、
小类,还是管理到单品?销售成本应当怎样核算,是进价核算还是售价核算?哎呀,简直是太多
太多了,我不能给你一一列举了,建议你到一个大超市实际仔细地调研一下,想家乐福这样的大超
市。这样的题目,没有实际经验的人是不能做好的。你的老师恐怕也说不出个一二来,他们有的只
是理论方面的知识罢了。



回复
MSER 2001-09-10
《软件需求》模版也行
回复
fita 2001-09-10
谈谈我对于这份需求说明书的几点意见:
1、 应把项目需求和产品需求区分开来
对于一个项目组的项目需求和产品需求是不同的,产品需求是对于产品本身特性的需求,例如产品应该具有哪些功能,应该满足什么样的性能;而项目需求则是对于你们项目组本身开发这个项目的需求,例如项目费用在xxxx元以内,项目必须在xx年xx月xx日之前提交产品。对于不同的项目组,可能有不同的项目需求,但如果他们开发的是同一个产品,则产品的需求是一样的。产品需求来自于客户,而项目需求则来自所有与项目相关的人(项目干系人),也包括项目开发组自己。我一直认为,一个开发项目应该把项目需求和产品需求分开来写成两份文档。有助于项目组分别对待两种需求。
2、 不够规格化
软件需求说明书更严格地说应该叫需求规格说明书,文档里面描述的产品功能,我认为只能作为一个功能讨论的开端(我们先不管这些功能是否足够)。需求和需求规格是不一样的概念,需求指的是产品必须具有的一个功能,而规格则是实现这种功能多种形式中,用户选择的那一种。打个比方,房屋装修中的一个功能需求描述是“需要一扇窗户”,而需求的规格则可能是“一扇窗户,有白色铝合金窗框和透明玻璃,推拉式”,有很多种规格的窗户,用户必须指明他要用的是哪一种规格的。这样写,到项目最后产品验收时,你才能有一个明确验证的依据,否则很有可能你实现了文档描写的功能,客户却说者不是他想要的产品。
3、 描述不够明确,无法验证
“该软件对从售货终端传来的数据进行实时处理。其他处理速度的要求普通。”这句话很有问题,什么叫做实时处理?一分钟处理完毕算不算实时?什么叫做速度的要求普通?应有明确量化的数字表述,后期的测试才有依据可查。
4、 应有一个数据字典
文档里面应该有一个统一的数据字典,描述里面提到的各种数据,每个名词代表什么意思?是什么格式?多长?都应该在一个集中的地方统一描述,不然同一个东西以后可能不同文档的各个地方都有不同的叫法,最后设计时就会一片混乱。

先写这么多吧,欢迎讨论。
回复
kmzwm 2001-09-10
真不错啊!能写成这样! 要是我在学校能像你这么认真的话,我的工资也不会这么低了:-<<!
好后悔啊!
回复
青润 2001-09-10
建议你去参考一下Rational公司在RUP中列出的《需求管理计划》和《前景》这两个文档的模版,这两个要显得实用一些,有些时候也不需要太拘泥于模版,懂得灵活使用达到目的才是最重要的。
回复
3nt 2001-09-10
to tony_2008()
前两天在sdmagazine上看到一篇有关pos开发的文章,很不错。老美现在的pos系统已经发展的全自动、无收银员的程度了。
回复
hawkgao 2001-09-10
谢谢3nt(3nt)兄,我一定会给分的。敢问3nt(3nt)兄在那所大学高就。还请大家多提意见
回复
hawkgao 2001-09-10
tony_2008() 谢谢你,会给你加分的
回复
new_life 2001-09-09
xx
回复
3nt 2001-09-09
不过看得出来你很好学,也很认真,应该会有很好的前途。米卢说:态度决定一切,
回复
加载更多回复
相关推荐
发帖
研发管理
创建于2007-08-27

1219

社区成员

软件工程/管理 管理版
申请成为版主
帖子事件
创建了帖子
2001-09-09 10:21
社区公告
暂无公告