




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 软件工程 本科48学时 第1章概述 主要内容 软件的发展与分类 软件工程的提出及主要思想 软件工程的基本概念 软件生命周期 软件开发方法及模型 2 软件工程 本科48学时 1 软件的概念软件就是程序 软件开发就是编程序 1软件的发展与软件危机 错误认识 软件的正确定义 是计算机系统中与硬件互为依存的一类逻辑部件 是程序 数据及相关文档的集合体 3 软件工程 本科48学时 2 软件的发展进程 原始时代 程序设计阶段 60年代初之前 具体状况是软件功能单一 规模小 基本软件时代 程序系统阶段 软件规模较之前增大了 软件开发不再是个人行为 出现了软件作坊 程序设计方法时代程序编写强调具体方法 软件工程时代软硬件的得到整体性考虑 目前是面向对象的软件工程成熟时代 1软件的发展与软件危机 4 软件工程 本科48学时 3 错误认识导致的结果 软件危机 SoftwareCrisis 暴发于20世纪六十年代末 软件危机的概念 软件开发和维护过程中出现的一系列严重问题 这些问题不仅是不能正常运行的软件才具有的 基本上几乎所有软件都不同程度地存在这些问题 软件危机的主要表现1 软件的发展速度远滞后于硬件的发展速度 2 不能满足社会日益增长的软件需求 3 软件开发周期总是超过预定的计划 4 软件开发的成本提高 但质量达不到用户的要求 投入使用后维护困难 5 缺少必要的开发思想和方法的描述 1软件的发展与软件危机 5 软件工程 本科48学时 分析危机产生的原因 主要有以下二方面 受软件自身的特性影响 软件是逻辑部件 无自然磨损 人的问题1 缺乏软件开发的经验 导致开发工作计划不能落实 2 软件人员与用户间的交流存在障碍 导致获取的需求不全面或存在认识上的错误 3 软件开发过程不规范 基本上是未真正了解用户的需求即开始编程序 4 随着软件规模的增大 其复杂性极大提高 参与的人员数量增加 但缺乏技术上和科学严格的管理 彼此间缺少协作意识 5 缺少有效的软件评测手段 提交用户的软件质量不能完全保证 1软件的发展与软件危机 软件工程 本科48学时 6 造成软件失效的原因 先期准备不够 理解认识不全面 不准确 是消除危机的根本 要求认识和开发方法必须改变 软件工程 本科48学时 7 引入同一变动付出的代价随时间变化的趋势 软件工程 本科48学时 8 软件危机的典型例子 IBM360系统 开发时间 1963 1966年 投入人力 5000人年 代码量 100万行 每个版本都是从上一个版本找出1000个错误而修订的结果开发失败的原因规模大 大系统的定义 50万行 1000万行 复杂性高软件灵活性 应变性不够影响因素 个人能力 团队联系 复杂度 时间 产品符号一致性式 该软件的开发犹如一只逃亡的野兽落到泥潭中做垂死的挣扎 越是挣扎 陷的越深 最后无法逃脱灭顶的灾难 软件工程 本科48学时 9 1968年10月在北大西洋公约组织 NATO 召开的计算机科学会议上 FritzBauer首次提出 软件工程 的概念 1 软件工程 SoftwareEngineering 的一般概念 用工程的概念 原理 技术和方法来开发和维护软件 是用来建立和使用的合理的工程原则和原理 以经济地获得可靠的且在真实机器上可以高效工作的软件 IEEE 93 将系统化 规范化 可度量的方法应用于软件的开发 运行和维护的过程 2软件工程 软件工程 本科48学时 10 2 软件工程的基本原理1 软件具有生命周期 2 软件开发分阶段进行 且要设立阶段成果评审 3 采用成熟的开发技术 以用户需求为中心展开 4 对软件有明确的定义 即由程序 文档和数据共同组成 5 开发小组的人员不宜过多 应该少而精 6 承认不断改进软件工程实践的必要性 3 软件工程追求的目标高质量 高性能 高效率 易移植 好维护 2软件工程 软件工程 本科48学时 11 3 软件工程追求的目标高质量 高性能 高效率 易移植 好维护具体含义解释如下 运用先进的软件开发技术和管理方法来提高软件的质量和生产率 以较短的周期 较低的成本生产出高质量的 用户满意的软件产品 并最终实现软件的工业化生产 2软件工程 软件工程 本科48学时 12 4 软件工程学 是多学科的汇总 主要涉及 系统科学 工程学 数学 管理学 经济学 心理学 主要内容涵盖软件开发技术和工程管理 其中 软件开发技术包括开发方法 开发工具 开发过程 其中 1 开发方法是完成软件开发各项任务所用的技术方法 2 开发工具是为方法的运用提供自动的或半自动的软件支撑环境 过程是为了获得高质量的软件所需要完成的一系列任务的框架 它规定了完成各项任务的工作步骤 3 开发过程是完成各项任务的工作步骤 软件工程管理包括 项目 人员 过程 产品 简称4P 2软件工程 13 软件工程 本科48学时 3软件分类和生命周期 1 基本分类 按功能 按工作方式 按规模 参加人数 研发时间 程序量 行数 按服务对象或范围 按可靠性 一般 高 按使用的频度 一次 多次2 软件生命周期 SLC 定义 组成 好处 软件系统从目标提出开始到最终废弃不用的全过程 计划 定义 时期 开发时期 运行时期 软件工程 本科48学时 14 软件工程 本科48学时 15 计划 定义 时期主要任务是解决 做什么 的问题 即确定工程的总目标和可行性 确定实现工程目标系统必须具备的功能 初步预估完成任务需要的资源和成本 制订工程进度表 包含3个阶段 问题定义 可行性研究和需求分析 软件开发时期主要任务是解决 如何做 的问题 即具体设计和实现计划时期确定的软件 包含4个阶段 概要设计 详细设计 编码和测试 软件运行维护时期主要任务是使软件持久地满足用户的需要 从而延长软件的寿命 使用期 3软件分类和生命周期 软件工程 本科48学时 16 活动周期工作量的大致分布 17 软件工程 本科48学时 1 软件开发方法和开发模型 软件开发方法 使用特殊符号组织和描述软件生产过程的方法 软件开发模型 软件开发过程中各种工作 活动及其相互关系的抽象表示目前常用的 传统方法学 面向对象方法学 软件开发方法学 开发范型 paradigm 4软件开发方法和开发模型 18 软件工程 本科48学时 2 结构化方法 生命周期法 SM 核心 结构化技术 SP SD SA ST 特点 面向过程 数据流 纯线性不可逆 逐步细化 过程稳健 成果迟现 模型 瀑布模型 生命周期模型 SE最初的产物 软件开发方法学 开发范型 paradigm 4软件开发方法和开发模型 软件工程 本科48学时 19 瀑布模型 实际的瀑布模型带 反馈环 如图所示 图中实线箭头表示开发过程 虚线箭头表示维护过程 软件工程 本科48学时 20 瀑布模型 结构化方法 的优点强迫开发人员采用规范化的方法严格地规定了每个阶段必须提交的文档 文档驱动每个阶段交出的所有产品都必须是经过验证的 缺点灵活性 应变性差 适用情况 项目开始时需求已确定的情况 4软件开发方法和开发模型 软件工程 本科48学时 21 3 原型法利用软件工具在尽可能短的时间内开发出软件原型 供用户与开发者进行交流评价 然后不断改造完善原型 逐步构造出最终的目标系统的方法 核心 原型 实物化 特点 成果随时可见 供需双方易沟通 灵活 应变 模型 快速原型模型 变化的生命期模型 循环进化 雏形增量模型 螺旋模型80 s推出 非整体化开发 迭代 风险分析 缺点 过于细节化 缺乏整体考虑 要有足够的风险分析的经验 4软件开发方法和开发模型 软件工程 本科48学时 22 原型模型 软件工程 本科48学时 23 4 面向对象开发方法 核心 面向对象技术 特点 人性化 问题类对象化 模型 喷泉90 s推出开发过程无间隙 一定程度并行 软件工程 本科48学时 24 5 敏捷开发 AgileDevelopment 2001年提出的非主流的软件工程方法 宣言个体和交互胜过过程和工具可以工作的软件胜过面面俱到的文档客户合作胜过合同谈判响应变化胜过遵循计划 特点是重视人的行为 强调发挥人的创造性与协作 同时将客户视作项目组内部的成员 有利于形成共同的开发目标 软件工程 本科48学时 25 敏捷工作过程 迭代 交互 变化 敏捷提出以下重要设计原则 1 单一职责原则 即引起变化的原因只有一个 2 开放封闭原则 即软件实体可扩展但不能修改 3 依赖倒置原则 即细节依赖于抽象 4 接口隔离原则 接口属于客户 5 稳定以来原则 6 稳定抽象原则 26 软件工程 本科48学时 5软件开发文档 1 文档是软件开发 维护和使用中所依赖的重要资源 记录着设计方案和实施要求 具有以下特点 真实性 连续性 时间性2 编写文档的作用 意义 说明做什么 说明软件的适用环境和信息的来源 说明开发进程时间安排 明确各项工作的责任人 明确功能需求的实现方案与方法 明确软件维护的意义 软件工程 本科48学时 27 3 软件文档分为三类 1 技术文档 描述软件开发人员的技术性工作成果 2 管理文档 描述软件开发工作计划或工作报告的成果 3 用户文档 软件开发人员为用户准备操作和使用说明 4 按照国家标准 一个软件在开发过程中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位招聘考试综合类职业能力倾向测验真题模拟试卷(石家庄)
- 2025年安徽省事业单位招聘考试教师招聘生物学科专业知识试卷及答案
- 呼吸机的考试试题及答案
- 我的探险经历记事类作文(14篇)
- 衡水五升六考试题及答案
- 新解读《GB-T 39316.3-2020军民通 用资源 元数据 第3部分:器材类 航材》
- 2025年中国无绳手持式花园电动工具行业市场分析及投资价值评估前景预测报告
- 2025国考晋中市财务管理岗位申论模拟题及答案
- 2025国考应急部行测言语理解与表达预测卷及答案
- 胃肠疾病早期筛查-洞察与解读
- 空压机操作安全培训
- 手术体位侧卧摆放
- 大型聚会安保人员配置方案
- 国防动员课件教学课件
- 江苏省南通市2024-2025学年七年级上学期期中英语试题(含答案不含听力原文及听力音频)
- 电梯日管控、周排查、月调度内容表格
- 统编语文四年级上册第六单元教材解读及集体备课
- 课程纲要(知识清单)人教版美术五年级上册
- 医学信息集成标准与技术 课件 第六章 医疗健康信息集成规范IHE
- (正式版)QC∕T 1207-2024 燃料电池发动机用空气压缩机
- 2024年辽宁沈阳市近海控股集团招聘24人公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版
评论
0/150
提交评论