从UML起步 系统的设计方法

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    界面类图,对应到表现层,在J2EE里,可落实到Swing的Frame,或Web的jsp。

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

    实体类图,对应到实体层,在J2EE里,可落实到JOPO或Entity Bean。

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

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

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

原文地址:https://www.cnblogs.com/wuxinrui/p/1995790.html