软件开发流程

软件开发的流程是怎样的?通常要写哪些文档?这些文档又有什么作用?请详细说明,答案满意,追加30分

  一个软件从开始到最后一共需要以下几个流程:
  1、计划
  2、分析
  3、设计
  4、编码
  5、测试
  6、维护
  1、计划
  对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计,制订完成开发任务的实施计划。
  2、分析
  软件需求分析就是对开发什么样的软件的一个系统的分析与设想。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。在任何软件或系统开发的初始阶段必须先完全掌握用户需求,以期能将紧随的系统开发过程中哪些功能应该落实、采取何种规格以及设定哪些限制优先加以定位。系统工程师最终将据此完成设计方案,在此基础上对随后的程序开发、系统功能和性能的描述及限制作出定义。
  3、设计
  软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。模块,然后进行模块设计。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。
  4、编码
  软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的“源程序清单”。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。
  当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。而且面向对象的开发语言和开发环境大都合为一体,大大提高了开发的速度。
  5、测试
  软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据与功能和预期的输出结果组成了测试用例)。如何才能设计出一套出色的测试用例,关键在于理解测试方法。不同的测试方法有不同的测试用例设计方法。两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。白盒法和黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。
  6、维护
  维护是指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。
  一个中等规模的软件,如果研制阶段需要一年至二年的时间,在它投入使用以后,其运行或工作时间可能持续五年至十年。那么它的维护阶段也是运行的这五年至十年期间。在这段时间,人们几乎需要着手解决研制阶段所遇到的各种问题,同时还要解决某些维护工作本身特有的问题。做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还可以使它扩展功能,提高性能,为用户带来明显的经济效益。然而遗憾的是,对软件维护工作的重视往往远不如对软件研制工作的重视。而事实上,和软件研制工作相比,软件维护的工作量和成本都要大得多。
  在实际开发过程中,软件开发并不是从第一步进行到最后一步,而是在任何阶段,在进入下一阶段前一般都有一步或几步的回溯。在测试过程中的问题可能要求修改设计,用户可能会提出一些需要来修改需求说明书等。
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-13

软件开发流程:

1、首先制定项目计划,最初计划是里程碑性质的。可以先按瀑布模型设置,里程碑点主要为需求评审、设计评审、经过代码开发和单元测试后进行集成测试、部署上线是一个很重要的里程碑,一般用户会期望系统何时能使用进入试运行期(也可以称为用户测试阶段)

2、需求开发阶段:怎么样写好需求很关键。如果有项目成员,可以一起做需求,这个阶段对于业务理解、分析、如何开展调研以及文字表述、业务流程图描述还有文档编辑能力都有不少要求。一般分为《用户需求说明书》和《需求规格说明书》

小项目可以写一个《需求分析报告》,《用户需求说明书》是用用户的语言进行描述,让用户和开发团队对于需求的达成一致的理解,《需求规格说明书》,则是对用户需求的分析,形成系统要具有的功能,这个是真正提供用户可交互操作的文档,也就是后期设计和代码开发的重要基线。另外,作为了解需求,拿出用户UI和用户交流也是一项比较重要的需求获取手段,虽然这个属于设计的范畴。

商领云的saas+PaaS可以一键制作APP(ios和Android系统)、商城小程序、移动网站、微商城,也可定制开发软件。

3、系统设计阶段:系统总体架构,结合用户对系统环境、开发语言以及运行的网络硬件等要求,确定开发工具等,对应用系统关系进行架构性设计,通过需求阶段对用户的分析归类,用图的方式描述出用户和各子系统或模块的全局视图,以及和其他系统的关系。

也就是搞清楚系统的边界问题。概要设计中除了高层架构设计,还需要设计网络拓扑图,以及系统部署图。概要设计比较重要的还有就是子系统、模块进行合理的划分。模块的名称很大程度上会成为用户的主要菜单,如何用用户的角度去取比较清楚的子系统和模块是很重要的。

4、代码开发和单元测试阶段:这个阶段一般来说需要改进瀑布模型,类似迭代开发,把模块进行合理划分,把项目总体计划的代码开发测试阶段划分为多个时间段,每个时间段都包括代码开发、单元测试和集成测试,这个阶段还需要对需求变更进行跟踪控制,如果需求有变更,那么要把需求文档、设计文档都重新跟上。迭代开发的好处就是不让代码开发阶段拉的过程,没有进行及时的自我检查,不小心到了提交时间,却不是用户想要的,还有可能都不是自己想要的。

项目经理重要的责任是控制好进度,能及早发现风险,并能拿出好的预防和解决办法的措施。合理安排好开发团队的任务,合时的任务安排和衔接,你会觉得非常有艺术感,这个要自己体会了。另外,关注项目团队各人员的状况,保持高的战斗力,及时发现并能鼓励团队共同朝一个目标前进。

5、测试工作,测试是项目的很重要的环节,怎么测试,怎么准确测试,怎么有效测试,怎么覆盖测试,时间、人手、经验扽个方面都会有制约。高级测试人员能够分析系统各测试要点,在需求、设计阶段都要参与,提早了解如何去测试,能写出测试用例。6、文档工作,文档在项目开发中也占有重要位置,除非你觉得代码是项目唯一的成果,那么你把文档抛掉吧,什么都在你的脑子里,团队中人员一走,项目的一部分也就带走了。代码开发其实也需要文档,代码是成果,代码注释是成果,模块开发卷宗也是重要的成果,因为程序员在开发时候的逻辑是怎么样的,对于今后查问题很有作用。除非你的系统设计程度到了方法、类,把代码逻辑也都设计好了,那么程序员就CODEING去吧。

7、QA是对项目过程的质量保障,有些公司吧QA和测试工作合成一个岗位叫做QA&测试人员,或者就叫QA人员。QA是对项目全过程的监管,独立于项目之外。监督项目经理在各项目里程碑提交相关成果,入库形成基线。

商领云的saas+PaaS可以一键制作APP(ios和Android系统)、商城小程序、移动网站、微商城,也可定制开发软件。

第2个回答  2015-04-15
  软件开发一般分为五个阶段:
  1.问题的定义及规划
  此阶段是软件开发与需求放共同讨论,主要确定软件的开发目标及其可行性。
  2.需求分析
  在确定软件开发可行性的情况下,对软件需要实现的各个功能进行详细需求分析。需求分析阶段是一个很重要的阶段,这一阶段做的好,将为整个软件项目的开发打下良好的基础。“唯一不变的是变化本身”,同样软件需求也是在软件爱你开发过程中不断变化和深入的,因此,我们必须定制需求变更计划来应付这种变化,以保护整个项目的正常进行。
  3.软件设计
  此阶段中偶要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库设计等。软件设计一般分为总体设计和详细设计。还的软件设计将为软件程序编写打下良好的基础。
  4.程序编码
  此阶段是将软件设计的结果转化为计算机可运行的程序代码。在程序编码中必定要制定统一、符合标准的编写规范。以保证程序的可读性、易维护性。提高程序的运行效率。
  5.软件测试
  在软件设计完成之后要进行严密的测试,一发现软件在整个软件设计过程中存在的问题并加以纠正。整个测试阶段分为单元测试、组装测试、系统测试三个阶段进行。测试方法主要有白盒测试和黑盒测试。

  以上就是软件开发过程的五个阶段,但是有的时候在软件爱你开发过程中并不是必须按照这个过程进行的。
第3个回答  推荐于2017-10-13
需求确认——概要设计——详细设计——编码——单元测试——集成测试——系统测试——维护
需求确认:需求规格说明书
概要设计:系统用例图,用例场景
详细设计:系统设计报告,数据库设计报告
测试:测试用例报告本回答被提问者采纳
第4个回答  2019-07-07
3
系统分析员向用户再次确认需求。
第二步:概要设计
首先,
开发者
需要对
软件系统
进行概要设计,即系统设计。概要设计需要对软件系统的设计进行考虑,包括系统的基本处理
流程
、系统的
组织结构

模块
划分、功能分配、
接口
设计、运行设计、
数据结构
设计和出错处理设计等,为
软件
的详细设计提供基础。
第三步:详细设计
在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实
现具体模块所涉及到的主要
算法
、数据结构、类的
层次结构
及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或
子程序
)的设计考虑,以便进行
编码
和测试。应当保证软件的需求完全分配给整个软件。详细设计应当足够详细,能够根据详细设计报告进行编码。
第四步:编码
在软件编码
阶段
,开发者根据《软件系统详细设计报告》中对数据结构、
算法分析
和模块实现等
方面
的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、
界面
等方面的要求。
第五步:测试
测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。
第六步:软件交付准备
在软件测试证明软件达到要求后,
软件开发
者应向用户提交开发的目标
安装程序
、数据库的
数据字典
、《用户安装
手册
》、《用户使用指南》、需求报告、设计报告、
测试报告
等双方
合同
约定的产物。
《用户安装手册》应详细介绍安装软件对
运行环境
的要求、安装软件的定义和内容、在
客户端

服务器端

中间件
的具体安装
步骤
、安装后的系统配置。
《用户使用指南》应包括软件各项功能的使用流程、操作步骤、相应业务介绍、特殊提示和注意事项等方面的内容,在需要时还应举例说明。
广州达内
培训机构
认为一般软件开发大致经过以上六个步骤,由于不同公司的大小不一,所以这些步骤有的是由同一个人完成几个流程,但在
大公司
一般软件开发分工都很细致,
一个人
只需要完成一个小项即可。

软件开发流程有哪些阶段
软件开发流程即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序等一系列操作。那软件开发流程有哪些阶段呢?1、问题的定义及规划。此阶段是软件开发与需求放共同讨论,主要确定软件的开发目标及其可行。2、...

开发一个手机软件要哪些流程
1、首先要确立产品原型,进入项目评估阶段。经过反复确认,最终形成产品脑图和完整的需求文档。2、需要整理确定APP的主要用户群体和APP能实现的功能。关于APP开发设计可以在一些APP开发平台上借助一些工具来充。3、正式进入产品的原型设计阶段。在经过确认后界面的效果图正式设计完成。产品在设计图完成后,进入...

软件系统开发流程有哪些
进行软件测试,测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试及发布测试。测试编写好的系统,若无问题可以准备交付。5、软件交付准备。在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、用户安装手册、用户使用指南、需求报告、设计报告、测试报...

软件开发流程五个流程
软件开发流程五个阶段:分析阶段、设计阶段、实现阶段、测试阶段、维护阶段。1、分析阶段 软件开发首先需要进行需求调研和分析完善的需求是软件开发项目成败的重要因素,提炼所收集的用户需求,建立完整的分析模型,把他编写成软件开发过程中需求,规格说明和初步的用户手册。2、设计阶段 软件设计可以分为两个...

软件开发的一般流程是什么
软件开发的一般流程是:1、问题的定义及规划:此阶段是软件开发与需求放共同讨论,主要确定软件的开发目标及其可行性;2、需求分析:在确定软件开发可行性的情况下,对软件需要实现的各个功能进行详细需求分析;3、软件设计:此阶段中偶要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库...

软件开发的一般流程是什么?
软件开发流程分为: 需求确认——概要设计——详细设计——编码——单元测试——集成测试——系统测试——维护 软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。软件分为系统软件和应用软件,并不只是包括可以在...

软件开发流程五个流程
软件开发流程的五个阶段是分析、设计、实现、测试和维护。1. 分析阶段:在这一阶段,软件开发团队进行需求调研和分析。完善的需求是项目成功的关键。团队提炼用户需求,建立分析模型,并编写成需求说明、规格说明和初步用户手册。2. 设计阶段:设计阶段分为概要设计和详细设计。主要任务是将软件分解为模块,...

软件开发流程分为哪几个阶段
软件开发流程是确保软件项目成功的关键。一个完善的流程可以分为以下几个阶段:1. 市场调研:技术和市场的结合是实现软件最大价值的基石。在这一阶段,需要深入理解潜在用户的需求和市场状况,为软件开发提供方向。2. 需求分析:这一阶段的目标是明确软件需求。成果包括用户视图、数据词典和用户操作手册。

软件开发流程有哪些、软件后期维护怎么做?
软件开发流程通常包括以下主要阶段:1.需求分析:与客户沟通,明确软件的功能和性能要求,制定详细的需求文档。2.设计阶段:制定软件的整体架构,包括系统设计和详细设计。确定数据库结构、模块划分和接口设计。3.编码:根据设计阶段的文档,利用编程语言实现软件的各个模块,并进行单元测试。4.测试:对整个...

软件开发的流程及步骤
5、部署阶段:部署阶段是将软件部署到实际运行环境的过程。在这个阶段,软件开发团队会将软件打包成可执行文件,并配置运行环境。会将软件安装到目标系统中,并进行必要的配置和调试。6、维护阶段:维护阶段是软件开发的最后一个阶段,也是持续进行的过程。在软件部署后,软件开发团队会进行日常的维护和管理...

相似回答