用户名 密码 联盟服务 关于我们 联系方式 收藏本站
返回网站首页 PgMP认证,美国项目管理协会高端项目管理认证!大型项目与项目群管理Program Management全球权威认证


网站登录:会员 企业 专家 服务商
企业服务:PMP培训  内训课 公开课
工 具 箱:发表文章 提问题 发案例
首页动态 | 文库 | 下载 | 书架 | 访谈 | 专栏 | 专题 | 人才 | 培训 | 软件 | PMC 互动:活动 | 案例 | 问答 | 论坛 | 博客 | 圈子 
应用:基础工程软件制造活动研发  认证:PMPNPDPACPPgMPIPMPP2ISPMPIMCP建造师MPM  特色:热点奖项

PMI-ACP®认证

适合敏捷开发项目
敏捷项目管理最佳实践

4月开课 | 实战课

PMI-PBA®认证

重视项目商业分析
商业价值与需求分析能力

4月开课 | 新闻

软考项目管理

信息系统项目管理师
系统集成项目管理工程师

计划 | 报名 | 经验

PMP®认证

单项目管理经典指南
年轻项目经理首选

9月开课 | 网络班

PgMP®认证

大型复杂项目全球标准
定位高级项目管理层

深圳 | 北京 | 上海

NPDP®认证

产品管理国际认证
全球产品管理最佳实践

北京 | 上海 | 感受

PfMP®认证

链接战略与项目
实现组织资源投资回报

17计划 | 北京 | 上海

敏捷项目管理ACP认证培训
国际产品经理NPDP认证

快速适应项目的需求变化与软件复用

作者:佚名   提交人:项目管理者联盟[项目管理者联盟]   属性:提交人转载   发布时间:2015-3-23   点击:1850   【收藏本文

  软件复用本质是为了快速适应不断变化的需求(adapt to changing needs ),两者目标是一致的,但是当我们过于注重软件复用(如组件复用component reuse又译构件复用)时,千万需要牢记:快速适应不断变化的需求是根本目的,它的重要性要重于组件复用技术本身。本文试图阐述两者概念比较以及时下流行的组件复用技术概要。项目管理者联盟

  适应需求变化项目管理者联盟

  现如今是一个计划赶不上变化的时代,企业竞争力逐渐表现在企业适应变化能力的竞争,谁能更快适应市场的变化,谁就能够在竞争中胜出,这种快速适应能力如果靠“人民战争”无疑是不现实的,软件可以帮助我们来适应这种快速变化。项目管理者联盟文章

  谈到这里,稍微再说明一下国人软件教育的误区,不错,软件曾经是科学计算的工具,因此,我们非常注重软件的算法和数据结构,甚至将之作为数学的衍生物,但是,现如今已经成为一种帮助我们快速响应变化的有力工具,如果我们的教育背景中只有算法和数据结构,能够编制出应付快速变化的软件吗?很显然,他们是风马牛不相及,由此可见国人软件概念和软件教育的落后性,在这样的软件认识背景下,固然设计模式的崇高位置得不到确立,软件设计被抛弃在脑后,编制出的大多数企业软件系统根本不具备应付变化的能力,程序员拒绝频繁更改程序,甚至借助技术原因阻扰软件的频繁更改,这种软件程序员和软件用户之间的矛盾可以称为miscommunication, miscommunication是导致软件系统的失败一个重要原因。项目管理者联盟

  国内早就有着名言论:“不上ERP等死;上了ERP找死”,如果你的企业不上ERP,那么你的企业就不能借助软件应付快速的市场等环境变化,那么必然会被淘汰;但是,如果上了一个不注重“适应需求变化”的ERP软件系统,那就是企业被僵化的ERP软件框死,丧失了使用ERP的根本目的。项目管理者联盟

  适应需求变化则成为现代软件系统一个孜孜不倦的追求目标,那么如何实现呢?pmp.mypm.net

  原则:给予人们可以裁剪他们系统的能力应适应需求变化,建立一个适应需求变化的系统,允许系统在一系列小的、可控制的步骤上进行改变。项目管理者联盟

  组件诞生项目管理者联盟

  将不变的通用的东西抽象出来,以达到在不同项目中重用复用,将我们有限的精力集中在项目具体变化和特点上。当然这些抽象复用的东西之间彼此必须是松耦合,这样才能根据需求挑选组合。项目管理者联盟

  让我们先回顾一下软件的发展史,软件开发的发展史实际是一部我们思维不断抽象拔高的发展过程,这种抽象概念非常类似于建模的思考方式:概要贴切地描述事物,忽视次要的细节。抽象体现在软件开发上就是每个具体项目需要完成的代码行数量越来越少。项目管理者联盟

  从1970到1980这段时间,软件开发从机器语言到汇编语言。进而发展到高级语言,甚至一些CASE工具,面向功能编程发展到面向对象编程,功能模块重用细化到类的重用,类的重用是最初是通过设计模式实现的。项目管理培训

  进入90年代中期,诞生了基于组件的开发模式(CBD:component based development),CBD将抽象概念带往了一个新的方向,与减少代码数量相反,CBD将功能各个方面细化分离到不同的、相互隔离层中,如表现层、业务逻辑层、持久层、安全层以及核心层等,并且可以管理这些组件之间的依赖关系,通过这种分离,我们可以提纯细化组件功能,进而产生可以重用的框架,如Struts框架可以重用在大部分应用系统的表现层中,,Struts JdonFramework Hibernate是一个框架组合,代表一种架构设计,这种架构设计其实可以重用在大部分应用系统,这种重用我称之为架构级别重用。项目管理者联盟

  组件复用项目管理者联盟

  软件组件(Software components)是软件提供业务或技术功能的基本单元或元素,这些单元可以独立地被部署、他们可以自我管理并且被虚拟部署到网络的任何地方,业务组件((Business components)执行业务逻辑、遵循一定的业务规则并且管理相应的数据(数据库操作称为manage corporate data);而技术组件(Technical components)则提供相应的平台以便业务组件可以依赖其上运行,例如权限、组件管理等。项目管理者联盟

  JdonFramework/Spring都属于一种技术组件框架,而我们具体项目的业务层代码如果能够提炼可以复用,则是业务组件;JdonFramework/Spring则都提供了业务组件赖于运行的一些核心底层机制,特别是组件的管理,如组件的创建、组件的获得、组件的资源管理、组件的消亡等生命周期支持,所以,我们可以在JdonFramework/Spring中加入自己的业务组件,当然,JdonFramework还提供了Session等状态管理的支持功能,为业务组件提供了更广阔的生命周期支持。bbs.mypm.net

  组件复用技术以前是停留在编译前期,也就是说:我们在编程时,导入所需要的其他组件Jar包,然后混同我们的项目编译部署,但是这需要通过专业技术人员实现,很显然是不能适应原则中第一句:给予人们可以裁剪他们系统的能力应适应需求变化,[整理]这里的“人们”应该是指软件最终用户,应该给予用户自己改变系统的能力,也就是说:需要提供软件系统运行时能够动态改变自身的能力。service.mypm.net

  组件复用技术以前停留在软件编译阶段,现在则更靠前,必须在软件运行阶段,当然对技术要求相当高,需要语言支持RTTI(简单又神秘的Class.forName发挥作用了),这在"Evolution, Architecture, and Metamorphosis"一文中被认为是Metamorphosis,现在由于AOP技术出现,AOP有一种动态Weaving技术,实际就是在软件运行时实现动态拦截,这样给予终端用户更大的改变系统能力,他们基本可以以动态插拔的概念实现多个组件的组合运行。在"AOP vs Decorator"一文中,我把编译阶段的组件组合方式(我更愿意称为静态组合)和运行时组合等两种处理方式,合并称为过滤器模式,如果你希望采取组件可插拔式的复用,就可以使用过滤器模式。项目经理博客

  组件可插拔更换service.mypm.net

  为什么说组件的可插拔非常重要?bbs.mypm.net

  组件重用目的是为了更好地适应需求变化,但是有了组件重用不代表就快速适应需求变化,因为组件本身也会产生设计错误(提炼得不够抽象或者组件很难以替代),这就必然导致软件系统得维护成本提高,那么快速适应需求变化的目标也就成为一纸空文。实践证明:组件设计问题已经成为导致软件开发失败的一个主要因素。项目管理培训

  组件设计有两个主要风险:组件提纯的纯度和组件的替代方式。提炼的纯度也就是抽象的高度,组件的抽象程度越高,当然可重用范围越广,但是往往我们只有经历多个项目后,才发现自己的组件提炼还欠火候,这实际是组件的提炼过程成本。项目管理者联盟

  组件提练虽然取决于人为设计因素,但是在实现手段上也依赖于组件的替换方式,通过经常反复频繁的微调和更换,才能将组件不断提炼向理想状态靠拢,所以,必须有一种方便的组件替换方式提供频繁更换支持,我们总不希望更换组件象以前更换汽车发动机火花塞一样,需要拆开汽车,打开发动机那样麻烦吧?项目管理者联盟

  参考PC电脑硬件设计:更新CPU或内存条,只要直接插拔就可以,这些部件和母版都是一种松散的、可插拔的关系,如果软件组件替换是动态的可插拔更加方便终端用户在软件系统交付后,根据需求改变他们的系统。组件可插拔本质上是这些组件必须是最大化的松耦合,彼此依赖影响非常小,换句话说:如果实现了可插拔更换,说明你的组件已经实现松耦合了。club.mypm.net

  那就有可能设计一种软件框架:它能够为每个部件提供非常棒的服务访问,软件组件是 松耦合’loosely coupled’,这些组件的大部分通过几行代码就可以实现替换。目前这种方便的实现方式是使用XML进行组件的配置。项目管理者联盟文章

  JdonFramework/Spring都是这样的一种框架,JdonFramework更进步的是:JF框架本身的组件也是可以替换的,例如你希望在JF中使用Spring的配置文件,那么你只要做一个Spring配置文件的解析组件,然后替换JF框架原来的XML解析器就可以了。无论EJB2/EJB3等在这方面要稍逊于Ioc/AOP框架,对于支持EJB3的JBoss 4 这样架构,需要动态更换AOP拦截器还不是很方便,因为JBoss 4本身组件没有象JF那样做到可插拔配置,不过,JBoss 5已经开始走上这条路,使用一个微核心来管理所有的可插拔组件,我曾经在"JBoss 5迎来中间件彻底的可配置时代"一文中提出组件是否方便替换是衡量一个组件框架的重要指标。项目管理者联盟


<<上一页 1 2 下一页>>
项目管理者联盟PMP认证中心
[相关文章] [网友互动]
·为什么传统项目管理管不好软件项. (29)项目管理者联盟10-12
·如何进行利益相关方及其需求的识. (51)项目管理者联盟10-09
·让软件项目管理更简单 (119)项目管理者联盟09-30
·产品经理接需求的正确姿势 (65)项目管理者联盟09-25
·产品的构思初期,该如何做需求分. (286)项目管理者联盟08-14
·软件项目的质量保障 (332)项目管理者联盟08-09
·如何提升项目需求分析能力?送你. (732)项目管理评论杂.07-18
·如何在前期做好需求分析 (232)项目管理者联盟07-03

10-17[帖子] 【首信软件】助力专家级安防服务商项目. (7)
10-17[日志] 【首信软件】助力专家级安防服务商项目. (5)
10-17[帖子] 全国有哪些电子招投标软件公司? (6)
10-17[日志] 全国有哪些电子招投标软件公司? (7)
10-17[日志] 从企业管理软件中反思电子招投标的安全 (6)
10-17[日志] 车间生产加工管理软件提高企业生产效率 (9)
10-17[帖子] 中小企业用什么一体化管理软件比较好? (10)
10-13[帖子] 诺明软件:“互联网+”的风口浪尖,项目 (29)
[发表评论]
本站热点
·《国际项目集经理PgMP认证》12月22
·PgMP新增名单(2017年第三季度)
·人力资源项目管理沙龙(杭州)圆满结束
·PgMP新增名单(2017年第二季度)
·PMP培训班(北京)-针对2018年3月
·项目管理者联盟PMP2018年度培训班招
·产品经理认证NPDP八期北京班圆满结束
·《项目经理该知道的那些事》沙龙活动成功举
·第三十一期PgMP培训班上海成功举办
栏目说明
    《文库》栏目为项目管理者联盟网站核心栏目,收录了十大行业项目管理文章5000余篇,囊括了项目管理五个阶段、九个知识领域的相关文章,是广大项目管理爱好者学习的知识库,欢迎大家发表原创文章、转贴文章,或直接发给编辑。须联盟会员且登陆后才能发表文章。
敏捷项目管理ACP培训
项目管理活动
免费参加2017(第二届)中国软件估算大会
主办单位:项目管理者联盟
时    间:2017-11-16
地    点:北京·北京丽亭华苑酒店
电    话:010-82273401-11
邮    件:pmp3@mypm.net
项目组合管理及PfMP认证培训-[北京/上海,2017年计划]
主办单位:项目管理者联盟
时    间:2017-12-1
地    点:北京 上海·
电    话:010-82273401-18
邮    件:pgmp@mypm.net
活动QQ群:531390275
免费积累PDU,仅500人

2016年项目管理活动计划
2015年活动精彩回顾
原创排行榜
 高扬 105 项目管理 84
 人月神话 60 郭致星 52
 蒋昕炜 46 高国伟 45
 乔东 44 项目管理评论杂志 44
 肖杨 38 潘德有 36
 张为 34 周劲松 34
搜索文章
关键词:
行  业:
团 队   成 本   风 险   进 度
沟 通   采 购   质 量   合 同
更多>> 专题集锦
更多:
经理访谈
更多:
个人专栏
更多:
项目管理者联盟特刊
联盟特刊是对网站会员发行的内部刊物,刊物内容包括:案例及分析等,得到了会员好评。
电子期刊:
特刊下载:
2017合刊  2016合刊  2015合刊 
2014合刊  2010合刊  2009合刊 
2008合刊  2004合刊  2005合刊 
2006合刊  2007合刊       
施工企业管理
《施工企业管理》创刊于1986年1月,中国施工企业管理协会主办,是反映施工企业管理杂志。
浏览往期:
建造师杂志
《建造师》杂志由清华国际工程项目管理研究院主办,是中国面向建设企业管理人的高端杂志。
浏览往期:
更多>> 推荐文章
10-16·解析项目集利益相关方的争.
10-16·被要求压缩进度,项目经理.
10-13·在资源不足的情况下,如何.
10-13·项目管理中的神秘三角关系
10-13·琴瑟和鸣--SCRUM中“讲”好
10-12·质量管理的十大误区
10-12·【向古人学项目管理】做项.
10-12·掌握这25个风险点,再也不.
10-12·【干货】 项目经理的压力这
10-09·项目管理中的5大监控点
10-09·细化项目工作范围就这么几.
10-09·书法人项目管理的理论与实.
10-09·基层党建“项目化模式”之.
09-30·如何跟进项目进度控制阶段.
09-30·项目管理书籍连载——《解.
09-30·如何走出项目成本管理五大.
关于联盟 | VIP会员 | 培训服务 | PMP认证 | PgMP认证 | 刊物出版 | 沙龙会议 | 人才服务 | 广告投放 | 联系我们 | 友情链接
项目管理者联盟 版权所有 京ICP证070584号 | 京公网安备110102000464号
如转载本站文章,必须于文章开头处注明转自“项目管理者联盟”,并注明原作者