软件分为通用软件和应用软件,具有复杂、不可见和不断变化的特点;从出现到现在共经历了四个重要的发展阶段,但现在的软件发展依然存在着许多问题。

软件工程是采用工程的概念、原理、技术和方法来开发与维护软件,将经过时间考验而证明正确的管理技术与当前能够得到的最好的技术方法结合起来,其目的在于提高软件的质量与生产率,最终实现软件的工业化生产。它是工程概念在软件领域里的一个特定应用涉及软件产品的所有环节。软件工程由过程、方法和工具三个要素组成。软件工程方法有传统的开发方法和面向对象的开发方法;但前者存在着多种缺陷,后者按照人类的自然思维模式,采用统一的概念和模型表示,由于各种优势成为现在的主流方法。计算机辅助软件工程CASE分为工具、工作台和环境三个层次,用来辅助软件的开发维护和管理,已经成为促进软件过程工程化和自动化的重要技术。

软件工程知识体系SWEBOK项目是关于软件工程实践的指南,它将软件工程知识分解为十个知识域以及其组成部分。十个知识域包括软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具和方法、软件质量。(软件需求包括需求工程过程、需求获取、分析、规格说明、验证、管理;软件设计包括基本概念、关键问题、软件构成与体系结构、质量分析预评价、软件设计符号、策略与方法;软件构造可以降低复杂性、预知多样性、结构化验证、使用外部标准;软件测试包括基本概念、测试级别、技术、相关度量和过程管理;软件维护包括基本概念、维护过程、关键问题和技术维护;软件配置管理包括配置过程管理、配置识别、配置控制、配置状态报告、配置审计、软件发布管理与交付;软件工程管理包括组织管理、过程管理和软件工程度量;软件工程过程包括基本概念、过程基础设施、度量、定义、定性分析、过程实施与变更;软件工程工具与方法包括软件工程工具和软件开发方法;软件质量包括概念、SQA与V&V的目的和计划、活动和度量)

Chapter 1 概述的更多相关文章

  1. 【Linux设备驱动程序】Chapter 1 - 概述

    设备分类 字符设备.块设备.网络接口 字符设备 能够像字节流(类似文件)一样被访问的设备. 字符设备驱动程序通常至少要实现 open.close.read 和 write 系统调用. 举例:字符终端( ...

  2. C++ one more time

    写在前面:我们学习程序设计的方法先是模仿,然后举一反三.在自己的知识面还没有铺开到足够解决本领域的问题时,不要将精力过分集中于对全局无足轻重的地方!!! 以下参考钱能老师的<C++程序设计教程 ...

  3. 转:跟我一起写Makefile (PDF重制版)

    原文地址:http://seisman.info/how-to-write-makefile.html 其它一些问题  不妨看一下:http://blog.csdn.net/huyansoft/art ...

  4. 菜鸟崛起 DB Chapter 2 MySQL 5.6的概述与安装

    在上文菜鸟崛起 DB Chapter 1 数据库概述我们初步认识了数据库,也知道市面上常见的几种数据库,下面我们就针对常见的MySQL数据库展开对DataBase的探讨. 2.1  MySQL介绍 M ...

  5. 菜鸟笔记 -- Chapter 6.1 面向对象概述

    6.1 面向对象概述 在程序开发的初期人们使用结构化开发语言,但是随着时间的流逝,软件的规模越来越庞大,结构化语言的弊端逐渐暴露出来,开发周期被无限制拖延,产品质量也不尽如人意,人们终于发现结构化语言 ...

  6. 菜鸟崛起 DB Chapter 1 数据库概述

    1. 数据库的概述 在目前阶段,如果要存储和管理数据,则离不开数据库.当数据存储到数据库后,就会通过数据库管理系统对这些数据进行组织和管理.数据库由一批数据构成有序的集合,这些数据被存放在结构化的数据 ...

  7. iOS之开发支付功能概述

    前言:本随笔将对IOS开发的支付功能进行一个概述. 内容大纲: 一.常见的支付方案简介 二.第三方支付SDK 三.苹果官方支付方案 四.Web支付方案 正文: 一.常见的支付方案简介 在微信支付中 微 ...

  8. IOS开发之支付功能概述

    前言:本随笔将对IOS开发的支付功能进行一个概述. 内容大纲: 一.常见的支付方案简介 二.第三方支付SDK 三.苹果官方支付方案 四.Web支付方案 正文: 一.常见的支付方案简介 在微信支付中 微 ...

  9. [转]第四章 使用OpenCV探测来至运动的结构——Chapter 4:Exploring Structure from Motion Using OpenCV

    仅供参考,还未运行程序,理解部分有误,请参考英文原版. 绿色部分非文章内容,是个人理解. 转载请注明:http://blog.csdn.net/raby_gyl/article/details/174 ...

随机推荐

  1. Linux Shell常用技巧(七)

    十六. 文件查找命令find: 下面给出find命令的主要应用示例:    /> ls -l     #列出当前目录下所包含的测试文件    -rw-r--r--. 1 root root 48 ...

  2. jquery 中的dom操作

    jquery DOM 分为元素操作.属性操作.样式操作. 一.元素操作 1.查找 ①工具:jQuery选择器 2.创建和添加 ①代码格式:变量 = $('要创建的元素'): 注意点: 1 要使用标准的 ...

  3. Hadoop(18)-MapReduce框架原理-WritableComparable排序和GroupingComparator分组

    1.排序概述 2.排序分类 3.WritableComparable案例 这个文件,是大数据-Hadoop生态(12)-Hadoop序列化和源码追踪的输出文件,可以看到,文件根据key,也就是手机号进 ...

  4. 快速链接bioconductor,以及安装“XML”

    options(useHTTPS=FALSE, BioC_mirror="http://bioconductor.org") source("http://biocond ...

  5. Word里面怎么取消全文每个标题前面都有的这个点

    Word里标题前面的那个点,如图1所示看起来觉得很不舒服,该怎么把它取消呢?(本测试环境是Win 10 64位系统,Microsoft Office家庭和学生版 2016) 图1 选中所有标题,如图2 ...

  6. ES6的Promise对象

    http://es6.ruanyifeng.com/#docs/promise Promise 对象 Promise 的含义 基本用法 Promise.prototype.then() Promise ...

  7. JavaWeb总结(十三)

    Web开发模式的变迁 了解了Servlet和JSP,知道利用Servlet就可以开发一个Web应用程序,但是Servlet的缺陷使Web应用程序开发变得非常繁琐且不利于分工协作.使用JSP(表达式.声 ...

  8. 11 [异常]-try...except

    1.什么是异常 异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下 2.错误 错误分成 ...

  9. 12-[CSS]-margin塌陷,margin 0 auto,善用父级的padding

    1.margin塌陷 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  10. [BZOJ3167][HEOI2013]SAO[树dp+组合数学]

    题意 给定 \(n\) 个节点和 \(n-1\) 个限制,每个节点有一个权值,每个限制形如:\(a_i< a_j\) ,问有多少个 \(1\) 到 \(n\) 排列满足要求. \(n\leq 1 ...