- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中国软件架构师网
软件高端人才修炼系列
企业级应用软件架构开发过程与实践
第二章
版本 0.5
胡协刚
首席软件架构师
szjinco@
目录
第一章 软件与软件的特性——从业务上下文出发的软件图景 3
第二章 软件工程基本原理——软件开发中的方法论 4
第一节 问题解决规律与工程学方法——软件开发的方法(理)论框架基础 5
问题解决5
解决复杂问题与方法论7
工程问题与工程学方法10
第二节 软件工程与软件过程——人类迄今为止最复杂的问题解决过程 14
软件工程 14
软件过程 16
软件过程的表述 18
软件过程的基本组成要素19
软件过程科目 discipline20
科目下的工作流 workflow20
工作流明细 workflow details21
软件生命期模型 22
以阶段为单位组合工作流24
第三节 软件过程能力成熟度模型——CMMI 模型下的软件组织活动全景视图 27
软件过程的执行步骤 27
SW-CMM/CMMI 过程体系 31
CMMI 的过程成熟度等级 34
CMMI 的过程域37
本章小节 39
©中国软件架构师网, 2006 Page 2 of 40
第一章 软件与软件的特性——从业务上下
文出发的软件图景
软件是人类有史以来创造的一种非常特别的制品,它具备与传统制品
完全不同的特性。
由于软件最初的形态只是用于科学计算的简单程序,这使得人们(特
别是刚刚学习编程的初学者)往往倾向于将软件看作是一种相对独立的事
物。传统软件工程也是从软件需求开始来阐述软件的生命周期,并给人一
种错觉,即软件需求早就存在于用户那里,我们要做的只是去发现它们(需
求获取)。这使得人们常常忽略一个简单的事实——软件是为了支持客户
的业务(或解决领域问题)而被开发的(需求规格是被开发出来的,换句
话说是被设计出来的),其内在特性受其上下文的制约,甚至就是上下文
的一种直接反映。
我们在研究软件的时候,不能脱离于它的上下文,例如软件的复杂性
根本上源至其问题域的复杂性。只有从业务(问题域)上下文入手,我们
才能真正看到软件的真实图景。
本章试图从一个更为广泛的视角,来分析软件、还有软件的特性;而
软件及其架构的开发策略与方法的研究,则始于人们对软件自身特性所引
发的固有问题的一种解决努力。
©中国软件架构师网, 2006 Page 3 of 40
第二章 软件工程基本原理——软件开发中
的方法论
人们从事的大部分有意义活动,都可以归纳为一种问题解决的过程,
软件开发也不例外。思维学家们做了大量的研究来帮助人们提高问题解决
的能力,认知学、方法论等都属于这方面的成果。
软件被用来解决领域问题,它实际上包含了两个“问题解决”过程。
一是,如何使用软件来解决业务问题;二是,如何开发出这个能解决业务
问题的软件交付。我们当然更为关注后者。当前软件的规模、复杂度已经
大到迫使人们必须采用团队模式来组织开发,而人类以往的成功经验是以
工程的方式来组织团队协作;另外,软件有其特殊的地方,因此我们需要
改造传统工程方式来适应软件的开发——这便是软件工程的由来
文档评论(0)