从根本上了解软件开发的生产力

您是一家软件开发人员,希望每天为您的组织提供更多价值吗? 您是软件开发经理,对改善团队的产出感兴趣吗? 您是CIO努力满足组织对软件的需求吗? 已经进行了许多尝试来衡量软件开发人员的生产率。 乍看之下应该很简单。 毕竟,生产力等于产出除以投入。 但是,我们如何衡量软件开发人员或软件开发团队的产出呢? 简单的措施(如对生成的代码行进行计数)是不够的,因为对计数可能有缺陷的行几乎没有用。 已经提出了许多更复杂的方法来评估输出,但是在多种开发中都可以使用的可靠措施已经使软件工程研究界望而却步。 测量输入也不容易量化。 我们应该计算人数吗? 花了多少小时进行编码? 工作总时间? 如果我们不调查测量结果,而是研究开发人员如何看待自己的生产率呢? 开发人员最接近所生产的软件,并且当他们认为自己具有生产能力时,就可能在为他们所从事的软件项目增加价值。 如果我们可以确定哪些因素有助于提高生产力,那么我们可以努力重新创建这些因素,并帮助开发人员更频繁地感觉到生产力。 如果我们能够确定哪些因素会阻碍软件开发人员的生产率,那么我们也可以帮助减少这些因素的发生。 通过这些步骤,我们可以找到通往快乐和高效的软件开发人员的道路。…

敏捷开发:快速概述

敏捷软件生命周期的基础知识: 与传统的软件开发框架相比,敏捷软件的生命周期模型有很大的不同,因为它专注于迭代和增量过程,对更改产品的适应性以及通过快速交付有效的产品功能和客户参与来提高客户满意度。 产品发布是一系列称为sprint的迭代周期。 它们包括功能开发的整个生命周期:对技术产品进行分析,设计,编码和测试,并且在大多数情况下会生产可交付使用的可部署产品。 团队与公司之间的协作和关系是在开发环境中成功植入敏捷的关键。 需要指出的是,该模型广泛使用了活动,例如每天15分钟的站立会议,冲刺审查会议和每次冲刺结束时的回顾会议,以识别和自我纠正所进行的开发由团队。 由于其固有的性质,经常在需要时征求反馈意见,以进行协作,并通过共享思想和自我管理来加快开发过程。 在敏捷过程中扮演的角色是产品所有者,Scrum主管和开发团队。 产品所有者代表利益相关者或管理团队拥有该项目,并确保该项目成功开发,同时要牢记产品在市场上的公司愿景。 Scrum负责人确保始终遵循敏捷过程,并照顾开发过程中出现的任何困难或技术问题。 团队成员积极参与冲刺,并确保创建有意义且有用的开发功能。 敏捷软件开发生命周期模型的主要特征: 团队及其互动。 在这种发展模式中,自组织和动机比十多年前非常流行的传统的权力和资历等级制具有更重要的作用。 这就是敏捷开发在初创企业中非常受欢迎的原因之一,在该初创企业中,鼓励团队作为一个整体来积极参与活动的开发和计划,以支持一个共同的愿景。 如今,非常流行且受到Google和Facebook欢迎的具有扁平编程层次的公司也发现,Agile非常适合他们,因为敏捷使团队成员能够自行做出某些决定,从而加快了开发速度。 产品发布。 团队通常由三到九名开发人员组成,他们将工作分解成较小的动作,这些动作可以在固定的持续时间内完成,即sprint。…