zoukankan      html  css  js  c++  java
  • 《敏捷软件开发》学习笔记 第18章 薪水支付案例研究

    第一次画的UML类图是很潦草的,但凡事都从第一次开始,然后不断迭代。

    刚开始,从客户那里得到如下信息:

    1.职员分为钟点工,普通职员,销售(可以拿提成)

    2.职员可以选择薪水支付方式,支票发放,现金发放,和银行卡打款。

    3.公司有一个协会(工会?),加入协会的职员每个月收取一定的会费,从工资中扣除。

    --------------------------------------------------------------------------------

    然后通过客户给出的信息,模拟使用例子:

    1.增加职员

    2.删除职员

    3.支付薪水

    等等。。。

    --------------------------------------------------------------------------------

    关于增加职员的操作,书中给出这样的UML类图:

     

    一般去实现增加职员这个操作,通常会联想到数据库,直接连接数据库然后加一条数据不就完事了吗?

    但是真正需要的是得到一个新职员的对象模型,一个数据类型。

    其中有一些操作只有钟点工才能做的,比如时间卡的时间累积。

    比如增加销售凭条就是销售才有的。

    这个是需要注意的一方面。

    --------------------------------------------------------------------------------

    薪水操作,书中的UML类图是这样的:

    像TimeCard, SalesRecelpt这样的功能,都用组合来实现了。往往自己开发的时候图方便,肯定都直接写到类里面去了。

    归属Affiliation,的部分用了空对象模式NoAffiliation类。

    这样的结构有种以职员为中心的感觉。

    对于钟点工的薪水支付,书中图片如下:

    另外一种也差不多

  • 相关阅读:
    关于listview嵌套listview
    Android ImageView(scaleType属性)
    在服务器端实现数据任意排序算法
    分页拖放排序dragsort
    拖放鼠标实现内容排序
    计算机科学中最重要的32个算法
    cocos2d-x 获取SD卡图片 线程 UI
    cocos2d-x 静态变量 static
    cocos2d-x 启动触摸事件
    cocos2d-x android混编时图片不显示
  • 原文地址:https://www.cnblogs.com/hont/p/3130674.html
Copyright © 2011-2022 走看看