论文部分内容阅读
为一个大型复杂系统建模通常是一件非常烦琐和相当困难的工作,为了控制和降低系统模型的复杂程度,人们通常采用多视图方法来有效地简化模型的表达。一个软件系统模型由多个不同的视图来描述,每一个视图只展现某一个视角所关心的内容,其结果是一个模型的复杂性被分割并被分配到一个个视图中。但在通常情况下,一个视图仍然复杂得需要绘制多个范图才可以描述清楚,就这样,软件系统模型被分解为一个个视图,视图又由一个个范图来表达,因此,在这些视图和范图之间,存在着复杂的协作和约束关系,而我们处理这些复杂关系的能力有限,所以多个视图之间、视图的多个范图之间就难免会出现不一致的情况。 本文就是主要对UML建模过程中的各个视图之间的不一致性问题进行了探讨,不一致性是不同视图或范图之间对同一事物的描述发生冲突的现象,它的产生主要是由于系统的复杂性和参与开发团体间开发规范的不同或考虑问题方式不同而引起的。初期的开发阶段我们要在具有正确引导和自动维护的开发工具中进行,并且要遵守一定的建模规则以最大限度的避免不一致性的出现。如果我们需要对开发出的图表进行不一致性检测,可以使用实时检查、动态检查、静态检查和辅助技术,也可以使用一种视图融合的方法进行检测,这种方法将不一致性转换与不一致比较分开,将要检测的图表转换成同一种图表类型再进行比较,使检测工作的时间复杂度由0(n~2)降为0(n)。这种思想将所有的图表分为三个层次:从底层到高层,从行为到结构,从一般到特殊。这三个层次间的图表在进行转换时使用的技巧都是相似的。其次通过对订单管理子系统进行建模验证了前述的保证一致性的规则是非常实用而且是非常有效的。最后部分对论文进行了总结并对未来发展作了展望,支持UML建模的case工具有很多,但大部分还都不能很好地将不一致性检测机制融入其中,而且不同工具其兼容性也很差,因此需要我们要根据软件开发实际情况选择合适的开发工具。对待图表之间的不一致性问题要本着早发现早消除的原则,如果设计中的不一致性在后续的开发过程中发现解决,需要的人力物力都是相当大的,而且对软件的开发质量也有很大影响,因此,系统分析和开发人员必须具备了解、识别、检测、删除图表间不一致性的能力,为软件的高质量开发提供保证。