对软件UML建模的学习应用和困惑求解?
最近开始了一个新项目,因以前都没有好好实施过规范的软件过程,因此打算在此新项目中使用Rational Rose,好好学习学习。
项目以前的版本,代码规模大概在20W行左右,基本上是自己为主做的,感觉过程像个手工作坊,经常想了就去实施什么,现在要带小组做,自然不可以这样,需要有良好的需求设计,软件架构设计,详细设计过程,而且刚好也是打算重新从结构开始设计。但是初次如此具体的从头开始实施,总是觉得很不顺利,单位里以前对这方面也是一直没有一个良好的过程,文档多数都是写了程序再补,说起来还是个CMM2呢,希望能向大家学习。
单位里也是有文档规范要求,需求设计,概要设计,详细设计,传统以来也是以瀑布式的过程软件为主,对于用Rose来做,如何划分阶段?以上的三个部分对应在use-case,类图OO设计等,相当于各实施到什么程度?怎样做可以使提交文档便的方便?
最近也看了很多用例设计方面的东西,自己做,感觉总是容易陷入模块设计的陷阱,怎么避免?因为做的东西跟界面设计,地理信息系统有些类似,感觉一些东西说明起来并不很顺利,书本中说明的例子,多数还是象物流、管理些的东西,我们的软件,功能模块繁多,之间的关系也比较复杂,软件模块如何良好的集成,低耦合易扩展也是这次的一个重点,这种关系似乎不是用例应该描述的,但是不描述对后续类的提取、软件体系结构、控制流的设计似乎也有难处,感觉对应上有问题,陷入迷惑中。
对于用例应该设计到多详细的程度,感觉要好好每个场景描述下来,工作量不是小数目。
对于数据结构设计,数据信息交互,系统配置等,应该放到什么时候做?很多模块需要通过配置来自动生成所需功能,如何设计?
因为软件不仅是一个独立的功能齐备的软件,同时也做为一个二次开发平台,那么与在此平台上开发的应用软件的关系该如何描述,在什么时候描述?需要描述use-case吗?若要描述该如何写?
为了功能扩展的兼容性,很多模块需要设计有标准规范的C导出函数来作为接口交互,如何描述这样的需求?
还有的问题想到了再提,估计会很多
望有“实际经验”的高手指点一下!