版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件开发的完整步骤目录TOC o 1-5 h z HYPERLINK l bookmark3 问题定义4 HYPERLINK l bookmark5 用户调查4 HYPERLINK l bookmark7 编写系统目标与范围说明4 HYPERLINK l bookmark9 可行性研究4 HYPERLINK l bookmark11 确定项目的规模和目标4 HYPERLINK l bookmark13 研究正在运行的系统4 HYPERLINK l bookmark15 建立新系统的高层逻辑模型5 HYPERLINK l bookmark17 重新定义问题5 HYPERLINK l bookma
2、rk19 导出和评价各种方案5 HYPERLINK l bookmark21 推荐可行方案5 HYPERLINK l bookmark23 编写可行性研究报告5 HYPERLINK l bookmark25 提交审查5 HYPERLINK l bookmark27 需求分析6 HYPERLINK l bookmark29 制定需求分析计划6 HYPERLINK l bookmark31 需求获取6 HYPERLINK l bookmark33 分析和综合6 HYPERLINK l bookmark35 协商与沟通6 HYPERLINK l bookmark37 编写需求规格说明书6 HYPER
3、LINK l bookmark39 需求验证7 HYPERLINK l bookmark41 修改完善开发计划7 HYPERLINK l bookmark43 技术审查和管理复审7 HYPERLINK l bookmark45 概要设计7 HYPERLINK l bookmark47 制定规范7 HYPERLINK l bookmark49 设想供选择的方案7 HYPERLINK l bookmark51 推荐最佳方案8 HYPERLINK l bookmark53 功能分解8 HYPERLINK l bookmark55 软件结构设计8 HYPERLINK l bookmark57 数据设计
4、8 HYPERLINK l bookmark59 制定测试计划8 HYPERLINK l bookmark61 编写概要设计规格说明书8 HYPERLINK l bookmark63 其他文档编写8 HYPERLINK l bookmark65 技术审查和管理复审9 HYPERLINK l bookmark67 详细设计9 HYPERLINK l bookmark69 数据结构设计9 HYPERLINK l bookmark71 物理设计9 HYPERLINK l bookmark73 算法设计9 HYPERLINK l bookmark75 界面设计9其他设计10 HYPERLINK l b
5、ookmark77 编写详细设计规格说明书10 HYPERLINK l bookmark79 技术审查和管理复审10 HYPERLINK l bookmark81 编码10 HYPERLINK l bookmark83 选择合适的程序设计语言10 HYPERLINK l bookmark85 制定编码规范10 HYPERLINK l bookmark87 建立数据库系统10 HYPERLINK l bookmark89 程序编码11 HYPERLINK l bookmark91 测试11 HYPERLINK l bookmark93 测试用例设计11 HYPERLINK l bookmark9
6、5 单元测试11 HYPERLINK l bookmark97 集成测试11 HYPERLINK l bookmark99 系统测试11编写测试分析报告121问题定义问题定义指在项目初期,从客户或用户处获取需求,弄清用户需要计算机解决的问题根本所在,以及项目所需的经费和资源的文档,最终使开发人员与客户就所构建的系统的范围达成一致意见用户调查对用户进行访谈,调查,初步了解项目范围,需要解决的问题以及项目经费的重要信息。编写系统目标与范围说明将本阶段的结果写成相应的文档,即系统目标与范围说明2可行性研究软件可行性分析最根本的任务是用最少的代价,对以后的行动方针提出建议。如果问题没有可行的解释,分析
7、员应该建议停止这项开发工程,以避免时间、资源、人力和金钱的浪费;如果问题值得解,分析员应该推荐一个较好的解决方案,并且为工程制定一个初步的计划。确定项目的规模和目标分析员对有关人员进行调查访问,仔细阅读和分析有关的材料,对项目的规模和目标进行定和确认,清晰地描述项目的一切限制和约束,确保分析员正在解决的问题确实是要解决的问题。研究正在运行的系统收集,研究,分析现有系统的文档资料和使用手册,实地考察现有系统,在考察的基础上,访问有关人员,确定目标系统必须完成的基本功能。建立新系统的高层逻辑模型根据对现有系统的分析研究,逐步明确了新系统的功能,处理流程以及所受约束,然后使用数据流图和数据字典,概括
8、的描述高层的数据处理和流动。重新定义问题将新系统的高层逻辑模型与项目的问题及目标进行比较,重新复查问题定义,工程规模和目标。导出和评价各种方案分析员建立了新系统的高层逻辑模型,并进行复查后,要从技术的角度出发,提出高层逻辑模型的不同方案,即导出若干较高层次的物理解法。根据技术可行性,经济可行性,社会可行性对各种方案进行评估,去掉行不通的解法,得到可行的解法。推荐可行方案根据之前可行性研究的结构,应该决定该项目是否值得去开发。若值得开发,那么可行的解决方案是什么,并且说明该方案可行的原因和理由。草拟开发计划初步确定工程进度表,开发人员,所需要的资源以及对项目所需要的时间进行估计。编写可行性研究报
9、告将该阶段的可行性研究过程的结果写成相应的文档,即可行性研究报告提交审查用户和使用部门对可行性研究报告进行仔细审查,从而决定该项目是否进行开发,是否接受可行的实现方案。需求分析需求分析要求开发人员准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转化到相应的形式功能规约(需求规格说明)的过程。需求分析是软件定义阶段中的最后一步,是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。制定需求分析计划需求分析是一项重要的工作,也是最困难的工作,这个阶段可能会耗费相当的时间,人力以及物力。若有明确的计划进行指导,将使得需求分析工作
10、更加有条不紊的进行。需求获取需求获取是一个对准备建立的系统和正在使用的系统进行信息收集并从这些信息中提取用户需求和系统需求的过程。可以通过用户面谈,实地考察,用例,需求专题讨论会等方式发现,获取需求。分析和综合分析人员根据导出的需求,进行移植的分析检查,在分析,综合中逐步细化软件功能,划分成各个子功能,找出各元素之间的联系,接口特性和设计上的限制。导出软件的逻辑模型根据分析与综合的结果,细化可行性研究阶段形成的高层逻辑模型,包括数据流图和数据字典,E-R图,状态转换图等,以图文的形式建立起性系统的逻辑模型。协商与沟通在有多个项目相关人员(信息持有者)参与的地方,需求将不可避免的发生冲突,在这个
11、阶段需要对需求的优先权进行排序并通过协商发现并解决这些冲突。编写需求规格说明书把双发共同的理解与分析的结果用规范的方式描述出来,形成需求规格说明书,并向下一阶段提交,作为今后各项工作的基础。需求验证为保障软件质量,确保软件开发成,一旦对系统提出一组要求之后,必须严格验证这些需求的正确性,一般从一致性,完整性,现实性,有效性四个方面进行验证。在这个阶段,系统客户和系统开发人员必须详细地阅读需求文档并检查其中的错误,一旦检查出任何问题必须记录下来,接着客户就需要和开发人员协商如何解决问题。修改完善开发计划在需求分析阶段对待开发的系统有了更进一步的了解,所以能更准确的估计开发成本,进度以及资源要求,
12、因此,对原计划要进行适当修正。技术审查和管理复审用户和使用部门对需求规格说明书进行仔细的审查,通过后该文档将作文今后工作的基础。概要设计概要设计也成为总体设计,在这个极端需要确定软件的总体结构,也就是软件应该由哪些模块组成,以及模块与模块之间的接口关系,软件系统主要的数据结构,同时还要制定测试计划,形成概要设计说明书。制定规范尽管每个开发组织都有概要设计规范,但是不同的应有有些特殊性,所以应该针对具体的软件特点,制定出合适的规范。包括设计文档的编制标准,编码的信息形式,与硬件、操作系统的接口规约,命名规则等。设想供选择的方案在概要设计时,设计人员应该考虑各种可能的实现方案,并且力求从中选出最佳
13、方案。此时设计人员有充分的自由比较不同的实现方案,一旦选出了最佳方案,将能大大提高系统的性价比。推荐最佳方案综合分析对比各种合理方案的利弊,推荐一个最佳方案,并为最佳方案制定详细的实现计划。用户和有关技术专家应该认真审查,若符合需求并且完全能够实现,则提请负责人审批。方案被接受后者进入下一阶段。功能分解为确定软件结构,首先需要从现实角度把复杂的功能进一步分解。分析员结合算法描述仔细分析数据流图中的每个处理,将复杂的功能分解成一系列比较简单的功能。经过分解细化之后,通常一个模块只完成一个适当的功能,每个模块对于大多数程序员都是易于理解的。软件结构设计设计软件模块的结构就是要把软件模块组成良好的层
14、次系统,描述各模块之间的关系。顶层模块调用它下层模块,每个下层模块再调用更下层的模块,最下层的模块完成最具体的功能,这样自顶向下实现一个完整的功能。数据设计数据设计包括数据结构设计,文件设计和数据库设计。根据需求分析阶段获得的数据要求,确定实现系统所必须的数据,数据之前的关系,存储数据的实体。制定测试计划为了保证软件的可测试性,软件在一开始就要考虑软件的测试问题,但是这个阶段的测试计划应该是针对软件结构的测试和系统测试。编写概要设计规格说明书将本阶段的成果编制为相应的文档,即概要设计规格说明书。其他文档编写需要提交审查的文档还包括用户手册,测试计划,实现计划等,还需要对这些文档进行编写。技术审
15、查和管理复审最后应该对总体设计的结果进行严格的技术审查,在技术审查通过之后再由客户从管理角度进行复审。详细设计详细设计阶段的根本目的是确定应该怎样具体地实现所要求的系统,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以吧这个描述直接翻译成用某种程序设计语言书写的程序。数据结构设计数据结构设计指的是对需求分析,概要设计阶段确定的概念性的数据进行确切的定义。物理设计对数据库进行物理设计,即确定数据库的物理结构。物理结构主要是指数据库的存储记录格式,存储记录安排和存储方法,这些都依赖于具体使用的数据库系统。算法设计在总体设计的结构完成之后,结构各个环节的实现是多解的。这就需要
16、用系统设计与分析的技术来描述。可以使用某些图形、表格、语言等工具将每个模块处理过程的详细算法表示出来。界面设计用户界面的设计现在显得比较重要,可以采用字符用户界面设计,图形用户界面和多媒体人机界面设计。这就要结合具体的系统来处理。5.5其他设计根据软件系统的类型,可能还要进行其他设计,例如:代码设计,输入/输出格式设计,人机对话设计,网络设计等。编写详细设计规格说明书将本阶段的成果编制为相应的文档,即详细设计规格说明书。技术审查和管理复审最后应该对详细设计的结果进行严格的技术审查,所有处理过程的算法和数据库的物理结构等都要进行评审。编码编码即把软件设计的结果翻译成用某种程序设计语言书写的程序。
17、作为软件工程中的一个阶段,编码是对设计的进一步具体化,因此,程序的质量主要取决于软件设计的质量。但程序设计语言的选择以及编码风格也对程序的可靠性,可读性,可测试性和可维护性产生深远的影响。选择合适的程序设计语言编程语言在软件活动中处于中心地位,选择一门适合的编程语言十分重要。通常从应用领域,算法与计算复杂性,数据结构的复杂性,效率等几个方面考虑某一语言是否可选作编码语言。制定编码规范良好的代码风格和编码规范可以降低程序出错的几率,提高程序的易读性和质量,利于构造大软件所必须的团队开发,同时也可以有效降低程序的维护成本。建立数据库系统根据之前数据与数据流程分析以及数据库设计的结果建立数据库结构。程序编码使用选定的程序设计语言,将详细设计中的过程性描述翻译成用该语言编写的源程序(源代码)。技术审查和管理复审最后应该对编码的生成的源程序进行严格的技术审查,确保程序运行结果正确有效,满足要求。测试测试是为了发现错误而执行程序的过程,即根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例,并利用这些测试用例去运行程序,以发现程序错误的过程。测试用例设计是以发现错误为目的而精心设计的一组测试数据,测试用例m输入数据+期望结构。测试用例将用于之后的测试。单元测试
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湘西土家族苗族自治州吉首市2025-2026学年第二学期四年级语文第七单元测试卷(部编版含答案)
- 典当业务员操作规程测试考核试卷含答案
- 殡仪服务员操作规程水平考核试卷含答案
- 糖料作物栽培工安全应急模拟考核试卷含答案
- 室内装修验房师发展趋势强化考核试卷含答案
- 厦门市同安区2025-2026学年第二学期四年级语文第八单元测试卷(部编版含答案)
- 桂林市雁山区2025-2026学年第二学期四年级语文第八单元测试卷(部编版含答案)
- 双鸭山市岭东区2025-2026学年第二学期五年级语文期末考试卷(部编版含答案)
- MBA金融方向就业前景分析
- 绵阳市盐亭县2025-2026学年第二学期五年级语文第八单元测试卷(部编版含答案)
- 焦油事故应急预案(3篇)
- 2026高考蓝皮书高考关键能力培养与应用第1节 3.组织与运用
- 2025年智联招聘国企笔试题库及答案
- 2025年康复治疗师资格考试历年真题及解析
- 车间主任转正述职报告
- 输液科静脉输液操作规范
- 上海某高校学生心理健康事件应急干预与支持办法
- 2025广东广州市黄埔区文冲街招聘垃圾分类督导员和垃圾分类专管员3人备考练习题库及答案解析
- GB/T 18226-2025公路交通工程钢构件防腐技术条件
- 车间高温烫伤安全培训课件
- 新闻学专业毕业论文范文
评论
0/150
提交评论