- 1、本文档共235页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程讲义(南大)
软 件 工 程 李 宣 东 南京大学计算机科学与技术系 主要内容 传统软件工程方法 面向对象软件工程(统一建模语言UML) 软件过程、管理与质量 参考文献 ?软件工程:实践者的研究方法? Roger S. Pressman著 黄柏素 梅宏 译 机械工业出版社 ?可视化面向对象建模技术? 刘超 张莉 编著 北京航空航天大学出版社 传统软件工程方法 问题定义 需求分析 概要设计 详细设计 编 码 测 试 维 护 基本概念 软件 计算机系统中的程序及其有关文件。 程序 计算任务中的处理对象和处理规则的描述。 文件 为了便于了解程序所需的资料说明。 基本概念 软件的作用 用户与硬件的接口 计算机系统的指挥者 计算机系统结构设计的重要依据 基本概念 软件的发展过程 第一阶段:从第一台计算机上的第一个程序的出现到实用的高级程序设计语言出现之前(1946-1956); 第二阶段:从实用的高级程序设计语言出现到软件工程出现之前(1956-1968); 第三阶段:软件工程(1968- )。 基本概念 软件的分类: 系统软件 支撑软件 应用软件 基本概念 软件危机 供求关系失调 开发费用失控,进度拖延 可靠性差 难以维护 基本概念 产生软件危机的原因(软件本身的特点) 软件开发进展情况较难衡量 软件开发质量难以评价 管理和控制软件开发过程相当困难 软件没有“磨损”概念,软件维护通常意味着该进或修改原来的设计 基本概念 产生软件危机的原因(软件开发人员的错误观点) “有一个对目标的概括描述就足以着手编写程序了,许多细节可以在以后再补充” “所谓软件开发就是编写程序并设法使它运行” “用户对软件的要求不断变化,然而软件是柔软而灵活的,可以轻易地改动” “软件投入生产性运行以后需要的维护工作并不多,而且维护是一件很容易做的简单工作” 基本概念 软件工程 应用计算机科学、数学及管理科学等原理,以工程化原则、方法解决软件问题的工程。其中,计算机科学、数学用于构造模型与算法,工程科学用于制定规范、设计范型、降低成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。 基本概念 软件工程的基本内容: 软件设计方法论 软件工具 软件工程标准和规范 软件工程管理 软件工程理论 基本概念 软件工程的基本原理: 严格按照计划进行管理 坚持进行阶段评审 实行严格的产品控制 采用现代的程序技术 结果要能清晰地审计 开发小组人员素质要好,数量不宜多 要承认不断改善软件工程实践的必要性 基本概念 软件生存期(过程)模型: 软件生存期是软件产品或系统一系列相关活动的全周期。从形成概念开始,经过研制,交付使用,在使用中不断增补修订,直到最后被淘汰,让位于新的软件产品的过程。对软件生存期的不同划分,形成了不同的软件生存期模型。 基本概念 瀑布式软件生存期模型 强调阶段的划分 及其顺序性、各阶段工作 及其文档的完备性,是一种严格线性的、 按阶段顺序的、逐步细化的开发模式。 基本概念 瀑布式软件生存期模型把软件开发过程划分成若干阶段,每个阶段的任务相对独立,便于不同人员分工协作,从而降低了整个软件开发工程的困难程度。在软件生存期的每个阶段都采用科学的管理技术和良好的方法与技术,而且每个阶段结束之前,都从技术和管理两个角度进行严格的审查,经确认之后才开始下一阶段的工作。 基本概念 瀑布式模型的特点: 结构简单明了;历史较长、应用面广泛、为广大软件工作者所熟悉;已有与之配套的一组十分成熟的开发方法和丰富的支撑工具。 确定了需求分析的绝对重要性,但是在实践中要想获得完善的需求说明是非常困难的;反馈信息慢。 基本概念 软件质量要素: 正确性:软件产品准确执行软件规格说明中所规定的能力。 健壮性:在异常条件下软件仍能运行的能力。 可靠性:软件在给定的时间内和规定的环境条件下,按规格说明的规定成功地运行的概率。可靠性理解为正确性和健壮性之和。 问题定义 问题定义的关键任务是确切地定义用户要求解决的问题,也就是确定问题的性质、工程的目标和规模。 可行性研究 对软件进行分析与估算 确定软件作用范围 问题定义 可行性研究: 经济可行性 技术可行性 法律可行性 不同的方案 问题定义 对软件进行分析与估算: 确定软件的范围 估算完成软件开发任务所需的资源 估算软件的成本 估算和安排软件开发项目的进度 问题定义 确定软件的作用范围: 详细描述软件的任务和具体的要求,抱括软件的功能、性能、接口
文档评论(0)