西门子S7-200EM221CN数字量模块
工程为待开发软件确定“类与对象”一般在需求分析阶段进行,设计阶段则主要完成对象内部的详细设计;而在传统软件工程中,将软件设计划分为“总体设计”和“详细设计”,分别完成软件的总体结构图的设计和各个模块内部算法的详细设计。即:传统软件工程开发过程包括需求分析、总体设计、详细设计、面向过程的编码和测试;面向对象软件工程开发过程包括需求分析与对象抽取、对象详细设计、面向对象的编码和测试阶段的反复迭代。所有构件集成不到一起的风险,必须密切地监控整个开发工程,否则将螺旋模型是目前实际软件项目开发中比较常用的一种面向对象的软件开发技术将事物封装成包含数据和加工该数据操作的对象,并抽象成类。经过一定的设计和实现的类可称为构件,它们可以在不同的计算机软件系统中复用,在某个领域具有一定的通用性。将这些构件储存起来成为一个传统的软件工程开发过程采用结构化技术来完成软件开发的各项任务,这是西门子早的软件开发方法。传统的软件工程的具体过程如下。
(1)采用结构化分析、结构化设计和结构化实现完成软件开发的各项任务。
(2)把软件生存周期划分成若干个阶段,顺序完成各个阶段的任务。
(3)每一个阶段的开始和结束都有严格标准,前一阶段结束的标准是后一阶段工作开始的标准。
(4)在每一阶段结束之前,必须正式地进行严格的技术审查和管理复审。
软件生存周期概念基础上的,结构化技术与瀑布模型紧密地结合构件库,为基于构件的软件开发模型提供了技术基础。变换模型和净室模型是两种比较典型的适合于形式化开发的模型序设计语言可划分为“面向过程程序设计”和“面向对象程序设计”,那么软件工程也可区分为“面向过程软件工程即传统软件工程”和“面向对象软件工程”。传统软件工程是以结构化程序设计为基础,面向对象软件工程是以面向对象程序设计为基础。。
变换模型是结合形式化软件开发方法和程序自动生成技术的一种软件开发模型。它采用严格的、数学的表示体系来表示软件规格说明,从软件需求形式化说明开始,经过一系列变换,西门子终得到了系统的目标程序。
净室模型是一种形式化的增量开发模型。其基本思想是力求在分析和设计阶段就消除缺陷,确保正确,在无错误或“净室”的状态下实现软件的开发。
基于构件的开发模型是利用预先封装的软件构件来软件统一开发过程是经过近 40多年的发展形成的,它是基于面向对象统一建模语言UML(Unified ModelingLanguage)的一种面向对象的软件过程模型。它是汲取了多种生存周期模型的先进思想和丰富的实践经验而产生的。RUP(RationalUnified Process)是
个通用的过程框架,可以用于各种不同模型的软件系统,各种不同的应用领域和不同规模的项目。RUP的特点是由用例驱动,以构件为中心,采用迭代和增量的开发策略。RUP软件生存周期是一个二维的软件开发模型。构造应用软件系统,从而提高软件的重用性和可靠性。开发模型。对于一些复杂的大型软件开发螺旋模型是一种迭代模型,它把开发过程分为几个螺旋周期,每迭代一次,螺旋线就前进一周,总存在一些风险,而螺旋模型则加入了瀑布模型与增量模型都忽略了的风险分析,即将两种模型结合起来,弥补了两种模型的不足。它是一种风险驱动的模型。在软件开发中,普遍存在着各种各样的风险,对于不同的软件项目,其开发风险移动时,每一个螺旋周期均包含了风险分析,可以把它看作是在每一个阶段之前都增加了风险分析的快速原型喷泉模型是一种比较典型的面向对象软件开发模型,以用户需求为动力,以对象作为驱动的模型,适合面向对象的开发方法。这克服了瀑布模型不支持软件重用和多项开发活动集成的局限性,喷泉模型使开发过程具有迭代性和无间隙性模型。
螺旋模型将开发过程分为几个螺旋周期,每个螺旋周期可分为4个步骤来进行。确定该阶段的目标,选择方案并设定这些方案的约束条件;从风险角度分析、评估方案,通常用建造原型的方法来消除风险;第三,如果成功地消除了所有风险,则实施本周期的软件开发;西门子后,评价该阶段的开发工作,并计划
阶段的工作。
螺旋模型适合于大规模高风险的软件项目开发,它吸收了软件工程“演化”的概念。当软件随着过程的进展而演化时,使开发人员和用户都能更好地了解每个螺旋周期演化存在的风险,从而做出相应的对策。螺旋模型的优势在于它是风险驱动的,使用该模型需要有相当丰富的风险评估经验和这方面的专门技术,这使该模型的应用受到一定限制。如果一个大的风险未被发现和控制,其后果是很严重的。有大有小。在制定项目开发计划时,对项目的预算、进度与人力,对用户的需求、设计中采用的技术及存在的问题,都要仔细分析与估算。实践证明,项目越大,软件越复杂,估算中的不确定因素就越多,承担的风险也就越大。软件风险可能在不同程度上损害了软件开发过程和软件产品的质量,严重时可能导致软件开发的失败。在软件开发过程中必须及时识别和分析风险,并且采取一定的措施,消除或降低风险的危害。事与愿违。例如,如果用增量模型开发一个大型的字处理软件,和个增量构件提供基本的、核心的文件管理、文档编辑与生成功能;第二个增量构件提供更完善的文档编辑与生成功能;第三个增量构件实现拼写和语法检查功能;第四个增量构件提供完成**的页面排版功能。把软件产品分解为增量构件时,构件的规模要适中。特别注意与新增量构件集成到现在软件中时,所形成的产品必须是可测试的。增量模型具有较大的灵活性,适合于软件要求不明确,设计方案有一定风险的软件项目。