怎样管理软件开发团队
高效软件开发团队的特征高效的软件开发团队是建立在合理的开发流程及团队成员密切的合作的基础之上的,成员共同的迎接挑战、有效的计划、协调和管理各自的工作以至完成明确的目标,高效的开发团队具有如下特征:1、 具有明确且有挑战性的共同目标 一个具有明确的而且有挑战性目标的团队比目标不明确或不具有很大的挑战性目标的团队效率高得多,通常技术人员往往会因为完成了某个明确的任务,而且这个任务的完成具有挑战性的意义而感到自豪,反过来团队成员为了获取这种自豪的感觉而更加积极的工作从而带来团队开发的高效率,如作为系统设计人员很清楚的知道在什么时候要做到什么,什么时候开始做,什么时候必须完成,为了完成工作必须面临哪些挑战,怎么解决这些困难等为设计出一个高质量的软件项目提供了重要保证,而模模糊糊的去设计一个系统或模模糊糊的就去编写代码是非常危险的,而且会为此付出高昂代价,因此高效的软件开发团队具有挑战性的共同目标。
2、 团队具有很强的凝聚力 在一个高效的软件开发团队中,成员们凝聚为一个整体共同进行工作,他们是相互支持、互相交流、互相尊重的,而不是相互推卸责任、保守、相互指责的,在一些散乱的开发团队中往往存在这样的问题,一些程序员是比较保守的,明明知道另外的模块中需要用到一段与自己已经编写完成但有些难度的程序代码,他也不愿拿出来给其它程序员共享,不愿与系统设计人员交流,这样给项目的进度造成了些不可度量的因素。
3、 具有融洽的交流环境 在一个开发团队中,每个人行使自己的职责,如需求分析人员制定需求规格说明、系统设计人员做系统概要设计和详细设计、项目经理配置项目开发环境并且制定项目计划等,但每个人的工作不可能做到完美的,如系统概要设计的文档可能有个别地方词不达意,做详细设计的时候就可能会造成误解,项目经理制定计划时可能忽略了某种风险的存在而造成执行者过于紧张的压力等等情况都需要大家通过交流、反馈的手段然后协商解决的,因此高效的软件开发团队是具有融洽的交流环境的,而不是那种简单的命令执行式的。
4、 具有共同的工作规范和框架 高效软件开发团队具有规范性及共同框架的工作,对于项目管理具有规范的项目开发计划,对于分析设计具有规范和统一框架的文档及审评标准,对于代码具有程序规范条例,对于测试有规范且可推理的测试计划及测试报告等等。
并且所有成员都明白自己的职责,知道必须完成什么计划?由谁来完成?什么时候开始?什么时候结束?按什么顺序?等,总之一个高效的开发团队无论是工作内容还是工作流程都具有不同程度的规范性和标准风格的框架。
5、 采用合理的开发过程 软件的开发不同于一般商品的研发和生产,开发过程中会面临着各种难以预测的风险,比如需求的变化、人员的异动、技术的瓶颈、同行的竞争等,高效的软件开发团队往往是采用了合理的开发过程去控制开发过程中的风险、提高软件的质量、降低开发费用,这样的团队会根据自身的必要程度决定要执行哪些工作?如配置管理、资源管理、版本控制、代码控制等,团队还合理的分划并定义开发过程的里程碑,决定每项活动内容的底线和审评标准,决定各项活动的先后关系或迭代的关系等。
总之高效的软件开发团队的开发过程的原则是高效率、高质量、低成本。
软件项目团队与其他企业的人力资源有什么不同?
随着信息化的逐步深入,无论是企业、政府还是个人,对软件的依赖已经到了必不可少的地步。
现在有越来越多的人认识到了软件在日常经营管理中的重要作用,因此外包的软件项目也在不断增长。
但随之而来的,承接外包的软件公司、软件团队也越来越多,包括很多个人SOHO一族也加入到承接软件的竞争行列中来了,因此现在对于软件项目的争夺也很激烈。
还有很多人甚至不知道上哪里去争取项目,总是抱怨没有项目做;也有的人虽然编程技术不错,但是对于与客户谈项目却是一窍不通,结果应该拿到的项目也拿不到手;也有的虽然已经接到了项目,却发现在实施开发的时候遇到好多从来没有遇到过的问题。
作为一个多年从事外包项目接单的软件开发人士,我想从以下几方面谈谈我的经验,希望对大家会有所帮助。
第一点,到哪里接项目软件团队或SOHO最为关心的一点是在哪里可以找到项目做,也就是到哪里可以找到有外包需求的客户。
对于一般人来说,广交朋友然后通过熟人介绍还是接项目的第一途径,但这要求你的朋友或熟人要在企业或公司里有比效重要的管理位置,对于像那些每天只能是埋头写代码的程序员这显然是不太现实的。
所以大家不能等着项目来找你,而是要主动的出击去找项目。
现在网上有很多软件外包网站,在这里你可以找到不少的软件外包信息。
比如软件商务网(bizsofts.com)上就有大量的软件外包信息。
不过这里每天外包的项目虽然很多,但竞争也很激烈。
一般一个外包信息发出后一天内就会有无数个竞争者,所以能第一时间与客户取得联系是非常关键的。
因为客户一般都是先入为主的,一般来说,如果第一个谈项目的人他觉得满意了,就会对其他的竞争者不再予以考虑,所以你要经常上网站上看看有什么最新的项目,并立即与项目的发包方取得直接的联系。
其他比如软件外包网、维客网、中国软件网,还有CSDN的外包频道上也有很多外包的信息,大家可以自己上去看看。
接项目最重要的一步是与客户谈需求。
客户对软件的需求是项目规划和实施的根本,所以在与客户谈需求时,一定要让用户将所有的想法尽可能的阐述清楚,并把所有的要求罗列出来。
这时候不应该害怕“勾引”起客户的潜在需求而增加设计开发的工作量。
而应该直接明白地要客户把项目的要求一条条地列出来。
这时先把条理、归纳、分析先都扔到一边去,用纸笔将用户最原始、最完整的要求准确地记录下来。
假如项目在你对客户的需求没有完全了解清楚的情况下就匆匆上马,那么就会随时发生意想不到的变更,轻则使项目延期或超出预算,重则使得原来已经做好的软件要彻底推倒重来。
所以我们在实施项目之前应该深入了解和挖掘客户需求,对某些不明确的需求要与发包方反复进行讨论,对于项目实施过程中的需求变更要规定处理办法,并形成项目的最终需求。
在需求分析阶段,接包方首先对发包方的需求认真分析,然后通过业务建模、会谈、问卷、需求会议等方式收集客户完整需求,形成文档,然后经过客户讨论、客户审查、文档修订等多次反复的过程。
有一点需要注意,即使双方谈的很投缘,在讨论需求时也一定要详细周到,精确到每一条不能再划分的软件功能为止。
项目协作软件与项目管理软件的差别?
项目协作软件与项目管理软件本质差不多,项目协作软件比较强调协作性,也就是整体流程的通畅性,另外项目管理软件侧重于整体性。
有谱项目管理软件,包括时间进度计划、成本控制、资源调度和图形报表输出等功能模块,但从项目管理的内容出发,还应包括合同管理、采购管理、风险管理、质量管理、索赔管理、组织管理等功能。
什么是软件项目管理?
软件是程序,是控制硬件功能并指挥其运行的程序、代码和符号语言。
项目是具有明确的起止时间,明确的目标、范围和成本的一次性的工作。
它具有如下特点:(1)明确的开始、结束时间;(2)明确的目标,它规定了具有质量保证的一个或多个目标;(3)限制条件,必须是在给定的进度(时间)、成本下完成的;(4)是一次性的,一个项目不能以同样的方式重复。
管理是将一些理论知识、技能、工具和技巧应用到项目活动中去的行为或艺术。
所以,软件项目管理主要专注于软件项目活动的一些行为分析与管理。
一个项目管理需要考虑的远不止我们想象的那么多,往往需要在众多的、甚至是相互冲突的要求中寻求一种平衡,以达到满足每个团体各方面的利益:范围、时间、成本和质量有不同需求和期望的项目涉及人员明确表示出来的要求(需求)和未明确表达的要求(期望)比如,部门主管可能希望新的项目在成本方面,而系统工程师却更注重技术的完善,而市场人员却希望在尽可能短的时间内完成项目以便尽快满足市场、占有市场份额。
而项目管理者所要做的,就是夹在这不同的需求和利益中,寻求一种解决这些冲突,满足不同需要的适当的方法。
项目管理知识体系主体和项目管理过程图
有哪些好用的项目管理软件?
|Edraw Project这是一款专业的项目管理软件。
可以很轻松的创建甘特图来进行项目规划、资源分配和预算管理等,使用起来也十分的简单容易上手。
软件主要有几个特点:l 易操作:界面设计类似Office,交互简洁,帮助支持方面完善。
l 数据交互:数据与图形双向交互,支持数据导入与导出l 资源管理:支持自定义资源,支持统计和分析l 一键报表:多种报表,一键生成,一键打印报表|Microsoft Office Excel这是微软办公软件中用于处理表格数据的工具,也是职场人士必装的一款软件。
万能的Excel也是能够绘制甘特图,进项项目管理的,只是操作难度偏大,或许是对Excel足够熟练的高手才有机会绘制。
虽然网络上有许多相关的教程,教大家如何使用Excel画甘特图,但教程普遍偏难,且绘制完成的图表也缺乏美观度,不大适合新手使用。
|MindMaster这虽然是款专业绘制思维导图的软件,但也是专业绘制甘特图的。
使用MindMaster有一点你可能会觉得不太方便,就是需要先绘制思维导图,才能生成甘特图。
但其实在熟练使用后,该步骤绘制甘特图的效率比其他软件还高。
所以,笔者挺推荐大家使用这款软件。
它不仅可以画甘特图,还能顺便把思维导图给画了。
|瀚文进度计划软件瀚文软件是一家较为早期的国产软件开发公司,其自主研发的这款瀚文进度计划软件可用于对工程项目的管理和控制。
其软件的界面风格类似早期的Windows软件,但较为熟悉的界面或许更容易上手体验。
这款软件提供较为完善的甘特图功能,可满足基础的绘制需求。
但美中不足的是,软件所绘制的甘特图,其风格与现代的审美观略有差距,不够时尚整洁,略为遗憾。
|亿图图示亿图图示一款国产的专业绘图软件,使用它绘制甘特图,便捷又高效。
亿图图示的特色简单概况四个字:专业、齐全。
软件提供甘特图的基础编辑功能,使用者花极短的时间即可绘制出一张专业的甘特图。
在软件里输入开始和结束的时间,能生成对应的轴线;改变完成度的数值,右侧的状态也会随之改变。
这种智能关联的操作,极大方便了我们制图。
亿图软件还内置齐全的模板和例子,除了可以绘制甘特外,还可以绘制思维导图、组织结构图以及流程图等两百多种图示,非常适合新手使用。
纵观所有的软件,都可能存在一些不足的地方,选择一款适合自己的才是最重要的。
一个项目管理软件最主要能管项目的哪些方面?
项目管理软件管理了项目管理全局面,给楼主介绍深圳市捷为科技的imis项目管理软件,是国内第一套以项目管理为核心的软件公司,也是集成信息化的管理系统,他们的项目管理观念是将企业中的市场营销、销售过程、产品研发、生产运营、质量管理、客户服务等都可纳入项目管理轨道。
通过项目管理,可全面管理公司业务,加强跨部门沟通协作,有效配置和共享资源,减少计划拖延和降低运营成本。
软件项目管理的基本信息
书 名: 软件项目管理 作 者:覃征 出版社: 清华大学出版社 出版时间: 2009-10-1 ISBN: 9787302209485 开本: 16开 定价: 39.00元 软件项目管理是软件工程和项目管理的交叉学科,是项目管理的原理和方法在软件工程领域的应用。
本书分为基础篇、管理篇和实践篇。
基础篇介绍了软件产业和软件项目管理导论,使读者从整体上了解软件项目管理的产生背景和概貌。
管理篇以项目管理知识体系(PMBOK)为核心,围绕着软件项目的开发全过程,从软件项目需求管理、软件项目成本管理、软件项目进度管理、软件项目风险管理、软件项目配置管理、软件项目资源管理、软件项目质量管理等方面对软件项目中的管理问题进行探讨。
实践篇将需求管理、成本管理、进度管理、风险管理、配置管理、资源管理和质量管理等相对独立的领域融合在软件过程框架中,介绍了在软件项目实践中如何集中使用相关理论和技术。
其中包括Rational统一过程、敏捷软件开发和6σ软件开发。
本书可作为高等学校信息、软件、计算机科学与技术等专业的学生的教材,也可供从事软件项目管理工作的人员参考。
信息之二 书 名: 软件项目管理 开本: 16开 定价: 32.00元 《软件项目管理》系统介绍了软件项目管理的理论、方法与案例,全书共分15章,内容包括软件项目管理、组织平台、软件项目立项、软件开发过程、软件估算、软件项目计划、软件配置管理、软件质量管理、软件度量、风险管理、软件外包管理、人力资源管理与团队建设、软件知识产权管理、项目经理面临的政治、项目管理技巧。
《软件项目管理》适合软件工程及计算机相关专业的研究生使用,也可作为软件领域开发人员的参考书。
第1章 软件项目管理导论1.1 软件项目管理概述1.1.1 项目管理的发展1.1.2 什么是项目1.1.3 什么是项目管理1.1.4 项目管理环境1.1.5 软件工程与项目管理1.2 软件项目分类1.3 企业愿景1.4 项目成功需要的关键投入1.5 软件项目开发过程1.6 软件项目管理的重要性1.6.1 失控项目定义1.6.2 失控项目特征1.6.3 技术问题1.7 CMM模型1.7.1 CMM概述1.7.2 CMM的内部结构1.7.3 CMM的5个等级1.7.4 CMM中5级的发展关系 第2章 组织平台2.1 组织机构与决策机制2.1.1 组织的定义2.1.2 组织平台与项目决策2.2 常见软件组织形式2.2.1 简单的软件开发组织2.2.2 普通的软件开发组织2.2.3 较成熟的软件开发组织2.2.4 开发组织的选择与设定2.3 CMM中的组织2.3.1 CMM中的关键工作组2.3.2 物理组与逻辑组2.3.3 组织的完善与独立性2.3.4 关键角色 第3章 软件项目立项3.1 识别潜在项目3.2 产品立项3.2.1 商业目标3.2.2 产品战略3.2.3 产品的5个层次3.2.4 产品定位战略3.2.5 产品开发立项3.2.6 产品立项报告3.3 定制项目立项3.3.1 项目选择3.3.2 合同签定要注意的问题3.3.3 定制项目立项报告3.4 立项评审3.5 技术人员在立项中的责任 第4章 软件开发过程4.1 需求确定4.1.1 把握系统需求4.1.2 需求管理的实施过程4.1.3 需求变更管理4.1.4 需求分析提交的结果4.1.5 角色划分4.2 软件设计4.2.1 概要设计4.2.2 详细设计4.3 编码4.3.1 编码标准4.3.2 编码风格4.3.3 命名规则4.4 测试4.4.1 测试目标4.4.2 测试原则4.4.3 软件测试过程管理4.5 发布、部署和维护4.5.1 发布4.5.2 部署4.5.3 维护 第5章 软件估算5.1 软件估算概述5.2 估算步骤5.2.1 确定软件范围5.2.2 确定工作所需资源5.2.3 确定估算内容5.2.4 估算改进5.3 估算方法5.3.1 FP功能点估算法5.3.2 LOC估算法5.3.3 COCOMO估算法5.3.4 软件方程式估算法5.3.5 类比估算法5.3.6 wBS估算法5.3.7 Delphi估算法5.3.8 PERT方法5.3.9 估算方法的综合应用5.4 估算的表达5.5 估算的原则与技巧 第6章 软件项目计划6.1 软件项目计划的层次6.2 软件项目计划编制的方针6.3 软件项目计划的内容6.3.1 项目介绍6.3.2 技术方案概述6.3.3 过程计划6.3.4 测试计划6.3.5 组织计划6.3.6 资源计划6.3.7 软件估算与预算6.3.8 进度表6.3.9 质量计划6.3.10 风险计划6.3.11 变更管理计划6.3.12 文档计划6.3.13 培训计划6.3.14 发布与实施计划6.4 软件项目计划成功的关键要素6.5 软件项目计划模板 第7章 软件配置管理7.1 软件配置管理概述7.1.1 术语与概念7.1.2 软件配置管理定义7.1.3 软件配置管理的基础7.2 软件配置管理的活动7.2.1 制定SCM计划7.2.2 软件配置标识与维护7.2.3 软件配置控制与变更管理7.2.4 版本管理7.2.5 软件配置状态发布7.2.6 软件配置审计7.2.7 软件发布管理7.3 配置管理工具7.3.1 几种配置管理工具介绍7.3.2 配置管理工具选择7.3.3 配置管理工具实施7.4 成功的关键7.5 职责分配与角色 第8章 软件质量管理8.1 软件质量管理基础8.1 一软件质量8.1.2 软件质量需求与质量特征8.1.3 软件质量管理8.2 软件质量保证 …… 第9章 软件度量 第10章 风险管理 第11章 软件外包管理 第12章 人力资源管理与团队建设 第13章 软件知识产权管理 第14章 项目经理面临的政治 第15章 项目管理技巧 参考文献
项目管理软件哪个好用?
怎么选择好的项目管理软件,归根到底是匹配度和实用度的问题,你首先要知道自己用项目管理软件是来做什么的,主要的业务需求点有什么,之后再去跟项目软件的具体功能去匹配。
可以看有谱项目管理软件,自由项目类型进行细分定义,拆解任务,从工期预计、工时预估、人员安排,成本预算这些方面来做里程碑设置从而对工程进度管理。