敏捷软件开发 之第三部分 薪水支付系统案例研究实现之分析

4月箴言数据库

真的猛士,勇于直面惨淡的人生,勇于正视淋漓的鲜血。—— 鲁迅设计模式

 

1、客户需求记录spa

一、有些雇员是钟点工。会按照他们雇员记录中每小时报酬字段的值对他们进行支付,他们天天会提交工做时间卡,其中记录了日期以及工做小时数。若是他们天天工做超过8小时,那么超过部分会按照正常报酬的1.5倍进行支付,每周五对他们进行支付。
二、有些会员会以月薪进行支付。每月的最后一个工做日对他们进行支付。他们的雇员记录中有一个月薪字段。
三、同时,对于一些带薪的雇员,会根据他们的销售状况。支付给他们必定数量的酬金,他们会提交销售凭条,其中记录了销售的日期和数量。在他们的雇员记录中有一个酬金报酬字段,每隔一周的周五对他们进行支付。
四、雇员能够选择支付方式,能够选择把支票邮寄到他们指定的邮政地址;也能够把支票保存在出纳人员那里随之支取;或者要求将薪水直接存入他们指定的银行帐户之中。
五、一些雇员会加入协会。在他们的雇员记录中有一个每周应付款项字段。这些应付款项必需要从他们的薪水中扣除。协会有时也会针对单个协会成员征收服务费用。协会每周会提交这些服务费用,服务费用必需要从相应雇员的下个月的薪水总额中扣除。
六、薪水支付程序每一个工做日运行一次,并在当天未相应的雇员支付。系统会被告知雇员的支付日期,这样他会计算从雇员上次支付日期到规定的本次支付日期间应支付的数额。设计

注意、注意、注意:数据库属于实现细节,应尽量的推迟考虑数据库!ci

抽象的定义:本质部分的放大,可有可无部分的去除。开发

 

2、基于用例分析 ---<这也是最关键的一步>class

根据客户需求能够整理出的下次迭代的用户素材:基础

一、增长雇员
二、删除雇员
三、登记时间卡
四、登记销售凭条
五、更改雇员明细(例如:每小时报酬,会费)
六、在当日运行薪水支付系统程序

咱们须要把这些用户素材转化为具备详细细节的用例。im

备注:关于此时的用例--咱们不须要陷入过多的细节,只要有助于考虑出每一个素材的代码实现便可。

<具体的用例实现会在以后完善更新,目前对于这个章节的理解还有些疑惑>

3、咱们学到了什么

简单的用例分析能够提供丰富的信息以及系统设计的洞察力

找到潜在的抽象:薪水支付应用中的潜在抽象是“全部的雇员都被支付”,这个是咱们经过以前的用例分析获得的(好多应用背后的抽象都是经过基础的用例分析获得的)

做为一个一直作应用层的开发人员,涉及到这块感受仍是比较吃力的,一点点努力喽!

-----------------未完待续---------------

 

 

PS:设计模式任重道远!

相关文章
相关标签/搜索