数据库应用系统开发过程与实例
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统逻辑模型是以后设计和实现目标 系统的基础,必须准确而完整地体现用户 的要求。
(1)需求说明书
(2)结构化分析(Structured Analysis) 方法
结构化分析方法是需求分析的最常用方 法,简称SA方法。它与设计阶段的结构化 设计(SD)方法一起联合使用,能够较好 地实现一个软件系统的研制。
(1)创建数据库的优点 ① 创建数据库是实现数据集成的有效手段。数据库 按一定的结构集中了应用系统中的数据,使之更便 于统一管理。
② 可以定义数据词典的功能,其内容包括表的属性、 字段属性、记录规则、表间关系以及参照完整性。
③ 允许在数据库中建立永久关系,使其具有以下功 能。
(2)数据库的逻辑设计与物理设计 这两项是需要由开发人员完成的工作。 其中数据库逻辑设计的任务大致如下。 ① 按一定的原则将数据组织成一个或多个数 据库,指明数据库中包含了几个表,并指出 每个表包含的字段。 ② 安排表之间的关联。 (3)代码设计
图9.1 以处理为中心的数据库应用系统开发流程示意图
1.需求分析
由图9.1可知,整个开发活动从对系统的需求分析开始, 系统需求包括对数据的需求和对应用功能的需求两方面内容。 图中把前者称为数据分析,后者称为功能分析。
进行需求分析时应该注意以下问题。
(1)确定需求必须建立在调查研究的基础上,包括访问用 户、了解人工系统模型、采集和分析有关资料等工作。
对软件成本和进度统计不准,实际费用超出 预算。
开发周期成本。 软件质量难以保证,常被怀疑。 缺乏良好的软件文档。 现有的软件极难维护。 软件开发效率远跟不上计算机发展的需求。 用户往往对软件不满意。
4.软件工程学概述 (1)软件工程学的研究对象 (2)软件工程学的基本目标 (3)软件工程学的3个要素 (4)软件生命周期(Software Life Cycle)
9.1.2 软件生存周期
一个软件从用户提出开发、使用要求到废弃 不用为止的全过程,称为软件生存周期,又称软件 生命周期。
软件生命周期由软件定义、软件开发和软件 维护3个时期组成。每个时期又分为若干个阶段。
软件生存周期的模型主要有以下两个。
1.瀑布模型(1976年由B.W.Boehm提出)
按瀑布模型,一个完整的软件开发过程分 为如下几个阶段。 (1)计划阶段: (2)开发阶段: (3)运行阶段:
3.应用程序设计
表9-1结构化程序设计与面向对象程序设计主要步骤的比较
(1)创建子类 (2)用户界面设计与编码 (3)数据输出设计 (4)数据库维护功能
4.调试技术
在典型情况下,当程序员测试和调试应用程序时, 主要是在研究程序不同级别的可靠性。
(1)运行不会导致崩溃或产生错误信息,即没有 语法错误。
5.测试
6.应用程序发布
7.维护
开发一个应用软件,应在调查的基础 上对系统进行需求分析,并绘出模块结构 图,根据模块结构图进行功能设计和数据 库设计,然后进行详细设计和程序设计。 其中,首先应明确系统的结构与数据文件 结构。
① SA方法的基本原理
② SA方法的分析工具
③ SA方法中导出的分析模型
9.1.4 软件开发
软件开发,是实现前一个时期定义的 软件。它包含4个阶段:总体设计、详细设 计、编码和测试。
1.总体设计
2.详细设计
9.1.5 软件测试
1.测试的定义
测试是为了发现程序中的错误而执行程序 的过程。
2.测试的目的 3.基本测试方法 4.测试策略
(2)在一般情况下操作正常,没有逻辑错误。 (3)具有运行时处理错误的能力。 (4)在意外的用户干扰时,很容易恢复,即具有 数据安全保护机制。
在早期的开发过程中,可以采取一些必要 步骤,这样可以使后面的测试和调试工作 变得简单。这些步骤包括:
(1)建立测试环境; (2)设置验证信息; (3)查看事件发生的序列。
在开发初期所做的设计方案往往会对最终结果产生很大的影 响。认真细致地规划将能节省时间、精力和资金。
(2)需求分析阶段应该让最终用户更多地参与。即使做了 仔细的分析,在系统实施过程中也会需要不断地修改设计, 为此需随时接受最终用户的反馈。
2.数据库设计
在设计应用程序之前,应先组织数据。VFP通过设 置数据库来统一管理数据,既能增强数据的可靠性, 也便于进行系统开发。
9.1.6 软件维护
软件维护的任务,是使软件能够持久地满足用户 的需求。
软件维护可分为4类:纠错性维护、适应性维护、 完善性维护和预防性维护。
9.1.7 计算机辅助软件工程
计算机辅助软件工程(Computer Aided Software Engineering,CASE),是20世纪80年代 末期从计算机辅助编辑工具4GLS(4th Generation Languages)和绘图工具发展而来的大型综合计算机 软件工程开发环境。
2.快速原型
9.1.3 软件定义
软件定义,又称为系统分析。
这个时期的任务,是确定软件开发的总目标,确定 软件开发工程的可行性,确定实现工程目标应该采 用的策略和必须完成的功能,估计完成该项工程需 要的资源和成本,制定出工程进度表。
软件定义,可进一步划分为3个阶段,即问题 定义阶段、可行性研究阶段和需求分析阶段。
1.问题定义阶段
2.可行性研究阶段
可行性的内容包括: 技术可行性; 经济可行性; 操作可行性。 软件计划任务书,包括: 软件项目目标; 主要功能、性能; 系统的高层逻辑模型(数据流图); 系统界面; 可供使用的资源; 进度安排和成本预算。
3.需求分析
需求分析即系统分析,通常采用系统 模型定义系统。在可行性分析的基础上, 需求分析的主要任务是:明ຫໍສະໝຸດ Baidu用户要求软 件系统必须满足的所有功能、性能和限制, 也就是解决软件“做什么的问题”。
2.软件开发经历的3个阶段
(1)程序设计时期(1946年~20世纪60年 代中期)
(2)软件时期(20世纪60年代中期~20世纪 70年代中期) (3)软件工程时期(1970年至今)
3.软件危机
软件危机主要有以下几方面的表现。
软件的复杂性越来越高,“手工作坊”式的 软件开发方式已无法满足要求。
(1)需求说明书
(2)结构化分析(Structured Analysis) 方法
结构化分析方法是需求分析的最常用方 法,简称SA方法。它与设计阶段的结构化 设计(SD)方法一起联合使用,能够较好 地实现一个软件系统的研制。
(1)创建数据库的优点 ① 创建数据库是实现数据集成的有效手段。数据库 按一定的结构集中了应用系统中的数据,使之更便 于统一管理。
② 可以定义数据词典的功能,其内容包括表的属性、 字段属性、记录规则、表间关系以及参照完整性。
③ 允许在数据库中建立永久关系,使其具有以下功 能。
(2)数据库的逻辑设计与物理设计 这两项是需要由开发人员完成的工作。 其中数据库逻辑设计的任务大致如下。 ① 按一定的原则将数据组织成一个或多个数 据库,指明数据库中包含了几个表,并指出 每个表包含的字段。 ② 安排表之间的关联。 (3)代码设计
图9.1 以处理为中心的数据库应用系统开发流程示意图
1.需求分析
由图9.1可知,整个开发活动从对系统的需求分析开始, 系统需求包括对数据的需求和对应用功能的需求两方面内容。 图中把前者称为数据分析,后者称为功能分析。
进行需求分析时应该注意以下问题。
(1)确定需求必须建立在调查研究的基础上,包括访问用 户、了解人工系统模型、采集和分析有关资料等工作。
对软件成本和进度统计不准,实际费用超出 预算。
开发周期成本。 软件质量难以保证,常被怀疑。 缺乏良好的软件文档。 现有的软件极难维护。 软件开发效率远跟不上计算机发展的需求。 用户往往对软件不满意。
4.软件工程学概述 (1)软件工程学的研究对象 (2)软件工程学的基本目标 (3)软件工程学的3个要素 (4)软件生命周期(Software Life Cycle)
9.1.2 软件生存周期
一个软件从用户提出开发、使用要求到废弃 不用为止的全过程,称为软件生存周期,又称软件 生命周期。
软件生命周期由软件定义、软件开发和软件 维护3个时期组成。每个时期又分为若干个阶段。
软件生存周期的模型主要有以下两个。
1.瀑布模型(1976年由B.W.Boehm提出)
按瀑布模型,一个完整的软件开发过程分 为如下几个阶段。 (1)计划阶段: (2)开发阶段: (3)运行阶段:
3.应用程序设计
表9-1结构化程序设计与面向对象程序设计主要步骤的比较
(1)创建子类 (2)用户界面设计与编码 (3)数据输出设计 (4)数据库维护功能
4.调试技术
在典型情况下,当程序员测试和调试应用程序时, 主要是在研究程序不同级别的可靠性。
(1)运行不会导致崩溃或产生错误信息,即没有 语法错误。
5.测试
6.应用程序发布
7.维护
开发一个应用软件,应在调查的基础 上对系统进行需求分析,并绘出模块结构 图,根据模块结构图进行功能设计和数据 库设计,然后进行详细设计和程序设计。 其中,首先应明确系统的结构与数据文件 结构。
① SA方法的基本原理
② SA方法的分析工具
③ SA方法中导出的分析模型
9.1.4 软件开发
软件开发,是实现前一个时期定义的 软件。它包含4个阶段:总体设计、详细设 计、编码和测试。
1.总体设计
2.详细设计
9.1.5 软件测试
1.测试的定义
测试是为了发现程序中的错误而执行程序 的过程。
2.测试的目的 3.基本测试方法 4.测试策略
(2)在一般情况下操作正常,没有逻辑错误。 (3)具有运行时处理错误的能力。 (4)在意外的用户干扰时,很容易恢复,即具有 数据安全保护机制。
在早期的开发过程中,可以采取一些必要 步骤,这样可以使后面的测试和调试工作 变得简单。这些步骤包括:
(1)建立测试环境; (2)设置验证信息; (3)查看事件发生的序列。
在开发初期所做的设计方案往往会对最终结果产生很大的影 响。认真细致地规划将能节省时间、精力和资金。
(2)需求分析阶段应该让最终用户更多地参与。即使做了 仔细的分析,在系统实施过程中也会需要不断地修改设计, 为此需随时接受最终用户的反馈。
2.数据库设计
在设计应用程序之前,应先组织数据。VFP通过设 置数据库来统一管理数据,既能增强数据的可靠性, 也便于进行系统开发。
9.1.6 软件维护
软件维护的任务,是使软件能够持久地满足用户 的需求。
软件维护可分为4类:纠错性维护、适应性维护、 完善性维护和预防性维护。
9.1.7 计算机辅助软件工程
计算机辅助软件工程(Computer Aided Software Engineering,CASE),是20世纪80年代 末期从计算机辅助编辑工具4GLS(4th Generation Languages)和绘图工具发展而来的大型综合计算机 软件工程开发环境。
2.快速原型
9.1.3 软件定义
软件定义,又称为系统分析。
这个时期的任务,是确定软件开发的总目标,确定 软件开发工程的可行性,确定实现工程目标应该采 用的策略和必须完成的功能,估计完成该项工程需 要的资源和成本,制定出工程进度表。
软件定义,可进一步划分为3个阶段,即问题 定义阶段、可行性研究阶段和需求分析阶段。
1.问题定义阶段
2.可行性研究阶段
可行性的内容包括: 技术可行性; 经济可行性; 操作可行性。 软件计划任务书,包括: 软件项目目标; 主要功能、性能; 系统的高层逻辑模型(数据流图); 系统界面; 可供使用的资源; 进度安排和成本预算。
3.需求分析
需求分析即系统分析,通常采用系统 模型定义系统。在可行性分析的基础上, 需求分析的主要任务是:明ຫໍສະໝຸດ Baidu用户要求软 件系统必须满足的所有功能、性能和限制, 也就是解决软件“做什么的问题”。
2.软件开发经历的3个阶段
(1)程序设计时期(1946年~20世纪60年 代中期)
(2)软件时期(20世纪60年代中期~20世纪 70年代中期) (3)软件工程时期(1970年至今)
3.软件危机
软件危机主要有以下几方面的表现。
软件的复杂性越来越高,“手工作坊”式的 软件开发方式已无法满足要求。