Edgard

导航

软件开发核心工作流程

全局分析    
----------
    有一段时间了,我不遗余力的去探索时候特定项目规模的软件开发流程,实践表明多于两个大型项目遵循这样的核心工作流程都成功的交互了,现把它发布给大家以作参考:

 

选择架构型别
    我们通常会采用层次结构。
抽取关键抽象
    寻找在问题领域和方案领域都具有普遍意义的概念点。
标记分析机制
    把那些和问题领域(应用逻辑)没有直接关联的计算机概念和复杂的行为表述为分析工作的占位符号
选择分析局部
    对于拟建系统,选取具有高风险的局部作为此次迭代的内容。


 

架构型别
    架构型别为后续活动设立了一个共有的基础框架,用以承载逐步演进和累加的设计类容。
    架构型别本身的重要性远远超过了架构中内容的重要性。
    架构型别的核心是按照某种规则将关注点在宏观上作一个隔离,目的是确保架构在后续活动中稳定的被充实,同时促进架构中的内容更容易的被复用。


 

选择架构型别
    选择层次架构
       层次架构特别适合中,大型系统
    选择层次架构的动机
        在设计时,层次架构对构件的依赖性进行了分组。
        在运行时,层次架构为构件的可替换提供了支撑。


 

定义与应用逻辑相关的架构
    定义层次架构中的较高层。
    在全局分析阶段存在很多的未知因素,因而只需要相对明确的界定层次架构中的较高层,比如特定应用层一般应用层,它们承载跟应用逻辑直接相关的要素。
    层次的界定将在后续的分析和设计活动中得到验证和调整。
    在全局分析阶段不宜对较低层次作界定,因为较低层次往往依赖较高层次对它的服务要求,所以,我们很容易作一些无用功。


 

选择架构型别-经验
    元素间的关系:某一层内的元素只是跟同层元素以及相邻层元素之间有依赖关系,否则,我们的层次架构将很难扩展和维护。
    元素的稳定性:层次越高,元素的稳定性越低,越直接反映问题域(应用逻辑)的内容及其变化。相反,越低层的那些对应于软件概念的元素要稳定很多。

posted on 2004-10-12 17:10  Edgard  阅读(1584)  评论(0编辑  收藏  举报