您的位置:首页 > 运维架构 > 网站架构

软件进化--企业应用软件架构成熟度模型 软件企业的基础设施

2011-08-21 11:50 302 查看
应用软件开发作为一个行业已经有了30多年的发展历史,但是也许是软件之复杂,也许是软件之无形,目前依然处于一种原始的手工作坊式生产方式,需要依靠大量的人力去开发,质量难于保障,使用和运维成本高昂。
造成这种局面的原因多种多样,但我认为最根本的原因并不在于管理,而在于对应用软件合理构造的科学认识不足,没有建立起企业应用架构的标准和具体产品。我们分析人类社会的所有工业产品,它都有基本趋同的统一结构性标准框架,例如汽车,它包括动力系统、行走系统、操控系统、承载空间等,但我们分析汽车的发展史会发现,它也是从比较粗糙原始的模式逐步发展到构造完整、科学合理的,早期的汽车连雨刷这样最简单的必备部件都没有。
一个系统结构和构造是最关键的,忽略软件构造,只谈管理是很难把软件做好的,就像一个汽车企业虽有先进的管理体系,但不知道汽车应该是个什么样子,这不可能成为一个好的汽车制造企业,只关心软件企业的CMM-Capability Maturity Model for Software,而不关心软件科学构造同样不可能成为好的软件企业。
因此探讨应用软件的科学构造、建立软件架构成熟度模型AMM - Architecture Maturity Model for Software对于软件企业更加重要和基础。为了导出科学的软件架构,我们需要研究一下软件的进化过程,分析软件为了的进化方向,确定高级软件系统的基本构造和体系架构,这样才能够建立架构成熟度模型,在正确的方向指引下,我们才能够朝一个正确的方向前进。我认为如同高级哺乳动物都有基本相同的构造(例如老鼠与大象他们都有嘴、眼、鼻、耳,五脏六腑、四肢百骸)一样,高级软件系统的构造必然也是同构的,如果我们能建立起这样的架构,在此基础上编制具体应用就轻而易举了。
本以为AMM是自己独立发明的概念,结果到我网上一搜,早在1987年,J.A.Zachman在IBM的一个内部刊物上发表了“A Framework for Information Systems Architecture”的文章,第一次提出了企业架构EA-Enterprise Architecture的概念。EAMM是何时建立的不清楚,但EAMM基本参照了CMM的分类方式,将EA的成熟度分为了6级:
EA LEVEL 0 - NO PROGRAM
EA LEVEL 1 - INFORMAL PROGRAM
EA LEVEL 2 - REPEATABLE PROGRAM
EA LEVEL 3 - WELL-DEFINED PROGRAM
EA LEVEL 4 - MANAGED PROGRAM
EA LEVEL 5 - CONTINUOUSLY IMPROVING VITAL PROGRAM
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: