如何入门并设定软件成功的目标
1、如何开始项目管理(如何入门)
实践技能建议 |
要点说明 |
1.设定优先级 |
1) 为团队成员提供服务 2) 满足组织客户的需求 3) 从事自己相关的项目
|
2.分析自我能力差距 |
人员管理(人际关系、解决冲突、推销想法) 聆听技巧 锻炼演讲表达能力
|
3. 学会定义质量 |
与开发团队、客户确定一致的产品质量定义与准则 |
4. 鼓励团队所取得的进步 |
指定鼓励计划(精神鼓励与物质奖励) |
5. 从历史中学习 |
|
6. 设定团队改进目标 |
设定长期与短期的改进目标 如需求变更、软件质量。通过制定具体的改进指标进行具体量化。 通过活动挂图、故事墙等方式来向整个团队找出和展示需要改进的项和成果。
|
7.慢慢的起步 |
|
实践练习:
找出自己在项目管理、人员管理和团队领导力中的短板,并想办法进行提高;找到一些经验丰富的项目经理们作为你学习的楷模,并尝试运用它们的优点;从你过去的一些上司、领导处总结哪些行为和特点是你无法忍受的,然后再你自己的管理工作中去规避这些做法。
2 如何知道项目已经完成(必须要定义一些完成的准则)何以知道已经完成?
当产品已经足够好的情况下,可以确认是否已经完成。
“足够好”:是指产品已经具备一些可接受的综合属性,如功能、质量、时效性、客户价值、竞争力以及支撑的基础设施已经准备就绪。
客户对质量的看法主要取决于可靠性(持续运行无故障)和性能(操作的响应时间)
内部对质量的看法主要设计如下方面:软件在未来的可修改性、可维护性、文档的可理解性等
如何定义产品发布准则?
发布准则必须要与成功准则相对应,没有放四海而皆准的发布准则,要确保项目取得最终的成功,反映产品能够上线发布的指标都必须要有一定的可信度和可测度。
如果指定了不符合项目业务目标的宽松的发布准则,可能会造成一种一定会可能会取得成功的假象。
一些宽松的发布准则:广泛的客户群体曝光率,“很高的客户满意度”
某些模棱两可的措辞:可接受的、足够的、恰当的、广泛的、精确地、高的、改进的、低的、合理的、健壮的、准确无误的和有效率的。这些措辞要尽量避免使用。
发布准则必须要满足:
- Specific【明确的(不是空泛的)】
- Measurable【可度量的(不是定性的或主观的)】
- Attainable【可实现的(不是一对不可能实现的目标)】
- Relevant【相关的(与客户要求和业务目标相关联)】
- Trackable【可跟踪的(在整个项目过程中可以进行监控)】
制定准则时:
- 认真考虑不同项目干系人对团体的想法和意见,避免冲突和分歧
- 考虑用户提出的验收标准
- 于关键用户代表进行充分沟通
-
出现冲突时,全体团队成员必须要工作在共同的目标集合上,并做出适当的折中判断。
可能的发布准则项:
1)缺陷
质量是一系列复杂和多维度的产品特点的集合。发布一个不成熟且存在很多缺陷的产品会导致很高的运行成本、用户的失望、很差的产品评价、过高的维护成本、产品退货甚至法律纠纷。作为质量的指标之一,可以对开发和测试中发现的缺陷的数量和类型进行跟踪。
如果质量是项目的一个成功准则,可以参考如下与缺陷相关的发布准则:
- 在一个四级的缺陷跟踪系统中,不存在未解决的最严重的1级或2级缺陷。在过去的X周内,未解决的缺陷数量持续下降,同时估算的遗留缺陷数量是可以接受的(可以采用缺陷模型来进行预测)
- 在编译器中、源码分析与运行时分析中所报告的所有错误和警告都得到了修正。
- 前一发布版本出现的问题都已经得到了修正,在修复过程中也没有引入额外的缺陷。
2)测试
大多数软件团队都非常依赖不同类型的测试来发现缺陷,可以通过查看估算的未发现缺陷数量是否处在可接受范围内,或者在预设的测试时间内并没有发现新的缺陷时是否决定停止测试,一些主要的发布准则如下:
- 代码编译、构建和冒烟测试是否在所有平台上通过;
- 综合测试和系统测试100%通过
- 特定的功能通过了所有的系统和用户验收测试(如正常流程和相关的异常处理流程在普遍的用例中测试通过)
- 测试计划中涵盖的所有记录在案的功能需求的测试用例都得到了执行
- 达到了预先设定的代码或需求(如功能需求、测试用例流程或者产品属性)
综合考虑测试和缺陷相关的因素,一位学者认提出的产品发布准则:
- 完成了覆盖100%功能点和80%的回归测试
- 不存在严重等级1和等级2的缺陷;
- 已知的遗留缺陷密度少于每千行代码0.5个缺陷;
- 每1000小时的测试工作发现新缺陷的数量少于40个
- 发现缺陷的平均间隔时间少于100小时
- 完成了压力测试、配置测试、安装测试、本地化测试、可用性测试和傻瓜用户测试。
3)质量属性
质量属性是另一只哦能够用于描述产品行为的思维方式,这些属性包括可靠性、安全性、完整性、可用性、便携性、可维护性、高效性、健壮性和交互型等。一些相关的准则是:
- 在所有的平台上的定量性能目标得到满足
- 可靠性目标得到满足
- 相关公司的安全策略和需求得到了满足
- 特定的条件已经符合,可以使得产品通过必要的评审或者审计
4) 功能
- 在即将发布的产品版本上,所有的承诺的高优先级需求已经实现并能正常工作
- 满足特定客户的验收的标准
- 满足所有非健全人士的可访问性需求
- 如果需要软件在不同语言环境下运行,所有本地化与全球化测试都能通过
- 满足特定法规、合约、标准规范和监管目标
- 所有的功能需求都可以通过测试用例进行追踪
5) 配置管理
- 产品可以在所有目标平台上重复构建
- 物理配置审计确认现有的所有组件都是正确的版本
- 产品在所有的目标平台上都能成功安装
- 发布的介质和镜像文件经过了反病毒和恶意软件扫描
6)支持
这里主要指确保产品顺利安装和实施的其他关键要素。
- 发布说明已经准备完毕,包含新版本中的已修复的缺陷信息、增加的功能和删除的功能
- 受影响的项目干系人均了解软件发布和支持流程
- 已知的未修复缺陷全部记录在项目的缺陷跟踪系统中
- 支持部门已经做好了接受和回应客户问题报告的准备
- 执行软件的运行环境所需的各种基础设备已经到位
- 软件的生产和下发已经做好了接收产品的准备。
分享到:
相关推荐
《微软软件研发的奥秘:MSF精髓》作者凭借 20多年的软件开发管理和微软服务总部经验,针对微软解决方案框架(MSF)第四版,详细阐述其重要概念:解决方案交付的外部环境、基本原则,团队成员应具备的意识,证明可行的...
本书不仅深入探讨了软件工程的基础概念,如软件产品的特性与软件开发过程,而且还详细阐述了软件项目管理的各个方面,包括项目计划、风险管理、进度安排、质量保证和配置管理等。 在第一部分“产品和过程”中,作者...
在《SAP数字化转型高管研究:领先企业转型的4大成功奥秘》这份报告中,您将深入了解到这些成功要素如何在实际案例中得到应用,以及如何将这些经验应用于自身的数字化旅程。通过学习和借鉴这些企业的最佳实践,您的...
编码的奥秘还涉及到版本控制,如Git,它帮助开发者管理代码版本,协同工作。还有构建工具(如Maven、Gradle)和持续集成/持续部署(CI/CD)实践,这些都提升了开发效率和软件质量。 此外,编程中的设计模式是编码...
### 云计算:企业必须了解的奥秘 #### 一、云计算概述 云计算作为一种新兴的技术和服务模式,正在逐步改变企业的IT架构...然而,与此同时,也需要关注并妥善解决伴随而来的各种挑战,以确保云计算项目的成功实施。
为了支持软件全周期的开发,大型项目管理和软件配置管理,我们需要软件支持环境。这是一个软件开发的辅助系统,它包括环境数据库、接口软件和工具组等组件。这些工具在提高软件开发效率和质量上发挥着至关重要的作用...
在此基础上,他的《质量软件管理》四卷本系列详细阐述了系统思维、度量、协作和变革管理在软件质量管理中的应用,为技术项目的成功提供了全面的指导。 温伯格的书籍层次分析展现了他在IT领域的深刻见解,从个人思维...
在信息技术领域,软件开发和项目管理是至关重要的环节。为了提高效率和协作,许多工具应运而生,其中Jira作为一款知名的项目管理和问题跟踪系统,受到了广泛的认可。本文将深入探讨与Jira相关的“atlassian-extras-...
网络公司成功的奥秘是什么? 为什么网络成了各大企业董事会的烫手话题? 中国网络业的发展机遇和挑战是什么? 网络将如何影响人类社会的精神生活? 读完本书,你将从网络的金泡沫中,了解网络经济和网络...
1. **程序员的日常工作**:程序员的日常并不只是编写代码,还包括需求分析、设计、测试、调试以及项目管理等环节。文档可能会深入讲解如何进行有效的需求沟通,如何撰写高质量的代码,以及如何利用版本控制系统如Git...
在软件开发和项目管理中,合理安排时间、高效利用资源是成功的关键。项目管理需要精确的时间表和任务分配,以确保在有限的时间内完成目标,并且每个团队成员都能高效地贡献自己的力量。 尽管课间对话作文描绘的是...
最后,书中可能会探讨编程规范、代码风格、项目管理、版本控制(如Git)、文档编写等软件开发实践,这些都是确保软件项目成功的关键因素。 综上所述,《编程语言的艺术(2)》涵盖了从编程基础到高级技术的广泛内容,...
书中介绍了如何使用版本控制工具进行项目管理。 - **持续集成**:持续集成是一种软件开发实践,旨在频繁地将代码合并到主分支,并自动构建和测试。书中探讨了持续集成的好处及其实施方法。 - **团队协作**:良好的...
6. 硬件与软件:DESI项目的成功离不开强大的硬件支持,包括高性能计算集群和复杂的数据管理系统。"desisim-main"可能包含了与这些硬件系统交互的软件组件。 7. 开源社区:DESI项目通常鼓励开源和合作,"desisim-...
在探索嵌入式系统开发的世界中,stm32单片机无疑是其中一颗璀璨的...从硬件配置、固件编程到调试工具的使用,每一个环节都是构建成功项目的基石。而这些文件,正是开发者在构建和维护项目过程中不可或缺的参考资料。
易模块管理器则是用来管理和组织易语言的模块,这对于项目管理和团队协作非常有用。 易语言的用户友好性体现在许多细节上,例如,当遇到不熟悉的函数或概念时,只需在程序设计过程中按下F1键,就能快速获得相关的...
深入解析spring架构原理与设计思想,探究spring成功的奥秘。 揭开spring源代码的神秘面纱,展示系统阅读开源软件源代码的方法和秘诀。 掌握spring的架构原理与设计思想真的能让开发者如虎添翼吗? ioc...
这一经历证明了我具有出色的项目管理能力以及优秀的沟通协调能力。 此外,个人成长也离不开挑战与竞争。我积极参与学院举办的网页设计大赛和体育赛事,这些活动不仅锻炼了我的技术能力,更让我懂得了团队协作的重要...