系统需求建模:事件和事物

1、分析阶段创建的模型:

 事件列表,事物列表

结构化方法:系统流程图、决策树/决策表、实体关系图、数据流、数据字典、伪代码

基于UML的OO方法:用例图、用例场景描述、分析类图、活动图、状态图、时序图/协作图

2、设计阶段创建的模型:

体系结构图、界面布局图、系统结构图、程序流程图、设计类图、时序图、包图、组件图、网络图、部署图

3、事件:发生在某一特定的时间和地点、可描述并且系统应该 记录下来的事情

事件和系统需求的关系:什么事件发生时需要系统做出响应,、能列出所有这样的事件应该说就可以搞清楚用户对系统的需求。信息系统的所有处理过程都是由事件驱动或触发的, 因此当定义系统需求时将所有事件罗列出来并加以分 析是非常有意义的。

事件类型:

外部事件:系统之外发生的事件,通常是由外部实体或 系统参与者触发的

临时事件:由于到达某一时刻所发生的事件

状态事件:当系统内部发生了需要处理的情况时所引发 的事件

外部事件应包括: 外部实体的需要触发一个事务处理,如客户下订单 外部实体想获得某些信息,如客户查询帐户信息 数据发生改变需要更新,如客户地址变更 管理部门想获取某些信息,如管理者需要销售情况分析报告

临时事件应包括: 所需的内部输出结果,如定期报表 所需的外部输出结果,如定期结算单、帐单等 突发的情况,如系统掉电、内存溢出、读写错误、缺页

状态事件应包括: 所有外部事件和临时事件都要考虑是否有状态事件发生, 如,销售引起库存变化等

区分事件和随事件发生的一部分交互行为

跟踪事务处理生命周期可以得到一系列事件

特别细节的事件在系统分析阶段不予考虑

事物:在传统的开发方法中,事物就是构成系统存储 信息的相关数据;

在面向对象的开发方法中,事物就是在系统中 相互交互的对象;

事件和事物的区别与联系: 事件 – 发生在瞬间,有一定的随机性

                                  事物 – 客观存在,不以主观意志为转移

                                  联系 – 事件的发生可以改变事物的状态或产生新的事物

事物间的关系:某些事物间自然发生的联系,比如客户 发送订单、雇员在某部门工作等

根据每件事物的关联数目来理解每种关系的本质非常重要 基数(重数):发生在事物间关联的数目

二元关系:两种不同类型事物之间的关系,如Teacher与Student 一元(回归)关系:同一类型的两个事物间的关系,例如一个人和 另一个人的婚姻关系 三元关系:三种不同类型事物之间的关系, 如Course、Teacher和Student n元关系: n(n为任意数)种不同类型事物之间的关系

 事物的属性:

属性:有关事物的一条特定信息 标示符(关键字):能唯一标志事物的一个属性 复合属性:包括了许多相关属性的属性,如客户全名:名+姓

数据实体:在传统的系统开发方法中,事物被称为数据实体 对象:在面向对象的系统开发方法中,将某一个事物称为对象

E-R图:

传统的系统开发方法都将重点集中在数据存储需求上 数据存储需求包括数据实体、数据实体的属性以及它 们之间的关系

分析员在建模的过程中,常常对ERD进行细化的工作就是 处理多对多的关系 由于关系数据库中不能直接实现多对多的关系,因此必 须建立一个单独的表,来消除多对多的关系 关联实体 – 解决上述问题的人为增加的数据实体,它 一定包含两端数据实体的关键字

类图:面向对象的方法也强调对系统中所包含事物的理解 面向对象的方法给事物建立的模型即是“类图” “类”和“实体”是明显区别的

泛化/具体层次图 – 把类按照从最概括的父类到 最具体的子类的顺序进行排列的层次图,有时 也被称作继承层次图 继承 – 允许子类共享其父类的所有的特征

整体/局部层次图:按照类之间的关联组件将类进行 结构化分解的层次图 聚合:对象及其各个部分之间的一种整体-局部关系 组成:对象及其与它不可分割的各个部分之间的一种 整体-局部关系

抽象类:一种不能被实例化(即不能创建对象)的类,仅 为了使其子类能够继承他的属性与方法 具体类:能够被实例化的类 关联类:一种表示两种不同类之间多对多的关系的类

 

原文地址:https://www.cnblogs.com/huhaibo/p/3408792.html