面向过程的设计方法强调从软件的功能特性出发来思考问题,使用面向过程方法的设计者通常会在不同的级别上,把系统划分为多个功能模块,同时尽量确保模块之间的耦合度最小。

 

面向对象分析的主要任务是根据用户需求,建立一个准确的、完整的、一致的系统模型——分析模型。这个过程的输入是软件的功能性需求(非功能性需求通常要留到面向对象设计阶段再考虑)。

 

面向对象分析过程一般要从不用的视角观察和分析软件系统,并相应地产生以下三种分析模型:

     功能模型:用例模型

     对象模型:通过对用例模型的分析,把系统分解成互相协作的分析类。

     动态模型:描述系统的动态行为,通过顺序图何协作图来描述系统中对象之间的交互关系,通过状态图来描述系统中单个对象的状态变化情况。

 

     面向对象设计是面向对象分析的结果,输出是最终的,细化后的设计模型,侧重于描述对象的属性和方法。

     

     分析模型中的类有三种:实体类、边界类和控制类。

 

     面向对象分析和设计工作应当是由用例驱动的

     

     提取属性

 

     提取关系:一对一、一对多、多对多、归纳关系

     

     架构分析:避免走入功能分解的误区

 

     架构模式:

     系统软件:分层(layer)【三层架构】、管道和过滤器(pipes and filters)、黑板(blackboard)

     分布式软件:经纪人(broker),客户/服务器(client/server)、点对点(peer to peer)

     交互软件:MVC、显示-抽象-控制

 

     架构分析:避免循环依赖

posted on 2008-10-07 10:25  上帝学者666  阅读(332)  评论(0编辑  收藏  举报