2.1,UC1,UC2业务建模
便利店POS活动图:
便利店POS领域模型:
2.2 UC2用例模型
用例UC2:处理销售(包含收银)
范围:便利店POS应用
级别:用户目标
主要参与者:收银员
涉众及其关注点:
—收银员:希望能够准确、快速地输入并且没有支付错误。
—售货员:希望自动更新销售提成。
—顾客:希望以最小代价完成购买活动并得到快速服务。希望便捷、清晰地看到所输入的商品项目和价格。希望得到购买凭据,以便退货。
—公司:希望准确记录交易,满足顾客需求。希望确保记录了支付授权服务的支付票据。希望有一定的容错性,即使在某些服务器构件不可用时(如远程信用卡验证),也能够完成销售,希望能够自动、快速地更新财务和库存信息。
—经理:希望能够快速执行超控操作,并易于更正收银员的不当操作。
—政府税收代理:希望能从每笔交易中抽取税金。
—支付授权服务:希望接收到格式和协议正确的数字授权请求。希望准确计算对商品的应付款。
前置条件:收银员必须通过确认和认证。
成功保证(或后置条件):存储销售信息。准确计算税金。更新财务和库存信息。记录提成。生成票据。记录支付授权的批准。
主成功场景(或基本流程):
1.顾客携带所购商品到收银台通过POS机付款。
2.系统开始一次新的销售交易。
3.收银员输入商品条码。
4.系统逐条记录出售的商品,并显示该商品的描述,价格和累计额。价格通过一组价格规则来计算。
收银员重复3~4步,直到输入结束。
5.系统显示商品总额和所计算的税金。
6.收银员告知顾客总额,并请顾客付款。
7.顾客付款,系统处理支付。
8.系统记录完整的销售信息,并将销售和支付信息发送到外部的账务系统和库存系统。
9.系统打印票据。
10.顾客携带商品和票据离开。(如果有)
扩展(或替代流程):
*a.经理在任意时刻要求进行超控操作:
1.系统进入经理授权模式。
2.经理或收银员执行某一经理模式的操作。
3.系统恢复到收银员授权模式。
*b.系统在任一时刻失败:
1.收银员重启系统,登录,请求恢复上次状态。
2.系统重建上次状态。
2a.系统在恢复过程中检测到异常:
1.系统向收银员提示错误,记录此错误,并进入一个初始状态。
2.系统开始一次新的销售交易。
3a.无效商品ID(在系统中未发现):
1.系统提示错误并拒绝输入该ID。
2.收银员响应该错误。
2a.商品ID可读
1.收银员手工输入商品ID。
2.系统显示商品项目的描述和价格。
2a.无效商品ID:系统提示错误。收银员尝试其他方式。
2b.系统内不存在该商品ID,但是该商品附有价签:
1.收银员请求经理执行超控操作。
2.经理执行相应的超控操作。
3.收银员选择手工输入价格,输入价签上的价格,并且请求对该价目进行标准计税。
2c.收银员通过执行寻找产品帮助以获取正确的商品ID及其价格。
2d.收银员可向其他员工询问商品ID或价格,然后手工输入ID或价格。
3b.当有多个商品项目属于同一类别的时候(如2瓶华农学士奶),不必记录每个商品项目的唯一标识:
1.收银员可以输入类别的标识和商品的数量。
3c.需要手工输入类别和价格(例如,塑料袋)
1.收银员手工输入特定的类别代码及其价格。
3-6a.顾客要求收银员从所购商品中去掉一项:
1.收银员输入商品ID并将其删除。
2.系统删除该项目并显示更新后的累计额。
3-6b.顾客要求收银员取消销售交易
1.收银员在系统中取消销售交易。
3-6c.收银员延迟销售交易
1.系统记录销售交易信息,使其能够在任何POS登录中恢复操作。
4a.系统定义的商品价格不是顾客预期的价格(顾客抱怨要求减价):
1.收银员请求经理批准。
2.经理执行超控操作。
3.收银员手工输入超控后的价格。
4.系统显示新价格。
5a.系统检测到与外部税务计算系统服务的通信故障:
1.系统在POS机节点上重启此服务,并继续操作。
1a.系统检测到该服务无法重启。
1.系统提示错误。
2.收银员手工计算和输入税金,或者取消该销售交易。
5b.顾客声称他们符合打折条件:
1.收银员提出打折请求。
2.收银员输入顾客ID。
3.系统按照打折规则显示折扣总计。
5c.顾客要求兑现账户积分,用于此次销售交易:
1.收银员提出积分请求。
2.收银员输入顾客ID。
3.系统应用积分直到价格为0,同时扣除结余积分。
6a.顾客要求现金付款,但所携现金不足:
1.顾客要求使用其他支付方式。
1a.顾客要求取消此次销售交易,收银员在系统上取消该销售交易。
7a.现金支付:
1.收银员输入收取的现金额。
2.系统显示找零金额,并弹出现金抽屉。
3.收银员放入收取的现金,并给顾客找零。
4.系统记录该现金支付。
7b.信用卡支付:
1.顾客输入信用卡账户信息。
2.系统显示其支付信息以备验证。
3.收银员确认。
3a.收银员取消付款步骤。
1.系统恢复到“商品输入”模式。
4.系统向外部支付授权服务系统发送支付授权请求,并请求批准该支付。
4a.系统检测到与外部系统协作时的故障:
1.系统向收银员提示错误。
2.收银员请求顾客更换支付方式。
5.系统收到批准支付的应答并提示收银员,同时弹出现金抽屉(以便放入签名后的信用卡支付票据)。
5a.系统收到拒绝支付的应答:
1.系统向收银员提示支付被拒绝。
2.收银员请求顾客更换支付方式。
5b.应答超时:
1.系统提示收银员应答超时。
2.收银员重试,或者请求顾客更换支付方式。
6.系统记录信用卡支付信息,其中包括支付批准。
7.系统显示信用卡支付的签名输入机制。
8.收银员请求顾客签署信用卡支付。顾客输入签名。
9.如果在纸质票据上签名,则收银员将该票据放入现金抽屉并关闭抽屉。
7c.赠券支付:
1.在处理支付之前,收银员记录每张赠券,系统扣除相应的金额。系统记录已使用的赠券以备财务处理之用。
1a.输入的赠券不适用于所购商品:
1.系统向收银员提示错误。
7d.收银员取消支付步骤:
1.系统回到“商品输入”模式。
9a.存在产品回扣:
1.系统对每个具有回扣的商品给出回扣表单和票据。
9b.顾客索要赠品票据(不显示价格):
1.收银员请求赠品票据,系统给出赠品票据。
9c.打印票据:
1.如果系统能够检测到错误,给出提示。
2.收银员更换纸张。
3.收银员请求打印其他票据。
特殊需求:
•使用大尺寸平面显示器触摸屏UI。文本信息可见距离为1米。
•90%的信用卡授权响应时间小于30秒。
•由于某些原因,我们希望在访问远程服务失败的情况下具有比较强的恢复能力。
•支持文本显示的语言国际化。
•在步骤3和步骤7中能够加入可插拔的业务规则。
技术与数据变元表:
*a.经理超控需要在键盘上输入授权码。
3a.商品ID可以用条码扫描枪或键盘输入。
3b.商品ID可以使用UPC、EAN、JAN或SKU等任何一种编码方式。
7a.信用卡账户信息可以用读卡器或键盘输入。
7b.记录在纸质票据上的信用卡支付签名。
发生频率:可能会不断地发生。
未解决问题:
•税法如何变化?
•研究远程服务的恢复问题。
•针对不同的业务需求怎样进行定制?
•收银员是否必须在从系统注销后带走他们的现金抽屉?
•顾客是否可以直接使用读卡器,还是必须由收银员完成?
2.3 UC1补充性规格说明
功能性
1.日志和错误处理
在持久性存储中记录所有错误。
2.可插拔规则
在几个用例的不同场景执行任意一组规则,以支持对系统功能的定制。
3.安全性
任何使用都需要经过用户认证。
可用性
1.顾客能够看到POS屏幕显示器的显示:
•应该在1米外轻松看到文本。
•避免使用一般色盲人群难以辨别的颜色。
2.快捷准确的销售交易处理极为重要,因为购买者希望能赶快离开,否则会给他们的购买体验带来负面影响。
3.店员的视线通常停留在顾客或商品,而不是计算机显示器上,提示和告警应该通过声音传递而不仅仅是通过图像传递。
可靠性
1.可恢复性
如果在使用外部服务时出现错误,为了完成销售交易,需要尝试采用本地方案加以解决。
2.性能
顾客希望非常快速的完成销售处理过程,所以最好能够在1分钟之内完成授权。
可支持性
1.可适应性
不同客户在处理销售时有其特有的业务规则和处理需求。因此,在场景中的几个预订之处(如开始新的销售交易时,增加新的商品时),需要能够启用可插拔的业务规则。
2.可配置性
不同的客户对其POS系统有不同的网络配置需求,要求具备修改配置的能力,以便适应其变更业务和性能的需求。因此,系统应该具备一定的可配置能力以适应这些需求。
实现约束
采用Java技术的解决方案,因为Java技术一般被认为除了易于开发外,还能够提高远期的移植和可支持性能力。
购买构件
•税金计算器。必须支持用于不同国家的可插拔计算器。
免费开源构件
一般而言,我们在该项目中尽可能地使用免费的Java技术开源构件。如:
•SSH
•easyUI
•......
接口
1.重要硬件和接口
•触摸屏(触摸动作视为鼠标事件)
•条形码激光扫描仪(通常附加在一种特殊键盘上,扫描输入在软件中视为键盘输入)。
•票据打印机。
•信用卡读卡器。
•签名读取装置。
2.软件接口
由于存在众多外部协作系统(税金计算器、账务、库存),我们需要采用不同的接口,接入不同的系统。
应用的领域业务规则
ID |
规则 |
可变性 |
来源 |
规则1 |
顾客折扣规则: 员工:25%折扣额 会员:15%折扣额 |
高 每个零售商有不同的规则 |
零售商政策 |
规则2 |
销售折扣规则: 满50元减5元 |
高 每个零售商有不同的规则,可随时改变 |
零售商政策 |
规则3 |
产品折扣规则: 乐事薯片买2瓶送1瓶 |
高 每个零售商有不同的规则,可随时改变 |
零售商政策 |
规则4 |
节日折扣规则: 五一,国庆节全场满100元减20元 |
高 每个零售商有不同的规则,可随时改变 |
零售商政策 |
法律问题
我们建议使用一些开源构件,但是要解决其许可限制的问题,以便使包含开源软件的产品能够转售。法律规定,在销售交易中必须遵从所有税务规则。但同时要注意的是,这些规则可以频繁变更。
所关注领域内的信息
1.定价
产品有原始价格和可选的常设低标价之分。产品标示的价格(折扣前)是常设低标价。由于财务和税务的原因,即使有常设低标价,也需要维护原始价格。
2.信用卡支付处理
当支付授权服务批准了信用卡支付后,将由支付授权服务而不是买方来负责对卖方的支付。因此,对于每笔支付,卖方都需要将支付授权服务的未付金额记录于其应收账户下。通常,授权服务在每晚执行电子转账操作,将卖方当天的应收总额转入其账户下,同时对每笔交易扣除(少量的)服务费。
3.销售税
对税金计算采用第三方软件(税金计算器)计算。
4.商品标识:UPC、EAN、SKU、条形码和条形码读取装置
POS要支持各种商品标志方案。