软件工程毕业设计(论文)-国家统计教育培训网项目管理及其构架.doc_第1页
软件工程毕业设计(论文)-国家统计教育培训网项目管理及其构架.doc_第2页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

南南 开开 大大 学学 本 科 生 毕 业 论 文(设 计) 题 目:国家统计教育培训网项目管理及其构架 学 号: 0012544 姓 名: 年 级: 2 学 院:软件学院 系 别:软件工程 专 业:软件工程 完成日期: 指导教师: 摘要 国家统计教育培训网项目管理及其构架国家统计教育培训网项目管理及其构架 软件学院软件工程系 软件工程专业 指导教师: 摘要摘要: 本文主要介绍了作为国家统计局局长的八大督导项目之一的国家统计教育 培训网的项目背景、特点及其结构,以及目前为止所实现的产品功能。着重分 析了我们开发团队在此次项目中对于 msf 和 rup 过程模型和团队模型的实践, 总结了我们能高效完成项目的原因以及自己对项目管理工作的体会。同时还简 单介绍了由我们设计开发的项目管理平台的特点,及它对这个项目起到的辅助 作用。 关键字:关键字: 远程教育平台,终身教育,msf 框架,系统工程,自适应控制系统,需 求,产品生命周期 abstract abstract this article covers the project background and the architecture of the internal training system weve done for national bureau of statistics of china (nbsc). this project is one of the eight major projects (in nbsc) supervised directly by the minister of nbsc. also, this article introduces the currently implemented features in the system and focuses on the analyzing our team practice during this practical training process using msf and rup. and, this article explains why we can finish our project on time with good quality by using very limited resources. finally, youll see what ive learned from my first-time project management. besides this nbsc project, this article also introduces the features of our software management system and how it helps in our project. key words: distance learning platform, life-long learning, msf framework, system engineering, adaptive control system, requirement, product life cycle 目录 目目 录录 前言前言 .1 第一章第一章 项目介绍项目介绍 .1 1.1 项目背景.1 1.2 平台特点.2 1.3 系统结构.2 1.3.1网络结构2 1.3.2传输方式3 1.4 平台功能结构.4 1.4.1教学平台4 1.4.2 后台管理.5 1.5 小结.8 第二章第二章 项目管理中生命周期的研究与选择项目管理中生命周期的研究与选择: msf 和和 rup .9 2.1 介绍.9 2.2 定义.9 2.3 过程模型.10 2.3.1 msf 过程模型12 2.3.2 msf的各阶段.13 2.3.3 rup过程模型.15 2.3.4 rup的各阶段.15 2.3.5 项目应用.17 2.4 团队模式.20 2.4.1 msf角色集.20 2.4.2 rup角色集.23 2.4.3 项目应用.26 2.5 小结.33 第三章第三章 项目管理平台项目管理平台 webraid.35 3.1 管理平台背景介绍.35 3.2 管理平台功能分析.36 3.3 开发平台与技术简介.40 3.4 小结.42 第四章第四章 项目成果展示项目成果展示 .43 4.1 项目进度.43 4.2 项目实现.43 4.3 界面截图.45 4.4 下版介绍.47 第五章第五章 总结总结 .49 附录 153 功能模块路程图.53 附录 256 目录 角色模块功能图.56 致致 谢谢 .59 参考文献参考文献 .60 前言 - 1 - 前言前言 在全国上下积极提倡终身教育的今天,我们软件开发者应该努力的为这一 潮流提供实现媒介,而网络教育可以说是目前最佳的一种实现终身教育、全民 教育的手段。我们设计并开发的这一中国统计教育培训网就是这种网络教育在 国家统计局内部的推行,该平台有别于已往的一些网络教育网站,它提供了全 面的网络教育的服务,以人性化为中心的设计,尽量把现实中的传统校园、课 堂的功能平移到了互连网上,同时又发挥了网络教育的优势,随时随地让访问 用户既可以在网上校园中获取各种信息,又可以进入网上课堂进行某一门课程 的修读,实时课堂,作业提交批改,考试报名等各种学校教育中需要涉及的方 面,我们都集成到了这个培训网上,真正营造了一个网络学校的氛围(具体结 构请参见第一章和第四章的介绍) 。 如果说实现这种网络教育平台是老生常谈的话,那由仅仅七名而且主要是 在校大学生组成的团队在只有四个多月的时间里就基本实现了这个繁杂的系统, 并且目前已经在国家统计局内部开始试运行,不能不说这是我们创造出来的一 个亮点。我们大胆采用新的管理模式和开发技术,不管从项目流程、团队组织, 还是功能实现都力求高效。我们在这个项目中引入了系统工程的方法,针对项 目和团队的特点采用并行的结构,极其重视与客户的交流和反馈,创造出一个 自适应控制系统的开发流程以确保让客户满意(具体做法参见第二章) 。我们还 根据软件项目开发的特点建立了一个以问题管理为主的项目管理平台,使得项 目管理真正做到了系统化的自动运行,大大提高了问题解决的效率,在第三章 将有具体的介绍。 通过这篇论文您可以看到我们七人小组是如何把这样一个繁杂的大系统, 科学的分割成各个小系统,通过减小小系统的误差,来确保大系统的正常运行 的,它既是我们这个项目的经验总结,也是下一个项目的标准参考。 当然在写作过程中还有一些不够准确,考虑不周的地方,还希望各位能不 吝提出修改意见。 第一章 项目介绍 - 1 - 第一章第一章 项目介绍项目介绍 1.1 项目背景项目背景 由哈佛中国教育研究中心发起的以“蓝色基因”为主题的素质教育公益工程, 是目前各界教育活动所关注的重点。 “蓝色”因为代表海洋、水运商贸,常常自比 “现代文明”,所以它较其他颜色更显时尚、前卫。继“蓝色妖姬”、 “蓝牙技术”之 后, “蓝色基因”又应运而生,颇令人好奇。无疑, “蓝色”已与理性、文明结缘了。 该理论认为,现代人才必须具备八大能力,即自律、创新能力、学习能力、合 作开放、自信乐观、责任感、执著追求、理性务实。其中最核心的观点是:学 历并不是最重要的,真正的素质培养、能力锻造以及持续不断的知识积累才是 关键。 “蓝色基因”理论其实与政府提出的“终身教育”思想是一致的。学历不等于能 力,只要学习能力在,创新能力在,能力的培养,成功的可能,都会依然存在。 由此我们可以看到,不管是哈佛研究中心还是我国政府都在强调终身学习,不 断积累知识这样一个理念,而实现终身学习的最有效的一个方法就是网络教育, 网络无处不在无时不有,我们可以通过网络随时随地的学到新的知识,因此开 拓网络教育这个领域,丰富它,改进它,是我们软件工作者今后将要面临的一 项重大课题。 在这种网络教育逐渐成型的时候,我们开始了国家统计局的网络教育平台 项目的设计、开发及推广等系列工作,以期在统计局系统内部提供一个终身学 习的实用平台。本项目是为国家统计局量身定做的一个分布式多级互连的网络 教育平台,也是国家统计局局长的八个督导项目之一。它必须抛弃原有的通用 性教育平台,而针对统计局的教育特点,设计出一个全新的多级教育平台,例 如简化学员的注册过程,学员界面尽量清晰易用,课件等教学资源可以从中央 站点传到下级站点等。同时还要考虑统计局内部专网带宽资源紧张等问题,要 在设计平台的时候尽量减轻专网压力。 第一章 项目介绍 - 2 - 1.2 平台特点平台特点 灵活的定制模式灵活的定制模式 高度模块化的设计,可根据客户的需求不断添加新的功能,方便的扩展, 这个是本系统最大的特色之一。 简单实用的图文声像并茂简单实用的图文声像并茂(人性化和个性化人性化和个性化)学习及教学管理环境学习及教学管理环境 颇具特色的实时课堂系统,能够提供音频视频、教师桌面、课件显示、实 时交互、文本记录等多种功能,模拟一个真实的课堂环境。 安全灵活可靠的分布式教学资源管理系统安全灵活可靠的分布式教学资源管理系统(支持松藕合和异构环境支持松藕合和异构环境) 整个平台的设计采用分布式的结构,多个服务器共同运转,各负其责,加 强性能。同时采用 windows 密码安全策略,使用操作系统提供的基于角色 的安全。 高性价比高性价比 多个关键模块,例如实时课堂,即时消息等都由开发组自己编写,省去了 高额的购买费用。 1.3 系统结构系统结构 1.3.1 网网络结络结构构 为减轻用户集中访问中心网站所造成的对网络带宽,硬件设备的压力,本 系统设计采用多级分布式互连结构,目前分为两级结构:中央网站和省级网站。 中央网站是资源中心,除直接向国家统计局机关干部和国家统计局培训学 院直属教学部提供网上教学服务外,中央网站主要向省级网站提供网上教学资 源(主要是课件和题库) 省级网站是教学中心,利用中央网站的共享资源,面向本地区学员,提供 网上教学服务。 中央网站可利用网络空闲,将教学资源分发到各省级网站,用户可通过访 问省级网站进行学习和交流,从而减少对中心网站的网络带宽需求和设备压力。 第一章 项目介绍 - 3 - 1.3.2 传输传输方式方式 对于传输方式来说,采用天地一体的网络传输方式,具体的讲就是以统计 业务专网作为主要的网络平台,对于专网网络基础设施相对薄弱的地区,尝试 采用单向的卫星通道作为补充手段,利用卫星信道进行远程教育的实时直播和 定时广播,并利用卫星通道完成大数据量的课件分发。对于必须进行交互的教 学或会议,其交互数据仍通过地面专网传送。这种方式,既缓解了网络设施不 足和带宽资源紧张的问题,又避免了 internet 安全和 qos 无法保障的弊端。 省省级级站站 系系统统管管理理课课件件制制作作和和直直播播课课堂堂 资资源源 服服务务器器 统统计计业业务务网网 web 服服务务器器 邮邮件件 服服务务器器 单单位位用用户户 数数据据库库 服服务务器器 视视频频 服服务务器器 存存储储 服服务务器器 家家庭庭用用户户 中中央央网网站站 内内容容分分发发 单单位位用用户户 公众网 卫星 内内容容分分发发 交交互互回回路路 图 2 系统结构设计 第一章 项目介绍 - 4 - 1.4 平台功能平台功能结构结构 调查问卷 实时课堂 招生招聘 作业考试 课件学习 网上校园 网上课堂 讨论答疑 统计网络教育 平台结构 前端 管理平台 教育资源库 安全保障系统 支撑环境 教学管理、教务管理、平台管理 web服务、视频服务、数据库服务 身份认证、数据安全 课件制作、维护管理 后台 通知公告 网上书店 图 3 系统功能结构图 系统平台由前端教学平台及后端管理平台两大部分组成。各部分详细功能 模块描述如下: 1.4.1 教学平台教学平台 教学平台是系统平台用户最常用的部分,由网上校园和网上课堂两部分组成。 1.4.1.1 网上校园网上校园 网上校园栏目包括:通知公告、招生招聘、学术交流、调查问卷、网上书 店、资料下载。 使用者无需注册为教育平台用户即可访问网上校园,并可查询各类相关信 息。 1.4.1.2 网上网上课课堂堂 使用者必须注册为平台用户才能访问网上课堂内容。它分为五个子系统: 课程学习系统课程学习系统 第一章 项目介绍 - 5 - 讨论与答疑系统讨论与答疑系统 作业与考试系统作业与考试系统 实时课堂系统实时课堂系统 站内邮件和信息系统站内邮件和信息系统 1.4.2 后台管理后台管理 后台管理是对前端教学的服务和支撑,包括四大部分:管理平台,教育资 源库,支撑平台和安全保障。 1.4.2.1 管理平台管理平台 管理平台对整个教育平台进行管理,包括教学管理,教务(信息)管理和 系统管理三大部分。 教学管理教学管理 教学管理是对日常教学工作的管理,包括课程讨论区管理、答疑管理、课 程作业管理、课程测试管理、教学评估管理等 教务(信息)管理教务(信息)管理 教务管理包括地区管理、用户管理、项目及课程管理、教材管理、考试管 理、学员成绩管理、教育证书管理、缴费管理、新闻管理等。 其中按照远程教育流程,教务管理可划分为学员注册管理、缴费管理、教 学资料征订管理,作业/考试成绩管理、证书管理、网上调查等子系统。 学员注册管理学员注册管理 学员填写注册单后,可以直接进入网上课堂选课,对于免费课程,注册学 员 均可以参加,而收费课程,则通过计费管理来给定学员进入课程学习的权限。 教务管理员也可以统一输入学员的书面注册信息,帮助学员及其他身份用 户完成注册过程。 缴费管理缴费管理 第一章 项目介绍 - 6 - 教务管理人员将学员分次缴费情况录入至学员学籍档案中。有关数据一旦 确认无误,不得变更。 系统会对逾期为缴费者提示,并采取相应限制措施。 教学资料征订管理教学资料征订管理 中国统计教育培训网将公布与培训项目有关的文字/音像教学资料列表,并 附简要的文字介绍。 学员个人及各地的教务管理人员可在网上征订与培训项目有关的文字/音像 教学资料。订单需经管理人员审核通过后方可生效。对订单的线下操作由管理 人员在线上录入。 作业作业/考试成绩管理考试成绩管理 系统对学员的历次作业/考试成绩记录到学员的学籍档案中 由作业/考试系统自动批改的作业/考试成绩自动进入学员学籍档案中。此外, 教务管理人员和教师经授权后可录入成绩。人工录入的成绩经校验无误后,方 可正式进入学员学籍档案。 系统对作业欠交或成绩不合格者自动生成通知。 证书管理证书管理 基于学员学籍档案所记载的内容,按照给定的结业发证的条件,对学员进 行结业确认,并自动生成发证学员清单。 网上调查网上调查 系统能按需要生成多种格式的调查问卷。被调查者直接在网上接受调查。 系统可自动对调查结果进行统计汇总,生成最终的调查报告。 系统管理系统管理 系统管理系统对平台的总体运行性能进行管理,包括服务器管理、日志管 理、数据管理、性能管理、安全管理等。 1.4.2.2 教育教育资资源源库库 课件制作系统课件制作系统 第一章 项目介绍 - 7 - 可将分散的视、音频培训素材与教材讲义(如 ppt,word 文档, producer 课件)同步整合为多媒体课程,或将教师日常教学活动制作为多媒体 课程,快速发布。 资源管理系统资源管理系统 包括原始素材管理、课件素材管理、课件管理、素材管理和题库管理,以 及日常教学时所需要的师资资源的管理和维护。 1.4.2.3 支撑平台支撑平台 web 服务服务 为教学平台的信息交流和课件学习提供服务。 email 服务服务 为解决用户的非实时交流,还有一些教学、教务信息的传播也可以通过 email 完成。 视频传输视频传输 利用流媒体技术,为教学平台提供视频,音频的传输服务。 数据库服务数据库服务 用于存储基本的教学、教务管理信息,如学生的属性、授课内容的基本属 性及相应的用户信息和计费数据。 1.4.2.4 安全保障安全保障 用户认证用户认证 用户认证功能,以数字证书为手段,实现对服务应用和用户的识别。一方 面可以实现对网络教育系统中的不同类别教育服务的认证;同时也可以为访问 这个系统不同类别的用户进行认证。 数据安全数据安全 包括对系统关键业务信息、教育资源的数据安全保护以及对用户个人信息、 成绩的数据安全保护。 第一章 项目介绍 - 8 - 1.5 小结小结 通过以上的介绍可以看到,本系统是一个涵盖面广,功能复杂,影响重大 的国家政府性质的网络平台。如何把这样一个繁杂的系统统一好,使得整个开 发过程能有序高效,是我们必须考虑的问题。仅仅着重功能的实现,技术的攻 克,只能构造出一个个分杂的板块,无法形成一个先进可扩展的系统,是不能 满足实际应用需求的。因此我们需建立一套完备的项目构架,用一种合适的生 命周期,去指导项目开发全过程。 完成这个项目对于我们来说不仅是一次技术上的考验,更是一次软件项目 管理理论实践的好机会,我们运用了目前流行的 msf 软件项目开发框架和 rup 软件过程模型来指导这次项目实践,有科学的理论的指导,加上我们自己 对它的理解和合理的调整,保证了此次项目成功的完成。下面几章就会从理论 和实际两方面论述我们是如何进行这个项目的开发,以及我自己作为程序经理 如何发挥协调作用,贯穿整个项目进行项目管理的。 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 9 - 第二章第二章 项目管理中生命周期的研究与选择项目管理中生命周期的研究与选择: msf 和和 rup 2.1 介绍介绍 开发一个好的软件是一个艰难的过程,除了需要有好的编程技术外,还需 要考虑很多非技术因素,例如软件开发采用何种过程管理模式,团队采用何种 的组织形式,这些经常是在小团队开发的时候容易忽视的方面,但是对提高一 个项目的成熟度来说却起着极其重要的作用。正如艾森豪威尔说过“有根据计划 没有打赢的战役,但没有战役是在没有计划的情况下打赢的“一样 中国软件业较之印度落后的原因之一就是软件组织模式的选用不同,印度 是用工业化的组织形式去组织软件的开发工作,而中国则更多的是一种 “manual workshop model” ,随经理人为去组织决策,自然会有很多考虑不周 的地方,从而大大降低开发效率。所以确立一个合适的软件开发过程模型是软 件项目管理的灵魂,选择对了会对项目开发起到事半功倍的效果,尤其是当一 个多人团队共同开发一个需要符合产品标准的软件时,软件过程变得更加复杂 化,更需要根据项目的特点选择好一个项目管理模型。 因此我们需要运用所学,把软件开发确实当作一个项目去进行,也许这样 会浪费一些设计和组织的时间,但是却有利于软件的持续性开发和后期版本的 改进,而不只是仅仅满足用户的一次需求。 根据这个项目和我们团队的特点,我们选择了 rup 和 msf 作为项目管理 的指导,在此章将这两个模型结合我们项目过程做一简单介绍,包括两者的过 程模型,团队模型和相关规则的说明 2.2 定义定义 ruprational unified process(统一过程)(统一过程) rup 是一套软件工程过程模型,它通过对所有关键的软件开发活动提供正 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 10 - 确的指导、模板和工具向导,增强团队的生产力,从而使软件发挥最大的功用。 它用一套规范的方法为开发组织分配任务,明确责任,其目标是确保在工程进 度和预算内,生成出高质量的软件,能够满足最终用户的需求。 msfmicrosoft solution framework(微软解决方案框架结构)(微软解决方案框架结构) msf 是一套大型系统开发指南,它描述了如何用团队模型、过程模型和应 用模型来开发应用程序,是在微软的工具和技术的基础上建立并开发分布式企 业系统应用的参考。 msf 的最大特性是商业化,并自始至终地体现在项目的实施过程中。所谓 商业化意味着客户的商业利益。客户投入多少,得到多少回报,客户要用到哪 些最新的技术,最后如何把项目计划变成产品直至产生效益,等等,这些都是 msf 要考虑的问题。 将 msf 和 rup 放在一起讨论,是因为 msf 的过程模型和 rup 的类似, 都是一个成熟的,结合了传统模型优点的产物,它们都是基于迭代的开发。 msf 是在以不同的版本为迭代单位进行开发,而 rup 是以一个版本中各个阶 段为迭代单位进行开发,一个是大处招眼,一个是顾及细节,两者配合起来就 能实现一套完整的软件。并且他们应用的场合是一致的,都可以应对不断变化 的需求。虽然 rup 是过程模型,但是可以从他的四个阶段,五个活动中,提炼 出团队模型,可以发现和 msf 也很类似,都是多个角色相互配合,形成一个环 状结构,而不是层级式的下级对上级负责。以下就来介绍一下两者的过程模型 和团队模型,在这里把两者放在一起并不是为了比较他们的异同,而是指明这 两种模式的工作方式和优势,进而论述我们完成的国家统计教育培训网的项目 中应用到的软件项目管理的方法。 2.3 过程模型过程模型 过程模型指出一个项目中各个活动的顺序,用来表示一个项目的生命周期。 一般来说传统的过程模型分为两大类,一类是静态的如瀑布模型,还有一类是 没有确定的检查点,如螺旋模型。 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 11 - 下图表明两种模型特点 瀑布模型:瀑布模型: 这种模型是基于里程碑的,它的每一次活动的转变都是由里程碑来标明。 使用瀑布模型,我们需要当一个活动进行完之后才能进入下一个阶段,它是一 个线性串行的过程,两个活动不会同时进行。它假定在进行新的开发过程时, 上一个过程已经完成,而且不会回到上一个过程。因为在不同的活动之间过渡 有固定的转换点,顺序性强,线索清晰,所以这种模型可以很容易的监控管理 每个活动的进度和个人完成的情况如何。 但是实践证明这个开发模型过于理想化,软件开发是一个非常复杂的过程, 有诸多的因素影响工程的效率和成败。而且软件开发需要许多不同背景的个人 和团队参与。由于这些复杂性,在软件开发的整个生命周期中每一个阶段都有 可能留下隐患和错误。如果等到系统已经开发实现完毕,而在测试阶段发现了 重大问题,这时的返工将会造成人力、物力、财力及时间上的巨大浪费。因此 这种模型只适合那种需求很明确,并且不容易发生变化的项目。 螺旋模型:螺旋模型: 此模型是建立在不断的提炼需求、不断对项目评估的基础上的,是基于风 险的模型。以解决一个风险为一个螺旋,进入下一个风险,再开始一组过程。 它可以使开发团队和用户之间建立很好的协作关系,用户会在项目进行中,不 断进行反馈,以此参与到整个项目过程中。因此螺旋模型适合需要快速开发的 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 12 - 小项目,或是需求变化多、复杂不易理清的大项目中。但是螺旋模型没有清晰 的检查点,不易对整个项目过程进行调控,容易造成管理混乱,因此它对项目 管理人员的要求很高。并且由于它是一圈圈的小步向前走,对整个项目的可预 测性相对就比较差。 2.3.1 msf 过过程模型程模型 msf 过程模型是结合了瀑布模型和螺旋模型优点的一个组合模型,它把瀑 布模型的基于里程碑的计划管理和对结果具有良好预见性的优势同螺旋模型的 及时反馈和不断改进的特点结合起来,整个软件开发过程就像一个自适应控制 系统,如下图所示,在一个螺旋迭代的过程中加入多个里程碑,使得一个迭代 能有计划的实施。 msf 过程模型具有以下特点 强调强调“系统前景系统前景/范围范围“,而不是需求。,而不是需求。 前景是对方案是什么的一种扩展观点。范围定义了在当前项目的条件限制 下,前景中的哪个部分可以被实现。通过这样两个相互矛盾又联系的概念,可 以使开发者明确在本版本内需要实现的功能,而不只是以客户提出的需求为中 心,使得后期的进度无法完成,产品沿后发布。 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 13 - 面向客户的里程碑,而不是面向开发的里程碑。每个里程碑是项目组重新面向客户的里程碑,而不是面向开发的里程碑。每个里程碑是项目组重新 校准客户期望值的同步点。校准客户期望值的同步点。 每个里程碑的确立都是以实现的部分能否使用户满意为中心的,而不只是 活动的完成。因此在里程碑提供了和用户再次交流的机会,使得产品在一定范 围内让用户满意。 不同版本方式的发布,而不是第一版就包含全部的功能特色。不同版本方式的发布,而不是第一版就包含全部的功能特色。 快速变化的技术会不断增强系统的功能,强化电脑使用者的能力。因此在 确定迭代的时候要集中力量先把客户迫切需要的部分完成发布,使它先商品化。 2.3.2 msf 的各的各阶阶段段 msf 过程模型是基于阶段的,由里程碑驱动的迭代模型,它可以用来开发 配置传统应用,企业商用解决方案,和 web 分布式应用。 msf 过程模型分为 5 个阶段,形成一个闭环结构,螺旋上升。每个阶段设 有一个里程碑。这五个里程碑是客户与项目组之间重要的设计、评估及协调的 时间点。 构想阶段(前景构想阶段(前景/范围里程碑)范围里程碑) 构想阶段在“前景/范围核准”里程碑上到达了终结点。一旦一个新的产品 吸引了大家的兴趣并审批通过后,项目组开始集中起来定义产品。前景描述文 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 14 - 档清晰地阐明了产品或服务的最终目标,并提供了明确的方向。范围与前景相 反,它定义了一个特定版本产品或服务所受的限制,并且认识到在未来的版本 中将要进行的开发工作。 计划阶段(项目设计认可里程碑)计划阶段(项目设计认可里程碑) 设计阶段在“项目设计核准”里程碑上到达了终结点。项目设计包含功能 规定文档、每种角色职能组的计划组合(如在 msf 组队模型中定义的开发、测 试、用户教育、系统实施、程序管理和产品管理)和时间进度安排。功能规定 提供给项目组足够的细节情况确定需要的资源并作出承诺。在项目设计核准里 程碑上,客户和项目组在要交付的内容上及如何进行构建达成一致。这是一个 重新评估风险、建立优先级和对时间进度和资源调配情况做最终估计的非常重 要的机会。 开发阶段(范围完成里程碑)开发阶段(范围完成里程碑) 开发阶段在“范围完成”里程碑上到达了终结点。经过核准的功能规定和 相关的项目计划提供了开始开发的基线。开发组设置了一系列内部交付的里程 碑,每个内部里程碑都要经过全部的测试/诊断/排错的过程。在这个里程碑上客 户和项目组评估产品的功能,验证产品过渡和支持计划。同样在这个里程碑上, 所有新功能的开发都已经结束,推迟开发的功能记录下来作为下一个版本功能 的参考。 稳定阶段(发布里程碑)稳定阶段(发布里程碑) 稳定阶段在“产品发布”里程碑上到达了终结点。测试工作是伴随着代码 开发工作进行的,在稳定阶段因为集中注意力于寻找错误和修改错误,所以测 试活动成为主要的工作。在产品发布里程碑,产品正式转交给操作和支持组。 通常情况下,项目组或者开始下一个版本的产品开发,或者拆散加入其它的项 目开发组。 部署阶段(部署完成里程碑)部署阶段(部署完成里程碑) 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 15 - 部署阶段在“部署完成”里程碑上达到终结点,需要在这个阶段把解决方 案稳定的部署到用户设备上,使产品运转起来,争取获得最终用户的认同。部 署完成后,团队需要把整个项目产品演示一遍,并且进行用户满意度调查。 2.3.3 rup 过过程模型程模型 rup 是迭代的开发过程,一个生命周期包括多个迭代,每个迭代都是一个 活动的松散的顺序集合。需求,分析设计,实现,测试,部署五个活动在每个 迭代中占不同的比例,这个比例是由该迭代处于开发周期的哪个阶段决定的, 可以把每次迭代看成是一个小型的瀑布模型。如下图所示,横轴通过时间组织, 表示每次迭代;纵轴以内容来组织为,表示在一个迭代中所要进行的活动。 可以看到每个活动在各个阶段中都有参加,只是所花精力不同,这是和瀑 布模型不同的。这种迭代模型的实现在很大程度上提供了及早发现隐患和错误 的机会 2.3.4 rup 的各的各阶阶段段 rup 中的软件生命周期在时间上被分解为四个顺序的阶段,分别是:先启阶 段(inception)、细化阶段(elaboration)、构造阶段(construction)和产品化 阶段(transition)。每个阶段结束于一个主要的里程碑(major milestones), 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 16 - 每个阶段本质上是两个里程碑之间的时间跨度,在阶段的结尾执行一次评估以 确定这个阶段的目标是否已经满足。如果评估结果令人满意的话,可以允许项 目进入下一个阶段。 先启阶段先启阶段 先启阶段的基本目标是实现项目的生命周期目标中所有相关因素(如客户 等)之间的并行。 先启阶段主要对新的开发工作具有重大意义,新工作中的重 要业务风险和需求风险问题必须在项目继续进行之前得到解决。对于重点是扩 展现有系统的项目来说,先启阶段较短,但其重点仍然是确保项目值得进行而 且可以进行。 以生命周期目标为这一阶段的里程碑,用来评估项目的基本可行性。此时, 检查项目的生命周期目标,并决定继续进行项目还是取消项目。 精化阶段精化阶段 精化阶段的目标是建立系统构架的基线,以便为构建阶段的主要设计和实 施工作提供一个稳定的基础。构架是基于对大多数重要需求(对系统构架有很 大影响的需求)的考虑和风险评估发展而来的。构架的稳定性是通过一个或多 个构架原型进行评估的。 它以生命周期构架为里程碑,为系统构架建立管理基线,并使项目团队能 够在构建阶段调整规模。此时,要检查详细的系统目标和规模、选择的构架以 及主要风险的解决方案。 构建阶段构建阶段 构建阶段的目标是阐明剩余的需求,并基于已建立基线的构架完成系统开 发。构建阶段从某种意义上来说是一个制造过程,在此过程中,重点在于管理 资源和控制操作,以便优化成本、进度和质量。从这种意义上说,从先启和精 化阶段到构建和产品化阶段,管理上的思维定势经历了从知识产权开发到可部 署产品开发的转变。 它以最初操作性能为里程碑,确定产品是否已经可以部署到 beta 测试环境。 在最初操作性能里程碑,产品随时可以移交给产品化团队。此时,已开发了所 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 17 - 有功能,并完成了所有 alpha 测试。除了软件之外,用户手册也已经完成,而 且有对当前发布版的说明。 产品化阶段产品化阶段 产品化阶段的重点是确保最终用户可以使用软件。产品化阶段可跨越几个 迭代,包括测试处于发布准备中的产品和基于用户反馈进行较小的调整。在生 命周期中的该点处,用户反馈应主要侧重于调整产品、配置、安装和可用性问 题,所有较大的结构上的问题应该在项目生命周期的早期阶段就已得到解决。 产品化阶段末是第四个重要的项目里程碑,即产品发布里程碑。此时,确 定是否达到目标,以及是否应该开始另一个开发周期。有时候,该里程碑可能 与下一周期的先启阶段重合。产品发布里程碑是项目验收复审成功完成的结果。 2.3.5 项项目目应应用用 2.3.5.1 项项目特点目特点 虽然统计局提供了一份全面的书面需求,对各个模块都有提及,但是仍存 在许多会发生变化的方面,如 由于第一次采用中央为资源中心,地方为教育中心的两级模式,所以对资 源的分发只提有建设性的意见,会根据在实现时遇到的困难而有所变化。 对于新的模块实时课堂,只有一个大致的构想,需要设计人员根据现 实社会中的传统课堂设计出一套完备的系统,做出一个原型后再由统计局 提出修改意见。 在界面方面有基本色调和界面风格的要求,也会根据不断的反馈而进行修 改 另外由于统计局给出需求较细,而且涉及统计局内部的某些流程,难免会 有不能理解的地方,而且过细的需求使得项目设计者发展的余地较小,在真正 实现和使用过程中,会存在一些不可预知的问题,也会引起需求的变化,因此 在整个开发过程中都需要与用户保持联系,及时解决对需求理解和协调上问题。 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 18 - 同时项目要求的时间紧,造成开发周期短的困难,需要在四个月之内完成 所有的功能,并能交付使用 2.3.5.2 团队特点团队特点 开发人员少开发人员少。平台主要开发人员只有七人,而且都为在校生,有其他学业 任务。而项目的任务重,涉及面广,需要的技术多。 开发人员分散,流动性较大,人员变动较快。开发人员分散,流动性较大,人员变动较快。开发组主要由泰达,南开本 部,北京公司三个小的开发组构成,而且人员有可能产生变动,具有较大 的不确定性,事实上,在后来的开发过程中,北京的小组由于出现某些严 重问题,被集体解雇,造成泰达开发小组需要对他们负责的模块进行改造 或重写。而且在开发的早期,由于我们设计的 webraid(项目管理平台) 软件还未完成,使得异地开发组之间沟通交流不畅,只能用邮件,即时消 息的方式进行沟通、整合,因此在交流中会产生一些误会,影响开发进度。 同时客户与开发人员不在同一个城市,与客户的交流难度也相对较大。 开发预算少。开发预算少。需要自己编写几乎所有组件,加重了开发任务,例如及时消 息模块,讨论区模块等。 项目管理经验不丰富。项目管理经验不丰富。项目组中的几乎所有开发和管理人员均是第一次接 触大项目,没有经验可言,只能靠技术管理文档加自己的理解,在老师的 指导下进行,因此在项目的进行过程中会由于管理问题,对需求考虑不周 全出现一些反攻,减慢开发进度。 开发所用技术新。开发所用技术新。这些新技术从本质上提高了系统的先进型和稳定性,但 由于是第一次尝试,因此开发中伴有学习的过程,会产生一些不可预见的 问题。还因为这些技术中有一部分还不成熟,而且不存在任何这方面的参 考资料,需要开发人员自己摸索,这样也减缓了开发进度,增加了开发的 难度。 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 19 - 2.3.5.3 应用模式应用模式 综合以上项目和团队的特点,可以发现传统的瀑布模型是绝对满足不了开 发要求的,然而由于项目要求时间短,影响重大,需要对项目做充分的测试, 完全的螺旋模型又显得过于费时并且容易使项目失控,因此需要按照一种结合 两者优点的生命周期去开发,我们发现 msf 框架中提供的分版本的软件过程和 rup 阶段迭代的思想都是能很好的满足该项目的需要, 它们都是基于迭代的开发,在每个迭代中,各个活动都会进行,能够提供 和用户充分交流的机会。 需求的变化只用在下一个迭代中加入变化即可,不影响其他部分的开发, 不会造成大规模的反攻。 在每个迭代中都有测试,因此能及时发现已有部分的问题进行改正,不用 积压到项目后期才进行测试,降低了风险。 不同阶段的不同活动可以在同时并行处理,如一个模块在开发的时候,另 一个模块可以进入设计阶段,而第三个模块则可以正在测试,这样提高了 效率,节省了时间,也适应了项目组人员分散的特点。 一个活动结束有良好的里程碑标准,提高了项目的可控制性和稳定性 我们在实际的开发过程中就是遵循这样的一个迭代并行的过程模型进行的, 用系统工程的方法来解决软件工程的问题,将整个工程看成是一个自适应控制 系统,在整个开发过程中,都和客户保持着密切的联系,并把这种联系制度化, 几乎每天向北京公司发进度报告,并且频繁的向客户汇报工作,做功能演示, 重视每次反馈的结果,不管是表示认同还是要求改变。不会长时间堆积,到了 问题严重的时候才和客户交流。例如我们从项目开始时的构想阶段,提出分版 本实现网络和卫星两种传输资源的方式,到计划阶段的三方人员的职责,进度 安排,交付时间确定,再到开发阶段,几次内部的里程碑时,给客户的做的演 示,客户不断提出修改意见,直到最后客户对功能和界面的基本满意,这些里 程碑都是在和客户充分交流后确认的,而不是我们自己闭门造车。 除了在里程碑时和客户的面谈外,我们还通过电子邮件,电话的形式在开 发过程中随时交流,出现了需求上的理解问题及时向用户询问,例如在证书管 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 20 - 理部分,对于何时可以颁发证书的限定;计费管理部分,何种情况下可以把预 修的学生转为正式学员,等等,这些问题几乎都能在 24 小时内解决。 同时对于需求中不太合理的部分,也和用户进行了充分的讨论,某种程度 上修改了需求,使之更加符合实际,如教材的订单管理中的参考订单的概念, 过于抽象,后来通过协商把它取消了,替代以对一个订单进行操作,而使得同 一个功能不在两个操作中出现,使用户混淆。 我们还不断接受客户对已有部分的修改意见,使得产品尽可能早的符合客 户的要求,风险降低。例如平台的界面,在每次演示的时候都按用户的意见进 行了改正,最终实现了一个用户满意的界面。 另外我们的设计、开发、测试是同步进行的,参照 rup 过程模型,不同角 色的人在同时进行工作,能够方便沟通,互相解答疑难,使设计的构架能尽可 能快捷的被实现。及时的测试也使系统更加稳定,错误在尽可能早的时候被解 决。我们的整个开发过程充分的遵循了这个尽早发现错误的原则,在每个阶段 都尽可能的发掘问题,解决问题,以使排错的成本降至最低。 2.4 团队模式团队模式 高效项目组的特点高效项目组的特点 一个高效的项目组能够赋予项目组成员权力、并明确他们的责任。明确的 责任与权力会消除获得成功过程中的障碍,并使项目组成员专注于自己的工作 目标。高效的项目组能够保证项目的目标和进度可以达到。每个项目组中的成 员根据他所负责的任务进行时间、进度的估计和安排。项目组中的每个成员都 需要理解客户和最终使用者的需求,这样他们就能够基于使用者和客户的期望 作出良好的决策。 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 21 - 2.4.1 msf 角色集角色集 msf 团队模型定义了相互依赖、相互协作、同等角色关系的工作模型。每个 组中的成员在项目中都有一个明确定义的角色,并且关注于一种特定的任务。 这种方法加强各个角色的责任感,最终结果是产生更好的产品。每种角色小组 的领导者负责管理、指导和协调,小组中的成员专注于执行他们的任务。基于 项目的大小,每个角色被分配给一个人或是有人领导的一个小组。同样,一个 人也可以承担多种角色。在一个成功的项目组中,每个成员都要感觉到对产品 的质量负有责任。不能出现由一个小组成员代表另一小组成员对质量负责的情 况,每个小组成员都是客户利益的维护者。 msf 组队模型描述了六种基本的角色(程序管理、产品管理、开发、测试、 系统实现和用户教育) ,他们构成一个同等重要的环形结构,如图所示。 产品管理角色:产品管理角色: 产品管理负责为产品或服务确定一个方向,获取并量化用户的需求,开发、 维护商务关系和商业环境,并管理客户的期望值。 这种角色的目标是确保清晰地表述客户的期望值,并使其为项目组所理解, 而且使功能规定与客户的业务优先级相吻合。产品管理负责项目的高层次交流 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 22 - 和协调,如商务立项、项目费用、合同谈判、演示,以及产品定位产品管理部 门需要 程序管理角色:程序管理角色: 程序管理的任务是控制决策各种因素,以保证在合适的时间推出合适的产品。 同时程序管理创建功能规定文档,并将它作为如何实施产品或服务的一种决策 工具。最后程序管理将面对,使产品或服务与组织标准和操作目标相一致的日 常协调工作。 程序管理是一个关键的交流与协调的角色。基于前景陈述文档,程序管理勾 画出并维护功能定义。程序管理负责所有与分析、定义和系统结构相关的活动。 在开发人员的配合下,程序管理必须确保功能需求在现有的资源下,技术上是 可以实现的。 开发者角色:开发者角色: 开发者的任务是构造或实现一种满足规定和用户期望的产品或服务。 开发这种角色是用于交付一个完全服从讨论过的功能规定的系统。这种角 色很重要的一个方面就是积极地参与构建功能规定的过程。与瀑布式过程模型 中的开发继承功能规定的方式相反,msf 组队模型中开发组的负责人与程序管 理一起工作,共同构建模型,提供技术解决的方法,探索设计中的各种选择。 当功能规定成为基准线后,开发角色开始承担负责开发时间计划的责任。 测试角色测试角色 测试的任务是保证产品或服务交付之前,能够发现所有存在的问题。 测试 要准备测试计划、测试规定和测试案例。在软件项目中,测试必须针对所有的 接口,包括用户界面和软件功能等各方面。将新软件集成到现行系统时也必须 进行回归测试。开发人员通常开发自动测试脚本,这样在他把代码提交给测试 人员以前,就可以使用这些脚本对自己的代码进行测试。 测试这种角色必须独立于开发才是真正有效的。测试不仅是包含代码上的, 还应用在功能规定、系统的性能、用户界面和实施计划上。 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 23 - 用户教育角色用户教育角色 用户教育的任务是通过方案演示和系统培训,最大可能性地使系统的使用 者得到相关产品和服务的价值。用户教育的第二个任务是通过使产品更容易理 解和使用,降低系统技术支持的费用。 作为使用者利益的倡导者, 用户教育参与系统和用户界面原型的设计和构造, 也包括熟悉程序的安装过程。用户教育还要开发伴随系统的打印文档或电子联 机文档。如果需要的话,用户教育还需准备并交付系统的培训材料。 发布管理角色发布管理角色 发布管理的任务是确保产品平稳地过渡、安装和移交到产品操作和技术支持 组手中。他负责将实验室的产品商品化,变成实际可以运行的商品,达到最初 制定的商业目的,取得商业效益。 这项工作在以往做的小项目中可能比较简单,因为实验室的环境可能和实际 环境差别不大。而在大项目中却不同了,实验室环境可能十分简单,而实际环 境却非常复杂,比如分布式环境、防火墙限制等,因而将实验室产品运用到实 际环境中是一项非常重要的工作。这项工作没有完成好, 往往使整个项目前功 尽弃,功亏一篑。 其他团队成员其他团队成员 除了前面提到的角色外,一个项目团队还可能需要其它人员来扩展其中的 角色。这些辅助支持的角色包括: 项目的发起人:负责项目的发起和项目最后的验收 用户(或商业发起人):客户方的负责人,需要这个项目的人,并能从中得到 好处 最终用户:直接使用产品的人 操作人员:产品部署后,负责维持产品日常正常运转的操作人员 2.4.2 rup 角色集角色集 rup 是软件过程模式,它自己没有提出团队模型的概念,但是它的开启, 第二章 项目管理中生命周期的研究与选择:msf 和 rup - 24 - 精化,构建,产品化四个阶段的划分决定了进行这样模式需要的多个角色集 分析师角色集分析师角色集:围绕需求进行分析,但是在项目的不同方面,分析的内容 也不同。 首先由系统分析员(syste

温馨提示

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

评论

0/150

提交评论