CAB与OOAD(上)续二
1.1 案例背景
客户管理系统是计算机应用,用于记录客户的信息和关系情况,任何公司都是该系统的潜在使用者。该系统包括计算机、数据库服务器等硬件,还包括使系统运转的软件。它还要为不同服务的应用程序(比如第三方的贩卖系统)提供接口。
这个系统必须支持日益增多的各种的客户终端和接口。其中包括瘦客户的Web浏览器终端、具有类似.Net WinForm用户图形界面的个人计算机(当前要求采用的方式)、触摸屏输入装置、无线PDA等。
该系统目前采用的是Access数据库,但后期要求被扩展为Oracle或者MSSQL数据库
假设我们正在开发一个商用的CRM系统,并打算把它出售给在业务规则处理上具有全异需求的不同客户。每个客户都希望在使用系统过程中的某些可预知条件下,执行一组独特的业务逻辑规则,例如把它扩展为公司内部的员工管理系统等。因而,我们需要一种机制来提供这种灵活性和定制能力。
1.2 第一次迭代实现选择的需求
实现查看顾客信息用例中基本和关键的场景:列出客户列表,并可以查看客户的详细信息。
实现用于支持迭代初始化需要的启动用例
不处理任何特殊和复杂的部分,仅仅针对场景的简单理想路径,并对此进行设计和实现
不与外部服务进行协作,例如客户数据库
不应用复杂的搜索规则
1.3 制品
三个制品:GUI快速原型、用例、领域模型。
1.3.1 GUI快速原型
1.3.2 用例
查看客户信息:销售人员使用客户管理系统查阅客户的详细情况以发送春节礼物。系统显示该销售人员的客户列表,销售人员选择要查看的客户。系统将该客户的明细显示给销售人员