一个软件研发要经过哪几个步骤

来自:    更新日期:早些时候
我想知道软件开发要经过哪些步骤???~

软件开发是指一个软件项目的开发,如市场调查,需求分析,可行性分析,初步设计,详细设计,形成文档,建立初步模型,编写详细代码,测试修改,发布等。

软件是怎么样开发出来的

第一个步骤是市场调研,技术和市场要结合才能体现最大价值。

第二个步骤是需求分析,这个阶段需要出三样东西,用户视图,数据词典和用户操作手 册。

用户视图 是该软件用户(包括终端用户和管理用户)所能看到的页面样式,这里面包含了 很多操作方面的流程和条件。

数据词典 是指明数据逻辑关系并加以整理的东东,完成了数据词典,数据库的设计就完成了一半多。

用户操作手册是指明了操作流程的说明书。

请注意,用户操作流程和用户视图是由需求决定的,因此应该在软件设计之前完成,完成这些,就为程序研发提供了约束和准绳,很遗憾太多公司都不是这样做的,因果颠倒,顺序不分,开发工作和实际需求往往因此产生隔阂脱节的现象。

需求分析,除了以上工作,笔者以为作为项目设计者应当完整的做出项目的性能需求说明 书,因为往往性能需求只有懂技术的人才可能理解,这就需要技术专家和需求方(客户或公司市场部门)能够有真正的沟通和了解。

第三个步骤是概要设计,将系统功能模块初步划分,并给出合理的研发流程和资源要求。
作为快速原型设计方法,完成概要设计就可以进入编码阶段了,通常采用这种方法是因为涉及的研发任务属于新领域,技术主管人员一上来无法给出明确的详细设计说明书,但是 并不是说详细设计说明书不重要,事实上快速原型法在完成原型代码后,根据评测结果和 经验教训的总结,还要重新进行详细设计的步骤。

第四个步骤是详细设计,这是考验技术专家设计思维的重要关卡,详细设计说明书应当把 具体的模块以最’干净’的方式(黑箱结构)提供给编码者,使得系统整体模块化达到最 大;一份好的详细设计说明书,可以使编码的复杂性减低到最低,实际上,严格的讲详细 设计说明书应当把每个函数的每个参数的定义都精精细细的提供出来,从需求分析到概要 设计到完成详细设计说明书,一个软件项目就应当说完成了一半了。换言之,一个大型软 件系统在完成了一半的时候,其实还没有开始一行代码工作。

那些把作软件的程序员简单理解为写代码的,就从根子上犯了错误了。

第五个步骤是编码,在规范化的研发流程中,编码工作在整个项目流程里最多不会超过1/ 2,通常在1/3的时间,所谓磨刀不误砍柴功,设计过程完成的好,编码效率就会极大提 高,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度,让很多程序员因此被迫停下工作等待,这种问题在很多研发过程中都 出现过。
编码时的相互沟通和应急的解决手段都是相当重要的,对于程序员而言,bug永 远存在,你必须永远面对这个问题,大名鼎鼎的微软,可曾有连续三个月不发补丁的时候 吗?从来没有!

第六个步骤是测试

测试有很多种:

按照测试执行方,可以分为内部测试和外部测试

按照测试范围,可以分为模块测试和整体联调

按照测试条件,可以分为正常操作情况测试和异常情况测试

按照测试的输入范围,可以分为全覆盖测试和抽样测试

以上都很好理解,不再解释。

总之,测试同样是项目研发中一个相当重要的步骤,对于一个大型软件,3个月到1年的外部测试都是正常的,因为永远都会又不可预料的问题存在。

完成测试后,完成验收并完成最后的一些帮助文档,整体项目才算告一段落,当然日后少不了升级,修补等等工作,只要不是想通过一锤子买卖骗钱,就要不停的跟踪软件的运营 状况并持续修补升级,直到这个软件被彻底淘汰为止。

什么是软件开发的核心问题

按照软件工程鼻祖,《人月神话》作者 Brooks 在“没有银弹——软件工程中的根本和次要问题”一章中阐述的思想,软件开发的核心问题就是如何从概念上对一个复杂的业务系统进行建模。这个建模是含义广泛的,不仅仅包括对象建模,还包括数据建模、算法建模等等一系列的内容。总而言之是要先找到解决复杂问题的突破口(先要搞明白需要做什么,然后再考虑如何做)。至于采用什么表示方法(简单文本、UML 图、E-R 图)、采用什么高级语言、是否一定要用面向对象、使用什么开发工具都是次要的问题。

软件开发方法

软件开发方法(Software Development Method)是指软件开发过程所遵循的办法和步骤。
软件开发活动的目的是有效地得到一些工作产物,也就是一个运行的系统及其支持文档,并且满足有关的质量要求。软件开发是一种非常复杂的脑力劳动,所以经常更多讨论的是软件开发方法学,指的是规则、方法和工具的集成,既支持开发,也支持以后的演变过程(交付运行后,系统还会变化,或是为了改错,或是为了功能的增减)。

关于组成软件开发和系统演化的活动有着各种模型(参见软件生存周期,软件开发模型,软件过程),但是典型地都包含了以下的过程或活动:分析、设计、实现、确认(测试验收)、演化(维护)。

有些软件开发方法是专门针对某一开发阶段的,属于局部性的软件开发方法。
特别是软件开发的实践表明,在开发的早期阶段多做努力,在后来的测试和维护阶段就会使费用较大地得以缩减。因此,针对分析和设计阶段的软件开发方法特别受到重视。其它阶段的方法,从程序设计发展的初期起就是研究的重点,
已经发展得比较成熟(参见程序设计,维护过程)。除了分阶段的局部性软件开发方法之外,还有覆盖开发全过程的全局性方法,尤为软件开发方法学注意的重点。

对软件开发方法的一般要求:当提出一种软件开发方法时,应该考虑许多因素,包括:

①覆盖开发全过程,并且便于在各阶段间的过渡;

②便于在开发各阶段中有关人员之间的通信;

③支持有效的解决问题的

④支持系统设计和开发的各种不同途径;

⑤在开发过程中支持软件正确性的校验和验证;

⑥便于在系统需求中列入设计、实际和性能的约束;

⑦支持设计师和其他技术人员的智力劳动;

⑧在系统的整个生存周期都支持它的演化;

⑨受自动化工具的支持。此外,在开发的所有阶段,有关的软件产物都应该是可见和可控的;软件开发方法应该可教学、可转移,还应该是开放的,即可以容纳新的技术、管理方法和新工具,并且与已有的标准相适应。

参考:http://www.blog.edu.cn/user5/280156/archives/2008/2090192.shtml

软件开发一般分为五个阶段:问题的定义及规划、需求分析、软件设计、程序编码、软件测试。

软件开发流程包括以下步骤:

1、项目开发的分析和确定:主要是软件开发商所确定项目开发后,需要和需求方讨论确定需求方软件开发的目标和具体需求。

2、需求分析:此步骤也是确定正常实施软件开发的具体想法的阶段,在确定软件开发可以进行后,对客户的需要实现的软件功能进行详细的分析。

同时要考虑开发过程中可能出现的变化,制定需求变更计划,随时应对特殊情况的发生,保证软件开发过程的顺利进行。

3、软件设计:要根据上一阶段的软件功能需求分析结果进行设计,涉及到软件设计框架结构、软件系统模块和软件系统的数据库,主要分为总体设计和详细设计两部分。

4、编程的实施步骤:编程也是基于软件的设计,软件设计的所有部分都是通过计算机程序代码实现的,编程由统一规范的程序书写规则,保证了软件程序的可理解性。

5、软件测试:也就是客户软件按照设计用编程代码实现后,进行测试。

用户接受开发交付的软件开发后,实际操作运行测试。

这些步骤是软件开发的一般流程,但具体的开发流程可能会因项目的不同而有所差异,在开发过程中,开发团队需要根据项目的特点和需求进行适当的调整和优化。



个人认为研发一个成功的软件需要在以下方面着手:

1. ERP软件企业的软件与ERP软件企业的管理

一个管理软件企业的管理理念将会或多或少地融入到其产品中去。因此一个管理软件企业自身管理的好坏对整个产品的成功至关重要。

2. 对目标客户现在和将来几年内需求的真正认知

如果仅仅知道某个客户有某个需求,但是并不知道某项功能有多少比例的目标客户采用,在这种情况下决定将这一功能作到产品中,而不是为某些客户提供二次开发来解决问题,是非常仓促的。因此,在研发一个ERP产品前首先要知道目标客户现在需要什么?在产品生命周期中还可能会有什么需求?其次要清楚我们怎样满足用户各种各样的需求。这里衡量满足刻户客户需求好坏的是用户的满意度、我们的净利润的高低。

3. ERP软件企业应该是个学习型组织

这里所说的学习型组织不仅仅停留在积累竞争对手的产品知识、相关信息、客户资源等方面,还需要从组织的开发过程管理等各项任务中进行不断学习、总结、改进。以使企业管理不断进步,使企业在产品研发工作中积累丰富的经验,久而久之,形成一套适合本组织的产品研发方法。这有点象闭环控制系统,还有点象精益生产方式。这也是自我学习型组织的一个显著特征。学习型组织也犯错误,但不会长期重复犯同样的错误。学习型组织会从以前的错误中找到解决问题的办法。

4. 团队的作用

构建一个良好的团队对整个研发过程的成败至关重要。在团队中,要有主抓管理的核心成员,要有主抓技术的核心成员,并进行合理分工、协作。而且团队可以有多个层次:核心团队负责涉及全局问题的决策,次核心团队对核心团队负责,负责日常计划、技术等各项问题的决策等。团队的成员应该打破需求、设计、开发的界限,采用大模块方式更加适合并行开发。

另外,团队管理中,统一思想很重要。只有大家心往一处想、劲往一处使,才能如期达到目标。有计划地定期沟通是解决这一问题的好办法。

4. 如何组织并行开发

研发的并行方式是指需求工作、设计工作、代码开发工作、测试工作的并行。但是这为整个研发过程的组织带来了很大难度。并行开发的每个环节如果没有有效的计划管理、进度控制、质量管理,最终只能导致混乱、效率低下和大量的重复工作。因此,此时上道工序的质量好坏将对后续工序产生严重影响。这里,需要借鉴精益生产方式的方法,不让上道工序的次品流到下一工序。这需要通过TQC和严格的质量把关来实现减少返工、缩短工期的目的。

6. 如何有效组织具体工作

大型软件项目的研发最大的成本就是人员工资。因此如何充分发挥每个人的作用至关重要。这就需要制定一套周密的滚动研发计划,并逐级层层细化到每个人,为每个人制定一个可行的近期、中期计划。

7. 合理控制项目预算

项目预算一旦制定,就要起到良好的控制作用。多从提高效率上下工夫。

8. 使用管理软件辅助管理

如Clearcase、Rose、Project、MSN等都是很好的管理工具。还可以自己根据需要开发一些工具软件解决所面临的具体问题。

软件研发是一个复杂的过程,一般包括「立项审批-项目计划-需求-开发-测试-部署-试运行-验收上线」,需要协调管理者、产品、研发、测试、运维、设计等多个角色和部门,使之目标一致、高效协同,进行合理的资源分派、把控项目进度、控制风险,保障产品交付质量。 ONES 针对研发管理的需求和痛点,打通研发管理全流程和复杂场景,为企业提供全生命周期的研发管理工具。



1,需求文档:知道软件有什么需求,要实现什么功能,达到什么目的
2,设计概要:软件需要什么样的模块来组合,用那些算法,画出流程图
3,详细设计:确定函数名字,变量名等细节问题
4,编码:不用说了吧
5,测试:找出缺陷并改正
6,发布

需求分析
概要设计
详细设计
编写代码
集成测试
运行维护

基本就是这几块,要更具体点的话就去找本软件工程教材来看看。


一个软件研发要经过哪几个步骤视频

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

  • 13094576826软件开发过程一般有几个阶段
    支屈群软件开发的生命周期一般分为6个阶段:计划、需求分析、逻辑设计、程序编制、调试、运行和维护 软件生命周期分为软件定义、软件开发及软件运行维护三个阶段:软件定义阶段制定计划:确定总目标;可行性研究;探讨解决方案;制定开发计划。需求分析:对待开发软件提出的需求进行分析并给出详细的定义。软件开发阶段...

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

  • 13094576826软件开发流程五个流程
    支屈群软件开发流程可以分为以下五个步骤:1、问题的定义及规划:这个阶段是软件开发与需求放共同讨论,主要确定软件的开发目标及其可行性,同时要制定项目开发计划和可行性研究报告。2、需求分析:在确定软件开发可行性的情况下,对软件需要实现的各个功能进行详细需求分析,需求分析阶段是一个很重要的阶段,这一阶...

  • 13094576826软件开发过程可以包括哪几个阶段
    支屈群软件开发过程即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序等一系列操作。各个阶段所需要完成具体内容如下:1.问题的定义及规划 此阶段是软件开发与需求放共同讨论,主要确定软件的开发目标及其可行性。...

  • 13094576826软件开发步骤包括哪些过程?
    支屈群软件开发一般分为五个阶段:问题的定义及规划、需求分析、软件设计、程序编码、软件测试。

  • 13094576826怎么样开发一个软件
    支屈群1、软件开发的第一个流程是项目开发目的分析与确定,主要是在软件开发商将开发项目确定下来之后,需要与需求方进行讨论,确定需求方对于软件开发的需要实现目标及其具体需要的功能等等,并确定是否可达成;2、接下来就是需求分析,这个步骤也是为软件开发的正常进行确定具体思路的阶段。在确定软件开发可进行后...

  • 13094576826一个软件研发要经过哪几个步骤
    支屈群软件开发流程包括以下步骤:1、项目开发的分析和确定:主要是软件开发商所确定项目开发后,需要和需求方讨论确定需求方软件开发的目标和具体需求。2、需求分析:此步骤也是确定正常实施软件开发的具体想法的阶段,在确定软件开发可以进行后,对客户的需要实现的软件功能进行详细的分析。同时要考虑开发过程中可能...

  • 13094576826软件开发的流程都有哪些步骤呢?
    支屈群第一个步骤是市场调研,技术和市场要结合才能体现最大价值。第二个步骤是需求分析,这个阶段需要出三样东西,用户视图,数据词典和用户操作手 册。用户视图 是该软件用户(包括终端用户和管理用户)所能看到的页面样式,这里面包含了 很多操作方面的流程和条件。数据词典 是指明数据逻辑关系并加以整理的东东...

  • 13094576826软件开发的一般流程是什么?_?
    支屈群软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。软件分为系统软件和应用软件,并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。软件设计思路和方法的一般过程,包括设计...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网