软件体系结构原理、方法与实践电子版免费下载

下载地址1立即下载
资源下载
下载地址1立即下载
建议您开通vip,可免费下载全部网站课程

软件开发不仅仅是把程序写好就够了,还要做前期的需求和体系结构设计(架构设计),而且,前期的设计比程序编码更重要。关于这一点,初入行业的软件工程师时常会感到困惑,因为他们往往初出茅庐,没有大型项目经验。在他们的心中,只有程序,没有体系结构。
为了解决软件新人的这些困惑,本节从软件危机谈起,介绍软件构件、软件重用的基本概念,阐述软件体系结构的意义、发展和应用现状。
1.1从软件危机谈起
软件危机( software crisis )是指在计算机软件的开发( development )和维护
( maintenance )过程中所遇到的一系列严重问题。20世纪60年代末至70年代初,“软件危机”一词在计算机界广为流传。事实上,几乎从计算机诞生的那一天起,就出现了软件危机,只不过到了1968年在原西德加密施(Garmish )召开的国际软件工程会议上才被人们普遍认识到。

时至今日,“软件危机”虽然在软件行业已经家喻户晓,但很多工程师还是不能很好地理解软件危机究竟为何物,在实际的软件项目中,软件危机的“表现”在哪里,本节就这些内容做一个简单的介绍。
1、软件成本日益增长
在计算机发展的早期,大型计算机系统主要是被设计( design )应用于非常狭窄的军事领域。在这个时期,研制计算机的费用主要由国家财政提供,研制者很少考虑到研制代价问题。随着计算机市场化和民用化的发展,代价和成本就成为投资者考虑的最重要的问题之一。
20世纪50年代,软件成本( cost )在整个计算机系统成本中所占的比例为10%-20%。但随着软件产业的发展,软件成本日益增长。相反,计算机硬件随着技术的进步、生产规模的扩大,价格却在不断下降。这样一来,软件成本在计算机系统中所占的比例越来越大。
到20世纪60年代中期,软件成本在计算机系统中所占的比例已经增长到50%左右。而且,该数字还在不断地递增,下面是一组来自美国空军计算机系统的数据∶1955年,软件费用约占总费用的18%,1970年达到60%,1975年达到72%,1980年达到80%,1985年达到85%左右。而如今,购买一台普通的电脑只要2-3千元人民币,但如果把常用的操作系统、办公软件、安全软件等装好,却要远远超过购买电脑的费用。

由于软件是逻辑、智力产品,软件的开发需建立庞大的逻辑体系,这是与其他产品的生产不一样的。例如∶工厂里要生产某种机器,在时间紧的情况下可以要工人加班或者实行“三班倒”,而这些方法都不能用在软件开发上。
在软件开发过程中,用户需求( requirement)变化等各种意想不到的情况层出不穷,令软件开发过程很难保证按预定的计划实现,给项目计划和论证工作带来了很大的困难。
Brooks在其名著《人月神话》中指出:“在已拖延的软件项目上,增加人力只会使其更难按期完成”。事实上,软件系统的结构很复杂,各部分附加联系极大,盲目增加软件开发人员并不能成比例地提高软件开发能力。相反,随着人员数量的增加,人员的组织、协调、通信、培训和管理等方面的问题将更为严重。
许多重要的大型软件开发项目,如IBM OS/360和世界范围的军事命令控制系统
( wWMCCS ),在耗费了大量的人力和财力之后,由于离预定目标相差甚远不得不宣布失败。
3、软件质量差
软件项目即使能按预定日期完成,结果却不尽人意。1965年至1970年,美国范登堡基地发射火箭多次失败,绝大部分故障是由应用程序错误造成的。程序的一些微小错误可以造成灾难性的后果,例如,有一次,在美国肯尼迪发射一枚阿脱拉斯火箭,火箭飞离地面几十英里高空开始翻转,地面控制中心被迫下令炸毁。后经检查发现是飞行计划程序里漏掉了一个连字符。就是这样一个小小的疏漏造成了这支价值1850万美元的火箭试验失败。

侵权联系与免责声明
1、本站资源所有内容均收集于网络,与本网站立场无关
2、本站所有资源收集于互联网,由用户分享,该帖子作者与老马学社网站不享有任何版权,如有侵权请联系本站删除
3、本站部分内容转载自其它网站,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
侵权联系邮箱:648765304@qq.com 本文链接:https://laomastudy.cn/3171.html
0

评论0

站点公告

老马学社因各项成本逐渐加大,优质课程资源不断增多,站内总资源价值上亿!!!!!明日将会恢复至原价999,今日只需499开通永久会员。网站始于2020年,稳定运行超过5年,每日更新,全站课程不加密,包含多个类目,总课程价值超过百万,比我们便宜的没有我们全,和我们一样全的没我们便宜,抓紧时间提升自己最重要
没有账号?注册  忘记密码?