深圳市组创微电子有限公司
销售部:158 1687 4032采购部:0755-8299 4126行政部:0755-8299 4126
咨询电话
0755-8299 4141

软件开发

软件工程方法模型


当今时代,软件的重要性与日俱增,从办公生活到休闲娱乐,日常生活中每时每刻都有软件的身影。企业要提高运作效率.家庭要提升生活质量,电商要提升营销精准度;政府要提升公众满意,无不需要依靠各种各样的软件。CRM、ERP、大数据、互联网APP,各式各样的软件正在改变着我们的生活.我们已经进入一个软件定义世界的时代。

在此背景下,软件开发也变得越来越至关重要,而作为软件开发管理的基础,软件工程方法的正确选择和应用将是软件开发项目成功的保障。本文主要简要探讨一些常见的软件工程模型方法及其适用范围。

一、瀑布模型

瀑布模型(WaterfallMode1)是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。该过程由一系列顺序的活动构成,每个活动分为输入、过程与输出三部分。其中上一项活动的输出被作为本活动的输入,利用这一输入实施该项活动应完成的内容,最后给出该项活动的工作成果输出,作为下一项活动的输入。从上述描述中我们能够看出,传统的瀑布模型具有如下的优点:

(1)为项目提供了按阶段划分的检查点。使得软件开发过程从无序变为有序,使软件开发的工程管理变为可能。(2)各项活动串行进行,当前一阶段完成后,只需要去关注后续阶段。软件工程管理变得简单清晰。(3)它提供了一系列的模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。瀑布模型也存在如下致命缺点:(1)各个阶段的划分完全固定且周期较长,极大地降低了开发效率。(2)由于开发模型是线性的.用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险(3)项目管理更加注重过程,而容易忽视对目标及价值结果的关注。(4)无法应对开发过程中出现的用户需求的变化。(5)开发与测试活动割裂,导致测试人员天然的依附于开发人员。

综上,典型的瀑布模型相对来说比较理想化。适合那种开发周期固定、客户需求清晰的项目,当前几乎被业界抛弃,很难适应当今软件开发的需求。比如互联网应用软件很难使用瀑布模型来管理。

二、V模型

V模型一定程度上是典型瀑布模型的一种改良.可视为瀑布模型的延伸。主要是针对开发、测试活动割裂进行的改良。把测试设计工作提前到分析、设计、编码各阶段:一方面提升了开发效率,同时开发与测试同源,提升测试有效性典型的V模型开发流程包括:需求分析(系统测试分析)、概要设计(集成测试分析)、详细设计(单元测试分析)、编码、单元测试、集成测试、系统测试和发布。和瀑布模型的最大区别是测试设计分析的提前.比如单元测试分析。在瀑布模型中,单元测试是在编码后进行的,输入的是编码:而测试人员需要根据编码先设计单元测试用例,然后执行。这样将存在一个风险,即单元测试只能发现编码本身的问题,即使编码完全未按照详细设计进行,单元测试也无法发现。而在V模型中.开发人员、测试人员针对详细设计展开工作,开发人员编码的同时。测试人员编写单元测试用例,从而使得测试用例不受具体编码影响.能够更加准确的验证详细设计的意图。其他阶段类似。

V模型中,测试活动有更多的独立性和自主性,软件开发效率也有一定程度的提升。但是v模型无法解决瀑布模型的本质缺陷,如同样无法应对需求的不断变化,同样需要在版本开发后期才能验证成果等。

三、迭代模型

早在20世纪50年代末期,软件领域中就出现了迭代模型。通俗的讲,迭代模型就是将整个软件的开发分解成一个个的子特性开发阶段,而针对每个阶段内部采用的还是类似瀑布模型的方法。每个迭代是一次完整的经过所有工作流程的过程:需求、分析设计、实施和测试工作流程。每一次的迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集。

与传统的瀑布模型相比较,迭代过程具有以下优点:

(1)由于每个迭代是整个系统的子系统,相对内容比较单一,各个阶段需要传递的信息量较小,不需要通过大量的文档进行传递。(2)由于整个开发过程被拆分为独立的若干阶段,用户在每个阶段结束就可以提前看到开发成果。一方面能够及时对开发中出现的偏差进行纠正;另一方面由于能够及时看到工作成果,有利于开发人员的效率提升。(3)相对于瀑布模型,迭代模型更加关注对软件目标、结果的关注,更加注重和最终用户的互动,以保证开发成果的质量。(4)由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的,而迭代模型更能够适应这种需求的变化。

同样,迭代模型也存在其缺点.那就是对于项目经理和开发团队的要求更加高,并且需要团队成员之间更加的信任。因为迭代模型运作对于过程的监控较弱.更加关注面对面的交流与合作。

总结

软件工程方法包含的内容很多,除了正确的选择模型方法以外,还包括各种能力域的工程方法,如计划管理、资源管理、财务管理、人员管理、价值管理、需求管理、风险管理等等。只有根据软件项目具体的情况和目标,选择正确的工程方法模型.并把这一系列的工程管理方法有机的结合起来.才能使得软件开发的结果可预期,质量可保证。

以上就是我们深圳市组创微电子有限公司为您介绍的软件工程方法模型技术。如果您有智能电子产品的软硬件功能开发需求,可以放心交给我们,我们有丰富的电子产品定制开发经验,可以尽快评估开发周期与IC价格,也可以核算PCBA报价。我们是多家国内外芯片代理商:松翰、应广、杰理、安凯、全志、realtek,有MCU、语音IC、蓝牙IC与模块、wifi模块。我们的拥有硬件设计与软件开发能力。涵盖了电路设计、PCB设计、单片机开发、软件定制开发、APP定制开发、微信公众号开发、语音识别技术、蓝牙wifi开发等。还可以承接智能电子产品研发、家用电器方案设计、美容仪器开发、物联网应用开发、智能家居方案设计、TWS耳机开发、蓝牙耳机音箱开发、儿童玩具方案开发、电子教育产品研发。

使用该技术的解决方案

  • 返回顶部