- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程第一章概要
第1章 软件工程 * ? 1.1 软件概述 ? 1.2 软件危机 ? 1.3 软件工程 ? 1.4 软件工程的基本原理 1.1 软件概述 * 17世纪60年代,Ada(Augusta Ada Lovelace)成为史上第一个写软件的人,她第一次为Babbage的分析机编制程序,实现了计算伯努利函数、级数相乘函数等功能。也因此,人们公认她是世界上第一位软件工程师。 20世纪40年代末,第一台电子计算机ENIAC(Electronic Numerical Integrator And Calculator)在美国问世,软件也随之诞生,从此很多软件工程师陆续出现。 到了20世纪60年代,美国出现了专门编写软件的专业,软件起到了越来越突出的作用,人们对软件的认识也更为深刻。 一、软件发展历程 1.1 软件概述 1.第一阶段(20世纪50年代初期至20世纪60年代中期) 这个阶段也被称为程序设计阶段。软件生产以个体化为主;计算机的存储容量小,运算速度比较慢;编写程序的工具只有低级语言;软件规模不大,几乎没有系统化的标准可遵循,对软件开发也没有良好的管理方法。 2.第二阶段(20世纪60年代中期至20世纪70年代末期) 这个阶段也可称为程序系统阶段。在软件使用中,由于缺乏有效的工程化方法的指导,很多软件不能按计划完成,纠正源代码错误、变更程序功能等软件维护花费了人们更多的精力和资源,到了20世纪60年代中期,出现了所谓的软件危机。 3.第三阶段(20世纪70年代末至今) 这个阶段,计算机硬件向巨型机和微型机两个方面发展;出现了计算机网络,特别是Internet得到了飞速发展。 因此,以软件产品化、系列化、工程化、标准化为特征的软件产业迅猛发展,推动了软件工程学的进步。 * 1.1 软件概述 软件是计算机系统中与硬件(hardware)相互依存的另一部分,与硬件合为一体完成系统功能。 软件定义包括如下几点: (1)功能和性能的指令集(即程序); (2)程序能正常操纵信息的数据结构(即相关数据); (3)与程序开发维护和使用有关的各种图文数据(即说明文档)。 随着计算机应用的日益普及,说明文档(即各种程序文本、报告、说明、手册等)在软件开发与维护中体现的价值超出了软件产品本身。特别是在软件日益成为产品的今天,文档的作用更加重要了。 * 二、软件的定义 1.1 软件概述 * 1.软件是一种抽象的逻辑实体。人们无法看到其具体形态,而必须通过观察、分析、思考、判断等方式去了解它的特性功能。 2. 软件是通过人们的智力活动,把知识与技术转化为信息的一种产品,是在研制、开发中被创造出来的。一旦某一软件被研制成功,只需复制即可,但其维护的工作量大。 3. 软件具有“复杂性”,开发和运行经常受到计算机系统的限制。 4. 软件成本昂贵,开发方式目前尚未摆脱手工生产方式。 5. 在软件的运行和使用期间,不存在硬件那样的机器磨损、老化问题。但是软件也存在退化问题,也需要维护。 三、软件的特点 * 硬件失效率曲线 软件失效率曲线 1.1 软件概述 1.1 软件概述 * 四、软件的分类 1.基于软件的功能划分 (1)系统软件→系统软件是与计算机硬件紧密配合居于计算机系统中最靠近硬件的一层。 例如,设备驱动程序、操作系统等。 (2)支撑软件→支撑软件是协助用户开发软件的工具性软件。 例如,网络软件、数据库管理程序等。 (3)应用软件→应用软件是在特定领域内开发、为特定目的服务的软件。 例如,工程与科学计算软件、系统仿真和人工智能软件等。 1.1 软件概述 2.基于软件规模划分 (1)微型软件是指一个人在几天内完成、程序不超过500行语句且供个人专用的软件。这类软件没有严格的分析和完整的设计与测试。 (2)小型软件是指由一个人在半年内完成的2000行语句以内的程序。这种程序需要有一定的标准化技术、正规的数据书写以及定期的系统审查,但没有大型软件那样严格。 (3)中型软件是指由5个人以内在一年多的时间里完成的5000~50000行语句的程序。中型软件开始出现软件人员之间、软件人员与用户之间的协调配合方面的问题,因而在开发中使用软件工程方法是很必要的。 (4)大型软件指5~10个人在两年多的时间里完成的50000到100000行语句的程序。在大型软件中采用软件工程方法进行规划可以有效解决和避免突发事件,减少危害性。 (5)甚大型软件指100~1000人在4~5年时间里完成的具有100万行语句规模的程序的软件项目。这种项目可能会被划分成很多子项目,子项目间要建立复杂的接口。 (
您可能关注的文档
最近下载
- 医学汉语教学大纲.doc VIP
- 水工建筑物外观质量评定标准.docx VIP
- 英语国际音标表(8个)打印版.doc VIP
- 升立德 E系列控制卡快速入门.pdf VIP
- 高级财务会计(第4版)-习题答案-周华人民大学.pdf VIP
- 欧盟发布电池和废电池的新规(EU) 附中译文参照_182518812544822.pdf VIP
- 9.3抗日战争80周年阅兵九三阅兵小小爱国者探索手册PPT(优质ppt).pptx VIP
- 部编版六年级语文上册《 开国大典》PPT课件(含教案).pptx VIP
- 2024年快递员赛项技能大赛理论参考试题库(含答案).doc VIP
- 2025年新学期小学三年级开学家长会PPT课件.pptx
文档评论(0)