当前位置: 首页 > 编程日记 > 正文

敏捷软件开发的12个原则

作为一个软件工程师,软件设计和开发是最重要的技能,但是,从整个产品的角度上讲,项目管理能力比开发能力更重要,本文摘自Robert大叔的《敏捷软件开发》,粗体是Robert大叔的话,细体是我的理解。

1.持续、尽早交付有价值的软件以满足客户,是我们优先要做的首要任务。

以逐渐增加功能的方式经常性地交付系统和最终质量之间有非常强的相关性。交付得越频繁,最终产品的质量就越高。

自顶向下地设计软件,按照功能优先级逐步开发,定期交付可运行的版本。这个原则看起来简单,但是对软件设计有非常高的要求,因为随着不断地交付,软件的feature不断叠加,如果起初设计的不够灵活,后期增加feature的难度会很大,而且也很容易出bug。

2.拥抱需求变更,甚至是在开发的后期。敏捷过程利用变更为客户带来竞争优势。

敏捷团队会非常努力地保持软件结构的灵活性,这样当需求变化时,对于系统造成的影响是最小的。

3.频繁交付可执行的软件,从几周到几个月,交付时间越短越好。

4在整个项目过程中,业务人员和开发人员必须每天在一起工作。

我的理解:业务人员能对软件项目进行持续性地引导。

5.激发每个团队成员的积极性来打造项目。为他们提供所需的环境与支持,并且信任他们可以完成工作。

比如项目室椅子不舒服,太吵闹,项目经理是不是该想办法解决一下?

6.在一个开发团队内部最有效的传递信息的方式是面对面的交流。

最好的沟通方式,就是面对面地交流。

7.可执行的软件是进度的首要检验对象。

检验软件不是文档编写了多少,代码量有多少,基础数据结构堆砌了多少,而是,总体功能实现了多少。

8.敏捷过程倡导可持续发展。赞助商,开发人员和用户应该尽可能保持一致的步伐。

9.不断地关注优秀的技能和好的设计会增强敏捷能力。

不在软件中留雷,该今天清理掉的恶心代码,今天就清理掉,不要留到以后。

10.尽量用艺术化来简单阐述未完成的工作是很有必要的。

简单!不要试图去构建那些华而不实的系统,而是采用能达成目标的最简单的方法实现软件。不要太注重明天会出现什么问题,也不要在现在的软件中对未来的问题做防卫,开发人员要做的,就是在今天以最高的质量完成最简单的工作。

11.最好的架构,需求,和设计出自于自我组织管理的团队。

不存在某个模块只有某个人最熟悉,所有人都应该对整个系统熟悉。

12.每隔一段时间,回顾反思如何让团队变得更高效,并相应地调整其行为。

尽管许多这些原则可能看起来只有直接应用到开发团队才讲得通,但是如果我们了解了这些原则的精神,我们还是可以获得一些非常有用的价值。并且这些价值能够使我们的项目管理变得更敏捷。

沟通:无论是开发人员,管理层,或是客户之间,对于任何敏捷项目来说开放的沟通是必要的。项目经理应确保参与项目的各个部门间的沟通及时、清晰、有效。包括每一个开发人员和利益相关者。记住,敏捷项目是“拥抱需求变更的”。这意味着,只有不断的沟通才是唯一的办法,从而确保变更不被丢失,并且避免出现团队成员在完成工作的时候,对于需求变更还什么都不知道的情况。

简单:一个项目成功的关键因素应该是尽可能做到最简单的形式,并且所有项目管理活动都应当做出可度量的贡献值。项目经理的职责是,与利益相关者共同来决定项目中各个任务,交付件,和交付产品的价值,从而让项目以最简单的形式体现又具有最高的价值。

反馈:“乐观主义是软件开发行业的职业病,反馈是治愈这种病的良药”。定期反馈是敏捷开发项目的关键,因为它让错误和缺乏沟通及早地被发现。降低了交付的产品与项目干系人需求背道而驰的风险。

魄力:项目经理作为领导者,其领导力需要魄力。敏捷项目常常需要不断改变开发方向,需要很大的勇气来应对这些变更所带来的后果。

透明:作为最好的项目经理,他们并不是什么都知道。相反地,他们常常依赖各个项目成员的各种专业知识,来打造一个透明化的大环境,从而让成员们互相学习,各取所长。

相关文章:

JAVE EE 企业级开发之从零开始学JAVA【51CTO技术论坛】

http://bbs.51cto.com JAVE EE 企业级开发之从零开始学JAVA 从零开始学JAVA?YES!本刊内容全部为午饭redking整理、撰写,所涉及内容均为原创,非常适合入门级JAVA新人学习,从理论到实际,跟随redking一起学习JAVA&#x…

打工人,打工魂,抽终身会员,成为人上人!

今年双11,CSDN直接来了个前所未有的福利大奖!CSDN终身会员还有全站课程免费学!喜欢吗?哈哈哈哈,还没完呢!买CSDN年会员,不要¥299,只要¥199!超级年…

如何创建一个用弹出窗口来查看详细信息的超链接列

如何创建一个用弹出窗口来查看详细信息的超链接列出处:www.dotnetjunkie.com 这篇文章来自于一位忠实的DotNetJunkie的建议,他最初发了一封email给我们,要求我们给出一个例子来说明如何在DataGrid中设置一个当用户点击时能够弹出显示其…

HashSet的使用

2019独角兽企业重金招聘Python工程师标准>>> 1.Set中元素是无序的 HashSet setnew HashSet(); set.add("a"); set.add("b"); set.add("c"); set.add("d"); System.out.println(set);//结果:[d,b,c,a]2.Set不允许…

python实现nginx图形界面管理

好久没有更新博客了,最近一直在学习python,于是,在有空闲的时间写下python视图界面管理nginx,写得不够好,不过希望能帮忙到其他童鞋,再次感叹,强大的python,不说了,上代码。 [rootlo…

小马智行获2.67亿美元新融资,估值超53亿美元

11月6日,小马智行(Pony.ai)宣布获得由加拿大安大略省教师退休基金会(Ontario Teachers Pension Plan,OTPP)旗下教师创新平台(Teachers’ Innovation Platform, TIP)领投总计2.67亿美…

DataSet导出CSV格式(ASP.NET,C#)

DataSet导出CSV格式(ASP.NET,C#)作者:NotMSN:notkinghotmail.comEmail:notssohu.com本文引用下面的 Microsoft .NET 框架类库命名空间:System.Data;System.Web.UI.WebControls;概要本文解决将DataSet导出到CSV格式问题、将DataGrid中的数据导出到CSV格式…

ArcEngine的ToolbarControl解析

转自Love Lyre原文 ArcEngine的ToolbarControl解析 ToolbarControlClass有三个主要的接口: IToolbarControl, IToolbarControl2, IToolbarControlDefault 其中,IToolbarControl2是IToolbarControl的新版本.而IToolbarControlDefault is a pure dispatch interface,始终是I…

在C#里实现DATAGRID的打印预览和打印

作者Blog:http://blog.csdn.net/qieyj/很多人都在论坛里问,如何实现DATAGRID的打印预览和打印,现在我就把这方面的源代码告诉大家。这段代码也花费了我1个晚上的时间,呵呵!数据库是基于sql server2000自带的northwind。…

ORACLE SQL: 经典查询练手第二篇

本文使用的实例表结构与表的数据如下: scott.emp员工表结构如下: SQL> DESC SCOTT.EMP;Name Type Nullable Default Comments -------- ------------ -------- ------- -------- EMPNO NUMBER(4) 员工编号 ENAME…

第十三届光华工程科技奖名单揭晓!这40位专家和1个团体获奖

11月8日,第十三届光华工程科技奖揭晓仪式在北京隆重举行。工程科技是推动人类进步的发动机,是产业革命、经济发展、社会进步的有力杠杆。光华工程科技奖由中国工程院主管,目前已是第十三届,被誉为“中国工程界最高奖项”&#xff…

【C#公共帮助类】给大家分享一些加密算法 (DES、HashCode、RSA、AES等)

http://www.cnblogs.com/yuangang/p/5466068.html转载于:https://www.cnblogs.com/daming1233/p/6704562.html

MongoDB的备份(mongodump)与恢复(mongorestore)

为什么80%的码农都做不了架构师?>>> 不用多想,数据的备份无论什么时候都是必须的,尤其是重要数据。 MongoDB也提供了备份和恢复的功能,分别是MongoDB下载目录下的mongdump.exe和mongorestore.exe文件。 先介绍下命令…

Windows 2000/XP 注册表终极修改(转载)

Microsoft Windows 2000/XP 是一个强大的操作系统,为我们提供了以往Windows 9x从未有过的安全性能,可是你是否感觉某些地方的设置还不够呢,这里就对Windows 2000 的注册表进行一些修改来达到我们的目的。 一、修改开始菜单和任务栏 由于以往不…

百度CTO王海峰获“光华工程科技奖”,深耕自然语言处理近30年

11月8日,第十三届光华工程科技奖揭晓仪式在北京举行。该奖项被誉为“中国工程界最高奖项”,旨在对我国工程科技及管理领域做出杰出贡献的科学家、工程师进行表彰。百度CTO王海峰因其在人工智能领域、尤其是自然语言处理领域的卓越贡献,成为AI…

python自定义库文件路径

各有各的小烦恼,各有的小期待 这是人家私事,不要大嘴巴 在Pycharm中import whois时,总是失败 原因是安装了python3.x相关操作过程,将环境变量path中关于Python的配置c:\Python27和c:\Python27\Scripts都删除,pycharm中…

开机BIOS语言(转载)

开机自检时出现问题后会出现各种各样的英文短句,短句中包含了非常重要的信息,读懂这些信息可以自己解决一些小问题,可是这些英文难倒了一部分朋友,下面是一些常见的BIOS短句的解释,大家可以参考一下。 1.CMOS battery …

参与开源项目,结识技术大牛!CSDN“开源加速器计划”招募志愿者啦!

什么是“CSDN开源加速器计划”?纵观近 30 年的科技创新,开源已成为全球技术应用和行业数字化发展的基石,尤其最近几年,开源的商业化得到了极大突破,开源正在成为全球科技的强劲驱动力。在开源生态中,开发者…

破解CentOS的root密码(救援模式无密码)

开机后,在倒数读秒的时候按任意键、跳转画面后,再按E键,进入如下界面: 此时把光标定位到第二行,再按E键(意为:在启动顺序里编辑这条命令),如下图,此时输入“空…

第九—十三单元练习

<<<第九单元练习>>>1.在desktop主机中建立用户westos&#xff0c;并设定其密码为westoslinux2.配置desktop中的sshd服务要求如下&#xff1a;*&#xff09;设定sshd服务只允许westos用户可以被访问使用*&#xff09;创建westos用户的key认证方式*&#xff09…

用 Java 训练深度学习模型,原来这么简单

作者 | DJL-Keerthan&Lanking来源 | HelloGitHub头图 | CSDN下载自东方IC前言很长时间以来&#xff0c;Java 都是一个很受企业欢迎的编程语言。得益于丰富的生态以及完善维护的包和框架&#xff0c;Java 拥有着庞大的开发者社区。尽管深度学习应用的不断演进和落地&#xf…

重装操作系统的20条原则(转载)

系统是否需重装&#xff0c;三条法则帮你忙&#xff1a; 如果系统出现以下三种情况之一&#xff0c;应该是你考虑重装系统的时候了&#xff1a;   1)系统运行效率变得低下&#xff0c;垃圾文件充斥硬盘且散乱分布又不便于集中清理和自动清理&#xff1b;   2)系统频繁出错&…

RKLayout

2019独角兽企业重金招聘Python工程师标准>>> RKLayout 是 iOS 上一个简单的布局管理器 转载:http://www.adobex.com/ios/source/details/00000978.htm 转载于:https://my.oschina.net/u/868244/blog/107107

【网络流24题】最小路径覆盖问题

【题目】1738: 最小路径覆盖问题 【题解】网络流 关于输出路径&#xff0c;因为即使有反向弧经过左侧点也一定会改变左侧点的去向&#xff0c;若没连向右侧就会被更新到0&#xff0c;所以不用在意。 mark记录有入度的右侧点&#xff0c;然后从没入度的右侧点开始把整条路径输出…

Windows的端口列表(转载)

按端口号可分为3大类&#xff1a; &#xff08;1&#xff09;公认端口&#xff08;Well Known Ports&#xff09;&#xff1a;从0到1023&#xff0c;它们紧密绑定&#xff08;binding&#xff09;于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如&#xff1a;80端…

有了图分析,可解释的AI还远吗?

GraphAI 更多新可能随着深度学习、机器学习等人工智能技术的逐级深入&#xff0c;企业对挖掘大数据的关联性去探索“隐藏”在背后的商业价值提出了更高的要求。尤其是&#xff0c;新一代人工智能技术正从“感知智能”迈向“认知智能”&#xff0c;让机器实现“理解、推理、决策…

智能公交GPS

蓝斯通信推出LZ8713B*-X车载终端。这款设备是按交通部JT/T794-2011《道路运输车辆卫星定位系统车载终端技术要求 》和JT/T808-2011《道路运输车辆卫星定位系统车载终端通讯协议及数据格式》技术标准进行设计的。 产品集GPS&#xff08;可选配BD2双模模块&#xff09…

数据化管理在餐饮业中的应用

一、为什么要重视数据化运营和管理&#xff1f; “从经营到管理&#xff0c;管理方向需要数据灯塔” 餐饮市场和社会各业具有相似之处&#xff0c;也有很明确的本质不同。 1、首先&#xff0c;餐饮市场不像电信、石油市场是垄断性的&#xff0c;餐饮市场充分透明&#xff0c;符…

1 元秒杀 1000+ 册爆款电子书,错过再等一年!

wow代码人们让钱包瑟瑟发抖的双十一已经来啦与此同时码不停蹄地向你奔赴而来的还有 CSDN 为你准备的???? 1 元秒杀 ????价值 3.5 万元的爆款电子书限时特惠&#xff0c;仅需 1 元你&#xff0c;准备好了吗仅限 500 人速领????????????错过悔10年系列好书一

关于XP进程问题(转载)

Smss.exe 会话管理子系统&#xff0c;它负责启动用户会话。这个进程是通过系统进程来初始化的&#xff0c;包括对已经正在运行的Winlogon&#xff0c;Win32&#xff08;Csrss.exe&#xff09;线程和设定的系统变量作出反映。在它启动这些进程后&#xff0c;它等待Winlogon或者C…