毕业论文高校实验教学安排管理系统设计.doc_第1页
毕业论文高校实验教学安排管理系统设计.doc_第2页
毕业论文高校实验教学安排管理系统设计.doc_第3页
毕业论文高校实验教学安排管理系统设计.doc_第4页
毕业论文高校实验教学安排管理系统设计.doc_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

软件工程项目管理研究与实践 高校实验教学安排管理系统摘 要当今软件开发的主要问题,不是技术问题,而是管理问题。软件工程项目管理在每个软件项目开发中起着关键的作用。项目的成败,即是否符合项目的预算和进度,通常与项目管理者的有效工作有着直接的关系。众所周知,软件开发中有太多的不可预知性。但这种不可预知是对总体来说的,当软件进行到一点程度时,不可预知的东西就会变成可预知的东西。以往的做法是不去管理它,这样所带来的就是项目的失败。要是有好的管理方法就可以控制这些不可预知的东西,软件项目就会一步步随着的设计思路走向成功。项目管理的最终目标是交付一个高质量、符合合理进度和成本的产品。承担实验教学、毕业设计等任务的实验室(中心)是进行实践教学环节的重要阵地,高校实验教学安排管理系统主要是为了解决高校实验室当前存在的排实验难、调实验难、学生预约实验难等问题。由于此系统是面向全校所有实验室,而每个实验室存在的个性化差异又很大,所以如何保证需求,同时又能保证进度和质量,是此系统开发的关键所在。由于这些难点的存在,增加了系统项目管理工作的难度,造成了此类系统开发的难度。本课题研究的内容是:如何运用软件工程理论对高校实验教学安排管理系统进行跟踪、监控和度量项目过程进行管理,从而保证高校实验教学安排管理系统按进度高质量的完成、交付、使用。关键词:实验教学,项目管理,软件工程,软件开发RESEARCH AND PRACTICE OF SOFTWARE ENGINEERING PROJECT MANAGEMENTABSTRACTThe main problem of todays software development, is managerial problem, rather than a technical problem. Software engineering project management plays a key role in each software project development. The success of the project, namely, whether meets the project budget and schedule or not, usually directly related to project managers effective working . As we all know, software development has too many unpredictable factors. But these unpredictable factors are on the whole, when the software to the point, the unpredictabilities will become predictabilities. Previous practice is not to manage it, what result in the failure of the project. Excellent management can control these unpredictable things, the software project will be successful with the original design idea of the step by step. The ultimate goal of project management is to deliver the product, which is a high quality, meeting the reasonable progress and cost . It is important for the laboratory or laboratory center to take up experimental teaching、Graduation Project and other tasks .Experimental teaching management system is mainly to solve the existing problems in universities laboratories: difficult to arrange experiments, hard to adjust experiments, and hard to order experiment for students . As the system is for all s laboratories, each laboratorys individual difference is obvious, how to ensure the demand while ensuring the progress and quality, is the key of the development. The existence of these difficulties increased the difficulty of project management , resulting in the difficult development of such systems.The content of the research is how to use software engineering theory to track, monitor and measure the process of Experimental teaching management system, to ensure the system accomplish, delivery, and use of.high-qualityKEY WORDS:experiment teaching, project management, software engineering, Software Development目录 前言1第1章 课题介绍21.1 系统背景21.2 课题研究内容21.3 系统功能31.4 项目管理难点3第2章 项目管理概述52.1 项目的定义52.2 项目生命周期52.3 项目管理的定义62.4 常用的项目管理技术62.5 项目管理过程组72.6 项目管理过程组与项目生命周期8第3章 软件项目管理93.1 软件项目管理定义93.2 软件项目管理特点93.3 软件生存周期模型103.4 软件项目管理现状11第4章 软件项目管理实践134.1 总体思路134.2 几个重要概念144.3 项目立项154.3.1 工作内容154.4 项目策划154.4.1 工作内容154.4.2 重要意义164.4.3 整体处理流程164.4.4 主要职能划分174.4.5 工作分解结构(WBS)184.4.6 质量保证计划194.4.7 风险管理计划204.4.8 沟通管理计划224.5 项目执行244.5.1 工作内容244.5.2 总体流程244.5.3 团队建设254.5.4 质量保证264.5.5 风险管理284.5.6 沟通管理284.6 项目监控284.6.1 工作内容284.6.2 总体流程294.6.3 意义304.6.4 进度监控304.6.5 项目资源314.6.6 风险监督314.6.7 沟通监督314.7 项目结项324.7.1 工作内容324.7.2 具体处理32结论33参考文献34致谢36前言随着信息技术的飞速发展,计算机软件产品的规模和复杂度也随之增加。个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。与此同时,软件项目中“项目黑洞”也应运而生,项目无法按期完成、项目合作方的工作难以协调、用户需求经常变动、工作质量难以保证,这种情况说明了软件项目开发及管理过程中存在着许多的问题,需要更多的重视和研究。软件项目管理作为一种科学的管理手段,就是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员,进度、质量、风险等进行分析和管理的一系列活动。软件行业是一个极具挑战性和创造性的新行业,管理上没有成熟的经验可供借鉴而软件项目管理应该说对于软件企业,尤其是那些以应用开发与系统集成为主的软件企业,没有行之有效的管理方法。因此,决定一个软件项目实施成功与否,软件项目管理无疑起着举足轻重的作用。高校实验教学安排管理系统面向的用户群体庞大,需求复杂,如何做好项目管理工作,是保证系统高质量交付的关键。针对上述问题,通过学习项目管理知识,结合高校实验教学安排管理系统的需求,研究了项目管理在系统开发中的应用。介绍项目管理的相关概念和项目管理的一般过程。依据软件项目目标软件产品、项目范围、开发环境约束等方面的不同,采用适合系统自身的管理方法、管理过程以及取得的效果。本文在第一章对研究的课题进行了介绍,第二章对项目管理的相关知识进行了介绍和说明,第三章对软件项目管理的知识做了介绍,第四章介绍了项目管理在系统中的实践。第1章 课题介绍1.1 系统背景目前各高等院校为满足本科教育教学工作纷纷构建了网上教务管理系统,教学安排管理系统不仅在本科教育教学过程中发挥了至关重要的作用,而且对教育教学改革也起到了支撑促进作用。然而近年来越来越多的高校特别是理工科高校逐渐清醒的意识到以实验教学为主的实践教学在以往的教育教学工作中起到的作用还不够。一方面是由于历史的原因造成的,许多高校在实验教学条件上的投入无法满足日益增加的招生规模;另一方面,高校在迎接教育部评估过程中过于重视理论教学中各个环节中的教学资料的规范和标准,而实践教学仅仅被作为众多评估的教学环节之一。新一轮的工科专业工程专业认证将把重点放在学生实践动手能力和解决工程问题的能力上,这就要求参加专业认证的高校必须重视以实验教学为主的实践教学活动,也说明了实验教学将起到越来越重要的作用,在整个教育教学活动中将占有其应有的重要地位。那么构建高校实验教学安排管理系统将起到重要的基础作用。而经过对高等院校实验教学管理信息化程度的调查研究发现:目前高校实验教学方面普遍存在的是单个实验室用的信息系统,甚至停留在纸质的方式;目前还没发现某个高校有统一的网上排实验和网上实验运行的系统。一方面原因是各实验室实验管理(主要是排实验)的模式和情况各具特点,无法统一。另一个原因是实验室、教师和学生用户在网上排实验、预约实验和查实验,带来大量的并发访问,而最频繁的查询的目标数据量较大,因此很可能超出服务器响应和处理能力。1.2 课题研究内容目前高校的实验教学管理已经到了亟待提高现代化、科学化、规范化管理水平的地步,高校实验教学质量监控必须向前推行。针对以上问题,构建高校实验教学安排管理系统将起到重要作用。但是由于目前许多高校对这方面还处于研究和初步开发阶段,缺少对此类项目的管理工作借鉴,再加上实验教学安排管理系统的特殊性;如何做好项目的管理工作,决定着系统构建的成败。本课题研究的内容就是,如何将项目管理知识灵活运用到实验教学安排管理系统中,从范围、进度、质量、风险等多方面控制系统的开发,从而保证项目能高质量交付。1.3 系统功能系统面向的用户是教务处实践科、实验室、教师(含任课教师和实验指导教师)和学生。系统主要功能是排实验,排实验分为由实验室排和由教师排,排实验后学生需要预约实验并查看实验安排。教务处实践科对全校各实验室的实验运行情况进行监控,并负责教学任务的导入和实验大纲的维护工作。每个用户的角色和功能各不相同,为了使各用户之间协调完成各自工作,系统设置了管理员、实验室、教师、学生四个平台。四个平台使得四种用户的分工明确,共同完成实验教学活动。1.4 项目管理难点从项目管理的角度,实验教学安排管理系统存在以下几个管理难点:1. 需求保证。高质量的需求分析是软件项目成功的关键因素,另外本系统面向的用户群体是教务处、全校的各个实验室、教师、学生四种用户,再加上每个实验室运行模式存在各种差异;因此,如何获得尽可能全面的需求是此项目管理过程中的第一个难题。2. 变更控制。所有问题都不能绝对化的。软件开发的特点,加上本系统面向的用户群体的庞大和差异,决定了在需求阶段各种各样的需求会被忽略和隐藏。因此,在系统设计的初期还要预测到可能存在的需求变动,允许系统在开发的每个阶段一定范围内的需求变动。3. 质量管理。质量管理作为项目管理的一部分,具有非常重要的地位。项目质量管理的目的是通过执行项目质量管理过程和使用一些基本项目管理工具和技术来有力保证软件产品的质量。本系统需求的复杂和差异性决定了质量管理的难度。4. 进度监控。进度监控是每个软件项目关注的问题。本系统要在一学期内完成,以便投入下学期的使用。开发小组成员对于项目管理知识要么缺乏要么不够重视,再加上系统潜在的需求,任务延期时及其有可能频繁发生的;因此合理的进度监控也决定了本系统的成败。第2章 项目管理概述2.1 项目的定义项目是一个特殊的将被完成的有限任务,它是在一定的时间内,满足一系列特定目标的多项相关工作的总称(C-PMBOK 2006)。此定义包含三层含义:1. 项目是一项有待完成的任务,有特定的环境与要求,即项目是指一个过程,而不是指过程终结后所形成的成果。2. 在一定的组织机构内,利用有限资源(人力、物力、财力等)在规定的时间内完成任务。3. 任务要满足一定性能、质量、数量、技术指标等要求。项目作为一类特殊的活动,所表现的主要特性是:1. 一次性:指这次任务完成后,不会再有与此完全相同的另一个任务。2. 目标的明确性:项目作为一类特别设立的活动有其明确的目标。3. 整体性:项目是一系列活动的有机组合,从而形成一个特定的、完整的过程。4. 不确定性:项目目标虽然明确,但达到目标的途径并不完全清楚。5. 临时性:当项目目标达成时,或项目因不会或不能达到目标而中止时,或当项目需求不复存在时,项目节结束了。但是临时性并不意味着短暂性。6. 开放性:绝大多数项目都是一个开放系统,项目的实施要跨越若干部门的界限。2.2 项目生命周期项目作为一种创造的独特产品和服务的一次性活动是有始有终的。把每一个项目划分成若干个阶段,以便有效地进行管理控制,并与实施该项目组织的日常运作联系起来,这些项目阶段和在一起称为项目生命周期。项目生命周期是通常按顺序排列而有时又交叉的各项目阶段的集合。在项目的整个生命周期中,可以根据项目的具体情况划分为N个阶段来执行,每个阶段也可以成为项目过程。国际上通常把项目的生命周期划分为四个阶段:C概念阶段:主要任务是提出并确定项目是否可行。D开发阶段:为可行项目做好开工前的人、财、物及一切软硬件准备。E实施阶段:按计划启动实施项目。F收尾阶段:项目结束的有关工作。2.3 项目管理的定义项目管理就是以项目为对象的系统管理方法,通过一个临时性的专门的柔性组织,对项目进行高效率的计划、组织、指导和控制,以实现项目全过程的动态管理和项目目标的综合协调与优化(C-PMBOK 2006)。实现项目全过程的动态管理是指在项目的生命周期内,不断进行资源的配置和协调,不管做出科学决策,从而使项目执行的全过程处于最佳的运行状态,产生最佳效果。项目目标的综合协调与优化是指项目管理应综合协调好时间、费用及功能等约束性因素,在相对较短的时期内成功地达到一个特定的成果性目标。项目管理的最大特点是项目管理注重于综合性管理,并且有严格的时间限制。项目管理必须通过不完全确定的过程,在确定的期限内生产出不完全确定的产品,日程安排和进度控制对项目管理产生很大的压力。2.4 常用的项目管理技术常用的范围管理的技术有:工作分解结构(Work Breakdown Structure,工作分解结构),时间管理技术有:甘特图(Gantt Chart)、网络图(network Diagram)、关键路径法(Critical Path Method),范围管理的技术有:工作分解结构(Work Breakdown Structure,工作分解结构)。工作分解技术(WBS):WBS是一种以结果为导向的分析方法,用于分析项目所涉及的工作,所有这些工作构成了项目的整个范围。它是项目范围管理中的技术,也是进行成本、资源的估计的基础。甘特图(横道图) :项目进度计划通常采用横道图或网络图来表示。横道图又称甘特图。它以一段横向线条在带有时间坐标的上的位置来表示各项工作的起始、结束时间和工作的先后顺序,整个进度计划都由一系列的横道组成。网络图:网络图是非常有用的进度表达方式。一般情况下根据WBS编制网络图。在网络中一个活动用一个方框表示,每一个活动都被各种关系连接,将项目中各个活动的逻辑关系表示出来,从左到右画出各个任务的时间关系,便形成了网络图。2.5 项目管理过程组项目管理设计多方面的工作,整个项目管理包含大量的工作环节、过程。项目管理可以分为五个不同的管理过程组:1. 项目立项:确定并核准项目或项目阶段。2. 项目策划:确定和细化目标,并为实现项目目标和完成项目要解决问题的范围而规划必要的行动路线,做好技术组织准备。3. 项目执行:将人与其他资源结合,整体实施项目管理计划。4. 项目监控:定期测量并监控绩效情况,及时发现偏离项目管理计划指出,在必要时采取纠正措施,以保证实现项目目标。5. 项目结项:正式验收产品、服务或成果,并规范地结束项目或项目阶段。五个过程组的相互关系图如图2-1所示。图 2-1 五个过程组的关系项目管理是一种综合性工作,要求每一个产品过程都同其他过程恰当地配合和联系,以便彼此协调。在每一个过程中采取的行动通常会对这一过程和其他相关过程产生影响。项目管理的方法不止一种,在项目期间,人们应该在项目管理过程组及其所含过程的指导下,恰当地应用项目管理知识和技能。2.6 项目管理过程组与项目生命周期项目管理的五个过程组在一个项目生命周期的不同阶段反复进行。这五个过程不是运行一次就完结,而是多次循环进行,一部分的结果成为另一部分的依据。第3章 软件项目管理3.1 软件项目管理定义从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展。3.2 软件项目管理特点由于软件具有逻辑复杂、快速演化、易于修改、难以度量、正确性难以验证等特点,使得软件项目不同于一般的工程项目,表现出显著的独特性。这些独特性主要表现在以下三个方面:1. 过程复杂在软件开发中,软件过程具有非常重要的意义,直接影响到软件生产的效率和软件产品的质量。要管理的并不只是软件产品开发的活动序列,而是软件开发的最佳实践。它包括流程、技术、产品、活动间的关系、角色、工具等,是软件开发过程中各个方面的因素的有机结合。2. 成本和进度估计困难项目计划的主要内容包括对工作量、成本、开发时间的估计,以及根据估计值制定和调整项目组的工作。由于软件是纯知识产品,其工作量、开发进度、成本很难估计和度量,生产效率也难以预测和保证。3. 人力资源管理重要性高、难度大在考虑各种软件开发资源时,人是最重要的资源。对人员的配置、调度安排贯穿整个软件过程,人员的组织管理是否得当,是影响软件项目质量的决定性因素。如何激励员工充分发挥创造力,提高员工的能力,并对员工进行公平公正的考评成为软件项目管理中得一个值得关注得问题。3.3 软件生存周期模型软件生存周期模型是从软件项目需求定义直至软件经使用后废弃为止,跨越整个生存周期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。下面介绍四种常用的软件生存周期:瀑布模型、增量模型、螺旋模型、喷泉模型。1. 瀑布模型瀑布模型是将软件生存周期各个活动规定为自上向下,按照线性顺序连接的若干阶段的模型,如图下图所示。该模型支持结构化的设计方法,但它是一种理想的线性开发模式,缺乏灵活性,无法解决软件需求不明确或不准确的问题。实际运用中可以灵活运用瀑布模型。图 3-1 瀑布模型2. 增量模型增量模型是一种非整体开发的模型。软件在该模型中是“逐渐”开发出来的。该模型有较大的灵活性,适合于软件需求不明确、设计方案有一定风险的软件项目。3. 演化模型演化模型适合于以应用需求为驱动的软件开发,由一些小的开发步骤组成,每一步经历需求分析、设计、实现和验证,产生软件产品的一个增量。通过这些迭代,最终完成软件产品的开发。4. 螺旋模型螺旋模型是一种风险驱动的模型。将瀑布模型与演化模型结合起来,并且加入两种模型均忽略了的风险分析。螺旋模型适合于大型软件的开发,它吸收了软件工程“演化”的概念,包括需求定义、风险分析、工程实现及用户评估四个阶段,螺旋模型由上述四个阶段组成的迭代模型,迭代的结果必须尽快收敛到客户允许的或可接受的目标范围内。沿螺线自内向外每旋转一圈便开发出更为完善的一个新的软件版本。螺旋模型是软件开发的高级策略,不仅适合结构化方法且更适合面向对象方法。它的实施、管理和技术水平产生深远的影响,是最有前途的过程模型之一。5. 喷泉模型喷泉模型是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。喷泉模型对软件复用和生存周期中多项开发活动的集成提供了支持,主要支持面向对象的开发方法。系统某个部分常常重复工作多次,相关功能在每次迭代中随之加入演进的系统。其实,从全部模型来看,任何一个模型无外乎就是那几个步骤,和瀑布模型一样。所以不妨把其他的模型看成是根据瀑布模型转化来的。在瀑布模型的使用中,为了开发时的敏捷性,灵活性,不断地改进,于是就有了其他的模型。3.4 软件项目管理现状软件项目管理IT行业的一个富有创新意义的领域,是针对特定的项目需求,以团队运作的形式,有效地组织项目资源,通过对项目的管理和控制,实现项目的目标。在我国IT行业起步较晚,但发展迅速,项目管理在IT行业的应用还很不成熟,一般的、常规的组织管理方式已很难适应,这是软件开发中项目管理面临的最大挑战。1. 对项目管理认识和重视不够。项目经理或管理人员不十分了解项目管理的知识体系,所以在实际工作中没有项目管理知识的指导,完全依靠个人现有的知识技能,管理工作的随意性、盲目性比较大。2. 对项目的系统性把握不够。在软件企业一些项目管理人员对项目总体计划、阶段计划的作用认识不足。项目经理认为计划不如变化快,项目中也有很多不确定的因素,做计划是走过场,因此制定总体计划时比较随意,造成计划与控制管理脱节,无法进行有效的进度控制管理。因此,提高项目管理人员的计划意识,加强对开发计划、阶段计划的有效性,并进行事前事后的评估。3. 管理思想贯彻不到位项目经理如果没有从总体上去把握管理整个项目,而是埋头于具体的技术工作,造成项目组成员之间任务不均、资源浪费。在软件企业中,项目经理大多是技术骨干,技术方面的知识比较深厚,但无论是项目管理知识,还是项目管理必备的技能、项目管理必备的素质都有待补充和提高。同时由于工作分解结构设计的缺乏合理性,项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。因此加强项目经理在项目管理知识方面的培训和考核,引导项目经理更好地做好项目管理工作。4. 沟通的效率不高在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足,造成各做各事、重复劳动,甚至造成不必要的损失。在项目沟通管理方面:管理者要用70的时间用于与人沟通,而项目经理需要花费90或更多的时间来沟通。所以项目管理人员不但自己要把工作重点放在沟通上,而且要善于沟通,以提高沟通意识和沟通的效率。5. 对付风险的策略不成熟项目管理人员没有充分分析可能的风险,对付风险的策略考虑比较简单。有些项目管理人员没有充分意识到风险管理的重要性,对计划书中风险管理的章节简单应付了事,随便列出几个风险和一些简单的对策,对于后面的风险防范起不到一定指导作用。项目风险管理是对项目潜在的意外损失进行规划、识别、估计、评价、应对和监控的过程,是对项目目标的主动控制手段。因此通过学习项目管理知识,掌握风险识别、量化、对策研究、反应控制的工具和方法,加强对项目规划中风险管理计划的审核,提高项目组的风险管理意识。第4章 软件项目管理实践4.1 总体思路项目管理涉及多方面的工作,整个项目管理包含大量的工作环节、过程;项目全生命周期和项目每个阶段都需要有一个或多个相应的项目管理过程;但是项目管理过程不是项目阶段。项目管理过程不是一成不变地运用于所有项目,在实际工作中,管理过程随着组织环境的不同,专业领域的不同而需要做出调整。根据本系统的特点,采用瀑布生存周期模型,将实验教学安排管理系统分为需求、设计、编码、测试、交付五个阶段。从软件项目管理的角度分为将实验教学安排管理系统项目管理分为项目立项、项目策划、项目执行、项目监控和项目结项五个过程组。这五个过程组在项目中不是运行一次就完结,而是多次循环进行,一部分的结果成为另一部分的依据。每一个过程组不仅针对项目本身,也用来针对每一个阶段的管理。高校实验教学安排管理系统的总体管理思路可以用下图表示:图 4-1 本系统总体管理流程下面从这五个过程组对本系统的项目管理进行介绍。4.2 几个重要概念1. 里程碑:完成阶段性工作的标志,不同类型的项目里程碑不同。里程碑在项目管理中具有重要意义:首先,对一些复杂的项 目,需要逐步逼近目标,里程碑产出的中间“交付物”是每一步逼近的结果,也是控制的对象。如果没有里程碑,中间想知道“他们做的怎么样了”是很困难的。其次,可以降低项目风险。通过早期评审可以提前发现需求和设计中的问题,降低后期修改和返工的可能性。另外,还可根据每个阶段产出结果分期确认收入,避免血本无归。第三,一般人在工作时都有“前松后紧”的习惯,而里程碑强制规定在某段时间做什么,从而合理分配工作,细化管理“粒度”。2. 检查点:指在规定的时间间隔内对项目进行检查,比较实际与计划之间的差异,并根据差异进行调整。可将检查点看作是一个固定“采样”时点,而时间间隔根据项目周期长短不同而不同,频度过小会失去意义,频度过大会增加管理成本。常见的间隔是每周一次,项目经理需要召开例会并上交周报。3. 基线:指一个(或一组)配置项在项目生命周期的不同时间点上通过正式评审而进入正式受控的一种状态。基线其实是一些重要的里程碑,但相关交付物要通过正式评审并作为后续工作的基准和出发点。基线一旦建立后变化需要受控制。重要的检查点是里程碑,重要的需要客户确认的里程碑,就是基线。4. 评审:是确定质量活动及其有关结果是否符合计划安排,以及这些安排是否有效贯彻并适合于达到目标的有系统、独立的审查。通过质量评审,评价评审对象的现状对规定要求的复合型,并确定是否需采取改进纠正措施。评审活动贯穿整个软件生命周期。评审活动有多种方式,主要包括正式地评审和非正式地评审。在软件生命周期的任何时期都可以举行非正式评审,非正式评审意味着在评审结束无须做出结论性报告。5. 缺陷:评审中发现的与计划有差别的质量活动或相关结果。4.3 项目立项4.3.1 具体工作项目立项过程的持续时间一般很短,在本系统中,项目立项过程主要用来启动项目,通过项目启动的工作来定义初步范围、总体需求获取,并形成项目可行性报告和系统设计文档。具体来讲,我们做了以下几点:1. 确定系统面向用户。实验教学管理系统面向的用户是教务处、全校实验室、教师及学生。2. 确定系统目标。本系统的预期目标是完成一个实验室排课系统,服务对象覆盖所有基础、专业实验室(中心)的所有公共课和专业课的实验教学活动。3. 确定团队人员。在项目的启动阶段要确定团队参与人员,并组织所有成员参与项目的启动。参与本项目的成员有06级的三名同学和07级的六名同学。4. 确定系统开发环境(包括硬件和软件环境)。本系统采用B/S的开发模式,选取ASP.NET作为主要开发技术,Miscrosoft Visual Studio作为开发工具,数据库服务器选用MS SQL Server 2000;利用IIS发布网站。利用实验室开放的条件搭建团队开发环境。5. 系统总体功能需求的获取主要是老师与教务处人员共同商讨确定的。在开始新的阶段的时候,则需要项目负责人提交立项申请,经过老师审批同意才能开始新阶段的工作。在每个阶段开始时进行立项过程,有助于保证项目符合其预定的业务需要,验证成功标准。4.4 项目策划4.4.1 工作内容策划过程组明确项目总范围,定义和优化目标,为执行软件工程和管理软件项目制定合理的计划。项目管理计划作为策划过程组的输出,将对项目范围、时间、成本、质量、沟通、风险等方面作出规定。项目策划是一种具有建设性、逻辑性的思维的过程,在此过程中,总的目的就是把所有可能影响决策的决定总结起来,对未来起到指导和控制作用,最终借以达到方案目标。此过程的主要工作主要是根据项目章程、项目阶段计划选择合适的软件生存周期模型,进行需求的获取和分析,获得项目的WBS分解结构,对项目的全生存周期进行计划。可以归纳为:项目范围定义、进度计划、成本费用计划、质量计划、人力资源计划、沟通计划、风险管理计划和采购计划。4.4.2 对项目的意义项目策划有时被称为项目管理计划,有计划才能逐步实现,而策划又是比计划更切实际,更贴近客户的要求,在平衡客户要求方面起着关键的作用。它对项目管理的意义体现在以下几个方面:1. 使模糊的项目概念变得清晰明确。项目策划要解决的就是项目管理团队要做什么、怎么做、由谁来做、何时做的问题。将项目目标分解为一个个小目标,也有利于调动开发成员的积极性。2. 项目策划明确了项目目标和全面项目计划,有助于团队了解项目的重要性,以及项目对自己的要求,加强团队成员的责任感和对项目的认同感。3. 项目管理计划是度量和监控项目的基准。要制定有价值的策划,必须同时确认是否有足够的条件来执行。要明白策划原本就是为执行而拟定出来的。在执行的过程中,一切都会变得明确起来。4.4.3 整体处理流程项目策划过程组的主要内容就是任务的分解,并依据此计划对质量、风险等做出相应计划。输出是一些项目管理计划,是项目执行和监控的依据。整体处理流程如下图:图 4-2 项目策划流程4.4.4 主要职能划分在项目的开始,要为项目指定承担特殊任务的人员。以下用成员名字的首字母缩写代替每个成员。考虑到团队成员编程能力和经验的差异,06级同学比07级有更多的项目开发经验和编程能力,本系统主要职责划分如下:1. 06级一名同学负责系统架构搭建、代码重构和日常程序问题解决;并负责不定期为团队召开技术性会议。2. 06级另外一名同学负责数据库表的建立、字段变更以及数据的调优。数据库的每个变更都要由此同学审批通过。3. 07级同学主要是系统的编码工作,06级除了要执行自己特殊的任务外,也要参与到系统的编码工作中。本系统按平台划分为教务处、实验室、教师、学生四个大的功能模块。系统采用并行开发的模式。教务处平台、教师平台分别由一名06级同学和一名07级同学完成,;由于功能多且复杂,实验室平台由于功能多而复杂由一名06级同学和两名07级同学配合完成,;学生平台的需求和功能简单,由两名07级同学配合完成。4.4.5 需求获取由于本系统的用户群体庞大,在需求分析阶段,全面的需求获取是保证系统开发少走弯路的前提。在明确了整体功能的情况下,我们采用多种方法从不同角度获取每个平台的不同需求:1 向各个实验室发放调查表,从中了解核心需求。2 定期召集各个实验室负责人在教务处召开研讨会,从中了解个性化需求。3 在每一阶段开始之前召开由各个实验室参加的研讨会,展示界面原型,讲解功能,收集每个实验室的反映和意见。这个过程在每个阶段进行的过程中往往要反复进行多次。4 对于每一次的调查和会议,都有专门人员做好全程记录。5 每次的调查和会议之后,开发小组内要召开小组会议,整理需求,形成文档。并提出解决方案,形成解决方案文档。4.4.6 工作分解结构(WBS)创建工作分解结构就是把项目可交付成果和项目工作分解成较小的、更易于管理的组成部分的过程。创建WBS的过程非常重要,因为在任务分解的过程中,需要考虑项目的方面。本系统的任务分解采用Microsoft Project工具,设置项目的过程,分解任务,设置任务的属性,同时为任务分配资源。在创建WBS时要注意到几点:1. WBS一定要自上而下的分配任务。先从总的需求,再到模块功能,再细分到功能的每个实现。不要一开始就太关注某个细节,避免出现因为考虑不周到,对项目的某些功能进行遗漏。实验教学安排管理系统分为教务处、实验室、教师、学生四个平台,再任务分解时,先按平台分为四个大模块,再根据每个平台功能的不同分解小模块和小功能。2. WBS一定要有可操作性。只有具有可操作性,才能正确的预估时间。如果分解不够详细,可能最后整个项目的时间估计会出现很大偏差,如果估计过于详细,会浪费太多时间,在合适的阶段估计到该阶段需要的详细程度。实验教学安排管理系统的用户需求复杂,开发团队是由学生组成,每天的开发时间不能完全保证,这些因素决定了在进行WBS分解的时候要充分考虑需求和开发成员的时间,要做到对需求整体把握,对开发团队的时间安排有大致了解,这样做的任务分解才更加贴近实际。3. WBS最好分解不要超过一天为宜。时间太长,就没有实际的操作性,而且时间长,也说明问题分解的不够明白。本系统采用的分解时间为一个工作日(也就是一天)。4.4.7 质量保证计划软件产品质量的保证是软件项目管理的一个重要内容。软件项目的目标不仅仅是进度目标和成本目标,更重要的就是质量目标,质量直接决定了软件产品能否生存已经后续的升级和维护等工作量。项目策划和项目执行过程的每一个阶段都需要考虑质量。软件的质量属性很多,这些质量属性又可以分为功能性和非功能性两大类:1. 功能性质量要素:正确性,健壮性,可靠性。2. 非功能性质量因素:性能,易用性,安全性,可扩展性,兼容性,可移植性。非功能性需求是软件质量重要组成,是架构设计和软件产品化的重要考虑,但往往容易被忽视。但是并不是所有的质量属性都需要开发人员去改善,只有能够提高用户满意度和提高产品核心竞争力和价值的质量属性才值得花功夫去改善。质量保证计划主要是:识别和确定必要的作业过程,配置所需的人力和物力资源,以确保达到预期质量目标所进行的周密考虑和统筹安排的过程。制定质量保证计划采用的方法主要是根据系统目标和WBS,确定质量目标,创建评审任务,并设置评审对象、评审时间、负责人等信息。在实验教学管理系统中,质量目标的分解从两个角度展开:1. 从时间上展开,形成全过程控制。把整个项目要达到的质量要求和总体进度计划联系起来,在任务分解的在一个里程碑处,都要设置一个评审任务。按照进度要求,明确什么时候达到什么样的效果。实验教学管理系统参与评审的人员主要是项目负责人和教师,采用的评审手段有文档评审、技术评审、代码走查和测试检查。项目负责人在每个里程碑处都要做评审检查,并将评审检查结果反馈给老师和项目成员。在检查点处,项目负责人和教师都要做评审检查。2. 从空间上展开,实现全方位和全员质量目标管理。让全体成员掌握质量的重要性,把质量目标分解到项目实施的各个成员。从一开始就要求所有团队成员明白质量的重要性。4.4.8 风险管理计划任何项目都是有风险的,风险的大小很大程度上影响着项目的成败。因此,需要对风险评估的各项指标进行定义和维护,并根据其影响和发生的概率以及时间框架确定风险系数,跟踪项目的所有风险,必要时启动风险应对策略,以缓解对目标实现的不利影响。项目的风险管理计划主要是识别项目中可能的风险,并制定预防措施。在实验教学安排管理系统中,采用以下几个步骤建立风险管理计划:1 为研究风险确定风险设想。由于系统的开发者是本系统的用户群体中的学生,所以对学生平台的功能把握和风险预测比较准确。但却对其他三个平台的功能缺少把握,所以在策划过程要组织所有成员学习思考每个平台的工作流程,便于在开发阶段对系统功能有更深的认识,对风险预测更加清楚。2 识别风险。确定何种风险事件可能影响项目,主要采用的方法有:头脑风暴法、情景分析法。最常用的就是头脑风暴法。要求每个平台的开发人员在做编码之前要做出详细设计,对功能作深入思考,在这个过程中风险一般都能够暴露出来。3 项目风险估计。对已确认的风险,通过定量和定性分析方法测量其发生的可能性和破坏程度的大小。4 制定风险应对措施。针对风险估计的结果,为降低项目风险的负面效应制定风险应对策略和技术手段的过程。在本系统中,风险的提出者是负责人和每个平台的开发人员,项目负责人往往对系统有整体全局把握,而开发人员对每个详细功能有深入思考,所以风险的应对策略应该有项目负责人和风险提出人商量得出,然后由老师的确认。5 建立风险管理模板。首先要设定风险参数选项。这些参数的设定要依据本系统的特点,做出合理设置。选项设置如下:表 4-1 风险参数设置风险参数选项设置风险类别需求风险、产品规模风险、管理风险、技术风险、开发环境风险和人员方面的风险风险识别阶段项目立项、项目策划、项目监控、项目结项风险发生概率极不可能(1%20%)不太可能(20%40%)可能(40%60%)很可能(61%80%)近乎确定(80%)风险严重程度低、中、高、灾难预测发生阶段需求、设计、编码、测试、交付风险状态无、监控、处理中、已减轻、已转移、已避免、已关闭6 制定风险管理计划。对于发现的风险,要记录在案,在发现时提出计划应对策略。下图是记录的风险登记表的模板。表 4-2 风险登记表序号风险名称风险类别发生概率严重程度风险预防优先级预防措施应对措施责任人1功能点估计不精确产品规模风险90%轻度高加班加点追加资源2产品的估计在线活跃人数为500人产品规模风险30%严重中采用大型服务器追加服务器资源7与其它部门沟通不协调需求风险80%轻微中制定沟通管理计划立即与部门进行沟通4.4.9 沟通管理计划沟通管理计划是为了加强系统开发过程中团队之间的沟通,督促团队成员汇报自己的工作情况,便于项目负责人掌握项目进行情况和每个人的工作状况。在本系统中,制定了两类项目的沟通方式,一类是会议沟通,制定召开例会的频率,并形成会议记录。另一类是项目报告。制定这两种沟通方式的沟通频率和方式如下1. 每个项目成员每周填报任务完成情况,包括任务的完成百分比、已用工时、剩余工时以及遇到的问题等信息。日志由项目负责人审阅。2. 项目工作报告:项目负责人每双周填报项目当前所属阶段、项目进展情况、项目变更情况、项目成本情况、质量问题说明、风险问题说明等信息。在策划过程组,除了要制定好项目沟通的频率,还要为沟通建立统一的模板。1. 工作日志模板如下表格:表 4-3 工作日志模版项目名称周报编号报告周期负责人本周工作内容本周工作成果物本周工作问题及解决措施1、2、下周工作计划1、2、2. 项目工作报告模板如下表格表 4-4 项目工作报告模板项目名称周报编号报告周期项目阶段本周工作内容项目成员1项目成员2其他本周工作成果物下周工作计划项目成员1项目成员2其他4.5 项目执行4.5.1 工作内容项目执行是指正式开始为完成项目而进行的活动或努力的工作过程。由于项目产品(最终可交付成果)是在这个过程中产生的,所以该过程是项目管理应用领域中最为重要的环节。在这个过程中,项目负责人要协调和管理项目中存在的各种技术和组织等方面的问题。 项目执行过程要求组织项目成员全面采取行动执行项目管理计划,并积极应对多变的环境,处理问题,解决困难,完成项目。执行过程的工作内容如下:1. 团队建设。在完成项目目标的各类资源中,最重要的是人力资源。有了具备能力的项目团队,才有可能计划、实施、监控和完成项目。2. 项目管理计划的执行。计划的执行要做好以下几步:1) 制定详细的工作计划。详细工作计划是项目的执行计划。详细工作计划的工作内容是安排组成工作包的具体任务和活动时间。2) 执行质量管理计划。按照项目管理计划中设置的评审任务,执行对应的质量管理。3) 执行风险管理计划。根据策划过程组提出的风险,跟踪风险,采取措施应对风险。4) 执行沟通计划。依据设定的项目沟通周期,定期执行沟通,并对沟通结果做出检查,形成文档说明。4.5.2 整体处理流程项目执行过程的主要工作就是执行项目管理计划,对执行过程中发现的缺陷和不符合,要及时给出决策,做出相应处理。总体处理流程可以用下图来表示:图 4-3 项目执行总体流程4.5.3 团队建设与管理项目过程是柔性的、多变的,不同的人价值观不同,为人处世的方法、思考问题的方法不同,还有其它种种差异,人

温馨提示

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

评论

0/150

提交评论