赞
踩
没有任何技术或管理上的进展,能够独立地许诺十年内使生产率、可靠性或简洁性获得数量级上的进步。
所有软件活动包括根本任务—打造由抽象软件实体构成的复杂概念结构,次要任务—使用编程语言表达这些抽象实体,在空间和时间限制内将它们映射成机器语言。
现在是关注软件任务中的必要活动的时候了,也就是那些和构造异常复杂的抽象概念结构有关的部分。
建议:
本章中,我们试图通过分析软件问题的本质和很多候选银弹的特征,来探索其原因。
① 提高软件的生产率、可靠性和简洁程度。我们甚至不能期望每两年有一倍的增长。
② 根本的—软件特性中固有的困难,次要的——出现在目前生产上的,但并非那些与生俱来的困难。
③ 一个相互牵制关联的概念结构,是软件实体必不可少的部分,它包括:数据集合、数据条目之间的关系、算法、功能调用等等。
④ 软件开发中困难的部分是规格化、设计和测试这些概念上的结构,而不是对概念进行表达和对实现逼真程度进行验证。
⑤ 现代软件系统中这些无法规避的内在特性:复杂度、一致性、可变性和不可见性。
复杂度:
一致性:
可变性:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。