关闭

如何进行软件系统分析

679人阅读 评论(0) 收藏 举报
 

实体类通常指系统中需要持久化的类,代表系统中的核心概念。

软件系统分析目前用的较多的方法就是鲁棒(Robust)分析,也就是健壮性分析。

首先根据用例的描述设计系统的边界类、实体类,和控制类。

 一、边界类

 边界类描述系统与角色的接口,通常是图形用户界面,通信协议、打印机接口、传感器和终端。最常见的就是窗体。那窗体中的各种控件算不算呢?不算,窗体本身是最合适的边界类,而其中的控件就太细小了。 

二、控制类

控制类表示系统的动态行为,处理主要的任务和控制流。简单的说控制类指的就是业务逻辑,他通常独立于实体类和边界类,稳定性较好。

 在什么情况下需要控制类呢?如果控制流比较简单,只处理象添加、修改和删除这样的功能,通常可以由边界类来处理。

 如果业务流程比较复杂,则需要单独设计控制类。

通常一个控制类只和一个角色进行交互,这是基于最小化变更对系统的影响来考虑的。

 三、实体类

 实体类通常指系统中需要持久化的类,代表系统中的核心概念。

四、关系限制

不同的类之间关系的建模有些是必要的,有些则是需要避免的。

边界类®实体类  允许:因为边界对象可能需要在这个边界对象的各个操作之间对某些实体对象进行跟踪。

边界类«控制类  避免:因为关系是短时间存在的,所以没必要建模。

边界类«边界类  允许

控制类«控制类  避免:因为关系是短时间存在的,所以没必要建模。

控制类®实体类  允许

实体类«实体类  允许

实体类®边界类  不允许

实体类®控制类  不允许

实体类对象的生存期一般都很长;而控制类对象和边界类对象的生存期则很短。正是由于这些类的生存期相差如此之大,所以在这些类之间建立关联关系是不可取的。

 五、类设计的原则

1、不同的类之间如果存在相似的职责,考虑重用现有类,如果没有有重用可能的类,才考虑建立新的类。

 2、如果一个类的两个职责之间互不相关,考虑将这个类分成两个。并更新相应的协作关系。

 3、如果一个类只有一项职责,那么需要重新考虑该类存在的必要性。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:58194次
    • 积分:949
    • 等级:
    • 排名:千里之外
    • 原创:40篇
    • 转载:0篇
    • 译文:0篇
    • 评论:5条
    文章分类