软件开发流程_第1页
软件开发流程_第2页
软件开发流程_第3页
软件开发流程_第4页
软件开发流程_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件开发流程软件开发流程开发流程总图可行性分析和工程开发方案 -> 需求分析->概要分析-> 详细设计-> 编码-> 测试-> 维 护一可行性分析和工程开发方案软件可行性研究的目的就是用最小的代价在尽可能短的时间内确定该 软件工程是否够开发,是否值得去开发.i. 技术可行性确定现有资源软件、硬件、技术人员条件下,工程是否能实现.ii. 经济可行性进行开发本钱的估算以及了解取得经济效益的评估,确定要开发的工程是否值得投资去开发.iii. 社会可行性要开发的工程是否存在任何侵犯、阻碍等责任问题,要开发工程的运行方式在用户组内是否行得通,现有治理制度、人员素质、操

2、作方式是否可行.编写文档:?可行性研究报告?工程开发方案?工程开发方案?是一个治理性文档,说明工程的各项主要工作,双 方承当的责任,工程完成期限及其他条件限制.二需求分析需求分析是指:开发人员准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转化到相应形式的功能规约需求规格说明书的过程.需求分析的任务:i.问题识别1 .功能需求:所开发的软件必须具备怎样的功能.2 .性能需求:待开发的软件的技术性能指标.3 .环境需求:软件运行时所需的软硬件的要求.4 .用户界面需求:人机交互方式等.ii. 分析与综合,导出软件的逻辑模型在分析与综合中,逐步细化软

3、件功能,划分各个子功能,用图文结合的形式, 建立系统的逻辑模型.iii. 编写文档?需求规格说明书?:把双方共同的理解与分析结果用标准的方式描述出来, 作为今后各项工作的根底.?初步用户使用手册?:着重反响被开发软件的用户功能界面和用户使用的 具体要求.?确认测试方案?:对原方案进行适当修整.需求分析方法:结构化分析方法,简称SA,是面向数据流进行分析的方法.该方 法使用简单易读的符号,根据软件内数据传递、变换的关系,自顶向下逐层分解,描绘 出满足功能要求的软件模型.描述工具:数据流图DFD:以图形方式描绘数据在系统中流动和处理的工程.数据字典DD:为分析人员查找数据流图中有关名字的详细定义而

4、效劳.三概要设计概要设计是要软件“做什么的逻辑模型变换为“怎么做的物理模型, 把软件需求转换为软件表示,描述软件的总的体系结构.概要设计任务1 .设计软件系统结构1 .采用某种设计方法,将一个复杂的系统按功能划分为模块2,确定每个模块的功能3,确定模块之间的调用关系4.确定模块之间的接口ii.数据结构及数据库设计对于大型数据处理的软件系统,除了限制结构的模块设计外,数据结构与数据 库设计也比拟重要.i,编写概要设计文档?概要设计说明书?数据库设计说明书?软件结构设计优化准那么:1、划分模块时,尽量做到高内聚,低耦合,保持模块相对独立性,可将功能 过于简单而又有联系的模块进行合并,合并时消除重复

5、功能.2、有判定功能的模块应与受其影响的模块在层次上尽量靠近.3、软件结构的深度、宽度、扇入、扇出应适当.4、模块的大小要适中.5、模块的接口要简单、清楚、含义明确、便于理解、易于实现、测试与维护.四详细设计详细设计任务:i,为每个模块进行详细的算法设计概要设计,将每个模块的处理过程的详细算法描述出来.ii, 为模块内的数据结构进行设计,对于需求分析,概要设计确定的概念性的数据类型进行确切的定义.iii, 对数据库进行物理设计iv, 编写详细设计说明书五编码编码即“编程序,它是在前一阶段详细设计的根底上进行的.它是详细设 计得到的处理过程的描述转换为基于某种计算机语言的程序.程序设计语言的选择

6、:1、工程的应用领域2、软件开发的方法3、软件执行的环境4、软件开发人员的知识程序设计风格1、源程序文档化编码标准2、数据说明注释3、语句构造4、输入输出结束标志5、效率六测试测试阶段的根本任务是根据软件开发的各阶段的文档资料和程序内部结构, 精心设计一组测试用例,找出软件潜在的各种错误和缺陷.软件测试原那么:1、测试用例应有输入数据和预期的输出数据两局部组成.2、测试用例不仅要选择合理的输入数据,还要选择不合理的输入数据3、除了检查程序是否做了它应该做的事,还要检查程序是否做了它不应该做的事.4、长期保存测试用例.5、程序员防止测试自己的程序.测试方法:1、静态测试:不在机器上运行,采用人工

7、检测和计算机辅助分析的手段对程序进 行检测.2、动态测试:a 黑盒测试:测试人员不考虑程序的内部结构和处理过程,只在软件接口进行测试,依据需求规格说明书,检查程序是否满足功能需求.b白盒测试:测试人员须了解程序的内部结构和处理过程, 以检查处理过程 的细节为根底,对程序中尽可能多的逻辑路径进行测试, 检查内部限制结构和数据 结构是否有错,实际的运行状态与预期的状态是否一致.测试过程:1、单元测试:对源程序中每一个程序单元进行测试,检查各个模块是否正确实现 规定的功能,从而发现模块在编码中或算法中的错误.2、集成测试:检查与设计相关的软件体系结构的有关问题.3、确认测试:主要检查已实现的软件是否

8、满足需求规格说明书中确定了的各种需 求.4、系统测试:把已确认的软件与其他系统元素其他支出软件、硬件等结合在 一起测试.版本发布:分为a、b、c三个阶段1、a阶段也就是一开始测试的阶段,它是由该公司内部人员完成,称为:alpha测试,alpha测试主要看有没有功能上的缺失或系统错误什么的.2、b阶段发布到公网上或以其他途径发给普通用户测试,称为: beta测试.主要看客户对软件外观,使用方便性等的反响.3、c阶段称为:RC测试,该版本已经完成全部功能并去除大局部bug,到这个阶段只会去除一小的bug,不会对软件做任何大的更改.最后正式版发布,测试阶段结束 同时会在正式版的软件名称加上-final七软件维护软件投入使用后就进行软件维护阶段, 是软件生存周期中时间最长的一个阶 段.软件维护内容:1、校正性维护:软件交付使用后,由于软件开发过程中产生的错误并没有完全彻 底的在程序中发现,这些隐含的错误在某些特定的使用环境下会暴露出来.2、适应性维护:随着计算机的开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论