今天学习了一部分结构化建模的知识。而要学习结构化建模的第一步,便是了解什么是模型。
模型是对现实的抽象或模拟,是对现实系统的本质特征的一种抽象、简化和类比式的描述 。
建模的过程
最重要的便是软件模型的学习,软件模型对软件系统在各个开发阶段本质特性的描述,它要反映软件系统的形成过程。
一般用到的有领域模型,需求模型,设计模型,实现模型,测试模型等。
而软件模型的作用是对业务领域、用户需求、设计意图、实现环境的反映,是软件的中间形态
领域模型-业务模型描述软件所要服 务的业务领域的业务状况和业务 关系。
需求模型-描述软件向用户所能够提供的 外在特性,包括软件的目标、 功能、性能等。
设计模型-软件的设计方案。 包括软件的结构,详细设计, 界面,数据库等设计方案。
实现模型-软件的实现方案。 包括软件的实现结构,构件, 文件等。
测试模型-测试软件的模型描述。
而结构化建模作为一种建立模型的方法,所起到的作用更是重中之重。
结构化分析是一种建立模型的活动,创建描述信息内容和信息流的模型,依据功能和行为对系统进行划分。 建模时, 需要关注系统最复杂和风险最大的部分,以及最容易产生歧义和不确定性的部分。
结构化分析模型
数据模型
数据模型包括三种互相关联的信息:数据对象、描述数据对象的属性和数据对象相互连接的关系。 1. 数据对象是一个外部实体、一个事物(如报告)、一次行为(如电话呼叫)或事件(一个警报)、一个角色(如销售人员)、一个组织单元(如销售部门、人事部门)、一个地点(如仓库)或一个结构(如文件)。
属性 属性定义了数据对象的性质,数据对象有许多属性,应选择一组本质的属性。 例如,教师的属性有教工号、姓名、性别、职称、专业、研究方向、担任课程、住址、电话等。如果设计“教学管理系统”,关心与教学有关的属性、排除与教学无关的属性。
关系 数据对象是相互关联的,如人可以“拥有”车。拥有即它们间的一种关系。 实体和实体之间的关系被抽象为联系。联系分为: 1)一对一(1:1)(一个丈夫只能有一个妻子) 2) 一对多(1:N)(一个母亲有多个孩子) 3) 多对多(M:N)(侄子与叔叔)
功能模型-数据流图
数据流模型把功能分解方法运用到系统分析上,把复杂的问题进一步分解到更详细的层次。 数据流模型很适用于事务处理系统和其他功能密集型应用程序。
步骤
①把一个系统看成一个整体功能,明确信息的输入和输出。
②找到系统的外部实体。一旦找到外部实体,则系统与外部世界的界面就可以确定下来,系统的数据流的源点和终点也就找到了。
③找出外部实体的输入数据流和输出数据流。
④在图的边上画出系统的外部实体。
⑤从外部实体的输入流(源)出发,按照系统的逻辑需要,逐步画出一系列逻辑处理过程,直至找到外部实体处理所需的输出流,形成数据流的封闭。
⑥将系统内部数据处理又分别看做整体功能,其内部又有信息的处理、传递、存储过程。
⑦如此一级一级地剖析,直到所有处理步骤都很具体为止。