从UML起步——系统的设计方法

来源:互联网 发布:雅马哈机器人编程视频 编辑:程序博客网 时间:2024/06/06 08:38

需求,是通过访谈、搜集等方式,从客户、专家处获得知识。紧要的是业务知识。

分析,是对需求的梳理,分析出系统,应该提供什么。紧要的是,业务知识落实到IT系统,系统的功能和界面。

设计,是把分析要的东西,把IT的元素设计好,画出系统的骨架和概要。

实现,是根据设计,用代码实现出系统。

 

所以,软件系统,是从“设计”才开始与“IT”及“技术”,亲密接触、融合的。

架构设计,是从体系结构方面,来规划系统。进行宏观和整体的设计,比如J2EE体系。

系统设计,是在架构设计的框架里,根据系统需求、分析的要求,进行功能点的设计。

 

RUP迭代软件过程,设计和架构,属于“分析和设计”领域。

一般从项目的初始阶段末期开始介入,跨越了初始、设计、构造、交互等过程。主要在设计过程。并在多个迭加阶段出现。

 

UML是进行系统分析和设计的重要工具。

UML分析和设计,是use-case导向的,以use-case为中心的。

需求分析,从外部actor的角度,分析出case

系统设计,从每一个case起步。

http://space.itpub.net/?532143

http://blog.csdn.net/fancyhf

 

分析师,根据需求,设计出用例图和业务类图。

 

针对每一个case,设计出活动图、状态图。

针对每一个case,设计出顺序图和协作图。设计顺序图和协作图的时候,也就开始识别了界面类、控制类、实体类。

根据业务类图,可以设计出设计类图。

所以,在设计顺序图和协作图,再根据业务类图,就能做出主要的类图了。

 

然后,再结合具体的架构和技术体系,把概念类图细化为设计类图、实现类图。

 

现在的分布式体系,无论J2EE还是.net,在逻辑上都分为3层:

表现层、业务层和实体层。

界面类图,对应到表现层,在J2EE里,可落实到SwingFrame,或Webjsp

控制类图,对应到业务层,在J2EE里,可落实到Session Bean等业务逻辑组件。

实体类图,对应到实体层,在J2EE里,可落实到JOPOEntity Bean

表现层和业务层的交互,业务层和实体层的交互,实体层和数据库间的交互,一般是架构体系设计和规范好了。具体的系统设计时,不需要额外考虑和设计,只需要遵从规范。

 

架构还会规定好LogAudit、分层、DAO等。

 

在设计类图的时候,需要结合设计模式、J2EE设计模式等设计方法,优化设计。

http://space.itpub.net/?532143

http://blog.csdn.net/fancyhf