精确软件开发过程的研究及运用初探_第1页
精确软件开发过程的研究及运用初探_第2页
精确软件开发过程的研究及运用初探_第3页
精确软件开发过程的研究及运用初探_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要:与工程项目类似,在软件开发的整个过程当中涉及软件过程规范、质量管理、项 目管理、组织管理以及需求管理等若干要点,如果其屮的一个节点出现了问题,则极有可能 导致整个软件开发项h功亏一赞。笔者结合口己的专业知识以及相关经验,将软件开发过程 中的若干构成要素进行了精确化处理(即精确软件开发过程),明确划分了软件开发生命周期 的不同阶段。精确软件开发过程在某系统的开发当中得到了应用并取得了良好的效果。 中国论文网关键词:精确软件开发过程;开发过程管理;系统设计中图分类号:s126文献标识码:a文章编号:1007-9599 (2012) 08-0000-02简而言z,软件开发过程主耍体现为软件开发

2、的工程化,主耍是指把软件开发视为完整 的系统性的工程项目,将工程项目领域当中常用的管理方法、处理流程技术等运用到软件开 发中去。“目标”、“过程”与“原则”是软件工程(software engineering)的基本框架构架 构成,其中的软件开发“过程” 一些列的步骤,通过这些步骤,软件开发人员能够最终开发 出满足预期要求的软件产品。一般而言,软件工程的过程主要包括以下儿个流程:开发一运 作一维护。这三个流程基本上已经完全涵盖了软件开发过程必需的需求活动、设计活动、实 现活动、确认活动以及维护活动。其中,(1)需求活动主要两个方而,即问题分析与需求分 析,这两者的关系是,问题分析可以得到需求定

3、义,而需求分析则能够产生功能规约。(2) 设计活动通常山整体性设计与详细设计两个部分构成。询者的主要目标是构建软件系统的框 架结构,而后者的主要内容是系统的模块内容(包括数据结构说明、加工描述等等)。(3)实 现活动的主要目标是实现设计结果向具有执行能力的代码的顺利转换。(4)确认活动需要整 个软件开发过程中进行体现,其主要h标就是确保匕户的要求能够得到满足。(5)维护过程 中主要是指软件开发、使用过程当中的调整、完善以及修改等等。笔者将软件开发过稈中的 若t构成要索进行了精确化处理(即精确软件开发过程),明确划分了软件开发生命周期的不 同阶段。下文就精确软件开发过程的相关问题进行了分析和探讨

4、。一、精确软件开发过程概述相对于粘确软件开发过程,统一软件开发过程(rational unified process, rup)中 存在着诸多的不足与弊端。所谓的统一软件开发过程(rup)主耍是指以网络基础、面向对彖 的程序开发方法论,它就好像一个在线的指导人员,能够为全部层级、所有方面的软件程序 开发提供开发模板、方针建议以及案例支持等等。统一软件开发过程(rup)拥有着一个i分 完整的框架结构,在该框架结构下,技术、实践等面向过程的方面以及代码、模型、文档等 其它开发组件均被囊括其中。但是统一软件开发过程(rup)的不足也是显而易见的,笔者在 深入分析研究的基础上,以统一软件开发过程(ru

5、p)为基础,给出了一种相对更加高效、更 加可行的精确软件开发过程。精确软件开发过程的终极目标就是弥补统一软件开发过程(rit) 的不足,通过科学、系统以及有计划的指导,提高软件开发的效率、可行性尤其是成功率, 能够为中小型软件系统的开发提供必耍的扶持和帮助。精确软件开发过程的基本思想丄要体 现在以下几个方面:第一,合理简化使其更具针对性。统一软件开发过程(rup)的主要血向对彖是那些常规 性的绝大多数的软件系统开发,因此,在针对性方而显得不足,没有能力可以根据实际的问 题给出具有很强针对性的软件开发设计方案。尤其是那些开发数量与日俱增的中小型软件系 统,应用统一软件开发过程(kup)则会使得整

6、个开发过程显得啰嗦、累赘和臃肿,软件设计 人员除了要进行软件设计活动之外,还需要有效处理统一软件开发过程(rup)天生的不足, 增加了软件开发人员的工作压力。而精确软件开发过程的基本思想则采取了与统一软件开发 过程(rup)的血面俱到截然相反的理念,即“分割简化、细致明确”。具体而言,就是将软 件开发过程的复杂性问题进行合理划分,分析并探讨相对简单的部分,明确这些简单部分之 后进行设计活动和实现活动。由于精确软件开发过程来源于众多的屮小型软件系统的设计实 践,因此,它在有效解决实际问题不仅髙效,而ii极具针对性和简化性。这些特点使得不论 是软件开发人员还是软件工程管理人员都能够比较容易地接受粘

7、确软件开发过程,获得良好 的执行效果。第二,能够实现软件开发支持的最大化。在软件开发的过程中,存在着诸多的不确定性 因素,例如软件设计人员对于业务理解的偏差、系统用户对于业务的变更和微调等,统一软 件开发过程(rup)很难进行有效地应对,而精确软件开发过程则能够很好地解决软件系统在 开发过程中出现的各种不确定性因索。这主要是由于精确软件开发过程当中,软件系统开发 团队的人员构成与统一软件开发过程(rup)团队存在着较大的差异,前者不仅拥有软件系统 开发领域的专业技术人员,更有用户业务领域的专家。因此,精确软件开发过程的软件系统 设计团队能够在开发的整个过程中与用户进行直接、没有偏差的交流,及时

8、发牛客户对于业 务的新要求、新变化,相应地,客八也能够在交流过程中了解软件系统开发的具体进程,并 根据软件系统开发团队的要求为软件系统开发提供最大的支持和协助。第三,优化合理的软件系统开发过程。对于统一软件开发过程(rup)而言,它的过程一 般包括以下儿个方面:计划过程、需求分析过程、设计过程、编码过程、测试过程以及运行 维护过程。其中,统一软件开发过程(rit)的设计过程要比精确软件开发过程(该过程的设 计过程主要包括整体性设计过程和详细设计过程)笼统得多;而统一软件开发过程(rup)的 测试过程中主要包括两个方而,即开发人员的测试过程和用户的测试过程,ii开发人员的测 试过程密切联系着编码

9、过程;同时,测试过程之片血接进入到运行过程也缺乏合理性,这两 者之间应该增加“试运行过程”,即保持“测试过程一试运行过程运行过程”的顺序,经过 试运行过程证明系统具有良好的稳定性z后再进入到正式的运行维护过程中。有鉴于此,精 确软件开发过程对软件系统开发过稈进行了合理化与优化处理,将其划分为以下七个方血, 即需求定义过程、外部设计过程、内部设计过程、编码测试过程、联合测试过程、系统试运 行过程、系统初运行过程。其中,“外部设计过程”和“内部设计过程”同属于大的设计过程,“联合测试过程”则合并了编码和开发人员的单体测试,单独増加了 “系统试运行过程”这 一个重要环节。正是由于粘确软件开发过程对软

10、件系统开发过程进行了合理化与优化处理, 使得软件工程管理人员能够更加有效管理和控制软件系统开发的进程。同时需耍说明的是, 精确软件开发过程在每一个开发环节当中均有开发进度文档,该文档的主要作用就是用來进 行阶段性任务的明确、任务完成人员和完成时问的严格定义,借助于开发进度文档,彻底实 现了软件系统开发进程的粘确化管理和控制。第四,基本思想概述。通常以上三个方而的论述我们知道,精确软件开发过程是 建立在统一软件开发过程(rup)的基础z上的,并充分融入了 cmm (capability maturity model for software,能力成熟度模型)理念,是一种具有很强针对性的软件开发过

11、稈。所 以,精确软件开发过程中对中小型的b/s系统及其类似软件系统的开发过程具有非常好的适 应性。精确软件开发过程的基木思想可以概述为以下儿个方而:(1)过程的细化分割。精确 软件开发过程实现了对复朵问题的细化分割,将其划分成为多个简单的问题进行分析处理, 不论是系统开发过程还是软件工程管理均更容易;(2)软件开发团队当屮增加了新成员 业务领域专家,他的阶段性介入对于增强整个软件系统开发团队业务能力方血是不言而喻的, 提高了发现不合理业务的及时性,并能够给出专业化的解决方案,有效解决了软件系统开发 资源;(3)优化合理的软件系统开发过程,包括需求定义过程、外部设计过程、内部设计过 程、编码测试

12、过程、联合测试过程、系统试运行过程、系统初运行过程等七个过程,更加科 学合理。精确软件开发过程要求计划具有非常高的细致程度,例如,以周为单位进行计划的 制定,以天为单位确定开发计划,以小时为单位明确测试计划,等等。总体而言,粘确软件 开发过程能够为软件开发质量和开发进度捉供更可靠的保证,对于软件工程水平较低的国内 现状而言,其积极作用还是非常显著的。二、基于精确软件开发过程的x系统开发实例某企业需要开发一套物流中心仓库管理系统,要求对仓库进行严格的控制,即对仓库进 行精确的入/出库管理,提供在库量的实吋监控,并h为财务用八提供准确的入/出库数据以 及相关的财务数据。需求定义。在立项初期,首先确

13、立系统开发的对应休制,包括开发商、用户系统课负责 人、用户业务负责人。在开发商方血,有项目经理,项目组、开发人员以及技术支持人员。 项ri经理主要负责项口整体迓度的把握己经项目合同的相关事宜。项目组长则全而的管理项 目的开发进展,对各个开发阶段进行全程的跟踪,并口对项目中的相关技术方面的问题做出 决策,还包括了与川户系统负责人进行联络。开发人员主要负责系统需求的获取,系统设计 以及系统实现。在川户方面,系统负责人主要起联络开发商和川户的作川,协助开发商和用 户对业务需求进行沟通。另外,还负责向系统课的领导汇报系统的开发进度情况以及开发遇 到的重大课题。业务负责人主要山实际工作的操作者构成,是系

14、统功能的提出者以及系统测 试和确认的人员。外部设计。在需求定义阶段,己经对系统的功能需求进行了详细的讨论与确认,系统整 体上可以分为8个大的功能模块,主要包括系统管理、maste管理、集装箱堆场、仓库管理、 溢出仓库管理、工厂侧管理、财务用户部分和housekeeping。在每个人功能模块当中又划分 了若干了个功能画血,分别对用户提出的需求进行实现。内部设计。详细描述了系统数据的数据结构,定义了各个数据表以及表中的数据字段的 名称、类型、长度、含义等相关信息。系统实现。开发系统环境:microsoft windows server 2003 sp2;开发平台:microsoft visual

15、studio 2003;开发语言:asp. net , c# , javascript;数据库服务:microsoft sql server 2005;数据库客户端:oracle 9.2。三、结束语该系统的开发过程,完全按照精确软件开发过程的要求,明确系统的开发口的和预期口 标,严格对开发过程屮的各个阶段进行划分,完成必需的相关文档。与之前的项目开发相比, 体现出较多的优势,例如,项目过程管理精确、阶段任务完成良好,项目开发工数降低、节 省开发成本,项目完成质量较好,项目设计开发文档齐备、维护方便,等等。参考文献:1 吕西红,陈志刚.统一软件开发过程rup中的关键技术研究j.信息技术,2006

16、, (01) :124-1252 张友牛,李雄.软件开发模型研究综述j.计算机工程与应用,2006, (03) :209-2103 常浩浩,覃征.基于emf和ocl的mda软件工程方法研究j计算机科学,2007, (01) : 152-1544 夏锐,肖明清.基于lml的并行白动测试系统的设计与实现j.计算机工程,2007,(09) :123-1245 梁成才,陆阳.建立和改进软件过程能力的一个解决方案j.计算机工程,2007, (19) :221-2236 赵靖,张汝波,顾国昌.考虑故障相关的软件口 j靠性增长模型研究j计算机学 报,2007, (10) :56-577 龚波,何新贵.基于统计过程控制的软件过程管理j.计算机应川研究,2006,(01) :69-718 邢彬彬,姚郑.cmm/cmm1与软件生命周期模型关系的研究j计算机应川研究,2007, (11) :155

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论