软件工程学概述

  • 一、前言
  • 二、软件危机
    • 1.典型表现
    • 2.产生原因
    • 3.消除危机途径
  • 三、软件工程
    • 1.概述
    • 2.软件本质特征
    • 3.软件工程基本原理
    • 4.软件工程方法学
      • 1️⃣传统方法学
      • 2️⃣面向对象方法学
  • 四、软件生命周期
  • 五、结语

一、前言

本文将讲述软件工程导论的第一章相关知识点,主要都是概念部分,本文仅做整理,便于期末复习。本文主要分为四个部分:软件危机、软件工程、软件生命周期以及软件过程

二、软件危机

1.典型表现

  • 对软件开发成本和进度估计不准确

  • 用户对已完成的软件系统不满意

  • 软件质量不可靠

  • 软件不可维护

  • 软件没有适当文档资料

  • 软件成本在总成本中占比上升

  • 软件开发生产率提高速度远不及计算机应用迅速普及深入趋势

2.产生原因

  • 软件本身特点有关

  • 软件开发与维护的方法不正确有关

3.消除危机途径

  • 对计算机软件有正确认识

  • 推广使用成功技术与方法

  • 开发和使用更好的软件工具

三、软件工程

1.概述

软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。

2.软件本质特征

  • 软件工程关注于大型程序构造

  • 软件工程中心课题是控制复杂性

  • 软件经常变化

  • 开发软件效率很重要

  • 和谐合作是开发软件关键

  • 必须有效支持它的用户

  • 两种背景的人创造产品这个特性与前两个特性紧密相关

3.软件工程基本原理

  • 用分阶段的生命周期计划严格管理

  • 坚持阶段评审

  • 实行严格的产品控制

  • 采用现代程序设计技术

  • 能清楚审查

  • 开发小组人员应少而精

  • 承认不断改进软件工程实践的必要性

4.软件工程方法学

1️⃣传统方法学

传统方法学也称为生命周期方法学或结构化范型。它采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。

传统方法学把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每个阶段的任务。每个阶段的开始和结束都有严格标准,对于任何两个相邻的阶段而言,前一阶段的结束标准就是后一阶段的开始标准。在每一个阶段结束之前都必须进行正式严格的技术审查和管理复审。

审查的一条主要标准就是每个阶段都应该交出“最新式的”(即和所开发的软件完全一致的)高质量的文档资料,从而保证在软件开发工程结束时有一个完整准确的软件配置交付使用。

采用生命周期方法学可以大大提高软件开发的成功率,软件开发的生产率也能明显提高。

目前,传统方法学仍然是人们在开发软件时使用得十分广泛的软件工程方法学

2️⃣面向对象方法学

与传统方法相反,面向对象方法把数据和行为看成是同等重要的,它是一种以数据为主线,把数据和对数据的操作紧密地结合起来的方法

四个要点

  • 把对象(object)作为融合了数据及在数据上的操作行为的统一的软件构件

  • 把所有对象都划分成类(class)

  • 按照父类与子类的关系,把若干个相关类组成一个层次结构的系统

  • 对象彼此间仅能通过发送消息互相联系

优点
降低了软件产品的复杂性,提高了软件的可理解性,简化了软件的开发和维护工作。面向对象方法特有的继承性和多态性,进一步提高了面向对象软件的可重用性

四、软件生命周期

软件定义时期通常进一步划分成3个阶段,即问题定义、可行性研究和需求分析。开发时期具体设计和实现在前一个时期定义的软件,它通常由下述4个阶段组成:总体设计,详细设计,编码和单元测试,综合测试。其中前两个阶段又称为系统设计,后两个阶段又称为系统实现。维护时期的主要任务是使软件持久地满足用户的需要

五、结语

接下来会讲述有关于软件开发模型相关知识点,有任何问题可以评论留言

软件工程 | 第一章:软件工程学概述相关推荐

  1. 软件工程学导论第一章-软件工程学概述

    软件工程学概述 软件危机 软件危机的介绍 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题. 软件危机包含两方面的问题:如何开发软件,以满足对软件日益增长的需求.如何维护数量不断膨胀的 ...

  2. 软件工程导论第六版 第一章 软件工程学概述知识点总结(上)

    目录 关于20世纪60年代 (选择题考点) 软件危机 软件危机的概念 (填空题考点) 软件危机的表现 (简答题考点) 软件危机产生的原因 (简答题考点) 软件工程的概念 软件工程的七条基本原理 软件生 ...

  3. 软件工程导论第六版 第一章 软件工程学概述知识点总结(下)

    目录 软件过程 瀑布模型 快速原型模型 增量模型 螺旋模型 喷泉模型 Rational 统一过程 敏捷过程和极限编程 面向对象方法学 简答题 本章练习 软件过程 顺口溜:布 原 增 螺 喷 统 瀑布模 ...

  4. 《软件工程导论》/ 第一章 软件工程学概述 / 1.4软件过程 / 1.4.1瀑布模型

    在20世纪80年代之前,瀑布模型一致是唯一被广泛采用的生命周期模型,现在它仍然是软件工程中应用得最广泛的过程模型.传统软件工程方法学的软件过程,基本上可以用瀑布模型来描述. 一.按照传统的瀑布模型开发 ...

  5. 【软件工程导论】软件工程学概述

    软件工程学概述 文章目录 软件工程学概述 一.软件危机 1.1 计算机系统的发展阶段 1.2 软件危机的介绍 1.3 软件危机典型表现 1.4 产生软件危机的原因 1.4.1 一方面与软件本身的特点有 ...

  6. 软件工程——第1章软件工程学概述知识点整理

    本专栏是博主个人笔记,主要目的是利用碎片化的时间来记忆软工知识点,特此声明! 文章目录 1.为什么要有软件工程这门学科? 2.软件分为哪些阶段? 3.软件危机的定义? 4.软件危机包含的问题有哪些? ...

  7. 软件工程导论 01章软件工程学概述

    1.软件是程序.数据以及各种相关文档的集合. 程序是对计算任务的处理规则的描述,数据是对计算任务的处理对象的描述,文档则是有关计算机程序功能.设计.编制与使用的文字图形资料. 软件等于程序加数据加相关 ...

  8. 《软件工程导论第6版》--张海藩 牟永敏 课后答案及其详解 第1章 软件工程学概述

    文章目录 第1题 第2题 第3题 第4题 第5题 第6题 第7题 第8题 第9题 第10题 第11题 第12题 第1题 一.什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 答:软件危机是指在 ...

  9. 第一章 软件项目管理概述

    思维导图 项目(Project)     项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的活动. 项目管理(Project Management)     项目管理是一系列的伴随着项目 ...

  10. 软件工程—软件工程学概述

    软件工程 第一章-软件工程学概述 文章目录 软件工程 第一章 软件工程学概述 1.1 软件危机 1.2 软件工程 1.2.1 软件工程方法学 1.3 软件生命周期 1.4 软件过程 1.4.1 瀑布模 ...

最新文章

  1. open***配置成功分析(服务器)
  2. 什么是SCADA Viewer
  3. ::selection 制作空心字
  4. ios 标准 #pragma mark的用法
  5. 『OpenCV3』滤波器实现及使用滤波器降噪
  6. 我也发软件开发团队的思考(侧重点是人员)
  7. 《Spring》(十六)---- JDBC
  8. 设计模式笔记[四种模式+四种原则]
  9. 通过自己的项目实际经验,阐述为什么“恶心玩技术”?玩Java开源B/S的教训(三)...
  10. linux中查看和开放端口
  11. 硬核干货来啦:Js数组去重,赶快收藏吧
  12. java开发自学手册 pdf_Java项目开发实例自学手册 PDF_IT教程网
  13. 关系型数据库和主键外键
  14. Node.js全栈开发笔记与心得
  15. Win10_此电脑_额外文件夹
  16. ----已搬运----【总章程】SSRF完全学习,,什么都有,,,原理,绕过,攻击
  17. 谷粒商城开发踩坑及部分知识点大总结
  18. 局域网下微信无法连接到服务器,微信无法连接到服务器怎么办
  19. LaTex 论文排版(4): 插入图片(Visio图转换成.eps图)
  20. 变压器直流电阻测试仪RS485串口数据采集接入数据库及MESERP系统方案

热门文章

  1. FME-CAD专题之-生成带扩展属性的CAD文件
  2. 51单片机之外设——74HC138、74HC02、74HC573讲解(一)
  3. koa实战 (一):项目搭建
  4. 一骑当千-龙之命运主题曲歌词
  5. 用计算机制作一张家庭年收支表,如何制作excel收入支出表
  6. VBA打开加密的EXCEL文件(知道密码)
  7. 电脑计算机显示脱机状态,电脑显示脱机状态是什么意思?
  8. 黑马学生入职B站1年,晒出21K月薪:我想跳槽华为
  9. Windows下usb接口驱动技术(二)
  10. Oracle同义词总结归纳