2-1-3

来源:百度文库 编辑:神马文学网 时间:2024/06/13 11:37:01


概 述
1.软件危机的起因
  由于软件规模的扩大,复杂性成倍的增加,在60年代中后期导致了所谓的“软件危机”。
2.软件危机的表现
(1)开发过程往往无法控制,常常一再拖延。
(2)缺乏科学的指导原则和管理方法,软件产品质量低劣,达不到规定的要求。
(3)由于产品质量低劣,维护任务十分繁重。
(4)软件开发费用急剧上升,常常超出预算,使应用部门与开发部门无法负担。
3.解决软件危机的方法
(1)为了解决“软件危机”,在1968年首次提出“软件工程”的概念。
(2)人们认为,应该用科学知识、工程方面的纪律指导软件开发的过程,以提高软件质量和开发效率,降低开发成本。
4.软件生存期
(1)软件工程中把软件开发和运营的全过程称为“软件生存期”(life cycle)。
(2)软件生存期是软件工程的一个重要概念。
(3)软件生存期是指从软件的规划、研制、实现、投入运行后的维护,直到它被新的软件所取代而停止使用的整个期间。
5.数据库应用系统
(1)以数据库为基础的信息系统通常称为数据库应用系统。
(2)它一般具有信息的采集、组织、加工、抽取、综合和传播等功能。
(3)数据库应用系统的开发是一项软件工程,但又有自己特有的特点,所以特称为“数据库工程”。
6.数据库系统生存期
(1)仿照软件生存期,可以得到数据库系统生存期概念。
(2)我们把数据库应用系统从开始规划、设计、实现、维护到最后被新的系统取代而停止使用的整个期间,称为数据库系统生存期。
(3)这个生存期一般可划分成下面七个阶段:规划、需求分析、概念设计、逻辑设计、物理设计、实现、运行维护。 2.1.1 规划阶段
1.重要性
(1)对于数据库系统,特别是大型数据库系统或大型信息系统中的数据库群,规划阶段是十分必要。
(2)规划的好坏将直接影响到整个系统的成功与否,对应用单位的信息化进程将产生深远的影响。
2.规划阶段的三个步骤
(1)系统调查。对应用单位作全面的调查。发现其存在的主要问题,并画出组织层次图,以了解企业的组织机构。
(2)可行性分析。从技术、经济、效益、法律等诸方面对建立数据库的可行性进行分析;然后写出可行性分析报告;组织专家进行讨论其可行性。
(3)确定数据库系统的总目标,并对应用单位的工作流程进行优化和制订项目开发计划。在得到决策部门批准后,就正式进入数据库系统的开发工作。

2.1.2 需求分析阶段
1.概述
  这一阶段是计算机人员(系统分析员)和用户双方共同收集数据库所需要的信息内容和用户对处理的需求。并以需求说明书的形式确定下来,作为以后系统开发的指南和系统验证的依据。
2.需求分析的四项主要工作
(1)分析用户活动,产生业务流程图
   ①了解用户的业务活动和职能,搞清其处理流程(即业务流程)。
   ②如果一个处理比较复杂,就要把处理分解成若干个子处理,使每个处理功能明确、界面清楚。
   ③分析之后画出用户的业务流程图。
(2)确定系统范围,产生系统关联图
   ①这一步是确定系统的边界。
   ②在和用户经过充分讨论的基础上,确定计算机所能进行的数据处理的范围,确定哪些工作由人工完成,哪些工作由计算机系统完成,即确定人机界面。
(3)分析用户活动涉及的数据,产生数据流图
   ①深入分析用户的业务处理,以数据流图形式表示出数据的流向和对数据所进行的加工。
   ②数据流图(Data Flow Diagram,简记为DFD)是从“数据”和“对数据的加工”两方面表达数据处理系统工作过程的一种图形表示法,具有直观、易于被用户和软件人员双方都能理解的一种表达系统功能的描述方式。
(4)分析系统数据,产生数据字典
   ①数据字典是对数据描述的集中管理,它的功能是存储和检索各种数据描述(称为元数据metadata)。对数据库设计来说,数据字典是进行详细的数据收集和数据分析所获得的主要成果。
   ②数据字典中通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。 2.1.3 概念设计阶段
1.概念设计的目标
概念设计的目标 功能名称 说明 概念设计 是产生反映用户单位信息需求的数据库概念结构,即概念模型。 概念模型 是独立于计算机硬件结构,独立于支持数据库的DBMS。
2.概念设计的重要性
(1)早期无概念设计阶段
   ①在早期的数据库设计中,概念设计并不是一个独立的设计阶段。
   ②当时的设计方式是在需求分析之后,直接把用户信息需求得到的数据存储格式转换成DBMS能处理的逻辑模型。
   ③这样,注意力往往被牵扯到更多的细节限制方面,而不能集中在最重要的信息组织结构和处理模型上。
   ④因此在设计依赖于具体DBMS的逻辑模型后,当外界环境发生变化时,设计结果就难以适应这个变化。
(2)增加概念设计阶段
   ①为了改善这种状况,在需求分析和逻辑设计之间增加了概念设计阶段。
   ②此时,设计人员仅从用户角度看待数据及处理需求和约束,尔后产生一个反映用户观点的概念模型(也称为“组织模型”)。
   ③将概念设计从设计过程中独立开来,可以使数据库设计各阶段的任务相对单一化,得以有效控制设计的复杂程度,便于组织管理。
   ④概念模型能充分反映现实世界中实体间的联系,又是各种基本数据模型的共同基础,同时也容易向现在普遍使用的关系模型转换。
3.概念设计的三个主要步骤
(1)进行数据抽象,设计局部概念模型
   ①局部用户的信息需求是构造全局概念模型的基础。因此,需要先从个别用户的需求出发,为每个用户或每个对数据的观点与使用方式相似的用户建立一个相应的局部概念结构。
   ②在建立局部概念结构时,要对需求分析的结果进行细化、补充和修改,如有的数据项要分为若干子项,有的数据的定义要重新核实等。
   ③设计概念结构时,常用的数据抽象方法是“聚集”和“概括”。
   a.聚集是将若干对象和它们之间的联系组合成一个新的对象。
   b.概括是将一组具有某些共同特性的对象抽象成更高一层意义上的对象。
(2)将局部概念模型综合成全局概念模型
   ①综合各局部概念结构就可得到反映所有用户需求的全局概念结构。
   ②在综合过程中,主要处理各局部模式对各种对象定义的不一致问题,包括同名异义、异名同义和同一事物在不同模式中被抽象为不同类型的对象(例如,有的作为实体,有的又作为属性)等问题。
   ③把各个局部结构合并,还会产生冗余问题,或导致对信息需求的再调整与分析,以确定确切的含义。
(3)评审
   ①消除了所有冲突后,就可把全局结构提交评审。
   ②评审分为用户评审与DBA及应用开发人员评审两部分。
   ③用户评审的重点放在确认全局概念模型是否准确完整地反映了用户的信息需求和现实世界事物的属性间的固有联系。
   ④DBA和应用开发人员评审则侧重于确认全局结构是否完整,各种成分划分是否合理,是否存在不一致性,以及各种文档是否齐全等。
   ⑤文档应包括局部概念结构描述、全局概念结构描述、修改后的数据清单和业务活动清单等。
4.概念设计中最著名的方法
(1)就是实体联系方法(ER方法)。
(2)建立ER模型,用ER图表示概念结构,得到数据库的概念模型。