软件开发项目案例(软件开发项目管理案例)
今天给各位分享软件开发项目案例的知识,其中也会对软件开发项目管理案例进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
软件项目开发总结报告实例
软件项目总结报告范文
1引言
1.1编写目的
XXX公司业务管理系统的开发已经基本完成。写此项目开发总结报告,以方便我们在以后的项目开发中来更好的实施项目的订制开发; 让我在今后的项目开发中有更多的有据的资料来规范我们的开发过程和提高我们的开发效率,从而创造更多公司效益。
1.2背景
项目名称:XXX业务管理系统
软件名称:XXX业务系统
客户:XXX
用户:XXX员工
1.3参考资料
项目开发文档:
1.软件开发数据模型:PDM_OperationSystem20070831.pdm
2.数据库开发文档: XXX业务管理系统数据库设计说明书2.0.doc
3.软件业务流程参考:XXX业务管理系统流程说明.doc
4.软件使用手册参考:XXX业务管理系统功能说明3.0.doc
5.软件业务流程参考:XXX业务管理系统流程说明.doc
6.软件中使用到的第三方控件:ComponentArt Web.UI 2006.1252 for asp.net2.0.rar
7.软件中使用的安全Ikey驱动:Ikey Driver.rar
以上参考资料是截止2007-08-31是最新的资料文档。如有修改,即使修改此处的参考文档名称。
2开发工作评价
2.1对生产效率的评价
1. 系统开发已历时快1年的时间了
2. 开发的反复性比较多。
3. 对客户的需求理解不是很透彻。
综合以上,此项目的开发效率不是很高,相反有相当一定时间的浪费。
2.2对产品功能的评价
经过我们公司各位同事的共同努力协作,XXX业务管理系统已经很好的完成了客户的业务流需求。经过对客户使用过程的观察,此项目开发的还是比较成功,但是还是存在着一些问题,造成这些问题的原因是多方面的。如:前期系统数据库的设计缺陷和部分代码的构建缺陷、客户需求的理解上也存在一定问题,这就需要我们用一定的时间来维护客户使用过程中提出的新问题和存在的debug。总的来说,此系统的功能开发还是一个比较成功的案例。
2.3对技术方法的总结
在此项目中使用到技术和工具:
1. 使用代码生成器:使用代码生成器 [动软.Net代码自动生成器],此工具在很大程度上提高了编码效率,从而加快了项目的开发进程。在以后的项目中,我们要尽量的来使用一些类似的工具来在最短的时间内完成工作。在今后的项目开发中,我们最好是能开发出适合自己的代码生成工具,更大限度的节省开发周期和开发费用。
2. 使用数据库建模工具;PowerDesigner 工具来建立系统数据库模型,以方便程序员很好的理解业务流和掌握系统架构者的架构思想,更好的满足客户的功能需求。在今后的项目开发中,我们要更好的来完成系统的前期数据库模型的建立,最大的来优化系统功能。
3. 使用第三方控件:此系统中使用了ComponentArt Web.UI 第三方控件。此控件在很大程度上满足了客户对软件界面的需求,从而也给软件的操作带来了方便。本项目中只使用了ComponentArt Web.UI一种第三方控件,在今后的项目开发过程中,要继续使用第三方的控件。这样以来,无论是针对软件界面的美观性、友好性来说、易操作性而言,还是针对系统开发效率而言,这都是很好途径。但需要意的是:在是使用第三方控件时,要谨慎的选择一些网络中的比较常见的第三方控件。
4. 使用自定义控件:此系统中使用了自定义控件(GhdGridView),此自定义控件可以很好的统一系统中的所有信息显示表格样式。如客户对数据显示样式有什么新的意见,我就不需要修改每一个页面的表格样式,我们只需要修改GhdGridView控件的样式,系统中的所有继承自GhdGridView的表格样式都可以改变。
5. 系统开发框架:此系统的框架使用的是简单三层结构,此框架在开发一些中小软件是比较实用的。但是我们要是可以开发出自己的框架,把一些通用的功能开发到框架中。这样以来,在以后的系统开发中,针对系统中一些通用的功能就不需要再开发,从而也可以很好的提高我们的开发效率;减少很多维护费用。使我们的技术不断的更加成熟。
6. 系统安全加密:此系统中针对客户提出的系统安全问题,我们采用了Ikey加密硬件钥匙来验证客户端登陆客户的合法性,此Ikey钥匙可以绑定到一个系统使用用户,也可以让多个用户来使用一个加密钥匙来验证登陆系统的合法性。这样以来,即使用户的密码不慎丢失,或者被不法人员取得(不法人员他也是无法登陆到我们的系统中来),这样就最大的提高了我们系统的安全性。Ikey加密钥匙是很好的加密B/S架构软件的硬件工具,在以后的软件安全方面可以借鉴。
3项目经验总结
3.1签定合同
一个项目的开发成败或者说项目开发带来效益的大小,在很大程度上是受项目合同签定的影响的。往往,很多一部分公司与客户签定的项目合同都是很模糊的,也很难签定的比较清楚,这样以来就会导致在项目的开发后期,工作两会越来越大,影响项目的竣工周期;而且,项目的开发费用一般是不会变的。这样以来,我们就大大的降低了我们的开发效益。虽然需求范围很难签定的明确,但是我们在签定合同时,要尽量的去把合同功能边界和添加新功能的条件签定。
3.2开发团队
在项目确立后,要尽快的建立起项目开发团队。
项目团队成员的团结合作、相互沟通是非常重要的,团队成员之间要相互学习彼此的优点和技术,使团队的能力不断的提高。这样,在项目的开发过程中,团队才不会被难题困住不动。另外,团队中要有一个项目负责人,这个人无论是在与客户的沟通上,还是在技术上都要是很出众的人,此项目负责人要能很好的沟通客户与开发成员之间,以此来更好的理解客户的功能需求。人的记忆力总是有限的,所以就要求开发团队成员要尽量的书写一些开发文档,这些文档往往是我们在项目开发后期要用到的可寻资料。项目团队士气是项目成功的一个因素,我们需要不断的来培养我们的团队气势,使我们的团队不断的壮大。
3.3需求的调研
在项目确立后,就到了需求调研分析阶段。
1. 项目组对客户的整体组织结构、公司有关人员的关系、职责等如果没有一个很好、足够的了解掌握,这样项目组就无法很好的完整的整理到客户的需求、或者说客户真实的功能需求,如此以来我们就为自己埋下了地雷,影响项目的开发周期,这就要求我们要与客户搞好无论是工作上的还是生活上的朋友关系,要深入的去了解客户需求。
2. 我们要尽量的让客户也参与到项目的开发团队中来,也就是说我们要使客户把自己也纳入到项目的开发团队中来,如此一来,我们掌握客户需求的真实性、可靠性就会大大的提高,也就不会为项目的后期功能开发埋下陷阱
3. 在需求调研过程中,如果缺乏足够用户参与,这样的需求调研也是失败的。很多程序员不愿参与到客户的需求调研中去,为什么呢?很简单,与客户沟通不如与代码沟通容易有意思。尽管这样,我们还是必须用足够多的时间去和客户进行沟通,了解他们真实的需求。很多用户也是如此,他们自己也不愿意参与到项目的需求调研中来,为什么呢?需求调研有出去和朋友一块烂漫对吗。。。虽然现状如此,我们还是要努力的使客户参与到需求的调研中来。
4. 模糊需求,也就是模棱两可是需求规格说明中最为可怕的问题。一是指诸多客户对需求说明产生了不同的理解;一是指单个读者能用不止一个方式来解释某个需求说明。针对对这种情况,就要求我们的调研人员要能够从多个角度来分析客户的不同需求,整理出最终的需求与客户确认,定出最终真实可靠的需求,我们绝不能凭借我们自己的单面理解来定立客户的最终需求。
5. 在一个项目的开发中,文档的书写是极为中要的一项工作。因为,某些文档就是我们在开发后期与客户沟通的可寻依据、也是我们程序员在编码过程中要用到的重要文档。我们绝对不能认为,凭借我们的大脑来记录所有的开发需求。。。;即使,你说你是天才,你要用你那颗爱因斯坦的大脑来记录所有的开发需求,那也是不可能的,人的精力总是有限的。这就要求我们在需求调研中做好需求文档的记录和整理。
6. 需求调研工具选择,客户一般对图形还是比较感兴趣的,所以我们在调研过程中,我要尽量的采用图形化界面来和客户沟通需求。比如可以采用Rose工具,把客户的意思转换为用例图、时序图、协作图、状态图、类图等,使表达的意思更加直观。这样客户会更快的进行问题的实质。
3.5做好开发计划
在项目确立后,我们就需要做好项目开发计划,需求调研用时,开发用时,测试用时,实施用时,维护用时。在我们做好了计划后,我们要随时的跟踪计划任务的完成进度,从而使我们的项目进度掌控在我们的开发周期范围之内,今日计划、行动,明日成功。
3.5很好的沟通
在其他行业中,人与人的之间的沟通只很重要的。项目开发也不例外,很好的沟通能够加快项目的进度,这就要求我们每一个开发人员要学会和善于沟通于客户和同事之间。在一个项目的开发过程中,我们与客户的沟通是一个不断交流和沟通的过程。在开发到一定的阶段,我们就需要和客户沟通已有功能,尽量的去避免一些隐藏的问题,及时的发现问题,解决问题,从而按时或者提前完成项目的开发。
3.6做好工作总结
在项目进行的过程中,我们要不断去整理自己的工作情况和做好总结,这样以来,无论是在自己的技术还是其它方面,都会对我们有很大的提高,在长期的积累后,无论是我们个人能力,,还是我们的团队能力都会有很大的提高。
python软件开发的案例有哪些,可用于哪些开发
列举一些比较有名的网站或应用。这其中有一些是用python进行开发,有一些在部分业务或功能上使用到了python,还有的是支持python作为扩展脚本语言。数据大部分来自Wikepedia和Quora。
Reddit - 社交分享网站,最早用Lisp开发,在2005年转为python
Dropbox - 文件分享服务
豆瓣网 - 图书、唱片、电影等文化产品的资料数据库网站
Django - 鼓励快速开发的Web应用框架
Fabric - 用于管理成百上千台Linux主机的程序库
EVE - 网络游戏EVE大量使用Python进行开发
Blender - 以C与Python开发的开源3D绘图软件
BitTorrent - bt下载软件客户端
Ubuntu Software Center - Ubuntu 9.10版本后自带的图形化包管理器
YUM - 用于RPM兼容的Linux系统上的包管理器
Civilization IV - 游戏《文明4》
Battlefield 2 - 游戏《战地2》
Google - 谷歌在很多项目中用python作为网络应用的后端,如Google Groups、Gmail、Google Maps等,Google App Engine支持python作为开发语言
NASA - 美国宇航局,从1994年起把python作为主要开发语言
Industrial Light Magic - 工业光魔,乔治·卢卡斯创立的电影特效公司
Yahoo! Groups - 雅虎推出的群组交流平台
YouTube - 视频分享网站,在某些功能上使用到python
Cinema 4D - 一套整合3D模型、动画与绘图的高级三维绘图软件,以其高速的运算和强大的渲染插件著称
Autodesk Maya - 3D建模软件,支持python作为脚本语言
gedit - Linux平台的文本编辑器
GIMP - Linux平台的图像处理软件
Minecraft: Pi Edition - 游戏《Minecraft》的树莓派版本
MySQL Workbench - 可视化数据库管理工具
Digg - 社交新闻分享网站
Mozilla - 为支持和领导开源的Mozilla项目而设立的一个非营利组织
Quora - 社交问答网站
Path - 私密社交应用
Pinterest - 图片社交分享网站
SlideShare - 幻灯片存储、展示、分享的网站
Yelp - 美国商户点评网站
Slide - 社交游戏/应用开发公司,被谷歌收购
软件项目管理及案例分析
软件项目管理及案例分析
引导语:美国项目管理专业资质认证委员会主席Paul Grace说过,在当今社会中,一切都是项目,一切也将成为项目。下面是我为你带来的软件项目管理及案例分析,希望对你有所帮助。
中国科学院计算技术研究所是国家专门的计算技术研究机构,同时也是中国信息化建设的重要支撑单位,中科院计算所培训中心是致力于高端IT类人才培养及企业内训的专业培训机构。中心凭借科学院强大师资力量,在总结多年大型软件开发和组织经验的基础上,自主研发出一整套课程体系,其目的是希望能够切实帮助中国软件企业培养高级软件管理与技术人才,提升整体研发能力。迄今为止已先后为国家培养了数万名计算机专业人员,并先后为数千家大型国内外企业进行过专门的定制培训服务。
高水平项目管理是软件项目成功的关键,也是软件产品质量的根本保证,具有这方面理论和实践的人员是目前软件组织中急需的高层次人才。为建立符合中国国情的软件开发过程和组织体系,培训中心特举办“软件项目管理”培训班,具体事宜通知如下:
一、培训对象
软件开发机构高级管理人员、项目经理、系统架构师、系统分析师、资深开发人员、质量保证人员以及其他对提升软件开发质量负有责任的人员。 二、 学员基础
1,对软件项目的分析、设计、组织和开发具有一定实践经验;
2,有一定的软件项目管理、技术管理或质量保证的基础知识与实践经验。 三、师资
由业界知名专家亲自授课:
袁老师 培训中心高级讲师,CMMI、GJB 5000A高级咨询顾问,具有多年成功管理大型软件项目的经验,对软件工程管理与过程具有深邃的理论见解和丰富的实践经验。 四、培训要点
高质量软件来自于高水平的项目管理,这个观点已经成为业内的共识。软件项目成功最重要的要素是什么?大型软件项目是依靠一个组织来完成的,如果这个组织在管理上是无序的,开发过程是非正式和混乱的,计划期限和成本目标通常超限,项目的成功取决于个人英雄式的行为,在人员发生变动时项目往往陷入灾难,那么很难说这个项目会获得成功。从这个意义上说,软件项目管理是项目成功的关键因素。
所有软件开发机构都必须在今天这种技术含量高、变化速度快、资源有限的环境下,实现软件生产规模化、规范化、国际化,这也是当前我国软件行业面临的最大挑战。在这样复杂的背景下,我们该如何去思考如何去做呢? 1,项目管理人员必须具备更广阔的视角,包括站在更高的角度理解企业管理的思想理念,
理解产品开发的质量、成本、效率与效益之间的关系,理解过程是如何对管理发挥作用的,理解规范化的软件工程方法。更重要的是,理解如何提升自身的领导素质,培养更好的领导力。这种宽阔的眼界,对于一个高级项目管理人员极其重要。
2,实施正确的软件过程对产品质量影响巨大。为了使团队在开发质量、效率以及成本上达到最优化,我们需要不断改进和优化软件过程。近年来随着项目越来越大越来越复杂,软件项目中存在着各种变化因素所带来的冲击越来越令人难以接受,促使业内研究更加合理的过程和与之相匹配的项目管理方式。过程改进需要有正确的思想理念,包括问题分析,科学与哲学理论基础,合理的价值观和方法论,以及正确对待改进中发现的问题。 3,高质量项目管理来自于正确的项目策划。项目管理人员必须受到项目策划的正规训练,包括如何制定发布规划,如何发现项目的关键驱动因素、约束和浮动因素,并且采取恰当的策略。还需要注意,在今天的形势下,创新是企业的生命,项目经理必须领导团队共同策划创新的产品概念,有目的、有组织的实现系统化创新,能够使用国际上通用的方法安排项目进度与日程,这对于项目成功极其重要。
4,为了增加产品的国际竞争力,产品质量作为经济发展的战略问题变得越来越重要,软件质量也正被视为软件企业的生命。大型项目质量控制问题的实施和解决,需要按照系统工程的理论进行,使整个系统所具有的多种不同的目标之间相互协调,以期达到系统质量的最优化。这需要项目经理对软件质量控制有深刻而透彻的理解。
5,为了确保项目的过程质量和产品质量达到要求,在开发过程中必须以可度量的方法对项目实施监控。我们不要期望有了好的计划就可以高枕无忧,也不要期望计划一成不变,项目经理的责任是不断监控项目的进展,不断的以问题、对策与解决方案的思路,在动态过程中去管理与调整。并且还要善于把监控过程转变为调动团队积极性的有效手段。
6,我们坚信:团队是决定项目成败的最重要因素。很多开发问题的出现,大多是由于机构对团队重要性的误解所造成的。因此希望更加有效开发的软件机构要把思考重心放在团队建设上,这是一个明智的选择。建立一个有竞争力的团队,是取得项目成功的关键步骤,而对于一个软件机构来说,团队是最有价值的资产。但我们如何来做如何来思考呢?
7,不要期待项目管理是什么神奇的方法。管理是个十分严肃的事情,它既需要在宏观上把握,又需要关注细节,特别是对一些关键点需要敏锐的.识别出来并找到解决方案。这就需要在实践中不断积累经验以及在理论上得到提升。
本课程并不是一个泛泛的原理性课程,而是许多专家多年来理论和实践的总结。我们需要有更广阔的视野、对问题更深邃的认识以及对改进与优化的不懈追求,更需要总结出不断优化管理的思路。在内容安排上,课程既有理论指导,也有通过案例对问题的共同探讨,把理论和实践有机的结合起来。这是一个强调思考力的课程,也是我们赶超世界先进水平新的增长点,希望所有学员都在这个课程中受益。 五、培训内容
第一讲 从宏观集成的视角看项目管理 1,软件项目与项目管理 项目的定义与特点 项目管理及其关键要素 项目管理的宏观视角 2,集成化软件项目管理模型 从宏观的视角看项目管理 项目启动过程中的前期决策 项目管理计划的衔接 项目管理要关注产品质量 第二讲 改善软件工程方法
1,软件过程:现代对于传统的挑战 软件过程的定义与概念 对于软件过程的重新思考 传统瀑布方式的问题 对于传统项目管理的反思 迭代式软件开发过程 项目不同阶段的度量要点
2,用经济学的观点改善软件工程方法
从工作量与成本模型入手研究项目管理方法 降低软件规模或者复杂度 改进软件开发过程 创建高效率的团队 第三讲 如何进行项目策划 1,定义项目的目标和范围
建立对项目目标和范围的认识 – 定义项目大纲
定义对项目参与人员的要求,早期获得项目成员的参与
案例分析:典型项目的组织机构(大中小型项目组织结构设置要点) 记录上述内容,作为项目计划的第一部分 2,工作拆分
为进行详细估算和日程的排定提供基础 确保工作识别的完整性 增加项目的成功机会 项目特点及策略确定
案例分析:大型项目特点及关键策略确定(某知名商业银行信用卡核心系统、美国宇航局项目) 拆分的重要原则
WBS拆分颗粒度实例讲解 3,风险管理 风险的识别 风险分类学 识别风险方法论 案例分析:识别风险 风险应对策略
案例分析:风险策略举例 缓解方法
案例分析:风险应对(某知名商业银行Iphone版手机银行、业务运营支撑网络管理工程) 4,软件估算
软件估算思路:自顶向下和自底向上 Wideband Delphi方法
功能点方法(标准及简化功能点方法)
供应商采购的估算应用(中国软件行业软件工程定额标准) 基于历史数据的估算方法
大项目估算结果举例(某知名商业银行信用卡核心系统) 某大型国有商业银行工作量及工期标杆系数举例 5,干系人管理
6,项目计划的承诺及基线化 第四讲 如何进行项目监控 1,项目监控的范围和内容
2,对照计划监督项目 3,分析监控数据
项目量化管理:挣值分析法 挣值分析法基础
三个重要概念:BCWS,BCWP,ACWP 挣值分析实例展示及分析练习 实施里程碑评审
4,项目监控中的项目管理活动 管理纠正措施 5,项目监控样例展示 项目周报 项目会议纪要
干系人及关键依赖关系 项目数据统计分析报表 项目管理工具简介 第五讲 供应商管理
1,供应商管理的范围和内容 2,供应商管理的主要流程 3,供应商管理的关键点
关于IT系统建设策略 产品选型评估要点
样例展示:某外包项目选型评估报告及评估细项 供应商管理策略
样例展示:某外包项目采购合同 项目测试与验收策略
样例展示:某外包项目验收计划 交付物验收
人力外包及维护类外包管理 第六讲 如何进行需求管理 1,需求管理的范围和内容 2,获得对需求的一致理解 获得对需求的理解 获取对需求的承诺
需求受理流程,改变业务的习惯,加强流量控制 3,需求跟踪 4,需求变更控制
确定需求变更类型 审批变更申请 管理变更请求
案例分析:某大型项目项目管控机制
系统日常升级维护中的需求变更控制:版本排期与冻结机制
5,需求管理参考模板:某知名商业银行业务需求模板及非功能需求样例 第七讲 打造有战斗力的团队 1,项目经理的领导力
领导力以及领导力模型 激励、组织与创新
理解开发人员的典型动机
最重要的个激励因素 正确应用奖赏和鼓励
关注让士气崩溃的杀手问题 如何培养自己的领导力 3,实现有效的团队合作
4,提高项目开发效率的的原则与技巧 避免做错事胜于做正确的事 管理原则与技术原则
一个标准是否可以适合所有情况? 项目按时完成的可能性 感知与现实的差距 时间到哪里去了? 典型的进度改进模式
六、培训目标1,掌握复杂软件项目规划与监控的方法,并在实际项目过程中灵活应用; 2,在项目开发中正确应用可度量的方法进行项目规划与控制; 3,在项目管理中正确实施质量控制方法;
4,对项目过程中的团队有深刻的理解,确保软件项目走向更高层次的成功; 5,通过对问题的分析与系统思考,对软件过程与管理方法进行优化与改进。
七、培训时间、地点 ;
急需软件项目管理案例,要案例就行,软件项目的~
A公司是一家美资软件公司在华办事机构,其主要的目标是开拓中国市场、服务中国客户,做一些本地化和客户化的工作。它的主要软件产品是由总部在硅谷的软件开发基地完成,然后由世界各地的分公司或办事机构进行客户化定制、二次开发和系统维护。这些工作除了日常销售和系统核心维护之外,都是外包给本地的软件公司来做。东方公司是A公司在中国的合作伙伴,主要负责软件的本地化和测试工作。
Bob先生是A公司中国地区的负责人,Henry则是刚刚加入A公司的负责此外包项目的项目经理。东方公司是由William负责开发和管理工作,William本身是技术人员,并没有项目管理的经验。
当Henry接手这项工作后,发现东方公司的项目开发成本非常高,每人每天130美金,但客户的满意度较差,并且每次开发进度都要拖后,交付使用的版本也不尽如人意。而且,东方公司和A公司硅谷开发总部缺乏必要的沟通 只能把问题反馈给Henry,由Henry再反馈给总部。但由于Henry本身并不熟悉这个软件的开发工作,也造成了很多不必要的麻烦。
为此,Bob希望Henry和William用项目管理的方法对该项目进行管理和改进。随后,Henry和William召开了一系列的会议 提出了新的做法。
首先,他们制定了详细的项目计划和进度计划;其次,成立了单独的测试小组,将软件的开发和测试分开;并且,在硅谷和东方公司之间建立了一个新的沟通渠道,一些软件问题可以与总部直接沟通;同时,还采用了里程碑管理。
六个月后,软件交付使用。但是客户对这个版本还是不满意,认为还有很多问题。为什么运用了项目管理的方法,这个项目还是没有得到改善?
Henry和William又进行了反复探讨,发现主要有三个方面问题:1、软件本地化产生的问题并不多,但A公司提供的底层软件本身存在一些问题;2、软件的界面也存在一些问题,这是由于测试的项目不够详细引起的;3、开发的周期还是太短,没有时间完成一些项目的调试,所以新版本还是有许多的问题。
此时,Henry向Bob提出是否采用公开招标的方式,选择新的、实力更强的合作伙伴。但Bob认为,与东方公司合作时间已经很长了,如果选择新的伙伴又需要较长的适应期,而且成本可能会更高。于是,Henry向东方公司提出一些新的管理建议。首先,他们采用大量的历史数据进行分析,制定出更详细的进度计划;其次,要求东方公司提供详细的开发文档和测试文档 做的工作没有任何文档,给其他工作带来了很多困难);第三,重新审核开发周期,对里程碑进行细化。
又过了六个月,新的版本完成了。这一次,客户对它的评价比前两个版本高得多,基本上达到项目运行的要求。但客户还是对项目进度提出了疑问,认为实时推出换代产品不需要那么长的时间。
较常见的做法。在软件外包工程中,保证质量的进度是很难控制的。对于项目经理来说需要一整套复杂的能力,比如制定计划、确定优先顺序、干系人的沟通、评价等,每一种能力都与项目的最终结果有直接或者间接的关系。
然而,国内的项目经理大多没有接受过正规训练,缺乏项目管理方面的专业知识的技巧,往往只是凭借以前的少量经验盲目去做,容易出现各种问题。尤其是在管理外包项目时,缺乏足够的经验和技巧,往往造成进度不断推迟,而质量无法保证的情况。
在这个案例中,我们可以看到现在IT业内许多外包项目的影子。
在该案例中,东方公司没有专门的项目经理,是由技术人员William兼做管理。这是国内软件公司经常会出现的问题。最初,出现进度落后的问题时,A公司的Henry与东方公司的William讨论后决定采用项目管理中计划管理等手段,其中包括里程碑管理。这是控制进度的较常见做法。
里程碑管理的引入
一般来说,在项目开始时,项目组成员都会对项目制定一个详细的计划。通常情况下,在明确的工作说明书(SOW)和WBS的基础上制定具体的进度计划时,需要采用一些具体的技术。像这种软件外包项目,最成熟的技术是里程碑管理。
里程碑一般是项目中完成阶段性工作的标志。不同类型的项目,里程碑也不同。比如,在开发项目中,可以将需求的最终确认、产品移交等关键任务作为项目的里程碑。本案例中,Henry在接手项目后采用里程碑进行管理是很恰当的。
不过,要注意的是,每到一个里程碑处,应及时对前段工作进行小结,并对后续工作进行计划调整。对于一些管理效果明显的领域,可以不必投入较多精力。而对于下一步管理过程中可能会出现问题的领域,应给予较多的关注。当然,在软件项目里,进度的变化是较常见的事情。
在本案例中,采用里程碑管理后仍没有达到客户的要求,进度依然拖后。在这里,就需要考虑另一个因素-质量与进度的关系。
通常,项目管理的前提是保证在预算内、满足质量的前提下,按进度完成项目。因此,可以看到,保证质量是前提。那么,如何在满足质量的前提下管理进度呢?单纯从项目管理理论知识中并没有一种有效的方式。具体步骤为:
首先,尽量利用历史数据。在本案例中,Henry应该调查之前的项目情况,将会发现可以类比的情况,事先就可以知道需要管理质量和进度的关系。
其次,由于此项目是软件外包项目,Henry不能完全掌握项目的资源 调度情况,因此缺乏对质量的控制。这也是大多数外包工程中最令人难以掌握的地方。在这里,可以采用对进度管理 ;计划添加质量参数的方法,也就是通过参数调整进度和质量的关系。
这一做法的前提是要有一定的历史数据。比如,从历史数据中得知,完成子项目的时间是5天,测试后有15个问题;完成同样子项目的时间是7天,测试后有10个问题;完成同样子项目的时间是8天,测试后有5个问题,……以此类推。
随着数据的不断增多的,采用两维坐标图,就会得到一些离散的点(不考虑资源的差异),并形成一条曲线,见图1。考虑项目允许的质量范围,对照图中的数据,找出相应的参数。根据得到的参数,确定一个合适的进度计划
软件开发项目案例的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于软件开发项目管理案例、软件开发项目案例的信息别忘了在本站进行查找喔。