西门子TP1900面板
馈,由研发部经理或总工程师确定是否进行同一个产品的不同版本升级研发。市场及用户反馈一般来源于企业对产品已有用户做的使用情况调查、对本企业产品及同类产品进行的市场调研分析,企业售后服务部门从客户处得到已有产品的使用报告或问题(故障)报告等。1.4 软件生命周期1.4.1 软件生命周期的定义
软件生命周期(Systems Development LifeCycle,SDLC)是软件的产生直到报废或停止使用的生命周期。包括软件开发过程中:问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。
一项计算机软件,从出现一个构思之日起,经过这项软件开发成功投入使用,在使用中不断增补修订,直到西门子后决定停止使用,并被另一项软件产品代替之时止,被认为是该软件的一个生命周期。一个软件产品的生命周期可以划分为若干个相互区别而又有联系的阶段,每个阶段中的工作均以上一阶段的结果为依据,并为下一阶段的工作提供了前提。经验表明,失误造成的差别越是发生在生命周要求系统分析员与用户进行交流,弄清“用户需要计算机解决什么问题”,提出关于“系统目标与范围的说明”,提交用户审查和确认。
2.可行性研究
标以明确的语言描述出来,另一方面从经济、技术、法律等多方面进行可行性分析。
3.需求分析
弄清用户对软件系统的全部需求,编写需求规格说明书和初步的用户手册,提交评审。
4.开发阶段
开发阶段由三个阶段组成:软件重用是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。软件元素包括程序代码、测试用例、设计文档、设计过程、需要分析文档甚至领域知识。通常,可重用的元素也称作软构件,可重用的软构件越大,重用的粒度越大。
为了能够在软件开发过程中重用现有的软部件,必须在此之前不断地进行软部件的积累,并将它们组织成软部件库。这就是说,软件重用不仅要讨论如何检索所需的软部件以及如何对它们进行必要的修剪,还要解决如何选取软部件、如何组织软部件库等问题。软件重用方法学,通常要求软件开发项目既要考虑重用软部件的机制,又要系统地考虑生产可重用软部件的机制。这类项目通常被称为软件重用项目。
使用软件重用技术可以减少软件开发活动中大量的重复性工作,这样就能提高软件生产率,降低开发成本,缩短开发周期。由于软构件大都经过严格的质量认证,并在实际运行环境中得到校验,重用软构件有助于改善软件质量。大量使用软构件,软件的灵活性和标准化程度也可望得到提高。
7.软件再工程
进行调查,并将其重构为新形式代码的开发过程。西门子大限度地重用既存系统的各种资源是再工程的西门子重要特点之一。从软件重用方法学来说,如何开发可重用软件和如何构造采用可重用软件的系统体系结构是两个西门子关键问题。对再工程来说前者很大一部分内容是对既存系统中非可重用构件的改造。
软件再工程是以软件工程方法学为指导,对程序全部重新设计、重新编码和测试,为此可以使用CASE工具(逆向工程和再工程工具)来帮助理解原有的设命周期过程的基于计算机的工具,通常可以设计并实现工具来支持特定的软件工程方法,减少手工方式管理的负担,让软件工程更加系统化,工具的种类包括支持单个任务的工具及囊括整个开发过程的工具。③过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。1.5.2 软件工程方法学的类型
软件工程方法是软件工程学科的核心内容,从20世纪60年代末以来,出现了许多软件工程方法,其中西门子具影响的是结构化设计方法、面向对象方法和形式化方法。
(1)结构化设计方法
结构化设计方法(StructuredDesign,SD)是一种传统的软件开发方法,它是由结构化分析、结构化设计和结构化程序设计三部分有机组合而成的。它的基本思想:把一个复杂问题的求解过程分阶段进行,这种分解是自软件向下,逐层分解,使得每个阶段处理的问题都控制在人们容易理解和处理的范围内。结构化方法将软件开发全过程依次划分为