第1章引言
1.1研究背景与意义
随着信息技术在教育培训行业的普及和应用,人们对教育软件项目的需求日益增多。近几年,层出不穷的软件开发新技术使得项目的开发效率得到了大幅度提高,但仅仅依靠新技术并不能解决项目开发与实施过程中的所有问题,更无法保证项目成功实现目标。每一个软件项目的成功实施除了需要技术支撑外,还需要通过项目管理来有效地配置人、物、力等各种资源。软件项目发展的另一个特点是其项目规模和复杂性随着业务覆盖范围的扩大而变得日益庞大。以远程教育软件项目为例,这类项目不再仅仅关注于培训一个环节,而是会涵盖多媒体课件的制作、课件资源的管理、后期的培训考核、电子商务化的运作流程等多个环节。软件项目覆盖范围的扩大不仅意味着软件的功能更齐全,而且能够为用户提供一体化的无缝服务。在面对这些越来越复杂的软件项目时,必要的项目管理在保证项目成功实施方面更能体现出了它的价值。
虽然近几年项目管理的思想在软件项目的实施过程中得到一定的贯彻和执行,但根据作者的观察,目前很多软件项目采用的管理方式大多是一种事后的管理方法,例如进度控制、基于软件测试的质量管理等。虽然这些管理措施能起到积极的作用,但有时总不能避免一些严重问题的出现,如技术架构的调整、模块的推倒重来,甚至整个项目以失败告终。宄其原因是这些项目的管理者没有充分重视项目各阶段的风险管理。俗话说“预则立,不预则废”,对于软件项目,要预先对面临的各种风险有一个判断,这样才能及早地、正确地采取相应的措施。而且,软件项目与其他工程项目的最大区别之一就是软件项目具有很大的不确定性,而且这种不确定性是贯穿于软件项目的各个阶段。因此,风险管理对于消除这种不确定性,使后续的其他管理措施更好地发挥作用具有非常重要的意义和价值。
软件项目风险是指在软件开发过程中遇到的软件质量、项目进度、成本控制等方面的问题以及这些问题对软件项目的影响。软件项目风险会影响项目计划的落实,如果对这些风险不加以控制,就有可能影响软件的质量,延缓项目的进度,增加项目的成本,甚至使项目的目标不能实现。如果对项目进行风险管理,就可以最大限度的减少风险的发生。因此任何一个软件系统开发项目都应将风险管理作为软件项目管理的重要内容。
在软件项目中实行风险管理具有如下好处:
在项目立项阶段,通过风险分析决策可以根据不同项目的特点决定项目的实施方式,例如是釆购、外包还是自主开发。这使得项目的立项决策更科学。
通过风险识别与分析,明确项目问题,采取分险应对计划与措施,可以降低项目风险的影响,从而提高项目的成功率。
通过风险管理,可以提高项目计划进度的可信度,改善项目沟通环境,从而增强团队的凝聚力和稳定性。
通过风险管理,能够有效组织风险应对措施,在项目管理活动中减少被动,增加主动性。
通过风险管理,可以推动企业积累有关风险的资料和数据,以便改进将来的项目管理。
总体来说,我国在风险管理方面的研宄和实践起步较晚。而目前大部分软件企业对风险管理的重要性没有引起足够的重视,在实际工作中真正实践的更少。本文是在软件项目风险管理研究方面的一种尝试,作者希望通过在一个典型的软件项目中实践风险管理来对软件项目的风险管理有一个更深的认识和理解,为以后项目的成功实施提供宝贵经验。
1.2远程教育网络系统的发展
远程教育是学生与教师、学生与教育组织之间主要釆取多种媒体方式进行系统教学和通信联系的教育形式[2]。远程教育在我国的发展,经历了三个阶段:
(1)函授教育阶段:以邮件方式传输纸介质教材为主开展远程教育,这种早期的远程教育方式曾为我国培养了许多人才。
(2)广播电视教学阶段:20世纪80年代兴起,以广播电视、录音录像为主开展远程教育。
(3)现代远程教育阶段:20世纪90年代兴起,通过计算机、多媒体与远程通讯技术相结合的方式开展远程教育。
第2章相关技术研究
2.1.远程教育网络系统开发平台和技术
目前,在基于Web的远程教育系统开发技术方面,主要有两种主流的技术路线,分别是基于.NET的幵发路线和基于JAVA的开发路线。考虑项目组既有的幵发经验和技术路线的延续性,本项目釆用当下流行的.NET开发平台。同时在项目研发过程中还涉及到一些其他技术,如XML技术、Web服务技术等。
(1).NET开发平台?NET平台由微软幵发,是一个致力于敏捷软件开发(Agile softwaredevelopment)、快速应用开发(Rapid application development)、平台无关性和网络透明化的软件开发平台[3]。它是一组用于建立Web服务器应用程序和Windows桌面应用程序的软件组件,用该平台创建的应用程序在Common LanguageRuntime (CLR)(通用语言运行环境)(底层)的控制下运行。
第3章远程教育网络系统分析与设计.............14
3.1项目需求与风险分析.............14
3.2项目风险管理架构设计.............17
3.3远程教育网络系统总体设计.............19
3.4.系统主要功能模块的设计.............21
3.5本章小结.............24
第4章远程教育网络系统的实现.............25
4.1系统结构的实现.............25
4.2系统关键机制及其功能的实现.............27
4.3本章小结.............36
第5章远程教育网络系统研发项目风险管理.............37
5.1项目风险管理执行方案.............37
5.2项目风险识别.............38
5.3项目风险分析及量化.............41
6.1.总结
随着信息技术在教育领域的应用和发展,远程教育软件产品越来越受到广大用户的欢迎,为了适应市场发展要求,现代远程教育网络系统的规模越来越庞大,产品的升级换代也越来越快,这对软件项目的研发提出了更高的要求。项目成功实施和达成目标的关键是有效的项目管理,而风险管理是软件项目管理过程中的重要环节之一。本着理论指导实践,并在实践中进一步改进、提高的原则,本文从一个较复杂的软件研发项目出发,对该项目全面应用风险管理的实践过程进行研宄与探讨。取得如下成果:
(1)设计和实现了一个基于互联网络、实现学员自主学习的远程教育网络系统。
该系统是集“网络课程建设、辅助教学、网络学习、学业指导、课程管理、教学评价”为一体的网络教育平台,综合了软件自主开发、软件采购、软件外包等多种实施方式。该系统开发完成并成功运营后,将有力地拓展研发单位的经营模式与市场发展前景。
(2)提出并建立了一套完整的风险管理体系,确保了项目的顺利推进和最终成功。
本文从项目研发过程中面临的软件开发、软件采购、软件外包和信息安全等各种风险问题入手,提出适用于软件项目特点的完整的风险管理体系。该体系结合典型的SEI风险管理模型,运用评价指数法RAC和层次分析法AHP相结合的风险分析方法,对系统研发各阶段识别的风险进行细致分析,釆取相应的风险控制措施。该体系综合考虑了软件项目特点及研发单位的实际情况,确保了本项目的顺利推进和最终成功,对于将来类似软件项目的风险管理也具有很好的实际应用价值与借鉴意义。
(3)建立了系统的完整的风险数据库,提升了企业风险管理水平。
在本项目之前,研发单位没有实施过全面的项目风险管理。通过本项目尝试执行项目风险管理,提升了企业领导项目风险管理意识;同时通过本项目系统的风险流程把过去零散、松弛的风险因素进行梳理,形成风险数据库,为以后的项目实施提供有力的数据及决策支持。
(4)经权威机构评测,验证远程教育网络系统是成功的软件产品。
远程教育网络系统研发完成后,送交权威评测机构一一上海市计算机软件评测重点实验室(SSTL)进行产品评析测试,从功能性、可靠性、易用性、效率、维护性、可移植性、用户文档等质量特征进行技术测试,结果显示远程教育网络系统很好的完成所要求的功能,满足系统设计目标,是一个成功实施并可交付使用的软件产品。
参考文献:
[1]朝鉴.终身教育理论讨论综述.成人高教学刊[J],2000,01.
[2]百度百科.远程教育[EB].百度百科,2012-03-06.
[3]百度百科..Net框架[EB].百度百科,2011-08-17.
[4]王鹏.基于XML数据模型的WEB数据库查询系统的研究与实现[D].北京:北京工业大学,2004
[5]百度百科.Web服务[EB].百度百科,2012-02-15.
[6]韩思音,韩建美.软件产品的质量管理实践.中国质量[J],2006,3: 10-13.