分析类的识别
从这一步开始,看待系统的视角,要从外部转向内部了,也就是关键的从需求向设计的映射的第一步。不过,这里识别出来的分析类,仍然是抽象的,或者说是理想的,还用不考虑实现时的诸多细节,如性能等。
分析类的识别可以分为三步:
1.识别类及其属性
1)从用例文档中抽取名词(这一操作方法本身就说明了找到的应该是实体类)
2)分类整理名词,抽取合适的类和属性。这里要注意识别哪些名词不是系统要保存或管理的
事实上,这是最困难的一步,没有简单的原则可以遵循,需要分析人员依靠经验和逻辑能力得出答案。在识别属性时,有几个思路可以帮助我们避免错误,我们可以对照每个属性,问自己以下问题:
1)属性是否描述类对象的特征——如果不是,考虑转移到其他类中去,或者提取新类
2)属性是否存在冗余——如果是,合并属性
3)是否有复杂结构的属性——如果是,考虑展开为多个属性,或者提取新类
4)是否有一对多的属性——如果是,考虑提取新类
5)属性是否对类的所有对象都有意义——如果是,转移属性到子类
2.识别类之间的泛化
注意泛化代表了集合之间的关系,即如果A的集合包含B的集合,或者说B是一种A,则A与B之间是泛化关系。如下图所示:
3.识别类之间的关联
关联代表了一个类对另一个类之间的静态依赖关系,聚合作为一种特殊的关联,往往代表着B是A的一部分。在分析阶段,不必追究聚合与组合的细微差别,但聚合与普通关联还是要区分的。聚合的突出特征在于,代表整体部分的类往往成为代表部分类的职责代言人。这有点类似于公司与员工,球队与球员之间的关系。
注意:
1)两个类之间可以存在多种关联
2)一个类可以与自身关联
3)关联本身可以有属性和操作,即可以形成一个类,当然,这个类必须是有业务意义的。如下图:
“UML应用实作细节”(by Think, UMLChina)复习笔记(5)——分析类的识别
最新推荐文章于 2021-02-17 22:17:29 发布