1、 设计阶段(根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库设计等等。一般分为总体设计和详细设计。软件设计的原理包括对象、分解和模块化、耦合和内敛、封装、充分性、完整性和原始性。软件设计主要关注软件的兼容性、可扩展性、容错性、可维护性、模块化、可靠性、可重用性、健壮性、安全性、可用性和互操作性。耦合和内敛是两个用来评估软件设计质量的方法) 实现阶段(程序编码,此阶段的结果是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须制定统一、缝合标准的编码规范,以保证程序的可读性、易维护性,以提高程序的运行效率) 测试阶段(软件测试,在软件设计完成后要经过严密的测试,以发现
2、软件在整个设计过程中村的问题并加以纠正。整个测试过程分为单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要有白盒测试和黑盒测试。在测试中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性) 安装部署和交付阶段(运行维护,运行维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的需求。要延续软件的使用周期,就必须对软件进行维护。软件的维护包括纠错性维护和改进型维护两个方面)4. 软件项目管理:软件项目管理的对象时软件工程项目。它涉及的范围覆盖了整个软件工程过程。为了是软件项目开发获得成功,关键问题是必须对软件项目的工
3、作范围、可能风险、需要资源(人、软件/软件)、要实现的任务、经历的里程碑、话费工作量(成本),进度安排等做到心中有数。这种管理在技术工作之前就应开始,在软件概念到实现的过程中继续进行,当软件工程工程最后结束时才终止。软件项目管理和其他项目管理相比有相当的特殊性。首先,软件是纯知识产品,其开发进度和质量很难估计和度量,生产效率也难以预测和保证。其实软件系统的复杂性也导致开发过程中各种风险的难以预见和控制。软件项目管理的内容主要包括:人员的组织和管理、软甲度量、软件项目计划、风险管理、软件质量保证、人过程能力评估、软件配置管理5. 软件工程以关注软件质量为特征,有方法、工具和过程三部分组成。6.
4、软件过程模型(软件开发模型):是对软件过程的一种抽象表示,表示了软件过程的整体框架和软件开发活动各阶段间的关系,常见的有瀑布模型、快速原型模型、增量模型和螺旋模型。 瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品。其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采取结构化的分析与设计方法将逻辑实现与物理实现分开。奖软件生命周期分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护,并且规定了它们自上而下、相互衔接的固定次序=如同瀑布流水,逐级下落。迭代模型是RUP(Rational Unified Proce
5、ss,统一软件开发过程)推荐的周期模型。迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必须的所有其它外围元素。在某种程度上,开发迭代式一次完整地经过所有流程的过程:需求、分析设计、实施和测试工作流程。实质上类似于小型的瀑布式模型 快速原形模型需要迅速建造一个可以运行的软件模型,以便理解和澄清问题,使开发人员和用户达成共识,最终在确定的客户需求基础上开发客户满意的软件产品。快速原型模型允许在需求分析阶段对软件的需求进行初步而非完全的分析与定义,快速设计开发出软件系统的模型,该模型向用户展示待开发软件的全部或部分功能和性能,用户对该原型进行测试评定,给出具体改进意见以丰
6、富细化软件需求,开发人员据此对软件进行修改完善,直至用户满意认可以后,在进行软件的完整实现及测试、维护螺旋模型将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。螺旋模型能让开发人员在早期就能为客户实证某些概念。该模型是快速原型法,一进化的开发方式为中心,在每个项目阶段使用瀑布模型。这种模型的每一个周期都包括需求定义(制定计划)、风险分析、工程实现和客户评审四个阶段,由这四个阶段进行迭代软件开发过程每迭代一次,软件开发就前进一个层次。DBAS数据库应用系统是在数据库管理系统(DBMS)支持下建立的计算机应用系统。数据库应用系统是由数据库系统、应用程序系统
7、、用户组成的,具体包括:数据库、数据库管理系统、数据库管理员、硬件平台、软件平台、应用软件、应用界面。数据库应用系统的7个部分以一定的逻辑层次结构方式组成一个有机的整体,他们的关系是:应用系统、软件开发工具软件、数据库管理系统、操作系统、硬件。1. 数据库应用软件在内部可以看做是由一系列软件模块/子系统组成,这些模块/子系统可分为两类:(1)与数据访问有关联的数据库事务模块:利用DBMS提高的数据库管理功能,以数据库事务方式直接对数据库中的各类应用数据进行操作,模块粒度较小(2)与数据访问无直接关联的应用模块:在许多与数据处理相关的应用系统中,对数据库的访问只是整体中的一部分,其他功能则与数据
8、库访问无直接关系,这部分模块粒度可以比较大2. DBAS设计开发的硬件方面:主要设计根据系统的功能、性能、存储等需求选择和配置合适的计算机硬件平台,并与开发好的DBAS软件系统进行集成,组成完整的数据库应用系统3. 数据库应用系统的生命周期模型:(1)参照软件开发瀑布模型的原理,DBAS的生命周期由项目规划、需求分析、系统设计、实现和部署、运行管理和维护等5个基本活动组成(2)将快速原型模型和增量模型的开发思路引入DBAS生命周期模型,允许渐进、迭代地开发DBAS;(3)根据DBAS的软件组成和各自功能,细化DBAS需求分析和设计阶段,引入了数据组织和存储设计、数据访问和处理设计、应用设计三条
9、设计主线,分别用于设计DBAS中的数据库、数据库事务和应用程序;(4)将DBAS设计阶段细分为概念设计、逻辑设计、物理设计三个步骤,每一步的设计内容又涵盖了三条设计主线4. 规划与分析4.1 系统规划与定义:系统规划与分析是面向将要开发的DBAS,通过了解用户实际需求,明确该系统需要实现的目标和任务,并从数据管理和数据处理的角度,确定系统中数据库软件的功能、性能范围;系统定义与规划包括:(1)任务陈述:描述所要开发的DBAS的总体目标;(2)确定任务目标(3)确定系统范围和边界(4)确定用户视图4.2 可行性分析可行性分析包括:(1)经济可行性:对项目进行成本效益分析;DBAS的成本包括:软硬
10、件配置费用、系统开发费用、系统安装运行维护费用(2)技术可行性:是根据用户提出的系统功能、性能及实现系统的各种约束条件,对系统软件、硬件、技术方案作出评估和选择建议。 硬件研究可行性是分析DBAS的硬件平台环境和设置 软件可行性研究包括:对可用的DBMS和操作系统的选型评估,对中间件和开发环境的选型建议,打DBAS开发模式和编程语言的建议 技术方案的选择是根据系统技术的需求,提出DBAS可能采用的合理技术方案和关键技术(3)操作可行性:是论证是否具备DBAS开发所需的各类人员资源、软件资源、硬件资源和工作环境等,以及为支持DBAS开发如何去改进加强这几方面的资源。(4)开发方案的选择:目的是提
11、出并评论实现系统的各种开发方案,从中选出一种适用于DBAS软件的开发方案项目规划是项目管理者对资源、成本和进度作出合理估算,并在此基础上制定切实可行的DBAS项目开发计划。项目规划主要包括:(1)确定项目的目标和范围(2)根据DBAS软件开发模型,分解和定义整个项目包括的工作活动和任务(3)估算完成该项目的规模和所需各种资源(4)制定合理的DBAS项目规划项目规划的结果应形成数据库应用系统项目计划文档,即项目计划书4.3 需求分析 数据库应用系统需求是指用户对DBAS在功能、性能、设计约束等方面的期望和要求 DBAS需求分析是在已经明确的DBAS系统范围基础上,通过对应用问题的理解和分析,采用
12、合适的工具和符号,系统地描述DBAS的功能特征、性能特征和约束,并形成需求规范说明文档 需求分析过程是由需求获取、需求分析、需求描述和规范说明、需求验证等组成DBAS需求分析包括: 数据需求分析 数据处理需求分析 业务需求分析 分析数据库系统在性能、存储、安全、备份与恢复等方面的要求4.3.1 数据与数据处理需求分析 1. 数据需求分析:是从对数据组织和存储设计的角度,辨识应用领域所管理的各类数据项和数据结构,与数据处理需求分析结构一起,组成数据字典 2. 数据处理需求分析:是从数据访问和存储的设计角度,明确对各类数据项所需进行的数据访问操作,分析结果可表示为数据流图或事务规范 3. 事务规范
13、包括:事务的名称 事务的描述 事务访问的数据项 事务用户4.3.2 业务规则需求分析 业务规则需求分析是从DBAS高层目标和整体功能出发,分析系统或系统中一些大粒度子系统应具有的业务类型和功能,明确用户或外部系统与DBAS的交互模式4.3.3 性能需求分析DBAS的性能指标:(1) 数据操作响应时间(或数据访问响应时间):从提交请求到返回结果的时间(2) 系统吞吐量:指系统在单位时间内所完成的事务或查询的数量,单位是TPS(每秒事务处理量 - 性能测试的术语介绍TPS(Transaction Per Second) 每秒钟系统能够处理的交易或事务的数量)(3) 允许并访问的最大用户数:保证响应
14、时间的前提下,系统最多允许多少用户访问数据库(4)每TPS代价值,用于衡量系统性价比的指标影响DBAS性能的元素: (1) 系统硬件资源 (2) 网络通信设备性能 (3) 操作系统环境(4) 数据的逻辑设计和物理设计质量,数据库配置参数(5) DBAS的配置和性能(6) 数据库应用程序自身4.3.4 其他需求分析 存储需求分析:是指根据DBAS系统所需的数据存储量,包括(1)初始数据库大小 (2) 数据库增长速度 存储总量估算可采用:根据数据字典中每个数据项的结构描述信息,估计每个数据项的容量,将所有数据项的容量累加 安全性需求分析 (1)DBAS系统应达到的安全控制级别 (2)各类用户的数据
15、视图和视图访问权限 (3)DBAS应有的口令保护机制或其安全认证机制,用以控制用户登录数据库系统 备份和恢复需求分析 (1) DBAS运行过程中备份数据库的时间和备份周期 (2) 所需备份的数据是全部数据库数据,还是一部分(3) 备份方式是采用完全备份还是采用差异备份4.4 系统设计4.4.1 概念设计 数据库概念模型设计:是根据数据需求分析阶段得到的需求结构,分析辨识需要组织存执存储在数据库中的各类应用领域数据对象的特征及其相互关联关系,并采用概念数据模型表示出来,得到独立于具体DBAS的数据库模型概念 ER方法:(1)选择局部应用 (2)分别设计各个局部ER图 (3)局部ER图合并 (ER
16、 E-R,Entity-Relationship:实体关系图,属于数据库里面的用语,使得实体,弱实体或者超类之间的从属层次关系更加明了) 系统总体设计:(1) 确定DBAS体系结构(2) 系统硬件平台和操作系统、数据库管理系统等软件系统的选型和配置(3) 应用软件结构分析(4) 对需求分析阶段识别出的业务规则进行初步设计,细化业务规则流程,明确采用的关键技术和算法(5) 对系统采用的关键技术进行方案选型和初步设计4.4.2 逻辑设计 数据库逻辑结构设计:指从数据库的概念模型出发,设计表示为逻辑模式的数据库逻辑结构(1) ER图转换成为初始关系模式(2) 对初始关系模式进行优化(3) 检查关系表对数据库事务的支撑性(4) 确定关系模型的完整性约束(5) 从数据安全性和独立性出发,设计用户视图 应用程序概要设计 数据库事务概要设计4.4.3 物理设计 数据库物理结果设计:主要指数据文件在外村的存储结构和存取方法,它依赖于系统具体的硬件环境、操作系统和DBMS(1) 数据库逻辑模式调整(2) 选择或配置基本关系表的文件组织
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1