- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程的基本原理 (2)坚持进行阶段性评审。 大部分错误是在编码之前造成的 因此,在每个阶段都进行严格的评审,以便尽早发现在软件开发过程的错误 严格进行阶段性成果的评审,尽早发现软件开发过程中的错误,可以减少错误造成的损失。 尤其发现早期的一个错误,就可以避免在后期辐射出的成百上千个错误。 */86 第六十一页,共八十七页。 软件工程的基本原理 (3)合理控制需求变动。 需求变动性是软件项目与生俱来的特性,不变是不可能的。有变动的要求,就说明已有的成果有需要纠错和改善的地方,但需求变更有可能对项目进展造成冲击,要严格进行配置管理,合理控制需求变更。 在软件开发过程中不要随意改变需求,因为改变某项需求往往需要付出较高的代价,但在实践中用户往往会提出需求变更,因此需要采取科学的产品控制技术。 目前主要实行基准配置管理:基准配置是指经过阶段评审后的软件配置成分,如各个阶段产生的文档或程序代码。 对涉及基准配置的修改,必须经过严格的评审,通过后才能实施修改。 */86 第六十二页,共八十七页。 软件工程的基本原理 (4)采用先进的软件设计方法。 好的设计方法可以得到灵活可靠的软件结构,对于提高软件的可靠性、可维护性、应对需求变更的灵活性都非常关键。通常考虑模块化、抽象与信息隐蔽、局部化、一致性等准则。这些准则在本书软件设计部分还会详细阐述。 实践表明:采用先进的技术既可提高软件开发的效率,又可提高软件维护的效率。 80年代及之前:结构化分析、设计技术 90年代:面向对象分析、设计技术 */86 第六十三页,共八十七页。 1.1 软件工程的产生 1.1.1 软件的特点 1.1.2 软件生产的发展 1.1.3 软件危机 1.1.4 软件工程的诞生 */86 第二十九页,共八十七页。 1.1.4 软件工程诞生 软件危机促使软件工程学科诞生; 借鉴硬件生产的“工程化”思想,1968年,北大西洋公约组织提出了“软件工程”的概念,主张“用工程化思想来开发软件”。 */86 第三十页,共八十七页。 第1章 软件工程的基本概念与原理 1.1 软件工程的产生 1.2 软件工程的基本概念与原理 1. 软件工程的定义、性质 2. 软件工程关注的主要问题 3. 软件工程的目标 4. 软件的生命周期 5. 软件工程的基本原理 */86 第三十一页,共八十七页。 软件工程定义、性质 软件工程是用科学知识、技术、原理来定义、开发、维护软件的一门学科。 概括地说,软件工程是指导软件开发和维护的一门工程学科。 软件工程学科的根本要求:采用工程化的思想、原理、技术和方法来开发与维护软件,把好的管理技术和开发技术方法结合起来,追求可靠性、可维护性、满足用户需求、高的开发效率。 用工程学科中的观点进行费用估算、进度控制、制定计划和方案;用管理科学中的方法和原理进行软件生产过程的管理;用数学的方法建立软件开发中的各种模型和算法。 */86 第三十二页,共八十七页。 软件工程关注的关键问题 (1)关注于大型程序的构造 (2)中心课题是控制复杂性 (3)软件需求经常变化 (4)开发软件的效率非常重要 (5)有效的沟通是合作开发软件的关键 */86 第三十三页,共八十七页。 (1)软件工程关注于大型程序的构造 “大”与“小”的分界线并不十分清晰。通常把一个人在较短时间内写出的程序称为小型程序,而把多人合作用时半年以上才写出的程序称为大型程序。 传统的程序设计技术和工具是支持小型程序设计的,不能简单地把这些技术和工具用于开发大型程序。 */86 第三十四页,共八十七页。 (2)软件工程中心课题是控制复杂性 通常,软件所解决的问题十分复杂,以致于不能把问题放在一起试图一步解决。人们不得不把问题分解,使得分解出的每个部分是直观、明了、可理解的,而且各部分之间保持简单的联系。用这种方法并不能降低问题的整体复杂性,但是却可使它变成容易解决。 注意,许多软件的复杂性主要不是由问题的内在复杂性造成的,而是由必须处理的大量细节,让人看上去觉得很复杂。 结论:分解的手法,是控制复杂性的主要手段 控制复杂性的有效方法是分解: 面向过程的方法,是按功能分解; 面向对象的方法,是按责任分解。 */86 第三十五页,共八十七页。 (3)软件需求经常变化 绝大多数软件都模拟了现实世界的某一部分。现实世界不断变化,人们对其认识也有偏差,这就造成了软件需求经常变化的特性。 这种变化不仅存在于开发过程中和也存在交付使用以后。前者要求在开发过程中,应能灵活调整设计方案,后者要求软件应具有可维护性。 需求变更是软件开发活动与生俱来的特性,不可避免。 变更不是坏事,但它是软件开发面临的最大挑战。 软件工程追求的是、封装变更,灵活设计,应对变更,通过好的设计方法,使
您可能关注的文档
最近下载
- 计算机科学与技术专业《毕业实习》实习教学大纲.pdf VIP
- 部编版道德与法治三年级上册(教科书全册)课本习题解答(教师使用).pdf VIP
- 2025年青年教师基本功比赛小学数学试题(教学专业知识) .pdf VIP
- 桥梁工程施工方案.docx VIP
- 起重伤害事故专项应急专项预案.docx VIP
- 2022-2023学年湖南省永州市冷水滩区人教版五年级上册期末测试数学试卷(含答案解析).pdf
- (2026年)实施指南《JBT6204-2002 高压交流电机定子线圈及绕组绝缘耐电压试验规范》.pptx VIP
- 安徽大学大学计算机基础作业3计算机网络.pdf VIP
- 八年级国家义务教育质量监测德育考核试题及答案.docx VIP
- 《GB 19147-2016车用柴油》(2025版)深度解析.pptx
原创力文档


文档评论(0)