大道至简第七八章读后感

  今天读了《大道至简》的最后两章,第七章讲了《现实中的软件工程》,第八章讲了《是思考还是思想》。

  文中列举了IBM,Borland和Microsoft的一些体系,来说明大公司眼中的世界。大公司们在标准、理论、语言上的争来夺去,未必全然出于“软件实现”的考虑。对统一理论、统一工具、统一过程的企图,其最终目的是在整个软件工程体系中的全面胜。但无论各个公司使出什么战略,什么方法,什么策略,都离不开工具、方法、过程这三要素。他们依靠自己的优势,并且通过同盟的优势来弥补自己的劣势,使自己处于不败之地。算 盘 上 的 绝 大 多 数 人 , 只 是 用 于 计 算 胜 负 的 一 枚 算子。所谓编程语言,只不过是他们在商业战场上争夺所用的工具而已。

  除了软件本质力量的推动之外,商业因素也推动着软件工程体系的发展。文中所画软件工程层状模型可以看出,作者将软件工程划分为实现,团队和经营三部分。从这个模型中可以看到,在“程序”与“方法”层面,是关注于“(具体的)实现”的;而在“过程”和“工程”层面,更首要考虑的是团队问题。从角色的角度上来说:开发经理思考项目的实施方案和管理具体的开发行为; 而项目经理则保障团队的稳定性和一致性。然而这只是基本模式,或者说,是理想模式。

  思考项目成本的经理才会长久处于优势地带。通过作者的描述:不计成本的项目计划不会得到经营者的支持;毫无目的地消耗成本是项目中的慢性毒药;最致命的风险是成本的枯竭。以上三点经验是我们应该得到的。

  接着作者向我们展示了他眼中的AOP和MDA/MDD,为我们介绍了这些语言的特点和人们对其的一些理解中的错误。

  第八章主要讲了软件工程三个要素的价值、UML 与甲骨文之间的异同、 经营者离开发者很远,反之亦然和矛盾:实现目标与保障质量、枝节与细节和灵活的软件工程这些内容。软件工程三个要素的价值中主要告诉我们应该回归到软件工程的本体上来思考问题, 而不是仅关注于每一个局部的要素。始终要知道工程的整体问题仍旧是“实现”。

  软件工程是灵活的,在软件开发中很多常见的问题,一些人不知究竟地使用着技巧和方法,而一旦出了问题,则归究于这些技巧和方法的不好。只能说这些人不会变通,不会灵活的运用,所以如作者所说:死读一本《软件工程》的人不会做真正的软件工程。

  

posted @ 2015-11-12 15:35  天天1015  阅读(136)  评论(0编辑  收藏  举报