1.1项目设想
A.系统展望。简要介绍产品应用场景、用户,系统范围,基本目标。
应用场景:针对711便利店的商品销售,我们小组的SevenElevenMyPOS收银系统主要应用于711便利店商品结算以及收银的整个流程。客户携带商品到收银台,收银员将商品逐一输入系统,系统计算应付金额。输入完成后客户付款,收银员确认收款并找零,系统打印购物小票。客户可携带购物小票和商品办理退货业务,工作人员根据退货规则系统完成操作。经理使用系统制作销售报表。
用户:主要为711便利店收银员、店长、pos系统管理员。
系统范围:
1、应用于管理前端的收银系统:(1)销售、(2)客户购买商品明细、(3)付款、(4)结算、(5)退货、(6)交易查询、(7)查账。
2、系统后台包括(1)销售管理、(2)库存商品管理、(3)采购管理、(4)订单查询及入库管理、(5)统计报表。
基本目标:实现方便掌握的操作界面,系统运行稳定且拥有高效快捷的处理速度和响应速度,具有较高的准确性和保密性,主界面各功能模块独立。实现销售管理、库存商品管理、采购管理、订单查询、统计报表等基本管理功能,帮助销售人员快速准确地完成商品销售,高效便捷地了解库存商品信息,同时方便消费者的购物消费结算,大大提高顾客的满意度和便利店的运作效率。
B. 系统特性。用高阶、简洁的语句对系统预期功能和性能加以概述。
1、销售管理:实现商品售出、结算、退货等功能
(1)开单:录入商品条目(扫描条形码自动获取商品信息)——生成销售单证。
(2)结算:生成支付单证——修改库存——打印小票——付款——找零。
(3)退货:查询销售单证——选择商品——生成退货单(修改库存)——退款。
2、库存商品管理:商品基本信息的管理,如商品的添加、修改、删除、条件查询、库存数等的管理。
3、采购管理:供应商信息以及采购商品的管理,系统用户可以实现供应商信息的添加、删除、修改,条件查询以及查看供应商可提供的相关商品。
4、订单查询及入库管理:实现商品的订单查询、以及商品的入库管理,用户可以根据条件查询相关的入库记录。
5、营业统计:实现商品销售情况及入库情况统计分析,让系统用户可以实时查询统计信息,按客户以及销售时间查询订单,实现统计报表。
(1)统计每个月的营业额以及商品的销售额。
(2)按不同“产品类别”实行销售统计。
1.2开发计划
A. 团队成员。简要概括项目成员及分工。
角色 | 项目经理 | 分析员 | 架构师 | 程序员 | 测试员 |
姓名 | 张普旭 | 方伟财 | 张普旭 | 苏俊朗 | 余尚发 |
B. 项目进度。简要说明项目进度安排及控制措施。
过程 | 时间 | 目标 | 工作内容 | 控制措施 |
初始 阶段 | 第2周 | 分组定题 | 布置任务,确定分组; 确定题目,制定计划。 | 小组成员开会讨论,确定主题并完成任务书。 |
细化迭代1 | 3-4周 | 搭建框架 | 确定核心架构 实现基础数据增删改查 | 小组成员明确自己的工作内容和任务,项目经理定期检查项目进度。 |
细化迭代2 | 5-6周 | 设计实现业务用例 | 实现销售开单用例 |
|
细化迭代3 | 7-8周 | 设计实现业务用例 | 实现收银用例 |
|
细化迭代4 | 9-10 | 设计实现业务用例 | 实现退货用例 |
|
里程碑 | 总结。优秀成果展示。 | |||
细化迭代5 | 11-12周 | 设计实现权限 | 基于所选技术实现系统权限功能 |
|
细化迭代6 | 13-14周 | 设计实现报表 | 实现数据报表功能 |
|
交付 | 15周 | 提交成果 | 编程人员实验室演示程序; 提交文档打印稿。 | 交付前做好最后的测试、检查和细节完善。 |
|
C. 风险控制。识别并列出项目风险,简述风险控制措施。
1、团队合作风险
团队成员沟通不足、相互间不信任、过度依赖某个人、以及某个成员的工作拖延等都会导致项目无法按照进度去开展。
控制措施:新组的团队会经历一个动荡期,可能会出现沟通不良等情况,项目经理要协调团队各成员,并组织团队一起合作,加强沟通,同时各团队成员应加强团队意识,积极融入团队。同时在开发过程中,项目组成员及时的沟通讨论,交流各自的想法,遇到困难时要相互协助。
2、进度风险
项目经理未能及时监督、检查好工作进度,对各阶段的工作目标和工作内容把握不到位,错误估计完成时间和效果,项目成员对知识的掌握不够,质量欠佳,甚至需重新开发等因素都会导致项目进度的拖延。
控制措施:项目经理应该合理安排团队成员的工作任务并规定任务完成的最后期限,在任务执行期间,及时监督、检查工作进度,经常向团队成员了解任务完成情况及碰到的问题等,协助和督促其按质按量完成任务。
3、技术风险
项目成员不具备或无法完全掌握项目所要求的技术,即由于软件开发水平有限,有些系统功能可能无法实现。从而导致项目进度的拖延,给项目正常的完成带来风险。
控制措施:根据项目的实际要求,选用合适、成熟并且项目组成员熟悉的技术,如果在项目实施过程中遇到技术上的问题,及时上网找资料以及向老师和同学请教。
*基础数据字段分析
表1商品信息表(CommodityInformationTable)
属性名 | 字段名 | 类型 | 长度 | NULL | 备注 |
商品编号 | CommodityID | int | 20 |
| 主键 |
商品名称 | CommodityName | varchar | 50 |
|
|
条形码 | CommodityCode | int | 20 |
|
|
类型号 | TypeID | int | 10 |
|
|
价格 | Price | int | 8 |
|
|
库存量 | CommodityNum | int | 8 |
|
|
供应商编号 | CompanyID | int | 10 |
|
|
描述信息 | DescribeInfo | varchar | 100 | P | 商品其他特征 |
表2商品类别信息表(CommodityTypeInformationTable)
属性名 | 字段名 | 类型 | 长度 | NULL | 备注 |
类别编号 | TypeID | int | 10 |
| 主键 |
名称 | TypeName | varchar | 10 |
|
|
表3销售订单表(SaleOrder)
属性名 | 字段名 | 类型 | 长度 | NULL | 备注 |
订单编号 | OrderID | int | 10 |
| 主键 |
商品编号 | CommodityID | int | 20 |
|
|
数量 | Quantity | int | 8 |
|
|
价格 | Price | int | 8 |
|
|
订单时间 | OrderTime | datetime | 10 |
|
|
订单总价 | OrderTotalPrice | double | 10 |
|
|
表4销售明细表(SaleList)
属性名 | 字段名 | 类型 | 长度 | NULL | 备注 |
明细表编号 | ListID | int | 10 | 主键 | |
订单编号 | OrderID | int | 10 |
表5员工信息表(StaffInfomation)
属性名 | 字段名 | 类型 | 长度 | NULL | 备注 |
员工编号 | StaffID | int | 10 |
| 主键 |
用户名 | StaffName | varchar | 10 |
|
|
表6库存记录表(StockRecordTable)
属性名 | 字段名 | 类型 | 长度 | NULL | 备注 |
记录表编号 | RecordID | int | 20 |
| 主键 |
商品编号 | CommodityID | int | 20 |
| 外键 |
供应商编号 | CompanyID | int | 10 |
| 外键 |
员工编号 | StaffID | int | 10 |
| 外键 |
价格 | Price | int | 8 |
|
|
库存量 | CommodityNum | int | 8 |
|
|
描述信息 | DescribeInfo | varchar | 100 | P |
|