高校实验室资源管理系统论文信息学院.doc_第1页
高校实验室资源管理系统论文信息学院.doc_第2页
高校实验室资源管理系统论文信息学院.doc_第3页
高校实验室资源管理系统论文信息学院.doc_第4页
高校实验室资源管理系统论文信息学院.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

目 录第一章 绪论1.1 国内外研究背景1.2 目前实验管理现状和问题1.3 实验室资源管理系统1.4 研究的内容目的和意义第二章 CMMI及其关键过程域2.1 管理需求2.2 软件系统开发策划2.3 配置管理2.4 软件测试第三章 基于需求管理的系统需求分析3.1 业务需求分析3.2用户需求分析3.3 功能需求第四章 基于CMMI的流程设计4.1 技术环境4.2各功能模块流程设计4.3软件项目跟踪和控制第五章 资源平台的配置管理5.1 数据库链接配置5.2管理需求变更实现功能扩展5.3 总结致谢参考文献摘 要本论文主要介绍了实验室开放网络管理系统的设计与实施方法,能够全面管理实验室的基本信息,针对实验室不同的时间段,以个人或班级,形式实现预约;能够跟踪实验预约后的具体实施情况,实现高校实验室开放网络的实验预定。进入二十一世纪以来, 实验室管理系统提出了愈来愈高的能力要求。CMMI是由美国卡内基梅隆大学软件工程研究所提出来一种可用于软件开发组织进行开发能力持续建设、提升开发系统质量的模型。本文针对CMMI如何在高校内部软件开发组织中应用进行研究。第一章 绪论1.1国内外研究背景CMM的成功促使其他学科也相继开发类似的过程改进模型,例如系统工程、需求工程、人力资源、集成产品开发、软件采购等等,从CMM衍生出了一些改善模型,比如:(1) SW-CMM (Software CMM) 软件CMM(2) SE-CMM (System Engineering CMM) 系统工程CMM(3) SA-CMM (Software Acquisition CMM) 软件采购CMM(4) IPT-CMM (Integrated Product Team CMM) 集成产品群组CMM(5) P-CMM (People CMM) 人力资源能力成熟度模型为了以示区别,国内外很多资料把CMM叫做SW-CMM。按照SEI原来的计划,CMM的改进版本2.0应该在1997年11月完成,然后在取得版本2.0得实践反馈意见之后,在1999年完成准CMM2.0版本。但是,美国国防部办公室要求SEI推迟发布CMM2.0版本,而要先完成一个更为紧迫的项目CMMI,原因是在同一个组织中多个过程改进模型的存在可能会引起冲突和混淆, CMMI就是为了解决怎么保持这些模式之间的协调。CMMI(Capability Maturity Model Integration)即能力成熟度集成模型,这是美国国防部的一个设想,他们想把现在所有的以及将被发展出来的各种能力成熟度模型,集成到一个框架中去。这个框架有两个功能,第一,软件采购方法的改革;第二,建立一种从集成产品与过程发展的角度出发、包含健全的系统开发原则的过程改进。就软件而言,CMMI是SW-CMM的修订本。它兼收了SW-CMM 2.0版C稿草案和SPA中更合理、更科学和更周密的优点。SEI在发表CMMI-SE/SW 1.0版时,宣布大约用两年的时间完成从CMM到CMMI的过渡。CMMI项目更为工业界和政府部门提供了一个集成的产品集,其主要目的是消除不同模型之间的不一致和重复,降低基于模型改善的成本。CMMI将以更加系统和一致的框架来指导组织改善软件过程,提高产品和服务的开发、获取和维护能力。由业界、美国政府和卡内基梅隆大学软件工程研究所率先倡导的能力成熟度模型集成(CMMI)项目致力于帮助企业缓解这种困境。CMMI为改进一个组织的各种过程提供了一个单一的集成化框架,新的集成模型框架消除了各个模型的不一致性,减少了模型间的重复,增加透明度和理解,建立了一个自动的、可扩展的框架。因而能够重总体上改进组织的质量和效率。CMMI主要关注点就是成本效益、明确重点、过程集中和灵活性四个方面。与原有的能力成熟度模型类似,CMMI也包括了在不同领域建立有效过程的必要元素,反映了业界普遍认可的最佳实践;专业领域覆盖软件工程、系统工程、集成产品开发和系统采购。在此前提下,CMMI为企业的过程构建和改进提供了指导和框架作用;同时为企业评审自己的过程提供了可参照的行业基准。1.2 目前实验管理现状和问题(一)开放实验内容单一。开放实验内容单一,缺乏多学科的综合性和交叉性,实验室按课程设置依附于课堂教学,缺乏创新性。操作性和验证性实验还是占多数,学生被束缚在教师制定的框架中,只能按照设计好的模式步骤去实验,极大地限制了学生创新思维能力的提高。(二)开放时间缺乏制度化。开放时间不太明确,现行的实验室往往是在教师讲授课堂内容的相关专题时才临时决定通知实验室管理人员开放实验室。而且由于是45分钟的课堂实验,学生并不能按照自己的想法自由地做实验,完全处于一种被动的状态,由于缺乏必要的开放时间,所以在很大程度上限制了学生综合实验的兴趣以及能力的培养和提高。(三)仪器维护低效率。由于实验室管理缺乏制度化和经费困难等原因,实验室管理人员人手有限。同时,学生数量的增多,使得实验室的仪器、设备、材料往往因此而不能得到及时的维护,损耗快,造成了一定的资源浪费。(四)实验室财产易丢失。目前实验室的固定资产一般不会丢失,但是一些易耗的小物品,往往因为缺乏管理的规范,有时会被一些学生顺手牵羊,实验室管理人员无法每天定时地清理相关仪器的数量,因而在一定程度上造成了实验室财产的丢失。(五)实验室的经费投入较少。实验室的投入主要是构建实验室的场所、仪器、设备。一方面,经费投入机制不健全,缺少在实验室建设和发展长远规划指导下的经费投入机制,使实验室的建设难以进入良性循环;另一方面,针对基础课教学实验而言,缺乏多渠道筹措资金的能力,经费来源单一。(六)实验室评估机制的欠缺。现行的实验室考试主要还是考核学生对规定内容的掌握程度,它对于学生掌握所学知识有作用,但是距离通过实验室教学全面提升学生的素质、培养其相关的技能尚有很大差距。1.3 实验室资源管理系统随着学校规模的扩大,实验室建设和管理的问题也渐渐暴露出来:(一)实验设备、仪器、低值耐用品等没有较好地建立信息库,以供查询其基本信息及使用状态,不利于对这些实验设备的维护;对仪器设备的领用、借用、修理、报废的处理仍处于手工处理阶段,处理过程繁琐,容易出现纰漏,造成设备流失;实验耗材的管理也带有较大的主观随意性,容易造成耗材浪费。仪器设备信息统计过程复杂,占用大量工作时间,耗材消耗情况不能够得到很好统计。(二)实验室教学管理工作处于手工处理阶段。实验教学计划、课程大纲、实验安排完全手工操作给实验教学管理带来繁重的工作负担;对教学过程和成绩评定没有建立详细的信息管理和记录,从而无法充分保证教学效果,积累教学经验;实验室主管部门和实验室之间没有方便快捷的协作通道,教师和学生之间也缺少很好的沟通桥梁,难以适应开放式的实验教学的需要。(三)没有建立完整的实验项目、人员、设备数据库和实验室建设、管理文档库。造成每逢评估检查或数据上报就要加班加点赶材料,使本来就繁重的工作更加繁重,本来就紧缺的人手更加紧缺。随着学校管理变革的逐步推进,实验室建设的进一步规范化、复杂化,学校实验室管理工作也变得更加繁重和复杂。这就迫切需要用计算机来进行辅助管理,以简化实验室主管部门的工作。学校已建成覆盖整个校园的计算机网络系统,使用计算机网络来进行实验室管理成为了必然,特别是实验室开放选课给传统的实验室管理提出新的挑战。为了把学校建设成为在国际上有一定影响的国内高水平大学的宏伟目标,我们建议充分利用现有条件,建立实验教学和管理的信息系统,实现实验教学全过程的计算机管理,减轻实验室管理人员的工作负担,提供工作效率和服务水平,加强实验室主管部门对设备和材料的计划、采购、维修和使用的宏观控制和管理,以节约成本,提高利用,强化管理,并为本科教学评估和实验室评估提供原始资料和翔实数据,为学校的评建工作作贡献。1.4 研究的内容目的和意义实验室信息管理系统(Laboratory Information Management System 英文缩写LIMS)是将以数据库为核心的信息化技术与实验室管理需求相结合的信息化管理工具。以ISO/IEC17025:2005-5-15检测和校准实验室能力的通用要求(国标为GB 15481)规范为基础,结合网络化技术,将实验室的业务流程和一切资源以及行政管理等以合理方式进行管理。通过系统分析,配合分析数据的自动采集和分析,大大提高了实验室的检测效率;降低了实验室运行成本并且体现了快速溯源和痕迹,使传统实验室手工作业中存在的各种弊端得以顺利解决。目前实验室信息管理系统在西方发达国家的应用相对比较成熟,我们国家经过多年发展,很多实验室也开始逐渐认识到信息化在管理中的作用,纷纷开始引入实验室信息管理系统。 实验室信息管理系统也不断在各个行业进行不断的改进和提升。 相信随着科技的不断进步,和产品功能的不断完善,实验室信息系统将完全可以实现各种虚拟化在线实验室。第二章 CMMI及其关键过程域2.1 管理需求1.什么是CMMI?软件工程学会(SEI),集成的能力成熟度模型(CMMI)是描述产品开发(包括系统工程和软件工程)的能力成熟度模型。SEI把CMM描述成为包含一个或多个关键因素的有效流程,同时也描述了如何从杂乱的,不成熟的流程到规则的,成熟的具有更高质量和效率的流程。CMMI是对软件成熟度模型(SW-CMM),系统工程成熟度模型(SECM)和集成的产品开发成熟度模型(IPD-CMM)的最佳实践的建立和扩展。难道流程改进不会耗费时间和金钱吗?它的回报是什么?改进产品开发流程当然需要投资。但是,正确选择工具去支持这些流程能够加速流程实施和缩短产生回报的时间。企业运用CMMI或CMMI之前标准所收到的投资回报是有目共睹的。 在2003年10月份的报告中,SEI发现所有使用CMMI的企业都受益匪浅,包括:z查找和修复缺陷的成本降低了15%;修复一个缺陷的平均成本降低了30% z推出新版本的时间缩短了50%;软件开发能力提高了30% 大大提高了系统的部署质量,只出现了2%的错误 提高了客户满意度,相应的得到了更好的财务回 2.CMMI成熟度水平CMMI提供了级别式的和持续式的两种表示法。在本文中,将关注级别式表示法。CMMI定义了五个级别(或水平)的过程成熟度(见图1)。CMMI鼓励企业先集中精力在那些可控制的过程域上,然后逐步将这些过程演变到更复杂的级别。本文将重点描述级别二和级别三中包含跟需求管理相关的过程域。图1:CMMI的五个级别过程域CMMI的过程域是一组相互关联,并且有一组可定义目标的最佳实践。图二表示了五个成熟度级别各自的过程域 图2:CMMI各级别的过程域本文将关注CMMI第二级别中的需求管理和第三级别中的需求开发及相关技术解决方案。一旦付诸实施,它们相互紧密联系,并协同运行 2. CMMI级别二的需求管理处在级别二的组织必须已经检查过一系列关键域,并建立起可重复性的流程。过程域:需求管理在该级别上,CMMI对于需求管理过程域的目标是:“需求是可管理的。项目计划和产品开发间的不一致性是可以识别的。”所有产品的目标都是可以满足其责任人(Stakeholders)和客户(Customers)的需求,但它也必须遵守其内部功能上和质量上的约束。需求管理过程在这一点上起到了非常重要的作用。最近的Standish行业分析报告明确的指出, 50%的成功项目把成功归功于建立了良好的需求管理过程。为达到需求管理流程目标而必须建立的一系列最佳经验概括如下:组织必须定义一组需求CMMI中建议:“与需求提出者一起得出对需求的真正理解。”“从项目参与者得到对需求的确认。”任何需求管理过程的第一步都是确保所有的责任人(Stakeholders)理解项目的目标和目标设立的原因。因此,在组织级别上必须建立一整套流程可以涵盖所有责任人参与需求的定义,并最终对这些需求达成一致。在项目的进展过程中,组织能够从最终的结果反向追踪到最初的目标,以确保两者的匹配度。除此之外,任何针对需求的修改都需经过审核。因此,为了建立和管理一整套具有良好定义的需求,需求管理工具应该能够让不同的用户查阅/修改需求文档,并可以识别需求的唯一性。用户也同样能够简便地建立起不同阶段的需求(例如,用户需求和产品需求)和项目的其他工件(例如设计和测试)间的可追溯性报告。需求管理工具同样也应该可以提供一套可审核的追踪过程,从而保证需求即使在发生变更的情况下仍然可以得到实现。维护需求的修改历史也同样重要,因此需求管理工具也应该支持对需求文本的基线化版本管理。组织必须管理需求的变更CMMI中建议:“在项目中进行过程中管理需求变更。”一旦需求建立被捕获或产生,所有的项目参与人员必须能够得到需求的最新信息。因此整个组织必须懂得:需求变更的提出和产生。.这些变更将对整个项目有怎样的影响。 对于这些变更,相关责任人采取了怎样的一致行动。 这些经过审批的变更是否已经反映到最终的产品。 需求的变更是不可避免的,也是允许的,但必须加以管理和控制。相关工具必须提供一个可协作的,可配置的需求变更控制流程。用户在这个流程中必须能够:针对需求提交变更请求。 在变更控制流程中,将单一需求项的多个变更请求作为一个独立的条目进行管理。 将相关的多个需求变更对应到一组需求上,以达到同步的更新。 将需求变更分派给相关评审人员。 能在线评审并评注需求变更,这样所有人都能够看见所有的评注。 迅速全面的评估对某个变更对于需求,设计和测试的影响。 根据评审人员的意见批准或拒绝变更请求。 自动地实施批准的变更以确保不发生任何的错误。 组织必须确保需求被满足 CMMI中建议:“必须维护/保持需求、项目计划和产品开发之间的双向可追踪性。”只有完整的可追踪性才可以确保所有正确的需求都是以正确的方式实现的。因此,组织必须能够检查在开发过程的每一个阶段需求都被满足,并且说明最终产品的某一个具体特性是怎样反向对应到其需求的。没有工具的强有力支持,创建、维护和报告需求的追踪性是极其耗时和容易出错的。因此,工具必须能够确保迅速,简单地建立起追踪连接。为了达到CMMI的要求,不仅要在各个需求之间,而且也要在需求和项目计划和产品开发(例如设计和测试)之间建立可追踪性。需求管理工具必须能够收集/同步开发过程中所使用的其他工具中的信息,同时为了支持迭代和递增的开发流程,也必须在需求文本的不同版本间建立和维护可追踪性。一旦建立了追踪性,需求管理工具必须能够在一个窗口中查看需求之间,需求和计划,工件之间的关联状况。组织必须确保项目计划,开发产品和需求是一致的CMMI中建议:“必须识别出项目计划,开发产品和需求之间的矛盾(或不一致性)。”识别这些矛盾可以确保组织的开发工作是正确的,这样所有工作都遵从最新的相关信息并且没有忽视任何需求。因此,组织必须建立起一套流程以确保所有的项目计划,开发产品和需求保持一致。这套流程中包括评审,分析,和管理所发生的需求变更。项目计划和需求声明必须紧密关联,需求管理工具必须确保项目任务和需求数据是同步的,这样两者之间才可以建立起可追踪性。可追踪性的建立可以帮助我们更好地评估需求变更对项目的影响度。3. CMMI级别三的需求管理在CMMI级别三中,组织需要建立、归档所有项目中所使用的公共的和一致的流程。过程域:需求开发需求开发过程将解释如何抽取责任人的需要、导出用户的需求声明,并把这些用户需求进一步分析/总结成为相应的系统需求。CMMI对需求开发定义了以下几个目标:组织必须能够将收集来的责任人的需求转换成用户需求CMMI中建议:“将收集来的责任人的需要,期望值,约束条件和接口定义转换成用户需求。”在一般情况下,责任人的需要并没有被很好地定义和理解,这些需要甚至可能是不一致或相互矛盾的。一个责任人的典型代表必须参与产品开发的整个生命周期。在这个生命周期中,必须反复地定义,阐述和明确这些需求,最后总结出一组清晰的,被正确理解的用户需求。以上过程非常类似于邀请客户代表进入项目队伍参与全周期的开发工作。此外,对需求采集和阐释的技巧也是极其重要的,目前较流行的是Use Cases方法。Use Cases方法是一套在不同的使用场景下,从用户的角度出发,构造和记录功能性需求的方法。单个的UseCase只能记录简单的文本,最好的方式是使用UML中的Use Case视图对一组UseCases进行描述,并表示它们之间的相关关系。因此,需求管理工具必须能够支持在文本说明的需求声明中插入相关的UML视图,并可将文本和视图同时显示在一个文档中。组织必须可从用户需求分析出系统需求CMMI中建议:“对用户需求进行推敲和细化以开发出对系统需求。”对用户需求进行彻底的分析,识别出所有已暗示但没有被清晰表述的需求,再结合所开发目标产品的技术架构细节,可得出该产品的系统需求。系统需求根据产品的规模和复杂度,可细化成系统需求、子系统需求、模块需求等。在这个过程中,必须同时建立起不同需求之间的可追踪性,为后续的决策指定提供参考,并支持需求变更影响度分析。 根据CMMI要求,在技术架构的基础上,通过对用户需求的分析可推导出系统需求。因此,需求管理工具需要支持实现这种推导,这种推导的支持不仅包括在不同层次的需求之间创建可追踪性,还包括提供可分析上层需求的技术和相关方法。在UML建模方法中,可通过UseCase视图,Activity视图和Sequence视图等有效的方法来帮助分析和导出新的需求,上层的技术架构通过Architecture视图(也称为复合结构)进行描述。这些方法都要求在需求文档中建立模型,用来记录分析和决策过程,从而为下一步提出开发技术方案提供指导。组织必须能够验证需求CMMI中建议::“需求必须可以被分析和验证,同时必须开发出对“必需的功能性”的定义。”当那些非正式的需要转化为正式的需求时,需求的分析和验证对于确定责任人需要、用户需求、系统需求等是否可行,是否可以在预算范围内达到,是否跟当前系统运行环境相匹配都是非常必要的。用于需求分析和验证的技术包括按时间顺序的使用场景验证需求,并提推导新的需求。场景方法是一种有效的采集,阐述和推导需求的方法,在这个方法中我们常用UML中的Activity视图或Sequence视图来表示场景。“必需的功能性”的定义是通过功能性分析建立起一整套功能性的架构。功能性分析描述了系统的行为,时序活动,输入输出以及其他所有对该系统应用的描述。功能性架构则从逻辑上描述了一组功能(或服务)和需求是怎样相互满足的。UML的Activity视图能够从工作流的角度描述系统的活动行为,并且可以识别负责这些工作流的相应组件,这些视图在描述功能性分析,以及将需求进一步分配到子系统级别时非常有用。因此,需求管理工具应该能够支持图形化模型和文字性的需求说明存在于一个单一的文档形式中,并且这样文档形式可以支持不同层次间需求的追踪关系(无论这些需求是以文字形式还是以UML的图形化模型表示)。过程域:技术解决方案在这个过程域中,我们需要关注的是评估和选择设计方案,进行详细设计,最终实施。那么这些和需求管理又有什么关系呢?组织必须首先确保他们可以持续地开发出满足需求的解决方案,一种方法就是通过验证所产生的设计来确保初始方案是正确的。在这个过程中,组织应该能够发现那些不切实际的,或因定义不够充分而无法实现的需求。同时,组织应该允许需求在整个设计过程中不断地充实变化,但这一点的前提死必须保证这些变化是可控制的。所以,可追踪性不仅体现在不同层次的需求之间(用户需求,系统需求,子系统需求等),也应该体现在需求和解决方案之间。我们应该保留从责任人要求到系统和子系统需求的分析过程和分析方法,以便我们在设计和编码阶段仍然可以遵循这些过程和方法。因此,需求管理工具应该能够让后续的系统设计者和开发者可以浏览、创建和维护最初的需求和他们设计之间的可追踪性,并以此检验后续设计/开发工作对需求的依从性,以及对需求变更的影响度估计。由此,需求分析员和项目经理应该具有从系统责任人要求到系统具体设计/开发/测试间的可追踪性有一个完整概念,这个可追踪性可以让他们做到基于需求的项目过程监督,并可以保证所有的开发和测试工作与需求 保 持一致。 2.2软件系统开发策划1. 什么是模型 模型:所研究的系统、过程、事物或概念的一种表达形式模型可以是物理实体,也可以是某种图形或者是一种数学表达式。 用这种方法处理可以大大减少实验工作量,还有助于了解过程的实质。 因此传统的因次论、相似论方法不再适用,这时可用模型法进行研究。u 50年来,大部分软件项目都成了令人头痛的业务活动。在许多商业活动中,软件项目被取消或者是被延误的概率都是最高的。一旦开发完成交付用户使用后,就会暴露出大量的错误和产品的低可靠性。 Capers Jones,Software Quality u 软件项目的成功率至今才只有35%左右,我们现正以每年平均1.7%的速度增长。若按此速度提高,到2014年也才只是达到50%的成功率。Joe Marasco, u 30多年前,软件维护曾被描述为“冰山”,我们要对付水下那些看不见的,却是大量的潜在问题和成本。上世纪70年代初要解决“冰山问题”的成本已足以使一艘航母沉没。而今天,这块冰山却能轻易地让整个海军沉没海底。Roger Pressmanu 如何解决如何突破软件危机已经取得的共识重视软件过程与软件过程改进u Watts Humphrey 的著名论点: 软件系统的质量是由开发它所遵循的过程质量决定的 。l 有什么样的过程质量就有什么样的软件产品质量l 为使软件项目开发不延误交付,不超支更需要在开发过程中加以控制 要解决软件危机,首要任务是把软件活动视作可控的、可度量的和可改进的过程。u Watts Humphrey 的过程改进原则 过程改进是自上而下的 相关的每个人都要参与 有效的变更需有对过程目标的深入了解 变更需持续进行 软件过程变更需要自觉地努力和定期的强化 需要有必要的投入u 许多支持过程改进的国际标准和模型应运而生:ISO/IEC 12207 ISO/IEC 15504 CMM/CMMI TSP,PSP 失败,成功项目的原因u 缺少用户的参与u 需求及其说明不完整或经常变更u 项目得不到高层管理者的支持u 技术能力不足或对新技术不熟悉u 资源投入不足u 预期要求过高u 项目目标不清晰u 人员配合存在问题过程的重要性u 过程、人和技术是产品开发成本、进度和质量的主要决定因素u 其中过程不仅仅是一系列步骤,还包含了机构所积累的经验,包含了机构可以从已成功的项目中所学到的一切u 通过以过程的形式获取成功的经验,并在将来的项目中使用这些过程,机构就可以确保项目的持续成功u 过程在有效地控制机构发展方面充当了关键的角色什么是过程过程定义u 现代汉语词典:事物发展所经过的程序u 韦氏词典:过程是用于产生某结果的一整套操作、一系列活动、变化以及作为最终结果的功能u 牛津简明词典:过程被定义为活动与操作的集合,例如,一系列的生产阶段或者操作u IEEE:为实现给定目标所执行的一系列的步骤(IEEE-STD-610)u 过程是为了达到给定目标所实施的一系列步骤,简单而言,过程就是做什么,是人们使用相应的规程、方法、工具和设备将原始材料(输入)转化成面向客户的产品(输出)所做的事情过程定义u SEI:软件过程是指软件开发人员开发和维护软件以及相关产品(如项目计划、设计文档、代码、测试用例和顾客手册)的一套行为、方法、实践以及变化过程u 比较科学的定义:过程是指一组将输入转化为输出的相互关联或者相互作用的活动从该定义中获知,活动由输入、实施活动和输出三个组成,活动是围绕输出的结果(目标)而展开的,并伴随着时间先后次序的、不同事件发生,这些活动存在着关系或者相互影响,并且受到特定组织的控制、影响和管理,即各种相关的活动是在组织领导下开展的因此过程一般可以分为产品实现过程、管理过程和支持过程过程模型u Processes included are those proven by experience to effective。过程包括了那些被证明有效的时间经验u A model is a structured collection of elements that describe characteristics of effective processes. 模型是由众多元素被收集提炼出的理论框架,这些元素是用来刻画有效过程特征u 过程被写成文档后,变成了gaoxiao的“流程制度”,gaoxiao成员依据“流程制度”开展工作u 过程模型如何被使用 创建过程改进目标和设定优先级 为评估当前实践提供一个准则 一个从杂乱、不成熟的活动走向成熟、规范的过程演进的指南 帮助组织实现成本、进度、功能、产品和服务质量方面的商业目标u 为什么过程模型重要 过程模型提供改进的起点 有益于组织的优秀经验的积累 提供一种通用的语言和共享愿景 优先级活动划分提供框架 为组织改进提供一种方法 软件过程u 软件过程是人们用来开发和维护软件及相关产品的活动、方法、实践和改进的集合。u 软件过程管理的目标是在按计划生产产品的同时提高组织的能力,以便生产更好的产品,其基本原理就是那些在许多领域都已经得到成功应用的统计过程控制。u 软件过程管理的重要前提是软件产品质量的好坏主要取决于开发和维护该产品所使用的软件过程质量。u 有效的软件过程可将人员、工具和方法进行有机结合。 作用对象:软件及其相关产品 包括:活动、方法实践和革新软件过程模型u 软件企业存在哪些过程 需求管理 项目策划和监控 需求分析、设计、编码、测试 配置管理 质量保证 等等 基本术语 软件过程能力software process capability 描述了遵循某软件过程可能达到的预期结果的范围 Paulk等1994定义过程能力为:遵循某一过程,可能达到预期结果的程度 关注预期结果,反映单个过程的特征 软件过程效能(性能) software process performance 表示遵循一个过程所达到的实际结果的一种度量 关注实际结果 软件过程成熟度 是指针对具体的软件过程进行明确定义、管理、测量、控制以及有效的程度 表明软件工程能力增长的潜力,表明机构软件过程的丰富性以及其应用于项目的一致性,同时也表明了组织(企业)实施软件过程的实际水平。 反映一组过程的特征u 不同能力的过程集合反映不同的软件工程能力成熟度成熟度等级所指示的过程能力u 等级1:一般达不到进程和成本目标u 等级2:计划由于基于过去的性能而比较现实可行u 等级3:因为有妥善定义的过程,性能有改进u 等级4:基于对过程和产品的定量了解,对组织中性能改进u 等级5:组织中性能持续不断改进u 通过改进过程提升成熟度 随着相应的一组过程的能力的提高,企业的综合软件工程能力成熟度等级也相应提升 u 改进过程的一种已知方法是:基于从失败或者成功的项目中获得的经验来增强过程 从过程中获得经验,在将经验投入到过程中去验证 量化项目过程性能,量化过程能力u 软件产业与CMM/CMMI的提出 专门针对软件产业制定的CMM 认证体系( SW-CMM ) 世界上软件发展的水平参差不齐 l 美国、欧洲、日本和印度等国家:水平高、质量好、规模大 l 我国进展显著,发展速度相对落后 2.3 配置管理当问及软件技术人员什么是”配置管理”的时候,很多人的回答就是“版本管理”,而且很多人都会说出各种各样的版本管理工具,例如:VSS、TFS、CVS或SVN等等。但这样的回答是不正确、不全面的。版本管理只是软件配置管理的一个小的部分,在CMMI中配置管理分为 “配置项和基线的管理”、“变更控制管理”和“基线的完整性”三个部分。凡是提到软件“配置管理”(Configuration Management),我会先给它下个定义:“它是软件工程的核心部分,是CMMI中最基础的PA”。为什么它会如此重要呢?首先配置管理的工作就是确保软件项目时时保持条理清晰,随时想要任何工作产品都可以迅速找到,并且工作产品的内容不会出错,这也就是大家常讲的可回溯性、完整性和正确性;其次软件配置管理活动始终贯穿整个软件项目的生命周期。因此说软件配置管理是最基础、最核心的管理工作一点都不夸张。(一) 软件配置项在CMMI的“配置管理”过程域CM中SP1.1首先提到的就是“配置项”的概念,在大家开展配置管理工作前应该先识别哪些是本项目的配置项。“配置项”就是配置管理的对象,简单来讲它符合以下任意一个特点:1、它会被两个或两个以上的项目成员共同使用。2、它会随着项目的开展而发生变化.3、对项目重要的工作产品。4、一些工作产品之间的关系非常紧密,一个变化其他的就会受到影响。通过以上定义大家会发现项目中的很多东西都属于配置项,例如:各种需求文档、设计文档等都会经常变更;程序的代码是大家共享的,而且代码文件之间又有较高的相互依赖性。那大家也许会发现还有一些工作产品不符合以上定义,例如:各种周报、会议记录等。这些也是配置项吗?很显然,它们不符合以上特点,那么这些工作产品就不属于配置项的范围,但有时在进行CMMI实施时,项目组也往往会将其一并进行管理。既然配置项是“配置管理”的基础,那么大家还需要给每一个配置项起一个唯一标识,这样才能够做到清晰不混淆。举个例子:“今晚大家一起出去聚餐,到中山一路的东北人吃饭”,这里的东北人餐厅是特指中山一路的,因此这唯一确定了就餐的地点;“我们订的包房叫靠山屯”,这里具体的就餐房间也被唯一标识了出来,是靠山屯而不是瘦狗岭;服务员拿来的菜单上每个菜的名字也是唯一的,这样送上来的菜就不会重样,当我们吃完结账的时候就不会算错价钱,这些都是典型的唯一标识配置项的例子。假如配置项没有被唯一识别出来,那么大家去聚会就会找错地方,点的菜也可能会上错,结账的时候也可能会算错,那么将是一团糟,因此在项目管理中一定要将识别配置项重视起来。配置项本身的变化可以使用“版本管理”对其进行控制。通常像大家的程序代码已经被各种版本管理工具进行控制,但大家千万不要忘记对文档也要进行版本管理。2.4 软件测试2.4.1实施CMMI所需资源分析在这里,我们主要从以下几个方面考虑资源的配备:时间、人员和设备工具。对于时间资源,可根据我高校实际情况来制定,约23年完成CMMI3级。在报告下面的章节有针对此问题的解答。对于人力资源,在需要角色与组织方面上面我们已经进行了分析。对于设备工具来说,除了Office和电子邮件工具外,基本上不需要什么其他的工具。但是如果能够使用一个比较完善的配置管理工具,而不仅仅采用操作系统文件目录的方式进行配置管理,配置管理过程相关的工作量减少会比较明显。其他的工具,像问题管理工具、某些流程的管理工具、任务安排、项目管理工具等,在初期实施过程改进时,最好都不要使用,因为在过程未得到完善定义前,使用工具只可能使过程的使用更加混乱。如果过程已经定义好,并且在组织中得到了较广泛的应用,使用一些问题报告工具、项目管理工具会提高工作效率。我们主要的资源就成为了时间问题,何时开始CMMI?需要多长时间等,针对这个问题,在报告下面的章节里有专门的说明,这里不做进一步阐述。2.4.2 实施CMMI带来的风险分析影响CMMI项目实施的风险是多种多样的,对不同的企业呈现出不同侧面。这里无法穷尽所有的风险,针对每一个风险,也无法穷尽所有的规避措施。即使这样,由于风险伴随着过程改进项目的整个实施进程,因此培养风险管理意识、建立风险管理过程是非常重要的。 风险的严重程度随着风险种类、过程改进项目、时间、涉及的范围、策划手段、发生的可能性等因素的不同而变化,拥有对过程改进项目风险的洞察力和规避能力为过程改进的成功实施奠定了基础。本手册所列出的风险大部分不是在过程改进项目实施过程中突然发生的,往往随着管理者和参与者理念的缺乏、认识的不足而在行动中体现出来,因此针对这类风险的规避措施不是马上能够生效的,通过了解这些风险,认识到过程改进的难度和长期性,才能够实现过程改进的最终目标。影响CMMI项目实施目标和效果的风险和相应的避措施如下所示。在高校高层领导角色方面可能存在的风险分析:1、过程改进目标不统一;高层管理者对CMMI项目的目标认识不一致,我们通过企业管理实践、培训和交流,使高层管理者认识到过程改进的重要性,结合市场和高校内部开发过程管理的需要,统一目标。2、过程改进的长期性认识不足;管理者不了解过程改进涉及到广泛的范围和人的工作习惯,急于求成,我们应与咨询师沟通,通过交流和培训逐步认识到过程改进实质上是开发管理流程再造。3、因担心影响进度而不在项目中施行;以保证项目进度为首要目标,认为过程改进会使开发进度延期,我们认为平衡长期目标和短期目标,从企业长期利益出发,为了提高企业开发管理能力和客户满意度,必须将过程改进活动作为日常运营管理活动的组成部分。4、领导支持力度不够在人力和开发项目的管理上投入不足;需成立CMM领导小组,专门负责CMMI实施问题;建立SEPG独立的问题上报渠道,定期检查过程改进的效果,并有相应的应对措施。5、上级领导随时抽调本项目的资源用于其它&ldquo高优先级&rdquo的项目;因为开发项目或其它原因而抽调人力或变更CMMI计划,我们需要培养过程改进长期性的意识,确定过程改进项目的优先级,保证提供必要的资源,设定阶段性目标并评审阶段成果。6、相关人员没有充分参与;没有将过程改进作为日常工作安排进计划中,高校需指定2人以上的专职人员从事SEPG或QA工作。定期检查和评审过程改进能的成果,并有相应的考核措施。第三章 基于需求管理的系统需求分析3.1 业务需求分析为促进高校实验管理和实验教学的信息化建设,开发了CMMI模式的实验室信息管理系统。该系统建立分布式网络化的实验管理模式,实现了实验项目的网上选课与预约,实验室仪器设备的网络化管理,并通过信息发布模块实现信息的动态及时发布。高校实验室信息管理系统,是针对高等院校实验室管理而设计开发的实验室网络化综合管理系统。开发该系统有利于改变目前单机辅助模式的实验室管理现状,建立分布式网络化的管理模式。 该系统下设用户登录、实验教学管理、仪器设备管理和信息发布四个模块,实现了用户级别的自动检测、实验教学的网上管理、仪器设备状态的实时监控与各项报表的快速生成、信息的及时发布等功能。系统开发基于.NET平台的三层体系架构,具有良好的可扩展性。(1)本实验室管理系统是根据重点实验室的现状进行合理的功能设计与框架设计,系统的建立妥善的解决了实验室资源管理困能、实验管理困难、实验室利用率不高等问题,使得实验室的管理水平与信息交互水平有了提高。 (2)对系统进行了开发,可以大大提高模型层和控制层程序代码的可重用性,使系统具有良好的松耦合性,同时对于今后系统的升级与维护提供了方便。(3)通过对Oracle9i数据库的数据表合理设计,并进行了初级优化,提高了Oracle9i数据库的整体操作效率。(4)应用MATLAB作为底层仿真器与web服务器之间进行交互取得良好的效果。MATLAB的基本功能都可以在web下实现。应用此技术的模型库不仅可以合理的管理模型,同时为用户提供了一个简便的、具有通用性的仿真平台,提高了模型及其数据的重用性,为研究工作者提供了一个友好的、高效的研究工具。3.2用户需求分析用户登录模块主要功能是系统根据用户选择的身份对用户输入的用户名和密码是否合法进行验证,如不合法,则给出提示,并提示用户重新登录。如果合法,则进入相应的操作界面。当用户单机“登录”按钮时,其单击事件完成用户的验证和登录系统的工作。一. 实验教学管理模块 实验教学模块改变了以往传统实验教学模式,将实验项目的开始流程网络化,从实验时间和实验内容的选择方面赋予学生一定的自由度。系统采用学生自主安排学习进度的方式开展实验教学,有助于培养学生的学习主动性和能动性,进而达到因材施教的理想教学效果.二、实验预约管理系统1、需要提供约300个教师登录用户,进入后可对各实验室进行实验预约(新增实验室要能够方便每年添加。目前数目大约40个)。预约方式举例:“预约下周周二 3-4节课某某实验室”(每天时间段分为1-2,3-4,5-6,7-8,9-10,周一到周日)。 预约时要能看到之前已经被预约掉的时间段,不能重复安排冲突。对某一个实验室预约时要填写:实验室课程、班级。2、需要一个审核员用户,对预约的安排进行审核通过。3、对目前已经被预约的实验室安排要能够提供一个汇总的查询功能。4、统计功能:能统计每个教师用户预约了多少个时间段的实验。3.3 功能需求对功能的一般性规定 对本系统来说,界面格式要求同一,由同一的错误提示音,并且要有在线帮助。Input输入Process处理Output输出Load负载量A预处理,做怎样的动作AACCBBBBBBbvCCCCCccv 精度 输入输出数据涉及分数计算问题,因此,在可行性范围内,精确到小数点后两位,其他精确到各位。时间特性要求作为学校实验室管理信息系统,要求数据要及时更新。进行查询时以秒为单位,以达到实时性;而进行增加,删除和修改等操作时,可以根据数据的多少分别以秒和分为单位,原则是操作人员不因时间而影响效率。(1) 程序响应时间不能超过3s.(2) 更新处理时间不能超过5s。(3) 数据转换与传输时间不能超过3s。(4) 运行时间不能超过3s。灵活性本系统对灵活性的要求较高,因为实验室的管理系统容易发生变化,针对这些变化,此系统由较高的适应能力。(1) 操作方式改变时,系统行对应的功能仍可以实现。(2) 运行环境改变时,系统在其他的环境也可以运行,但其运行速度可能会受到影响。(3) 对精度和有效时限,精度越高时运行速度越快,在有效时限内实现的功能越多。(4) 当计划有变更后改进时,在一定范围内,系统的设计会相应的改变,若变更范围较大,则难以进行太大修改。输入输出要求(1) 数据类型:整形(int)、单精度型(float)、双精度型(double有/无符号类型(singed/unsigned)、布尔类型(bool)(2) 当输入异常时,例如输入用户名或密码错误时,要有显示错误的界面,然后用户重新登录。(3) 以用户登录模块为例:数据名称:输入登录名称数据类型:整形(int) 数据约束:-3276832767第四章 基于CMMI的流程设计4.1 技术环境 在二十世纪七、八十年代,软件工程的研究重点是需求分析、软件设计、编程、测试、维护等领域的方法、技术和工具,我们称之为经典软件工程。 应该说现代的软件技术、软件工具要比几十年前好不知道多少倍,可是如今绝大多数软件项目依然面临着质量低下、进度延误、费用超支这些老问题。人们逐渐意识到,由于机构管理软件过程的能力比较弱,常常导致项目处于混乱状态,过程混乱使得新技术、新工具的优势难以体现。经典的软件工程不是不好,而是不够用。 提高软件过程能力的实践通称为软件过程改进(Software Process Improvement)。软件过程改进的目的是:提高软件质量、提高生产率并且降低开发成本。从二十世纪九十年代至今,软件过程改进成为软件工程学科的一个主流研究方向,其中CMM/CMMI是该领域举世瞩目的重大成果。CMM/CMMI是世界范围内用于衡量软件过程能力的标准。 人们往往搞不清楚“软件过程改进”和“CMMI等级评估”之间的关系,经常混为一谈。这里作个比喻来解释:把“软件过程改进”比喻为“学英语,提高英语能力”,那么“CMMI等级评估”就好比是“英语等级考试”。一般情况下,英语等级考试的成绩反映了英语能力。但是,在特别擅长应试的中国,英语考试成绩很好并不见得英语能力很好,甚至差到“哑巴英语”的程度。这种“特性”传染到软件领域,不少企业虽然通过了高级别的CMMI等级评估,但是其实际的软件过程能力却非常底下。卡内基梅隆大学软件工程研究所发布的CMMI for Development 1.2版本,厚达560页。既然有了全世界认同的“CMMI宝典”,企业为什么还要研制自己的软件过程规范呢?解答这个疑问,我们首先要搞清

温馨提示

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

评论

0/150

提交评论