一个软件项目研发的设计流程是怎样的呢?以通常标准的设计方法为例,(不过笔者喜欢快速原型法)。
第一个步骤是市场调研,技术和市场要结合才能体现最大价值。
第二个步骤是需求分析,这个阶段需要出三样东西,用户视图,数据词典和用户操作手册。用户视图是该软件用户(包括终端用户和管理用户)所能看到的页面样式,这里面包含了很多操作方面的流程和条件。数据词典是指明数据逻辑关系并加以整理的东东,完成了数据词典,数据库的设计就完成了一半多。用户操作手册是指明了操作流程的说明书。请注意,用户操作流程和用户视图是由需求决定的,因此应该在软件设计之前完成,完成这些,就为程序研发提供了约束和准绳,很遗憾太多公司都不是这样做的,因果颠倒,顺序不分,开发工作和实际需求往往因此产生隔阂脱节的现象。需求分析,除了以上工作,笔者以为作为项目设计者应当完整的做出项目的性能需求说明书,因为往往性能需求只有懂技术的人才可能理解,这就需要技术专家和需求方(客户或公司市场部门)能够有真正的沟通和了解。
第三个步骤是概要设计,将系统功能模块初步划分,并给出合理的研发流程和资源要求。作为快速原型设计方法,完成概要设计就可以进入编码阶段了,通常采用这种方法是因为涉及的研发任务属于新领域,技术主管人员一上来无法给出明确的详细设计说明书,但是并不是说详细设计说明书不重要,事实上快速原型法在完成原型代码后,根据评测结果和经验教训的总结,还要重新进行详细设计的步骤。
第四个步骤是详细设计,这是考验技术专家设计思维的重要关卡,详细设计说明书应当把具体的模块以最‘干净’的方式(黑箱结构)提供给编码者,使得系统整体模块化达到最大;一份好的详细设计说明书,可以使编码的复杂性减低到最低,实际上,严格的讲详细设计说明书应当把每个函数的每个参数的定义都精精细细的提供出来,从需求分析到概要设计到完成详细设计说明书,一个软件项目就应当说完成了一半了。换言之,一个大型软件系统在完成了一半的时候,其实还没有开始一行代码工作。那些把作软件的程序员简单理解为写代码的,就从根子上犯了错误了。
第五个步骤是编码,在规范化的研发流程中,编码工作在整个项目流程里最多不会超过1/2,通常在1/3的时间,所谓磨刀不误砍柴功,设计过程完成的好,编码效率就会极大提高,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度,让很多程序员因此被迫停下工作等待,这种问题在很多研发过程中都出现过。编码时的相互沟通和应急的解决手段都是相当重要的,对于程序员而言,bug永远存在,你必须永远面对这个问题,大名鼎鼎的微软,可曾有连续三个月不发补丁的时候吗?从来没有!
第六个步骤是测试测试有很多种:按照测试执行方,可以分为内部测试和外部测试;按照测试范围,可以分为模块测试和整体联调;按照测试条件,可以分为正常操作情况测试和异常情况测试;按照测试的输入范围,可以分为全覆盖测试和抽样测试。以上都很好理解,不再解释。总之,测试同样是项目研发中一个相当重要的步骤,对于一个大型软件,3个月到1年的外部测试都是正常的,因为永远都会又不可预料的问题存在。完成测试后,完成验收并完成最后的一些帮助文档,整体项目才算告一段落,当然日后少不了升级,修补等等工作,只要不是想通过一锤子买卖骗钱,就要不停的跟踪软件的运营状况并持续修补升级,直到这个软件被彻底淘汰为止。
分享到:
相关推荐
软件项目开发流程PPT课件,软件项目开发流程,软件项目开发流程课件,软件项目开发流程PPT
软件项目开发流程是软件开发过程中的关键环节,对于软件项目的成功至关重要。该流程涉及到软件项目的各个方面,包括项目管理、开发管理、测试管理、质量保证等。 软件项目开发流程概述 软件项目开发流程是指在软件...
软件项目开发流程图是软件项目开发的核心部分,展示了项目的整个开发过程,从项目的概念阶段到项目的完成阶段。它涵盖了所有的开发阶段,包括需求分析、设计、编码、测试、部署和维护等。 6.0 实施步骤与干系人关系...
软件项目开发流程图全面涵盖了从需求分析到系统运行支持的整个生命周期,每个阶段都至关重要,相互关联,共同构成了一个完整的软件开发过程。遵循这一流程,可以有效地提高软件项目的成功率,降低开发风险,确保最终...
通用汽车公司软件项目开发流程是基于CMMI(Capability Maturity Model Integration,能力成熟度模型集成)框架的软件开发过程。该过程面向所有参与通用汽车软件开发的公司,旨在确保软件开发项目的高质量、可靠性和...
文档××软件项目开发流程是指导开发部门进行高效工作的核心指南,它涵盖了开发部日常工作、管理以及绩效考核等关键环节。这份文档自2003年创建以来,历经多次修订,以适应不断变化的工作需求和职责调整。 ## 1. ...
软件项目开发过程中各个阶段的风险 软件项目开发是一个复杂的过程,涉及到多个阶段,包括需求阶段、设计阶段、开发阶段、测试阶段和交付阶段。在每个阶段中,都存在着一定的风险,这些风险可能会对项目的进度、成本...
软件项目开发流程.pdf
### 软件项目开发流程规范相关知识点 #### 一、引言 软件项目开发是一项复杂的系统工程,涉及从需求分析到系统维护等多个环节。为了确保软件项目的顺利进行,提高软件产品的质量和效率,制定一套规范化的开发流程至...
软件项目开发流程规范是软件开发过程中的一个重要组件,它为软件开发人员、项目管理人员、软件质量保证人员、技术支持人员和软件维护人员提供了一个详细的指南,以确保软件开发项目的质量和效率。 总则 软件项目...
软件项目开发流程规范的主要目的是确保软件项目的开发过程符合公司的质量和安全标准,确保项目的完成符合客户的需求和期望。该规范的实施将有助于提高软件项目的质量、减少项目风险、提高开发效率和降低开发成本。 ...
"软件工程开发项目开发流程" 软件工程开发项目的开发流程是一个复杂的过程,它涉及到多个阶段和步骤。在本文中,我们将总结出项目开发的一般流程,并对每个阶段进行详细的说明。 一、系统开发的一般流程 系统开发...
以下是对"软件项目开发流程图 需求分析"这一主题的详细解释: 1. **需求分析**:这是软件开发的第一步,也是最重要的一步。在这个阶段,开发团队需要深入理解客户的业务需求和目标。通过与客户的沟通,收集并分析...
里边详细的描述了软件项目开发过程中的各个阶段的细节,希望对大家有帮助。
软件项目开发过程 中国科学院软件研究所 高级技术培训中心