本部分是阅读完需求工程——软件建模与分析(第二版)骆斌主编的第三部分的一点收获总结:
本部分在一开始就对需求分析进行具体的解释,通俗的来说就是解决从用户与其他涉众对现实
世界的理解与概述不能是开发者准确的理解与描述,立即加以实现的解决方案的问题。
对需求分析有一定的了解后,就对需求分析的根本任务就行讨论。
需求分析的根本任务主要分为两步分1)建立分析模型 ,使开发者与用户对需求分析达成一致的理解
2)依据达成的理解,发挥创造性,提出软件系统解决方案
需求分析的方法:
传统分析(也能取得一定的成功,但它的过程缺乏结构,不可重复预测并且具有主观臆测性。)
结构化分析(明确了标准化的分析工作思想和路线,但也有自身的局限性)
信息工程(是对结构化方法的一种改进)
面向对象的分析(面向对象的认为系统是对象的集合,这些对象之间相互协作,共同完成系统的任务。面向对象
和结构化分析的方法有着完全不同的建模思路,前者是以对象为基础,后者是以功能和数据为基础)
建模的三种形式:
(1)过程建模
所谓软件过程模型就是一种开发策略,这种策略针对软件工程的各个阶段提供了一套范形,使工程的进展达到预期的目的。对一个软件的开发无论其大小,我们都需要选择一个合适的软件过程模型,这种选择基于项目和应用的性质、采用的方法、需要的控制,以及要交付的产品的特点。一个错误模型的选择,将迷失我们的开发方向。对于下面的模型,希望能够给开发者们一个参考和一点启示。
(2)数据建模
指的是对现实世界各类数据的抽象组织,确定数据库需管辖的范围、数据的组织形式等直至转化成现实的数据库。 将经过系统分析后抽象出来的概念模型转化为物理模型后,在visio或erwin等工具建立数据库实体以及各实体之间关系的过程(实体一般是表)。
(3)面向对象建模
面向对象模型是一种新兴的数据模型,它采用面向对象的方法来设计数据库。面向对象的数据库存储对象是以对象为单位,每个对象包含对象的属性和方法,具有类和继承等特点。Computer Associates的Jasmine就是面向对象模型的数据库系统