- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程思想1文档资料
Software Engineering Methodology软 件 工 程 方 法 学 倪 子 伟 Computer Science Department Xiamen University zwni@xmu.edu.cn 0592-2580055 参考文献 Reference TEXT 软件工程思想, 林锐, 2003 敏捷软件开发: 原则、模式与实践(C#版) Robert C.Martin, Micah Martin,译者: 邓辉,孙鸣, 人民邮电出版社, 2007年11月 软件工程—36计, 宋雨, 中国电力出版社, 2007年2月 Journal, Internet, … 前? 言 在20世纪50~60年代计算机发展初期, 程序设计是少数聪明人干的事。 他们的智力与技能超群, 编写的程序既能控制弱智的计算机, 又能让别人看不懂、不会用。 那个时期编程就跟捏泥巴一样随心所欲, 于是他们很过分地把程序的集合称为软件, 以便自己开心或伤心时再把程序捏个面目全非。 人们就在这种美滋滋的感觉下热情地编程, 结果产生了一堆问题: 程序质量低下, 错误频出, 进度延误, 费用剧增……。这些问题导致了“软件危机”。 在1968年, NATO的一群程序员、计算机科学家与工业界人士聚集一起共商对策。通过借鉴传统工业的成功做法, 他们主张通过工程化的方法开发软件来解决软件危机, 并冠以“软件工程”这一术语。 三十年余年来, 尽管软件的一些毛病如人类的感冒一样无法根治, 但软件的发展速度超过了任何传统工业, 期间并未出现真正的软件危机。这的确是前人的先见之明, 如今软件工程成了一门学科。 软件工程主要讲述软件开发的道理, 基本上是软件实践者的成功经验和失败教训的总结。软件工程的观念、方法、策略和规范都是朴实无华的, 平凡之人皆 可领会, 关键在于运用。 我们不可以把软件工程方法看成是诸葛亮的锦囊妙计--在出了问题后才打开看看, 而应该事先掌握, 预料将要出现的问题, 控制每个实践环节, 并防患于未然. 研究软件工程永远做不到理论家那么潇洒: 定理证明了, 就完事。 经典的软件工程系列丛书每本厚得象砖头, 或让人望而却步, 或让人看了心事重重。 本书试图用三个问题: 是什么、为什么、怎么办, 来解释软件工程的道理。所以本书薄得象饺子皮--用来包“思想”这种有味道的“馅”。 第一章? 软件工程基本观念 本章讲述软件工程的基本观念, 是关于软件工程宏观上的探讨。如果你是软件公司的老板, 用不着在第一线工作, 那么看这一章就够了。 但你一定要让员工们相信不停地工作是人生最大的快乐, 并且让他们把本书看完。 看完本章, 要树立这样的信念: 让我们高举程序主义、软件工程思想的伟大旗帜, 紧密团结在以Microsoft为核心的软件公司周围, 沿着比尔·盖茨的生财之道, 不分白天黑夜地编程, 把建设有中国特色的软件产业的伟大事业全面推向21世纪。 1.1 软件工程的目标与常用模型 软件工程的目标是提高软件的质量与生产率, 最终实现软件的工业化生产。 质量是软件需求方最关心的问题, 用户即使不图物美价廉, 也要求个货真价实。 生产率是软件供应方最关心的问题, 老板和员工都想用更少的时间挣更多的钱。 质量与生产率之间有着内在的联系, 高生产率必须以质量合格为前提。如果质量不合格, 对供需双方都是坏事情。 从短期效益看, 追求高质量会延长软件开发时间并且增大费用, 似乎降低了生产率。 从长期效益看, 高质量将保证软件开发的全过程更加规范流畅, 大大降低了软件的维护代价, 实质上是提高了生产率, 同时可获得很好的信誉。 质量与生产率之间不存在根本的对立, 好的软件工程方法可以同时提高质量与生产率。 软件供需双方的代表能在餐桌上谈笑风生, 归功于第一线开发人员的辛勤工作。 质量与生产率的提高就指望程序员与程序经理。 软件的质量因素很多, 如正确性、性能、可靠性、容错性、易用性、灵活性、可扩展性、可理解性、可维护性等等。有些因素相互重叠, 有些则相抵触, 真要提高质量可不容易啊! 软件工程主要环节有: 人员管理、项目管理、可行性与需求分析、系统设计、程序设计、测试、维护等. 软件工程模型建议 用一定的流程将各个环节连接起来, 并用规范的方式操作全过程, 如同工厂的生产线. 常见的软件工程模型有: 线性模型、渐增式模型、螺旋模型、快速原型模型、形式化描述模型、敏捷模型等等。 线性是一种简洁, 简洁就是美。当我们领会了线性的精神, 就不要再呆板地套用线性模型的外表, 而应该用活它。 例如渐增式模型实质就是分段的线性模型。 螺旋模型则是接连的弯曲了的线性模型。 在其它模型中都能够找到线性模型的影子。 套用固定的模型不是程序员的
文档评论(0)