软件项目产品质量管理(精选11篇)
软件项目产品质量管理 第1篇
软件行业是一个高智力密集型行业, 软件开发质量得到各行各业的关注。软件产品属于逻辑性智力型产品, 它是软件开发人员脑力劳动成果的重要体现, 但软件开发的质量会受到诸多因素影响, 对软件开发人员来说, 按时完成软件产品而又保证软件项目质量是一个很棘手的问题。一旦软件质量无法得到保证, 除了会增加软件后期维护的费用, 还会加重技术人员的软件后期维护任务, 质量差的软件也必将会给使用者带来很大的麻烦和损害。因此, 加强对软件项目的质量管理具有十分重要的意义。
二、软件项目质量管理内容分析
1、软件项目质量计划编制。软件项目质量管理工作应遵循“预防为主、检查为辅”原则, 一个系统而全面的软件项目质量计划能为软件项目的实施起到良好的促进作用, 有利于高质量软件产品的输出。软件项目质量计划作为整个软件项目质量管理的行动纲领, 它一般是由软件项目经理和质量人员共同协商制定的。软件项目质量计划需要根据所研发的软件项目特征来编制, 针对会影响软件质量的各项因素, 要进行深入分析, 制定出行之有效的预防措施。
2、软件项目质量保证。软件项目质量保证是指在软件项目实施过程中科学制定相关的质量标准和质量控制措施, 逐步构建软件项目的质量管理体系。质量保证是贯彻整个软件项目全过程的准则, 它能及时对整个项目的实施情况进行科学评估, 保证软件项目质量与计划预期保持一致。
3、软件项目质量控制。软件项目质量控制是对技术人员对软件进行测试和控制以确保软件质量是否满足相关质量标准, 其目的在于及时测试出软件缺陷, 采取有效措施及时纠正软件缺陷, 提升软件产品质量, 保证软件质量与计划预期相符。
三、加强软件项目质量管理策略
1、健全软件项目质量标准体系。为加强软件项目质量管理, 必须健全软件项目质量标准体系。因此, 企业要综合考虑用户的软件应用需求, 科学编制实施软件项目的整体计划, 逐步构建科学、完整、合理的软件项目质量标准体系, 其中包括软件项目设计的内容、项目实施流程、项目周期控制、项目预算管理、项目工作详细内容等, 软件项目质量标准体系各部分内容需要设计人员、项目管理者先进行沟通与交流, 确保软件项目质量计划合理科学, 适合用户需求并且是可实行的。
2、强化软件项目技术评审工作。软件项目技术评审是指企业请同行专家对软件产品质量成果进行评审与讨论, 以及时发现软件项目工作成果中的存在漏洞, 有利于软件开发人员及时采取措施处理软件缺陷, 从根本上提高软件产品的质量。因此, 软件项目质量管理人员应积极参与软件开发技术评审会议, 加深质量人员对软件工作成果的了解。
3、实施软件代码走查。代码质量是直接影响软件整体质量的关键性因素, 由于高质量的软件程序具有高内聚、低耦合特点, 并且要求软件结构合理、条理清晰, 因此, 软件编程人员在编写软件代码时, 必须要高度认真、细致负责, 保证代码编写思路清晰明确。在软件项目开发过程中实施软件代码走查, 要求软件编程人员在特定时间内对所编写的代码进行讲解分析, 一方面可以明晰软件编写人员的思路, 提高编程人员的编程水平, 另一方面也便于软件编写人员与软件项目质量管理人员进行内部的软件设计思路交流, 实现双方工作的有效配合, 真正促进软件质量的提升。
4、加强软件质量检测。在强化软件项目质量管理过程中, 对软件进行质量检测是及时发现软件缺陷的有效措施。在软件项目各环节中, 任何人都无法保证操作完全规范, 通过对软件项目不同环节进行检测, 可以及时检测出存在质量漏洞的环节, 从而提高整个软件项目的质量, 努力为用户提供一个可靠、安全的软件成果。软件质量检测也并非可以将所有潜在问题都发现, 软件使用过程中可能会因一些小操作而产生功能使用方面问题, 这些偶然性软件错误是难以避免的, 这些问题应该提前向软件使用者说明。
四、结束语
随着企业信息化建设速度的不断加快, 软件工程项目的建设质量受到越来越多人的关注。因此, 在软件开发项目中, 我们必须对其加强质量管理, 严格按照软件编制质量计划进行软件开发, 真正落实软件开发质量控制措施, 全面提升软件项目质量, 促进软件行业健康和谐地发展。
参考文献
[1]陈荔.论软件项目的质量管理[J].商, 2013 (14) :373.
[2]吴英.软件项目质量管理探讨——以电信行业为例[J].科技咨询, 2012 (12) :169.
[3]王林林.软件项目质量管理的初步探讨[J].黑龙江科技信息, 2012 (14) :101.
软件项目质量保证措施 第2篇
质量保障措施
质量保障措施包括项目质量管理保障措施和软件开发质量保障措施两方面。
1.1.1
项目质量管理保障措施
1、资深的质量经理与质保组
针对本项目,将派遣资深的质量经理参与质量保证组(简称SQA组)。SQA组负责确保项目遵守质量保证体系的标准要求,确保遵循项目计划书中描述的要求,确保交付的软件及其文档以及非交付的软件在需求、设计及管理等诸多方面的质量。
2、全程参与的质量经理
质量经理,即质量保证组组长,监控项目成员的软件活动,并对软件产品与可适用的标准、过程和软件开发计划的符合性进行评价,为双方项目领导小组监控项目的软件生产提供适当的可视性。
3、合理的质量控制流程
质量经理负责对项目进行监控与分析,将结果报告给由双方高层人员组成的项目领导小组。项目经理批准发布给用户的所有文档和软件,必须得到质量经理的复核和批准。
质量管理规范
质量经理的工作依据为行业标准、客户方约定的管理规范和公司的管理规范,工作方式为编制质量计划、过程和产品检查、评审和审计、问题上报等。
服从工程监理
鉴于本项目的专业性和复杂性,如本项目中标,XXX将在系统建设、安装调试和验收等各环节严格服从专业监理公司的全过程监控,以保证整个项目的质量。
加强协调管理
由于本试点工程参加建设单位较多,需要统一协调与配合。如本项目中标,xxxx将积极配合、充分协调项目参与各方的关系,提高工作效率,团结一致共同建设本项目。
严格合同和计划管理
本项目内容复杂,如本项目中标,为保证工程建设的质量和建成后运行的质量,在施工各环节将严格加强合同管理和计划管理,严格按合同及工作计划进行施工,确保工作质量。
重视培训
由于本项目内容复杂,专业程度较高,如本项目中标,xxxxx将把培训工作贯穿到整个建设过程中。本项目的培训不能按照传统的培训方式在项目完成后进行,在工程设计、施工阶段采用边设计施工边培训的方式,以便用户更快使用本系统,同时保证工程少出偏差,保证工程质量。
1.1.2
软件质量保障措施
软件质量保障措施包括对项目资源的保障,对质量管理过程的保障和对产品质量的技术保障。
(一)对软件产品的测试
软件测试是对软件产品质量保障最重要的措施之一。
测试是评价检查质量目标实现的重要手段,过程如下:
软件质量评价过程与测试活动的关系如下图所示:
面向开发过程的软件项目质量管理 第3篇
1 软件质量的含义
质量是一个抽象化的概念, 一般情况下人们在使用某个产品时能够从使用产品过程中感受产品的质量, 主观的感受很难利用客观的数据来表达和测试, 因此人们通常利用一些产品的数据指标来衡量产品质量的高低, 很多学者从不同的角度对质量进行过定义, 有的学者认为质量应该具有适用性, 适用性越高质量越高;有的学者从规范性角度来定义质量, 认为产品越合乎相关规定的要求, 其质量就越高;目前普遍为学者和国际组织接受的质量的定义是指可以反映产品满足显性需求和隐形需求的能力。而软件作为一种比较特别的产品, 软件质量的含义也需要从不同角度来理解, 狭义角度的软件质量是指软件产品的质量, 即软件产品能够正常运行, 并且可以满足人们的相关需求;从软件使用者的角度来说软件质量就是指软件产品的适用性;从产品角度来说软件质量就是指产品的特性和功能的综合;此外也可以从软件的生产者角度以及市场等角度来理解软件质量。但是值得注意的是无论何种产品, 他们都是通过一定的研发和生产过程而来, 因此过程从很大程度上影响着产品的质量, 软件质量包括了两个方面的内容:一个是软件过程质量, 另一个是软件产品质量, 其中软件产品质量又包括了每个开发环节上产品的质量。
2 软件项目质量管理的含义和内容
目前在管理领域内学者们普遍认为质量管理是指制定质量计划的过程以及为了完成计划而采取的一系列活动的过程的综合。具体来看, 朱兰博士认为质量管理主要包括了质量策划、质量控制以及质量改进等三个主要内容;根据《质量管理体系基础和术语》的规定, 质量管理是指确定质量方针、目标、职责, 并在相关行业标准以及国家国际标准的约束下进行质量策划、质量控制、质量保证、质量改进等工作。项目质量管理则是指为了能够按照策划人员构设的计划完成某个项目, 而实施的一切努力, 项目质量管理的途径大致是在期初确定项目质量计划, 在项目质量计划的指导下, 通过一系列的质量控制活动、质量过程活动、质量保证活动等把项目完成, 最后对项目的完成质量进行评价和审核, 如果发现问题则需要进行更正和改进。通过理解管理质量以及项目管理质量等概念, 就不难理解软件项目质量管理的含义, 由于软件质量包括软件产品质量和软件过程质量, 因此应该从产品以及过程这两个方面来理解软件项目质量管理。软件项目质量管理的含义是指通过制定软件项目的质量方针和目标, 明确相关过程以及相关人员的职责范围, 在软件质量保证体系的约束下完成对软件开发过程的质量管理。目前戴明的PDCA质量管理模式在软件项目质量管理中应用的比较多, 戴明的质量管理办法主要包括计划、执行、检查、纠正等内容, 这四方面的内容构成了一个循环, 通过这个循环能够贯彻期初设定的质量方针和目标, 对于提高软件质量和软件项目质量管理质量具有重要意义。
3 软件过程及其对软件项目质量管理的影响
3.1 软件过程
过程的一般定义是从输入到输出的整个中间活动, 软件过程则是指软件在生存周期中涉及的所有过程, 软件的生存周期包括了软件的开发阶段、生产阶段等。简单来说软件过程就是指为了获得软件产品所进行的一系列的努力。面向过程的软件质量管理是指在了解质量、质量管理、软件过程等基础概念的基础上, 分析每个过程阶段的重点, 根据软件过程中各个元素之间的联系, 来构建起效率高的标准化软件过程。软件过程的种类主要有基本过程、支持过程、组织过程等, 其中基本过程阶段需要进行的工作主要包括分析需求、设计软件、编码、测试、维护等基础性的工作, 支持过程阶段需要进行的工作主要包括规范编码、管理需求、审核评价、测试管理、配置管理、文档管理等内容, 组织过程阶段需要进行的工作主要有过程管理、过程改进、过程培训、过程考核等内容。
3.2 软件过程质量的影响因素
分析软件过程对软件项目质量管理的影响首先应该了解软件过程对软件质量的影响, 即通过分析软件过程中对软件质量产生重要影响的关键点和活动, 提高这些关键点和活动的质量, 进而提高软件的质量。从宏观角度来看影响软件质量的因素主要有过程质量、开发技术、人员素质、成本进度等。软件产品是软件开发与软件生产过程的产物, 若想提高软件的质量, 就必须对软件开发过程的每一个环节进行质量管理。从软件开发过程的具体流程来看, 影响软件过程质量的环节主要包括需求分析环节、系统设计环节、编码实现环节、测试环节。在需求分析阶段需要对软件使用者的需求进行挖掘, 通过了解用户的需求来制定软件过程的计划方针, 所收集到的用户的需求决定着软件过程以及软件的需求量, 但是软件需求具有难以获得、需求易变等特点, 因此对于调研人员的能力具有很高的要求;在系统设计环节需要完成设计规划、设计评审等工作, 在设计系统时应该保证系统设计是合乎规范的, 并且软件的用户界面以及数据库设计等都应该符合标准, 在进行设计评审时需要采用多方评审的办法按照评审流程对设计进行评审, 根据评审人员的反馈进一步完善对系统的设计;在编码实现阶段应该完成对代码格式的确定以及命名, 并且按照所确定的代码执行, 在完成编码的确定和命名之后, 也需要进行评审, 并且编码实现阶段的评审工作会更加的复杂, 如果不能做好编码实现阶段的工作, 在后期很可能会出现代码错误或者是代码缺失等问题;在测试环节, 应该制定测试的策略, 确定测试人员以及时间并按照测试计划和测试标准进行测试, 在测试过程中如果发现问题应该及时上报并处理, 使软件的质量得到不断的提升, 如果没有测试环节, 很可能会使得带有问题的软件进入市场, 如果不及时解决测试过程中发现的问题, 软件过程会被延长, 影响软件开发过程的进度。由此可见软件过程质量的影响因素主要包括了需求分析、系统设计、编码实现、测试等, 每一个环节都会影响软件过程的质量。
4 软件过程的质量保证体系
软件过程涉及到企业中的多个组织或者部门, 所涉及到的部门以及个人的权责范围是否合理, 决定着部门以及个人在软件过程中对于软件质量的责任, 为了保证相关人员能够按照计划保证自己所负责的软件环节的质量, 应该建立起软件项目的质量保证体系, 促进软件项目的相关部门可以协调合作, 确保软件项目质量管理工作的顺利进行。一般情况下质量保证体系的内容要求包括四个方面的内容:第一必须建立有效的信息沟通渠道与质量反馈途径;第二必须把软件的开发环节与相应的部门对应, 这种对应关系一旦确立, 对应的部门的职责范围也就相应确立了;第三, 软件过程是一步一步向下进展的, 但是应该明确向下一个阶段进展的标准, 只有上一个阶段的工作质量达到标准, 才能够向下一个阶段进展, 这就需要确立评价各个阶段的原则和标准, 保证评价工作能够有据可依;第四, 必须明确质量保证体系能够正常运行的方式, 保管好相关的文件和资料, 并实时维护软件过程的质量保证体系。软件过程的质量保证体系的组织主要有组织结构、质量体系文件、质量评审过程、纠正措施等。
4.1 质量保证体系的组织结构
质量保证体系的组织结构主要包括了客户方和开发方, 一般情况下质量保证体系的组织结构是呈现树形的, 组织结构的结构必须是层次清晰的, 在组织结构内进行沟通交流的渠道必须是充足并且明确的。客户方的工作人员主要负责与客户的沟通交流和接受客户的反馈等, 具体而言客户方可以分为质量安全控制组、项目支持组、项目顾问组、技术部门, 每个小组或者部门都各司其职, 按照自己的权限办事;系统开发方主要包括软件开发组、测试组、质量保证组、系统实施组等, 每个小组除了必要的沟通和协作之外, 不能够干涉其他部门的工作。由此可以看出树状的质量保证体系中开发方和客户方是两个树干, 具体的组织或者部门是树枝。
4.2 质量保证体系的文件资料
在软件开发与生产过程中, 软件项目的质量管理工作贯穿于软件开发过程的各个环节, 只要有一个环节的质量管理工作没有做好, 软件的质量就会受到影响, 为了保证各个阶段各个时期的质量管理质量达标应该制定质量保证条例, 质量保证条例作为软件过程质量保证体系的规范性文件, 应该得到软件项目组的重视, 通常情况下质量保证体系文件主要包括文件控制程序、记录控制程序、内部质量审核控制程序、纠正措施控制程序、预防措施控制程序、质量策划程序、产品需求合同评审程序等。
4.3 质量评审过程以及纠正措施
为了保证软件质量, 进行质量评审是非常必要的, 质量评审过程能够找出软件开发过程中出现的问题, 评审的内容不仅是对软件产品的质量进行评审, 对于软件开发过程中的质量管理工作更应该进行评审, 在提升软件质量的同时, 提高软件开发过程中软件项目管理的质量。在发现问题之后应该及时探究解决问题的措施, 使软件开发过程的质量管理得到提升。
5 结语
面向开发过程的软件项目质量管理所涉及的内容非常多, 在研究开发过程中软件项目质量管理时首先应该了解质量、软件质量、软件项目质量管理的含义, 在此基础上分析软件项目质量管理的影响因素, 值得注意的是质量保证体系对于保证开发过程中的软件项目质量管理质量具有非常重要的意义。
参考文献
[1]刘燕俐.实施软件项目监督管理机制提高应用软件开发质量实践与分析[J].信息系统工程, 2014, (9) :35-36.
[2]郑人杰.软件用户盼望获得精品--谈谈我国软件产品质量和标准化面临的问题[J].测控技术, 2000, 19 (2) :1-5.D
软件项目管理 第4篇
许多人都以为项目经理总是与“理想与光荣”相伴的,其实作为一个有志于改进中国软件开发流程的项目经理来说,他们承担的更多的是“艰辛与痛苦”。
一个优秀的软件项目经理应该具备以下素质。
一、执着
可以这么说,在中国如果不执着是做不成任何事情的,因为在软件开发流程中推行各种规范和管理制度的时候,你可能遇到各种各样的阻力和障碍,如果没有应付挫折的思想和准备,你是很难推行成功的。要知道这样一个基本事实,项目管理成败的关键是:如果你不坚持,谁也不会坚持下去的。指望领导的扶持和群众的自觉是不可能的。只有坚定信念,努力打动别人,才能成功。
坚持到成功为止。只要决定上管理流程了,就不要后悔,唯有坚持,因为你拼命努力而实现了99%,你却不知,最后当你决定放弃的时候也许就是你要成功之时。要知道你准备放弃的时候可能正是对方也准备放弃之时,唯有坚持,你才能成功
二、亲和力
亲和力是指你和团队相互依赖,相互信任能力的大小。亲和力是你领导团队走向成功的基础,如果一个团队的向心力不够,各自为政,那么失败就会在身边陪伴你。要团队的每个成员都信任你,你必须要做到关心下属,主动与下属沟通,为下属争取合法权利等。关心下属就是在日常工作中对下属的工作状况,发展方向进行指导,避免其走弯路;在生活中也对其身体状况进行关心,促进身体和心理健康的恢复。
多找下属沟通是消除误会的润滑剂,同时也是了解下属内心真实想法唯一捷径。做项目经理的人,在某些事情上的处理的确会与人不同,也难以令人理解。这个时候只有多与下属沟通,逐步达成共识,争取大家的理解和支持。记住,没有下属的理解和支持,你永远无法实现项目管理的规范化。另外就是了解下属的真实想法,经常了解一下下属的真实想法有利于我们不断改进和调整流程,使生产流程更加符合本团队的实际。切记一点,做领导的一定要多尊重下属的想法,并且与之沟通,若一味等下属找自己,那么是一般下属与之水火不容要摊牌时,才会与你沟通,这样悔之晚矣。
为下属争取合法权利是项目经理的一项重要职责。敢负责任是项目经理基本素质,如果你不经常研究工作数据保障下属的合法权益时,你就很难让你的团队保持高效率。
三、品德高尚
“一撇一捺是个人,世世代代学做人。”在这个世界上最难做的就是做个品德高尚的人。试想一个思想猥亵的人很难取得成功,即使靠钻营取得也只是暂时的,他不可能取得长久的成功。只有品德高尚的人才能感染周围的人,使团队具有向心力,从成功走向成功。
人有三种,一种是仗势欺人,一种是持才压人,最后一种是以德服人。仗势欺人的人自持地位高而指三道四,自然是不可能团结人,更不可能获得成功;持才压人的人自持学识高而盛气凌人,或咄咄逼人。殊不知“闻到有先后,术业有专攻”,“尺有所长,寸有所短”,难以学到更高的知识,也就难以取得更大的成功。只有以德服人的人以自己的修养和品德感染人,勇于吃亏,乐于助人,以德报怨,只有这样才能使你对立面德人都不忍心伤害你,团结到一切可以团结到的人,拥有这样的环境,你怎么可能不成功。
勇于吃亏,首先要放下私心,如果一个人始终 围着自己转的人是不可能做到的。“人不为己,天诛地灭”是八十年代后出生的人心灵普遍反应;但是要记住人首先是社会中的人,如果脱离了社会,人恐怕已不会成其为人了。因此只有当你抛弃私心,主动为人,别人才会反过来支持你,帮助你。
乐于助人,是人类的一个良好品质,就象一首歌中所唱的“人字的结构就是相互支撑”。管理流程是不可能靠项目经理一个人维持的,必须要大家支持你。但是这却需要你多帮助别人,别人才会帮助你。不管团队成员发生什么事情,你要尽你所能去帮助他,这样团队才可能继续前进。
以德报怨,可能是人最难做到的。中国人就强调“人若犯我,我必犯人”,其实在这回中不会有真正的仇敌,大家明争暗斗的结果如果过20年后再去看的时候,保准一大半的人都会觉得不值得,许多人赌得就是一口气,将自己成功的希望给湮灭了。当你能用宽容喝善良对待你对立面的人的时候,还有什么东西能阻挡你成功?
“得道多助,失道寡助;多助之至,天下顺之,失道之至,亲戚叛之;以天下之所顺,攻亲戚之所叛;故君子有不战,战必胜矣。”
四、口才
良好的口才是项目经理打动项目成员的必备武器,当你拥有良好的口才将会使你无往不利。当年希特勒就是用他那天才般的口才征服了德国,使他的《我的奋斗》贯彻到每一个德国人的心中,从而成立了第三帝国。
要使自己的项目管理思想贯彻到每一个项目成员心中,就必须要做到以下的演讲原则:
1.根据项目成员的共同目标象他们制定演讲内容,只有让他们信服你才有意义;
2.调动听众的这种感官,诉之触觉、视觉、听觉,用黑板、姿势来辅助你的内容。
3.不断的总结效果,改进自己演讲宣传的接受度,如果效果不理想,尝试换一个方式来表达.调动听众的这种感官,诉之触觉、视觉、听觉,用黑板、姿势来辅助你的内容。
3.不断的总结效果,改进自己演讲宣传的接受度,如果效果不理想,尝试换一个方式来表达和描述。
4.让听众学以至用,只有他们积极反馈,才能更深入的听你的思想。
五、循序渐进
循序渐进,不急于求成是项目经理在项目管理中必需具备的品质,在中国CMM过程改进的热潮中,真正实现CMM管理的企业屈指可数,而以CMM改进过程实质性为企业带来质量提升和效益改进的公司更是寥落晨星。
为什么会出现这种情况?难道CMM真的不适应中国过情吗?不是,绝对不是。是这些企业的项目经理太心急,连CMM2还不知道怎么回事就直奔CMM3,他们忽视了事务发展的客观规律,凡事必须循序渐进。如果有一个企业在2年内通过了CMM4,我有十足的信心说,那是花钱买征;如果乐观一点,一个中小企业从CMM1走到CMM2大约要2年时间,大型企业只会更长,不会更短,因为他们需要在培训和沟通上付出更大的代价。
“循序渐进,循序渐进,再循序渐进。”这句巴斯德德经典名言同样适用于我们项目管理领域,他将逐步把我们带向成功。
六、持久求学
“书到用时方恨少,学至成时始知卑。”学无止境,我在生产实践中发现,整个项目管理过程改进就是“学习-培训-实施-发现问题-再学习”的循环过程,项目经理如果不学习将不能解决现实工作中出现的新问题,更不可能站在一个战略的角度来解决问题。
事实上,求学也不能没有目标,否则学到的知识太庞杂,而不能融会贯通,这样的知识对实际工作指导甚少,真正的知识是一个目标体系,严格按照流程来一步步的掌握我们所需要的知识。
最后,我总结一下中国项目经理所必需掌握的知识:
1.专业知识:数据结构、关系数据库、操作系统、软件工程、编译原理。(外国的项目经理可能不需要掌握)
2.管理知识:项目计划、项目配置管理、成本核算、风险预估、绩效考核。这是项目经理必须掌握的内容。
3.网络知识:服务器的架构、各种服务的配置。因为管理的大厦是基于软件的管理,没有一个服务管理的网络配合是不可以想象的。
4.“越过高峰,另一峰却又现”,这是中国项目经理在持续求学中会不停的挑战自我,向更高的山峰迈进。
七、敢负责任
一个人因为有责任才有生存的意义。一个人随着年龄的增长,责任感也会愈来愈重。成年时,法律也会赋予一些年少时没有的责任。同时地位逐渐提高,责任也会相对加重。
一个人惟有负责,才能产生做人的价值。所负责任愈大,价值就愈高。换句话说,有责任,生命才有意义。如果没有感受到自己该负的责任,即使年龄超过20岁,也不算是一个成年人。
因此,经理就是要负责任,如果不负责任就可以不要经理了!项目经理关系到一个项目的成败;对于公司他必须要承担及时汇报项目进度、成本核算和质量系数的责任,同时也必须保证项目组成员绩效考核,政策落实,预留人才储备等责任,是整个项目中责任最大的人,如果没有良好的心理素质和应对能力是无法担负责任的。
实际工作中项目经理主要要负责项目组的人员安排调度、工作分配、工作审核、工作跟踪、项目计划、项目汇报总结、成本核算、利润分配等职责。
八、以身作则
项目管理的一个重要工作就是定义各种规范和制定,但是这些规范和制度的执行除了靠项目经理的执着推行,口才宣传,力主培训、惩戒得当之外,关键还是在于项目经理的以身作则。如果项目经理自己都违反自己定义的条款的话,那么就别指望团队会自觉遵守这些规定。
作为一个管理者以身作则是最基本的素质,千万不要为自己违反规范和制度找各种借口,例如我我是公司只属考核,我因为某某更重要的事情而不得不违反。“只许周宫放火,不许百姓点灯”的话,是无法将规范和制度推入人心的。项目经理如果违反了规范,只有当众加重处罚,别无他法。
因此,鉴于规范制度的权威性主要还是靠项目经理自己,只有坚持以身作则,才能将自己优秀的管理思想贯穿下去,取得开发过程改进的成功。
九、要有威信
一个项目经理说话有没有人听,必须要靠威信,这种威信是靠自身的素质,而不是狐假虎威。靠高层领导的支持来强迫团队执行项目制度过程的话,是注定会失败的。因为团队成员不信任你,表面服从,实际消极怠工,就足以让流程实质瘫痪。
做事要有信用,说一不二,不能因为朋友关心就讲情面。公是公,私是私。平时可以稀稀拉拉,关键问题决不手软,不因为朋友关系妥协,这样才能树立威信,便于工作。
威信除了必要的威信之外,最主要的还是信用,项目经理在做事没有绝对把握的时候千万不要承诺,一旦承诺就无论如何一定要实现。否则,当实现不成功而丢失信用之后,再想让团队相信你,信任你就是非常困难的事情了。
十、善于总结
项目经理要善于总结,只有不断的总结才能不停的完善自己,成功的事情总结经验,失败的事情要总结教训,总结的过程就是不断改进的过程,这也是CMM规范所必需的素质。
总结
浅析软件项目风险管理 第5篇
关键词:软件项目管理 系统 团队 项目风险管理
软件项目管理系统可以规范一个软件开发团队的日常工作,提高工作效率。在软件项目管理中,风险管理是被经常忽略的,但是风险管理的好坏与否对软件项目管理的成功实施具有重要的作用。下面就从几个方面进行一个分析探讨。
1 软件项目管理概述
软件项目管理的主要目标就是管理者能够控制软件项目的整个生命周期,特别是大型项目,以预定成本按期,按质的完成软件交付用户使用。我们通过对软件项目管理的分析和研究,能够更好的从之前的案例中总结经验和教训,从而制定出能够为以后顺利开发的通用原则和方法,不再犯别人犯过的同样错误。美国于20世纪70年代中期提出软件项目管理,那时候美国国防部做了一项调查,是关于软件开发无法按时提交,预算超支和质量不合格原因的调查,最终发现7/10的项目都是由于没有进行科学合理的管理而造成的,并不是技术方面的原因。因此软件开发者越来越关注进行软件开发时的项目管理。20世纪90年代中期,软件研发依旧还是没有解决项目管理的相关问题。从美国软件工程实施现状来看,还是不容易预测软件研发情况,能在预定费用和进度下交付的项目差不多仅占1/10。因此,软件项目的风险管理就显的非常重要。项目风险管理是指为了最好的达到项目的目标,识别、分配、应对项目生命周期内风险的科学与艺术。项目风险管理的目标是使潜在机会或回报最大化,使潜在风险最小化。
2 项目管理在软件开发中的应用的成因
软件项目管理不仅具备了一般项目管理的属性,还有其特殊性,重点是在标准方面。要使我国软件业具有更强的国际竞争力,就要有很多的软件企业都遵循软件开发过程,同时要创造高质量的软件,通过标准的制定和推行,能够更好的实现软件企业在未来的发展,大大改善工程和管理水平;还能够通过全方位的服务支持他们的发展,从而更好地推动软件产业的整体发展。20世纪70年代中期,人们开始普遍关注软件项目管理。那时候美国国防部做了一项调查,是关于软件开发无法按时提交,预算超支和质量不合格原因的调查,最终发现7/10的项目都是由于没有进行科学合理的管理而造成的,并不是技术方面的原因。这样我们最终认为:管理对于软件研发项目起着全局性的作用,而技术只是在局部起到影响。软件程序员通常在未对用户意图进行深入了解的情况下就急着进行编码,所以就需要在编码时一直修改代码以此满足客户要求;越是在开发后期做修改承担的代价就越大,尽管软件已经完成、交付用户使用,仍然不一定是完全正确的、完美的,出现所谓的“软件危机”。近年来,软件开发取得了很大的进步,各种技术也都处在不断的创新中,软件产业已经形成,人们开始更加的注重软件过程管理, 在软件开发中更多的加入了管理学的思想,更加注重应用开发的项目管理。
3 软件项目风险管理的措施
我们要清楚地看到,我国开始进行项目管理时间比较迟,项目管理水平不能与快速发展的经济建设相适应,不能够在国际竞争中占据优势地位,为此我们要不断努力,赶超国际先进水平。展望未来,我们的软件市场既有机遇,又有挑战,为此我们要做到以下几点:
3.1 提高软件项目的风险管理意识。通泛学习项目管理知识,掌握风险识别、量化、对策研究、反应控制等工具和方法,掌握项目风险管理所必备的知识。总结本项目中常见的风险及其对策作为风险管理计划中必要的风险详容,并切实评估相应对策的有效性和可行性。
3.2 加强相互间的沟通。制定有效沟通机制,对由于缺乏沟通而造成的事件进行通报或提醒,以提高沟通意识;沟通方式应根据内容而多样化,实现有效率的沟通;对于特别重要的内容要采用多种方式进行有效沟通以确保传达到位。
3.3 中国必须培养自己的优秀项目管理专业人员,大力提高项目管理水平。中国项目管理之所以发展缓慢的一个重要原因就是缺少专业人才,因此我们要高度重视起关于优秀项目管理专业人员队伍的建设,还要加强与其他国家的合作与交流,建立自己的项目管理体系,引进和开发先进的项目管理软件系统,提高项目管理水平,为工程公司、项目管理公司和工程咨询公司的发展提供更好的环境。
3.4 发挥协作精神。项目经理应当对项目成员的责任进行合理的分配并清楚地说明,同时应强调不同分工、不同环节的成员应当相互协作,共同完善。
4 结束语
综上所述,与其它的项目管理比较而言,软件项目管理具有其特殊性。首先,软件属于纯知识产品,不容易预测其开发进度和质量及生产效率。其次,由于软件系统具有复杂性,这样就不容易预见和控制开发过程中各种风险。所以,软件项目管理领域仍然是一个比较新的领域,竞争态势还远未达到白热化的程度,但前景十分可观。需要不断的去开发与研讨,才能让软件充分的发挥在项目管理的领域,但在软件项目管理中,存在的各种风险管理应该根据不同的因素而做出不同的解决措施,让项目管理可以发挥到一定的程度,使之更加的完善。
参考文献:
[1]云倩主编.《现代软件项目管理》,南开大学出版社,2004年5月第1版.
[2]美国项目管理协会著,现代卓越译.《软件项目管理知识体系指南》.
[3]郭毅夫.《软件项目管理的发展前景及其在技术创新中的应用》,2003年11月.
软件项目产品质量管理 第6篇
1. 项目管理与质量概述。
项目管理就是以项目为对象, 通过一个临时性组织, 运用知识、技能、工具和方法, 对项目进行高效率的计划、组织、指导、控制, 以实现项目目标的综合协调与优化过程。
质量是产品的一组固有特性稳定地满足用户需求的程度, 具有经济性、广义性、时效性和相对性。对于项目管理而言, 过程质量和质量管理体系质量更为重要, 只有这两种质量保证了, 产品的质量才能保证。
2. 软件项目质量管理概述。
(1) 软件项目质量管理的概念。软件项目管理是20世纪70年代中期美国国防部针对软件产品不能按时提交、软件开发的预算严重超支以及软件的质量达不到预期的原因等问题提出的。软件项目质量管理的目的是为了让软件项目的生命周期都能在管理者的控制之下, 以达到软件质量符合用户明确或隐含的需求。
(2) 软件项目质量管理的内容。为了开发出符合质量要求的软件产品, 贯穿于软件开发生存周期过程的质量管理工作, 包括建立对项目的软件产品实现的特定质量目标、制定达到这些目标的计划, 监控并调整软件计划、软件工作产品、活动及质量目标以满足最终用户的需要。软件项目质量管理的过程一般包括:软件项目质量计划编制、质量保证、质量控制等。
二、软件项目质量管理的必要性
1. 软件项目质量管理的重要性。
软件属于纯知识产品, 完全是人们大脑思维的产物。其开发的进度和质量很难估计和度量, 生产效率也难以预测和保证。此外, 软件质量不达标, 不仅会增加后期的管理经营与维护成本, 还可能会引起难以预料的后果。软件项目管理质量先行, 如果我们能够控制软件生命周期每一个阶段的质量, 就能很好地控制软件开发的整个过程。
2. 软件质量的影响因素。
软件能力成熟度模型的重点是从组织管理方面研究评估软件生产过程, 从而提高软件质量。软件业经过多年的实践总结, 得出软件质量是人员、过程和技术的函数, 即Q=f (M, P, T) 。其中, Q是软件质量;M代表人员;P代表软件生产过程;T代表技术。从项目管理的角度看, 影响软件质量的结构因素即组织管理、项目的过程管理和技术工具的使用。
3. CMMI软件质量认证体系。
CMMI (Capability Maturity Model Integration, 即能力成熟度模型集成) 认证是由美国软件工程学会 (software engineering institute, 简称SEI) 制定的一套专门针对软禁产品的质量管理和质量保证标准。近年来, 很多软件企业纷纷实施CMMI管理模式, 如东软、华为等企业已通过了三级或四级评估。CMMI技术不仅能够提升企业的管理水平, 还能够引入科学的管理理念, 提升企业的整体管理水平。
三、基于CMMI的软件项目质量管理改进建议
1. 软件项目需求管理过程改进。
软件项目经理应组织相关人员制定需求计划文档, 从项目质量管理的整体角度及时掌握用户需求信息。为了管理分配需求, 项目开发过程应该遵循一个书面的约定或组织策略, 其内容包括: (1) 为了在开发过程中有章可循, 要为分配需求建立文档; (2) 为了使分配需求能切实可行, 必须由软件经理和其它受影响组成员进行审查; (3) 当分配需求变更时, 软件计划、工作产品和活动也要随之更改。
2. 软件项目计划执行过程改进。
软件开发计划 (SDP, Software Development Plan) 是关于软件项目的策划、建议与评审、确定易于管理的软件生命周期。在此过程中, 需要编制软件进度表、软件风险的鉴别与估计、制定项目软件工程设施和支持工具的计划以及软件策划数据。在执行项目生命周期过程中分别进行概要设计和详细设计, 并针对各个环节上出现的问题进行评审, 有利于提高整体质量。
3. 软件项目监督控制过程改进。
项目经理及相关人员应制定好质量管理的规章制度或计划, 从技术和管理两方面, 由质量监督人员进行定期的质量检查和不定期的抽查, 严把质量关, 预防不合格品的产生。首先, 要明确规定好项目经理和项目小组成员的角色及其职责;其次, 要对项目进行实时跟踪, 掌握项目的实际实施情况。此外, 项目经理还应该定期召开项目阶段评审会议及时发现问题, 总结经验。
四、总结
本文结合项目管理的理论知识, 介绍了企业软件项目质量管理的内涵及重要性;着重以软件能力成熟度模型CMMI为指导, 分析改善软件项目质量的管理活动;并提出了项目实施各过程的改进建议。
参考文献
[1]马慧, 杨一平.《软件质量管理与认证方法》[M].北京:清华大学出版社, 2011.
[2]瞿焱.《项目质量管理》[M].杭州:浙江大学出版社, 2004.
软件项目产品质量管理 第7篇
那么, 是否能够找到一种能够在软件研发过程中切实可行的代码质量保证的方法呢?带着这个问题, 我们调研了当前软件行业内的可用与代码质量检查的主流方法和主要工具, 综合比较结果显示, 从引入成本、使用便利性、扩展性和应用范围等几方面统合考量, 我们发现了Sonar这个专门针对代码质量管理设计地平台软件。
1 Sonar是什么
Sonar是一个管理代码质量的开放平台。如图1 所示, 它可以从架构设计、注释、编码规范、单元测试、复杂度、重复度等7 个角度衡量代码质量。
在研究中, 我们发现Sonar设计实现的宗旨就是使用便利。首先, 它以模块化组件结构形式构成, 围绕核心功能以插件机制设计和实现其上的各种扩展应用功能模块, 有着较为极为便利的扩展性。目前可支持的插件有:
(1) 适应多种代码类型开发语言编程规范插件;
(2) 用于分析代码用的质量分析指标插件;
(3) 实现人机对话和报表展示用的质量管理插件;
(4) 可扩展第三方集成平台工具和测试工具用的平台集成插件;
(5) 适应国际化的语言本地化插件;
(6) 支持生成报表文件用的报表插件;
(7) 支持二次开发的开发工具插件等。
其次, Sonar在对外接口设计上也贯彻了其通用规范的设计思想, 采用了统一接口设计模式, 可以被方便地集成到其他持续集成平台或开发平台上。因其便利的易集成性, 已经被越来越多的国外软件团队所关注。当前, 与Sonar集成的主流平台组合模式有以下几种:
(1) Maven + Jenkins (Hudson) +Sonar;
(2) Maven+Sonar;
(3) Eclipse+Sonar;
(4) Intelli J IDEA + Sonar。
此外, 除上述优点外, 之所以引起我们注意的还是要数它的展现形式:基于Web平台以网页形式展现的量化数据图形的直观可视化代码质量报告 (见图2) 。
2 Sonar的优势
比较同类产品, 我们发现Sonar有如下几大优势:
(1) Sonar是一个专门的代码质量管理平台, 功能更加集中;
(2) Sonar的插件式设计模式, 不仅利于扩展其他第三方插件, 而且也便于自身被其他平台所引入, 在集成和被集成方面有着显而易见的便利性;
(3) Sonar是一款Web软件, 其网页化的展现形式使其在跨平台和使用条件上有着无可比拟的优势。
虽然sonar也存在一些问题, 尤其是个别插件的费用上, 但是相比其他商业化软件, sonar在使用成本上还是占有较大的优势, 如表1 所示。
3 Sonar能帮助我们做什么
利用Sonar, 我们可以轻松的实现代码质量的透明化, 进而实现代码质量的持续改进:
(1) 让部门管理者了解开发质量, 把每个项目代码推行统一的编码规范, 通过集中的项目代码检查评估我们当前的代码质量;
(2) 让项目管理者代码质量, 项目经理和QA可以实时了解项目代码质量, 有针对性地控制项目质量;
(3) 让开发人员了解代码质量, 开发人员可以随时了解自己的代码质量, 不仅仅是代码规范, 还包括程序设计质量;
(4) 让测试人员了解代码质量, 测试人员可以随时了解各模块代码质量, 有针对性地调整对各功能模块的测试力度和关注度。
4 Sonar在实际项目中的使用
为了更好的测试Sonar在国内实际项目中的适用性, 2014至2015年的一年期间, 我们先后选取了28个以Java开发语言为主的项目作为研究, 项目类型包括:Java Web类的服务端软件和Java Android类的客户端App应用软件。以某月度的分类项目开发质量数据报表为例 (见图3) 。
我们看到零售类项目的代码生产率明显偏低、代码缺陷数又偏高, 其中严重类型的缺陷占比也明显高于其他项目, 但是程序结构质量确比较高, 代码的违规率低。这种现象似乎并不合理, 经分析我们发现, 原来该类项目多为大型服务端Web程序, 其底层代码框架大都是已经沿用了几年的系统框架, 有着较高的稳定性。但是当前该类项目的团队组成中工作经验较少的人员占了多数, 加之该类项目的规模比较大、人数较多, 开发经理能够分配给每个开发人员的指导时间就比较少了, 所以造成了该类项目虽然结构质量高但总体缺陷偏多。针对该结果, 我们协助开发经理组织专门针对java程序设计和编码规范的培训工作。同时我们很高兴的看到, 参加该培训的项目在次月的代码质量结果中就发生了显著的改善。
经过一年多地不断实践和改善, 我们得出以下结论:将Sonar代码质量管理平台应用于企业的软件开发过程中, 以项目为单位定期生成代码质量分析报告, 不仅可以实现项目开发阶段的代码质量透明化管理, 而且能够实现对代码质量的持续跟踪。如果在企业软件质量管理工作过程中推行Sonar平台的代码质量管理形式, 对代码质量结果的定期量化分析, 并制定对应的改善措施, 坚持PDCA改善过程, 那么, 在开发阶段保证软件产品质量也就指日可待了。
摘要:文中对代码质量管理平台Sonar的质量评估模型和技术优势进行了深入剖析和解读, 介绍了将Sonar平台在软件项目管理中的意义和价值。从多个角度阐述了代码质量管理对软件产品质量的重要性, 并通实际项目导入的数据比对分析展示了该平台对实现企业软件项目管理中的代码质量透明化的重大意义。
关键词:软件质量保证,代码质量管理,Sonar,持续集成
参考文献
[1]Frederick P.Brooks.Jr.人月神话[M].北京:清华大学出版社, 2002 (11) .
[2]付金莹, 蒋云, 王金伦, 申宗杰.基于静态分析的应用代码质量管理体系研究及应用[J].中国新通信, 2013 (21) :65-68.
软件项目产品质量管理 第8篇
1 需求分析阶段
进行需求分析的首要前提是对用户的需求进行准确市场定位和分析。做好需求分析, 不仅能保证在软件开发运行后节约大量时间和投入成本, 并且还可以提高软件工程的实际利用效率。软件项目工程通常分为专用软件和通用软件两大类, 其中专用软件具有更强的针对性, 例如, 针对某社会企事业单位或者是某银行而开发的一系列专用软件系统。通常情况下, 软件用户在此之前已经初步掌握了较多的该软件的信息, 而此类软件程序管理者在开发之前需要对其具体需求情况进行分析, 与用户进行交流和讨论, 以求在最大限度上避免软件开发运行后出现低级性的误差和漏洞, 从而减少资源消耗和不必要的成本开支。而通用软件则指的是经过专业的市场调查分析研究出的相关软件, 主要针对软件技术类型方面, 例如, 用户需求的软件硬件配置和软件数据库等。通过对软件进行必要的需求分析, 可以根据特定客户的具体需求充分掌握该软件的具体功能、性能和运行环境, 以此全面提高其运行的正确性。
2 概要设计阶段
此软件项目设计阶段的主要职责就是对软件工程的具体编程使用语言、如何选择操作系统以及运行平台等进行概要设计, 并且还要选择适合的瀑布式开发方式, 进而根据特定的市场需求对潜在的编程、模型进行选择。同时, 还要对具体编程项目的分析情况以及设计编码情况进行正确量定, 建立起科学合理的分析文档。此外, 在此设计阶段还要对目标系统结构中的模块与接口、硬件和软件配置、数据具体结构等进行设计。
3 编码单元测试与联合测试
软件开发测试人员一定要根据特定的软件开发工具以及具体研发人员的特长设定研究编码, 并对每个软件测试单元和数据库定义进行相关操作, 通过相应的语言开发工具来进行正确研发、调试、测试使软件更加符合用户的具体需求。软件开发者需要严格按照规定的程序将各个软件单元、模块以及硬件、网络和其它系统资源联系起来, 通过集中化的测试来达到试运行的要求。在对系统集成和测试结果进行综合评审时, 要对集成测试分析报告进行正确研究, 确保结果的正确性。测试流程程如下图1所示。
4 试运行以及后期维护
软件开发人员首先要在试运行之前选择合适的应用和试点范围, 在做好各项试点记录后对运行支持的系统进行总结。此外, 还要做好各项数据转换、系统切换工作, 确保新旧系统能够正常运行。等新开发软件程序投入应用后, 需要进行后期维护操作, 并辅以适当的修改。主要包括有以下三大主要步骤:第一, 分析和理解软件工程程序、修改程序、重新验证程序。其中分析和理解程序这项维护操作的核心目的是能够准确把握程序的功能和目标, 这对于提高软件的正确性具有重要意义。第二, 修改程序。要有计划、有目的、有规则性地对软件进行修改, 通过对相关程序设计的认真修改来切实达到应用性效果。第三, 重新验证程序。对软件程序进行重新验证的目的就是通过对其进行修改来进一步提高其正确性。
5 结语
计算机软件技术是推动商业银行发展的一大助力因素, 其中软件工程项目的定向维护与设计是确保整个银行系统应用安全性的重要保障。因此, 商业银行应该全面提高其软件工程项目的质量控制管理水平, 不断对规范化步骤进行设计, 经过科学合理的检验和后期修改来切实提高其准确运行性, 增强软件设计计划的可执行性, 加强网络资源的可利用效率, 有效减少相应的成本管理支出费用, 起到增强商业银行市场竞争力的作用。
参考文献
[1]班孝明.加强软件测试质量管理提升银行竞争力[J].中国金融电脑, 2012 (11) .
[2]丁玉伟, 赵洪波.商业银行软件测试管理探究[J].中国金融电脑, 2013 (09) .
软件项目质量保证 第9篇
随着软件开发技术的发展和信息技术的广泛应用,软件项目质量管理已经变得越来越重要,它不仅涉及到项目最终能否成功,更涉及到人身安全乃至公共安全。而1996年欧洲航天局阿丽亚娜5型火箭发射后40秒钟火箭爆炸,发射基地2名法国士兵当场死亡,历时9年的航天计划严重受挫,震惊了国际宇航界。爆炸原因在于惯性导航系统软件技术和设计的小失误。2007年美国12架F-16战机执行从夏威夷飞往日本的任务中,因电脑系统编码中犯了一个小错误,导致飞机上的全球定位系统纷纷失灵,有一架战机“折戟沉沙“。这些惨痛的教训说明,在软件开发项目中认真抓好质量管理。
2 项目质量管理的难点
每个项目的实施总是拥有同样的总体目标:质量、时间和成本。三者是一个相互制约、相互影响的统一体,其中任一项目标变化,都会引起另两个目标变化,并受其制约。如何合理地保证项目质量,正确处理质量与时间、成本之间的矛盾是项目质量管理的一个难点,这需要整合项目所有方面的内容,保证按时、低成本地实现预定的质量目标。
要解决这一难点,必须立足于软件全面质量管理,需要从软件开发的全生命周期着手,建立覆盖项目计划、需求分析、设计、开发、测试等阶段的过程规范,将提高质量的目标分解成各个过程,以过程质量的提高来确保结果的质量。
3 项目开发各阶段的质量保证
3.1 需求分析
需求分析是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么的过程。这个过程往往是软件工程的关键过程,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。从系统开发实践中得知,在进行系统需求分析时犯下的错误,会在其他阶段被成倍地放大,错误越晚发现,开发系统的成本越高,系统的工期和质量也会受其影响。
解决需求分析错误的方法。公司通常邀请用户参与需求评定,然后对其用户的意见由项目成员跟踪验证是否写入需求规格说明书,同时根据用户的意见形成需求基线,交由配置员放入配置管理库。
尽管在需求分析阶段做了很大努力,但可以肯定的是,系统在开发过程中一定会发生变化,这种变更有时是如此的频繁和琐碎,以至于往往不能将变更及时反馈到项目的各个角色中,那么做好需求变更日志就显得非常重要。
在需求分析后面附上变更日志,并将修改后的需求分析指出新的版本,保留每次更改的版本而不是覆盖,这样就比较容易地跟踪到需求变更过程中带来的工作调整。
关于需求分析和变更可参照图1。
3.2 系统设计
系统设计是项目实施的重要环节,也是保证项目质量的关键阶段。由于在这一阶段设计变更相对容易发生,因此,必须设计优良的软件架构,采用好的设计方法,才能开发出可扩展性和健壮性良好的软件,从而降低与软件构造相关联的风险。
软件架构是一套构建系统的规则。软件架构设计能够降低成本、改进质量、按时和按需交付产品的关键因素。架构设计能够满足系统的品质,使受益者达成一致的目标。同时,它能够有效地管理复杂性并能够降低维护费用。由于架构的重要性,在设计阶段应尽早和尽可能多地关注系统架构,用体系结构描述语言和多视图结合的方式来描述系统的架构,使系统更易于理解,方便系统相关人员之间进行交流,并且有利于系统的一致性检测以及系统质量属性的评估。在概要设计阶段结束时,应组织一个有分析人员、客户、设计人员、测试人员小组对架构需求进行评审。审查的主要内容包括所获取的需求是否真实反映了用户的需求,分类是否合理,构件合并是否合理等。必要时,可以在“需求获取----标识构件----需求评审”之间进行迭代。
3.3 实现
实现也就是编码过程。在这一阶段中,软件设计人员不仅要编码,同时也包括对用例进行测试。根据前一阶段得到的详细设计,程序员开始编码并且调试程序,测试人员则根据需求规格说明书设计测试用例,设计出来的用例在得到项目组成员认可并通过项目经理审核才能进入配置库。同时程序员调试完程序提交测试人员进行程序正确性检测。
3.4 维护
公司应成立维护小组,其任务是一方面对项目客户进行跟踪服务;另一方面是整理文档,检查评审的文件,寻找改进的机会。通常维护小组主要由项目组的部分开发人员组成。他们不仅要了解目标软件,还要与客户进行沟通,以便能够以最快的速度修正错误。对于一般性的错误,如操作不当等引起的问题,全部由维护小组执行完成,但需要用户测试确认上线。如果较大的修改则需要用户或者维护人员填写变更申请,经专家会议讨论分析可行,方案再由维护小组和开发小组实施。
4 结语
对软件项目进行质量管理,需要从客观因素、具体情况出发,根据企业的质量方针,制定详细的质量规划,抓好项目各阶段的质量保证,以确保项目的最终成功。
摘要:软件项目管理的对象是软件工程项目,它的质量保证和如期完工与有效的项目管理是分不开的。阐述了软件质量管理的难点,提出了解决这一难点的见解。
关键词:质量保证,质量管理
参考文献
[1]徐强.软件项目质量管理[M].中国新技术新产品,2009.
[2]杨文波.浅谈软件项目的管理[S].信息与电脑,2009.
[3](美)凯西.施瓦贝乐,王金玉,时郴.IT项目管理[M].北京:机械工业出版社,2002.
项目管理在软件中的应用 第10篇
摘要:随着信息产业的飞速发展,项目管理对于以应用开发为主的软件企业是一个行之有效的管理方法,项目管理在软件开发中的应用日益受到重视。本文主要通过对项目管理在软件开发中的应用的成因、存在的问题以及相应的解决方案进行了分析和论述。
关键词:项目管理软件开发
0引言
如果用两个字概括当前社会的特点,那就是“变化”,而这种变化在信息产业中体现得尤为突出,技术创新速度越来越快,用户需求与市场不断变化,人员流动也大大加快。在这种环境下,企业需要应对的变化以及由此带来的挑战大大增加,也给管理带来了很多问题和挑战。软件行业是一个极具挑战性和创造性的新行业,管理上没有成熟的经验可供借鉴。而项目管理应该说对于软件企业,尤其是那些以应用开发为主的软件企业,是行之有效的管理方法。因此,项目管理在软件开发中的应用日益受到重视。
1项目管理的概念和意义
项目管理是在一定的约束条件下,以高效率地实现项目业主的目标为目的,以项且经理个人负责制为基础和以项目为独立实体进行经济核算,并按照项目内在的逻辑规律进行有效的计划、组织、协调、控制的系统管理活动。没有项目管理,项目也有可能成功。但没有管理的项目,很难保证项目的利润空间,对公司来说,亏损的风险就大。所以我们要有项目管理,以保证公司在总体上是盈利的,注意不是每一个项目都要盈利。
另外,有了项目管理,就有了管理改进的基础,无论刚开始的项目管理多么糟糕,只要有管理,就有了改进的可能性,至于能不能得到改进,以及改进的快慢,则取决于两个因素:一个是人,特别是各级管理者:另一个是利益。关键是“利益”,准确的说是“利益的分配”,在权责利明确的前提下,人才能充分的发挥作用。
2项目管理在软件开发中的应用的现状及成因
随着信息技术的飞速发展,软件产品的规模也越来越庞大,个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。各软件企业都在积极将软件项目管理引入开发活动中,对开发实行有效的管理。从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。早在20世纪60年代中期,人们就发现软件的生产出现了“问题”,主要表现在生产过程不规范,缺乏管理。但是直至80年代还是没有提出一套管理软件开发的通用原则,软件管理不善的问题依旧在大范围内存在。目前的软件开发正逐步趋向于复杂化、多元化,大多数开发团队中都会出现同时开发多个版本、开发/维护工作并存、多地点同时开发等情况,给软件开发管理带来了前所未有的困难。如果管理不善,必将造成版本混乱,各个开发人员的工作相互交叉、干扰,整个开发团队的工作在一种无秩序的不良状况下运行,严重影响软件产品开发的进度和质量。
因此,随着软件开发的深入、各种技术的不断创新以及软件产业的形成,人们越来越意识到软件过程管理的重要性,管理学的思想逐渐融入软件开发过程中,应用开发的项目管理日益受到重视。而项目管理技术的发展与计算机技术的发展是密不可分的,随着计算机性能的迅速提高,大量的项目管理软件涌现出来。它们可以用于各种商业活动,提供便于操作的图形界面,帮助用户制定任务、管理资源、进行成本预算、跟踪项目进度等。
3软件项目管理常见问题及解决方案
对于软件开发项目中,经常出现两种极端情况,一种是创造了新的生产率和质量的纪录:一种则完全是一场灾难,不是被取消就是拖延很长时间。分析目前项目管理需要改进的问题可以从几种相关角色的角度去考虑:项目经理、项目组成员、公司管理人员、市场人员、客户等。
3.1缺乏项目管理系统培训(相关对象:项目经理、管理人员)。项目经理在项目管理方面的培训较少或不够系统。项目经理或管理人员不了解项目管理的知识体系和一些常用工具和方法,所以在实际工作中没有项目管理知识的指导,完全依靠个人的知识技能,管理工作的随意性、盲目性较大。
解决方案:项目经理要接受系统的项目管理知识培训,有了专业领域的知识与实践,加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的项目管理水平。实行项目经理知识技能资格考核制度,让项目经理自觉补充学习项目管理的知识和一些常用工具和方法。
3.2项目计划与管理意识问题(相关对象:项目经理)。部分项目经理没有意识到自己项目经理的角色,从总体上去把握管理整个项目,而是埋头于具体的技术工作,造成项目组成员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。有些项目经理对于一些不服管理的技术人员,没有较好的管理方法,工作不好安排的工作只好自己做。另外由于工作分解结构设计的合理性,项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。
解决方案:加强项目管理方面的培训,并通过对考核指标的合理设定和宣传引导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前,最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习,并且在实际工作中不断提高自己的管理素质,丰富项目管理经验,提高项目管理意识。
3.3风险管理意识问题(相关人员,项目经理)。项目经理没有充分分析可能的风险,对付风险的策略考虑比较简单。项目经理在做项目规划时常常没有做专门的风险管理计划文档,而是合并在项目计划书中。有些项目经理没有充分意识到风险管理的重要性,对计划书中风险管理的章节简单应付了事,对于后面的风险防范起不到什么指导作用。
解决方案:通过学习项目管理知识掌握风险识别、量化、对策研究、反应控制的工具和方法掌握项目风险管理所必备的知识。加强对项目规划中风险管理计划的审核提高项目组的风险管理意识。总结本行业项目中常见的风险及其对策作为风险管理计划中必要的风险内容,并切实评估相应对策的有效性和可行性。
3.4项目干系人相关问题(相关人员:项目经理、项目成员、客户)。在范围识别阶段,项目组对客户的整体组织结构、有关人员及其关系、工作职责等没有足够了解以致于无法得到完整需求或最终经权威用户代表确认的需求。由于项目经理的工作问题,客户参与程度部不高,客户方相关责任人不明确或对范围和要求责任心不强,提出的要求具有随意性,项目前期对需求的确认不够积极;或者是多个用户代表各说各话、昨是今非但同时又要求项目尽早交付;项目后期需求变化随意,造成项目范围的蔓延,进度的拖延,成本的扩大。
解决方案:项目的目的就是实现项目干系人的需求和愿望。项目干系人管理应当从项目的启动开始,项目经理及其项目成员就要分清项目干系人包含哪些人和组织,通过沟通协调对他们施加影响,驱动他们对项目的支持,调查并明确他们的需求和愿望,减小其对项目的阻力,以确保项目获得成功。
3.5项目团队内分工协作问题(相关人员,项目经理、项目成员)。项目团队内部有时由于各阶段不同角色或同阶段不同角色之间的责任分工不够清晰而造成工作互相推诿、责任互相推卸的现象,有时各阶段不同角色或同阶段不同角色之间的责任分工比较清晰但是各项目成员只顾完成自己那部分任务、不愿意与他人协作。这些现象或多或少地造成了项目团队内部资源的损耗,从而影响了项目的进展。
解决方案:项目经理应当对项目成员的责任进行合理的分配并清楚地说明,同时应强调不同分工、不同环节的成员应当相互协作,共同完善。
以上对软件开发项目管理中出现的问题的分析还不够深入,也无法列举所有遇到或将遇到的问题,解决方案也要根据实际情况进行调整,希望引起对这些问题更多的思考和改进。
4结束语
软件项目需求管理和范围管理 第11篇
某市社区网络平台建设涉及到网络平台及在该平台之上运行应用系统的建设,这是一个庞大的系统工程,需严格遵守“分步实施,逐步推进”的原则开展。项目实施分为网络平台建设和应用系统建设两期工程。
1.1 网络平台建设
网络平台建设工程主要为网络平台建设,即依托某市信息中心现有的网络平台,采用内、外网相互独立的接入方式,搭建社区内、外网络平台,以满足劳动、社保、医保、民政等各部门与社区之间的应用需求。目前一期工程完成了基础网络、数据共享交换平台、门户网站建设、核心应用系统及个人基础数据库框架搭建任务,并通过专家验收。投入使用,运行状况良好。
1.2 应用系统建设
应用系统建设工程重点为应用系统建设,目前还在建设中。
2 项目范围难以管理
范围管理是项目管理的基础,也是项目管理工作的重点和难点。含糊的需求和频繁变更的范围让项目的甲乙双方吃尽苦头。如何做好项目的需求管理与范围管理常常是项目经理最头疼的问题。此项目的成功,得益于有效的项目需求管理和范围管理机制。
3 项目需求和范围的区别与联系
虽然需求管理贯穿信息系统项目的整个生命周期,但只有经过需求分析过程之后才能确定项目的范围。
3.1 需求开发、需求管理和范围管理
“需求”指的是由项目接受的或项目产生的产品和产品构件需求,包括由组织征集的对项目的需求。这种需求既有技术性的,也有非技术性的。
所有与需求直接相关的活动通称为需求工程。需求工程的活动可分为两大类:一类属于需求开发,另一类属于需求管理。需求开发的目的是通过调查与分析,获取用户需求并定义产品需求。需求管理的目的是确保各方对需求的一致理解;管理和控制需求的变更;从需求到最终产品的双向跟踪。
项目范围管理的目的是确保项目包含且仅仅只包含项目所必须完成的工作。项目范围管理包括为成功完成项目所需要的范围计划编制、范围定义、创建工作分解结构、范围确认和范围控制五个过程。
3.2 需求开发、需求管理和范围管理的区别与联系
首先通过需求开发来获取信息系统项目的需求,在此基础上确定项目的范围、进行项目范围管理。需求管理是对已批准的信息系统项目需求进行全生命周期的管理,其过程包括需求管理定义、需求管理流程、制定需求管理计划、管理需求和实施建议等。
对于信息系统项目需求,可以根据需求的紧急重要程度、项目本身和甲乙双方的实际情况,分步或分期满足。确定每一期应满足的需求后,该期的范围管理就有了基础。需求管理处理需求的变更,需求的变更会引起项目范围的变更。
项目范围包括项目的最终产品或服务以及实现改产品或服务所需的各项具体工作。从这个意义上讲就是项目应该做什么,不应该做什么,以及如何做。也就是说项目范围管理包括两个方面的内容:项目需求和项目过程。项目需求确定做什么,项目过程确定如何做。
项目范围管理也就是对项目应该做什么和怎么做做出了相应的定义和控制。事实上是对需求的管理和项目过程的管理。
4 项目在范围和需求管理方面存在的问题
由于此项目的项目干系人多,涉及到政府机关很多部门,合同金额大,实施周期长,业务涉及面广,需求变化频繁,各级政府部门和社区服务站的信息化程度参差不齐,开发的难度和风险较大。采用何种有效的方法和措施,将问题的不良影响降到最低,对我们而言是一种挑战,在需求和范围管理方面,我们采取以下措施来解决上述面临的问题。
5 有效的项目范围管理
5.1 编制范围计划
我们根据历史数据和项目开发计划,利用模板工具制定了一个范围管理计划。不同的计划详尽程度自然不一样,其中范围说明和范围管理计划必须包含在内。其次还包括制定《软件开发功能设计规范》的过程和方法,创建WBS的过程,详细说明已完成的开发结果如何得到正确的确认和认可,以及范围控制管理的一些规程和制度。它也包括一个对项目范围预期的稳定而进行的评估和对变化范围怎样确定,变化应归为哪一类等问题的清楚描述。
5.2 范围分解
在项目管理中我们采用了MS Project2003作为项目管理工具。计划明确了,然而该做哪些事情似乎还是一把抓,因为完成项目本身是一个复杂的过程,必须采取分解的手段把主要的可交付成果分成更容易管理的单元才能一目了然,最终得出项目的工作分解结构(WBS)。恰当的范围定义对项目成功十分关键,当范围定义不明确时,变更就不可避免地出现,很可能造成返工、延长工期、降低团队士气等一系列不利的后果。
以项目进度为依据,通过project我们建立了项目的WBS。这种方式的优点是结合进度划分直观,时间感强,评审中容易发现遗漏或多出的部分,也更容易被大多数人理解。对WBS的每个任务明确了其可交付物。对每个任务我们都要求细化到每个人在一周内可以完成。保证每一项任务都是可控的。同时我们还定制了完善的WBS字典,范围变更计划及规程,项目核实标准(含质量控制标准),并交由业主、项目监理单位审核后,由业主和项目监理单位共同实施。
5.3 范围变更控制
一个项目的范围计划可能制订的非常好,但是想不出现任何改变几乎是不可能的。因此对变更的管理是项目经理必备的素质之一。变并不糟糕,糟糕的是缺乏规范的变更管理过程。范围变更的原因是多方面的,比如用户要求增加产品功能、环保问题导致设计方案修改而增加施工内容。项目经理在管理过程中必须通过监督绩效报告、当前进展情况等来分析和预测可能出现的范围变更,在发生变更时遵循规范的变更程序来管理变更。
为了保证项目的成功,我们建立了一套严格的变更控制制度,针对用户的每一项变更要求,必须提出书面申请,对变更申请,根据不同的变更级别,组织开发团队的主要成员、上级领导以及建设方的主要代表,对变更进行各方面的评审,如变更的必要性、技术可行性,对项目成本、进度的影响以及已完成或未完成,将要进行的别的任务的影响。
同时,根据分析结果来决定是否接受用户的变更要求。而对于特别重大的变更,邀请建设方的主管领导作为变更控制中的主要成员参与对变更的评审,由于建设方重要级的领导参与,使得是否批准变更的决定,具有权威性。同时,我们邀请了双方的高层领导以及第三方的专家,参与对变更的评审,把变更对项目的成本、技术、进度等影响作了详细的分析和核算后,大家一致决定拒绝变更的要求,并要求我们在项目完成以后,以一个新的项目来实现用户的新要求。由于范围变更管理作的充分,我们不仅规避了项目范围蔓延的风险,还为组织带来了新的开发项目。
在工作中,我们也发现了很多不足,特别是需求分析做得不够好,可行性研究做得不够充分等,在以后的工作中会改进不足,继续努力学习、总结经验。
摘要:本文结合工作实际经历,首先介绍了项目基本情况以及作者在其中所承担的主要工作和职责介绍;详细论述了对需求管理和范围管理的认识及它们之间的区别与联系,并就项目范围管理过程中采用的具体方法和工具作了介绍。同时,总结了从此项目中所获得的宝贵经验和深刻教训。
关键词:项目需求管理,范围管理
参考文献
[1](美)科兹纳,杨爱华(译).项目管理.电子工业出版社.2010-6-1.ISBN:9787121109102.