敏捷开发简述

1、敏捷开发简介 “敏捷”一词,解释为灵敏迅速、灵活。敏捷开发(Agile Programming)是时下流行的软件开发方法。 传统的软件开发模型,主要包含两种“瀑布型”、“螺旋型”。敏捷开发本身属于“螺旋型”的开发模型,并辅之以必要的实施过程。敏捷开发有两个重要模型,极限编程(eXtreme Programming、XP)、Scrum模型。XP模型,与其他模型的不同在于“结对编程”(即两个人在一个机器上同时开发程序),这在国内是几乎不可能的,没有听说过XP模型的案例。Scrum模型的一个显著特点就是响应变化,它能够尽快地响应变化,是比较常用的方式,案例是比较多。 敏捷开发宣言: 个体和交互 胜过   过程和工具 可以工作的软件 胜过   面面俱到的文档 客户合作 胜过   合同谈判 相应变化 胜过   遵循计划 虽然右项也具有价值,但我们认为左项具有更大的价值 2、Scrum过程讲解 Scrum 将软件开发团队比拟成橄榄球队,有明确的最高目标,熟悉开发流程中所需具备的最佳典范与技术,具有高度自主权,紧密地沟通合作,以高度弹性解决各种挑战, 确保每天、每个阶段都朝向目标有明确的推进。 Scrum 开发流程通常以 30 天(或者更短的一段时间)为一个阶段,由客户提供新产品的需求规格开始,开发团队与客户于每一个阶段开始时挑选该完成的规格部分,开发团队必须尽力于 30 天后交付成果,团队每天用 15 分钟开会检查每个成员的进度与计划,了解所遭遇的困难并设法排除。 2.1、有关Scrum的几个名词 Backlog: 可以预知的所有任务,包括功能性的和非功能性的所有任务。 Sprint:一次跌代开发的时间周期,一般最多以30天为一个周期.在这段时间内,开发团队需要完成一个制定的Backlog,并且最终成果是一个增量的,可以交付的产品。 Sprint Backlog:一个Sprint周期内所需要完成的任务。 Scrum Master: 负责监督整个Scrum进程,修订计划的一个团队成员。 Tme-box: 一个用于开会时间段。比如每个Daily Scrum Meeting的Time-box为15分钟。 Sprint Planning Meeting: 在启动每个Sprint前召开。一般为一天时间(8小时)。该会议需要制定的任务是:产品Owner和团队成员将Backlog分解成小的功能模块, 决定在即将进行的Sprint里需要完成多少小功能模块,确定好这个Product Backlog的任务优先级。另外,该会议还需详细地讨论如何能够按照需求完成这些小功能模块。制定的这些模块的工作量以小时计算。 Daily Scrum Meeting:开发团队成员召开,一般为15分钟。每个开发成员需要向Scrum Master汇报三个项目:今天完成了什么?是否遇到了障碍?即将要做什么?通过该会议,团队成员可以相互了解项目进度。 Sprint [...]

《中国开源软件推进联盟》中国开源的毒瘤

所谓的《中国开源软件推进联盟》,其组建过程与宗旨可以从其网站上获取。这里我不谈《联盟》的历史,只谈现在他存在的问题,以问题的影响性。所有对《联盟》的质疑声,源自于RedOffice落选核高基。 其实RedOffice的落选没有什么,但是胡才勇的离职,就让整个事情变得“耐人寻味”了。RedOffice落选之后,应胡才勇之邀,《上书言事》。上书的内容并没有公示,但基本内容无外乎:本着“拿来”精神“认定”RedOffice为“国产”,以避免国外的“技术垄断”而实现“技术自主”。其避免 “技术垄断”的理由,是正确的,但是其素材却是错误的。使用“别人垄断”开源软件,自己改改就算“技术自主”,者未免“让人所不耻”。如果自己有实力,为什么不重新开发一套真正自主的呢?“避免重造轮子”,这个理由在已经被公认的“开源协议”面前,不值得一驳。进核高基为什么?为钱!改改开源软件,就拿核高基的资金,而套以“国产”的牌子,就是我们的《联盟》所要达到的目标?错误的事情,总源自于模糊的动机;从这件事情来看《联盟》的初衷和宗旨非常的模糊,其成立太过于仓促了,而逐渐沦落于为RedOffice这样的“假国产”呐喊甚至《上书言事》。 为什么称《联盟》为毒瘤?爱之越深,恨之越深。RedOffice已经通过“落选”这件事情所明确的原因,而《联盟》却一再的为其“国产”言论鼓吹,更有甚者出现只为“会员服务”的言论。所有这一切,让我们看到了一个不承认任何错误的《联盟》,一个通过歪曲开源协议粉饰错误的《联盟》。此外,《联盟》更大的问题在于不存在“讨论、辩论”的环境,与其“主流”思想相违背的就被坚决的“清洗”出来,使《联盟》变成“一言堂”,比较突出的就是袁萌因为OOXML 的事情被清洗。我们都知道“真理越辩越明”,而《联盟》给了我们“一记耳光”,让我们知道了“中国开源我说了算”的“领导力”。 我对开源的关注,始于我使用的SCM(版本控制工具)Git,它是Linux Kernel所使用的SCM。通过Git我发现一个以maillist+patch所构建的开源软件开发方式是多么的神圣:你可以提交patch,别人对你的patch也会提出修改意见,修改好的patch会被接受。这样的社区方式,让我们看到了“提出”、“质疑”、“接受”的一个基本轮廓。而《联盟》让我们看到了什么?“质疑”的人被清洗了,“质疑”的言论被“压制”。清洗过老袁,压制了老袁blog上的评论,这就是我们所看到的《联盟》。 对于老袁,我的态度有一个转变过程。从Google上搜索“中国开源”,发现博文《从开源领袖到头号叛徒——袁萌100天变身实录》,我就上老袁的 blog上,看到有人一直在骂他。甚至有人跟我说过“我通常上袁萌blog上只看评论,看看就开心”,我也这样想过,而且也对其“U盘”挺反感的。但仔细想想“U盘”的目标用户针对的是小学生、非IT从业人员的话,“U盘”就显得没那么“幼稚”了。可能是去年,我听说老袁被《联盟》开了,没有仔细想过,因为之前我知道OOXML事件。但是这次老袁直接质疑RedOffice而力挺“Linux打假”,才让我真正的看清了《联盟》“一言堂”和“挺假”的本质,从而对老袁的态度有了一定的改观。 《联盟》的初衷是好的,过去也好过,但是发展到现在还“好”吗?对“质疑”的压制,对“假国产”的力挺,让我们闻到了利益腐蚀下的“腐臭”。他的所作所为给我们展示了一个国内开源利益链条,修改开源软件=》包装为国产=》申请国家资金。这样的链条,让我们心痛、心寒、愤怒。这一切并不源自于《联盟》,但是他至少是帮凶;这样的帮凶行径就是中国开源的“毒瘤”。让中国开源真正的走向健康,这样的毒瘤必须要铲除,否则只能是无休止的“打假”而“假不绝”的惨象。

我的“开源打假”观 – 2

1)有人谈到的“输-血”问题的确值得我们深思,难道国家不“输-血” 支持国内开源公司,国内就无人用开源了吗?不是的,国内对于开源的使用那是历史悠久的,因为国人喜欢“免费”的东西,况且嵌入式开发基本上围绕Linux 的商业企业越来越多,这和国内开源公司的努力一点关系都没有,那是因为“价格”因素使然。Linux的引进,是一些学者的“功劳”(例如、袁陆这批人-)和国内开源公司更一点关系也没有(虽然有些学者最后进入这些公司)。 2)国内开源的支持不在于“使用”,而在于“贡献”。“使用” 就没什么好说的。“贡献”就在于提交代码,而不仅仅局限在’汉化’这个层面。我曾看过一些开源项目的代码提交者列表,国人的名字是有的,但通过邮箱来看,基本上都是大公司的雇员。也有一些零散的“个人”提交者的代码,但“形只影单”。况且国内这种“35岁”即面临转行的行业环境,更难出现“长期“的“贡献者”出现。 3)综上。国家扶持开源产业;向国内所谓“开源”公司输血是走了弯路,因为他们不能为开源“贡献”什么,而“使用”早已被“价格”因素被国内的人广泛“参与”了。国家真正该做的就是使软件产业更“健康”、“长久”,使年龄从“劣势”转变为“优势”,同时也就促进了“开源”的“贡献”方向的“参与”。

我的”开源打假“观

1)许多人,将”打假”认定为老袁的“恶意搅水”,进行了一些谩骂。更有甚者也对我本人进行了谩骂。我一直认为“谩骂是理屈者最后的武器”。 2)我认为老袁的“搅水”对“假”是“恶意”的,但对中国的开源是“善意”的、“无私”的–因为他早就想到会被“既得利益”者及其追随者和被蒙蔽者的“穷追猛打”和“恶意谩骂”。 3)中国的开源怎么发展,要首先跳出对“国家资金”的追逐游戏,才能够走上健康发展之路。虽然我本人对“哲思社区”和对“徐继哲”保留态度,但他那种SNS式的开源推广方式,也算是一种有效的手段。 4)这里的网友,能够在“打假“与”打假打假“的氛围中充分的讨论、揭露;说明我们这些人都希望中国的开源能够健康的发展。”发展“中难免有问题,有问题就要改正;一个”刚愎自用“不接收批评的”联盟“,能够给”中国开源“带来健康之路吗?翻翻历史我们总能够找到答案,比如”崇祯“。 5)部分人听信了一些”片面“的信息,就下了”全局“的结论。要明白”错误“总会出现的道理(比如BUG),有问题就要解决问题。这次老袁的”打假“就是解决”利益至上 “的开源”错误“,我们凭什么要容忍”错误“不被解决呢?难道继希望于一个能够自我”修正“的”联盟“?这些天联盟的表态,没有让我们看到这一点。这样的”联盟“我们要彻底的”打假“,让它不要再为了”自己“和”自己成员“的利益来歪曲开源这条信念了。

红旗Linux的下载数字上的猫腻

一组数字:(http://www.redflag-linux.com/d/iso/ 2010-07-28 08:37) 红旗 inMini 2009 下载1352990次 红旗Linux 6.0 SP3 下载0次 红旗Linux桌面7.0 2009/07/30 iso更新 下载5603205次 红旗linux 桌面版 6.0 sp2 完整版 DVD ISO 下载9404255次 一些说明: 1)Redhat分支的Linux都采用yum进行软件的更新,从不会发布SP2\SP3这样的包,说明红旗Linux并没有引入Redhat9之后的这些新特性,更新速度太慢。 2)这些下载数字存在虚假可能。SP2下载了940万次而SP3下载了0次,940万人中就没有一个对SP3有兴趣?如果是自己刷数字,为什么不刷SP3的数字呢?工作这么不认真。 跟进数字:(http://www.redflag-linux.com/d/iso/ 2010-07-28 09:21) 红旗 inMini 2009 下载1353008次 红旗Linux 6.0 SP3 下载0次 红旗Linux桌面7.0 2009/07/30 iso更新 下载5603223次 红旗linux 桌面版 6.0 sp2 完整版 DVD ISO 下载9404260次 跟进说明: 数字刷新的太快了,仅仅44分钟,inMini2009增加下载18次,桌面7.0增加下载18次,SP2增加下载5次。这个速度,其中有2个18次,这太让人寻味了.要知道,这是在8点-9点这段刚刚的上班时间里面,难道国外对红旗Linux很推崇?国内红旗已经有近千万的Linux的桌面用户了嘛?耐人寻味,刷数机器人我曾经玩过。 再次跟进:(http://www.redflag-linux.com/d/iso/ 2010-07-28 09:32) 红旗 [...]

My God! ARM-LINUX-GCC-GNUEABI 成功了!

#!/bin/sh # path macro SRC=${0%%/*} if [ "${SRC}" == "." ]; then SRC=${PWD} fi PARALLEL=”-j 3″ # target macro unset AR AS CC CFLAGS CXX CXXFLAGS LD RANLIB STRIP export ARCH=arm export TARGET=${ARCH}-linux-gnueabi export TARGET_GCC=”–with-arch=armv4t –with-abi=aapcs-linux –with-float=soft” export CROSS_COMPILE=${TARGET}- export PREFIX=${HOME}/.devel/${ARCH} export LANGUAGE=C export LC_ALL=C # path init mkdir -p ${PREFIX} if [ ! -d [...]

My God! ARM-LINUX-GCC 成功了!

#!/bin/sh # path macro SRC=${0%%/*} if [ "${SRC}" == "." ]; then SRC=${PWD} fi PARALLEL=”-j 2″ # target macro unset AR AS CC CFLAGS CXX CXXFLAGS LD RANLIB STRIP export ARCH=arm export TARGET=${ARCH}-linux export PREFIX=/opt/vxwo/${ARCH} export LANGUAGE=C export LC_ALL=C # path & file linux_path=linux-2.6.33.5 linux_file=${linux_path}.tar.bz2 binutils_path=binutils-2.20.1 binutils_file=${binutils_path}.tar.bz2 gcc_path=gcc-4.5.0 gcc_file=${gcc_path}.tar.bz2 glibc_path=glibc-2.11.2 glibc_file=${glibc_path}.tar.bz2 glibc_ports_path=glibc-ports-2.11 glibc_ports_file=${glibc_ports_path}.tar.bz2 # linux [...]

咳,编译ARM-LINUX-GCC难

1. 版本依赖比较严重,而且每个版本都需要打补丁,否则不能完成编译 2. 编译时间太长,修正一个错误或者尝试一个编译选项需要较长的编译时间 3. 网上资料很多,但是基本没什么用,原因在于每个人的开发环境不尽相同、所用版本不同。 4. 利用周末两天的时间都没有编译成功一套工具链,最终决定暂停。

始终保持健康的职业观

先看一下旧闻:2003年,成龙以“孩子大了要自己去找饭碗”为由辞退了在身边十几年的段伟伦。这里面所包含的信息足以来支撑本文的标题。老板辞退员工,那是“天经地义”的,也并不需要什么特殊的理由。但是以“孩子大了要自己去找饭碗”这样的语言来作为辞退理由,说明老板之前已经故意的误导了员工的“职业观”。 什么是“职业”?就是挣钱养家的方式。什么是“老板”?就是在职业里实现自身利益最大化的人。什么是“员工”?就是在职业里自身利益最小化的人。资源是固定的,老板想要自身利益最大化,就需要员工的利益最小化。“铁打的营盘,流水的兵”,老板是营盘,员工是“流水的兵”。在一个公司里,不要相信老板的“许诺”,要追求“现世现报”。老板的许诺?只有一个原因:公司“现在”需要你;注意是“现在”,而不是“将来”,等到“现在”变成“过去”了,老板是绝对不会兑现曾经的许诺的。 对于老板来说,公司的发展最重要。公司的发展体现在员工上,需要两个方面:1、靠自身建设稳定的团队,2、靠不断补充“适合”的人进入团队以“代替”过时的人。总会有“过时”的人的。 对于员工来说,个人的发展与利益最重要。个人的发展主要是指“职位的提升”,利益主要是“薪金”,统一起来就是“薪金”。员工个体只是为了自身而工作,而公司只是将工作变成成“薪金”的“转换器”。为了将工作转换成更多的“薪金”,在公司内努力的工作将是一个“必要”条件。如果一个公司内“薪金”的诉求被一些“许诺”所压制,那只是老板的“缓兵之计”而已。 “职业观”正确与否的评定,唯一的标准:自身利益的多少。少了,就是“错误的职业观”;多了就是“优秀的职业观”;正好也算“健康的价值观”。职业观的评定需要自身的积极主动、需要自身的不屑努力,完全取决于自己而并不取决于公司。

人类的末日源于强制控制

昨天晚上做了一个梦,奇怪、可怕、可怜、不可思议。 场景是这样的:中日的战争进行中,类似于4几年的状态。我不知什么原因DIY方式清除了身上的一个机器部件,就能够在两国之间的一个小河中通过,而其他人不能;因为我清除的部件就是放在心脏旁边的,如果出了限制圈就爆炸的电子控制器。关键的是,中国人和日本人身上都有;谁没有呢?不知道。 如果如果世界最重变得那样,给人们安装那个的是谁?人类变成了什么?统治者是谁?人类?外形人?但无论怎样,那已是人类的末日了。