第一章 软件工程基础

1. 软件工程概述

1.1 软件工程概念

  软件工程是从管理和技术两方面来研究如何采用工程的概念、原理和技术方面并加以综合,指导开发人员更好地开发和维护计算机软件的一门新学科。

1.2 软件工程基本原理

  软件工程专家波汉姆(Boehm)于1983年在一篇论文中提出了软件工程的7条基本原理:

1 按照软件生命周期的阶段划分制订计划,严格依据计划进行管理
2 坚持进行阶段评审
3 实行严格的产品控制
4 采用现代程序设计技术
5 结果应能清楚地审查
6 开发小组的人员应该少而精
7 承认不断改进的软件工程实践的必要性

2.1 ISO9001

  ISO9001是迄今为止世界上最成熟的质量框架,它规定了公司质量管理体系的基本要求,且适用于所有行业或经济领域。它帮助各类组织通过客户满意度的改进、员工积极性的提升及持续改进来获得成功。

2.2 8条质量管理原则

1 以客户为中心
2 高层管理者推动
3 全员参与
4 采用过程方法
5 系统的管理
6 持续改进
7 基于事实的决策
8 互利的供方关系

2.3 建立和实施质量管理体系的步骤

 1 确定顾客的需求和期望
2 建立公司的质量方针和质量目标
3 确定实现质量目标所必需的过程和职责
4 针对每个过程实现质量目标的有效性确定测量方法
5 通过测量,确定每个过程的现行有效性
6 确定防止不合格项并消除产生原因的措施
7 寻找提高过程有效性的效率和机会
8 确定并优先考虑那些能提供最佳结果的改进
9 为实施已确定的改进,对战略、过程和资源进行策划
10 实施改进计划
11 监控改进效果
12 对照预期效果,评价实际结果
13 评审改活动,确定必要的纠正、跟踪措施

2.4 过程方法

  系统识别和管理组织内所使用的过程,特别是这些过程之间的相互作用,称为“过程方法”。

3. 项目管理知识体系PMBOK

  PMBOK(Project Management Body Of Knowledge),项目管理知识体系,是美国项目管理协会(PMI)对项目管理所需的知识、技能和工具进行的概括性描述。

3.1 8条项目基本属性

1 整体性
2 唯一性
3 一次性
4 目标性
5 多约束性
6 依赖性
7 冲突性
8 周期性

3.2 项目参数

  一个项目的主要参数有:范围、进度、资源、成本、质量。

3.3 项目生命周期

3.4 项目管理的5个基本过程

  启动过程、策划过程、执行过程、控制过程、结束过程

3.5 项目管理基本职能

3.6 项目管理成熟度模型

  项目管理成熟度模型(Project Management Maturity Model),简称PMMM。

  PMMM V5.0标准文本分为5级:初始级、可重复级、已定义级、受管理级、优化级。

4. 软件能力成熟度模型集成CMMI

  软件能力成熟度模型集成(Capability Maturity Model Integration),简称CMMI。

  目的是:为提高组织过程和管理产品开发、发布和维护能力提供保障,帮助 组织客观评价自身能力成熟度和过程域能力,为过程改进建立优先级以及执行过程改进。

  CMMI实施或软件过程改进(Software Process Improved,SPI)采用的方法称IDEAL模式,分为启动(Initiating)、诊断(Diagnosing)、建立(Establishing)、行动(Acting)、推进(Leveraging)。

基于CMMI的软件工程及实训指导 第一章的更多相关文章

  1. [在职软件工程]基于CMMI的软件工程教程

    第1章 软件工程基础 1.1软件工程基本原理 a.按照软件生命周期的阶段划分制定计划,严格依据计划进行管理 项目概要计划,里程碑计划,项目控制计划,产品控制计划,验证计划,运行维护计划 b.坚持进行阶 ...

  2. TensorFlow入门实操课程第一章练习笔记

    在本练习中,您将尝试构建一个神经网络,让它根据一个简单的公式来预测房屋的价格. 想象一下,如果房子的定价很简单,带一间卧室的房子价格是5万+5万,那么一间卧室的房子要花10万元:两间卧室的房子就要花1 ...

  3. TensorFlow入门实操课程第一章教程笔记

    神经元网络深度学习的起步程序 Hello World 第一个应用程序总是应该从超级简单的东西开始,这样可以看到代码如何产生和运作的整体框架. 就创建神经网络而言,我喜欢使用的例子是一个能够学习两组数字 ...

  4. 实训任务01:安装Hadoop

    实训任务1:安装Hadoop 实训1 :为Hadoop集群增加一个节点 需示说明: 运行环境:操作系统:centos6.8 ,hadoop2.6.4 在实训指导中搭建了3个节点的hadoop集群,要求 ...

  5. 软件工程实训项目案例--Android移动应用开发

    实训过程 角色分工 1.项目经理:负责项目的组织实施,制定项目计划,并进行跟踪管理 2.开发人员:对项目经理及项目负责 3.需求分析员:负责系统的需求获取和分析,并协助设计人员进行系统设计 4.系统设 ...

  6. UML基础与Rose建模实训教程

    目  录 第1章  初识UML. 1 1.1 初识UML用例图... 1 1.2 初识UML类图... 3 第2章  Rational Rose工具... 6 2.1 安装与配置Rational Ro ...

  7. Java企业实训 - 01 - Java前奏

    前言: 虽然个人专攻.NET方向,不过由于个人是干教育行业的,方方面面的东西,不能说都必须精通,但肯定多少都会涉及到. 一个菜鸟学员,从啥都不会,经过一步步学习,最后到企业上手掌管一个模块甚至一个项目 ...

  8. <实训|第三天>Linux登录界面的修改以及Richard Stallman、自由软件运动

    在写博客之前我想说两点: 承认一个错误,昨天写的实训第二天,我把redhat6.7写成了Linux6.7,感谢热心人士的指出! 昨天写的文章名字太长了,今天改善,内容感觉表述不全,希望各位谅解! 官方 ...

  9. 实训第六天(mybatis)

    今天实训第六天,我们学习了mybatis这个数据库框架,虽然说框架的环境搭建非常的繁琐,但是在了解原理和流程之后是非常的舒服的.因为有一个强大的工具被我掌握了,所以今天感觉非常的开心. 首先我们是在s ...

  10. 【笔记】7天玩转容器&CKA管理员实训

    第一部分 day1,容器基础知识介绍 安装 apt-get install docker-engine [root@cce-7day-fudonghai-24106 01CNL]# docker -v ...

随机推荐

  1. Ftp连接-200 Switching to ASCII mode,227 Entering Passive Mode

    测试 ftp 服务器是否部署成功,最简单的方法,就是找个 windows 系统直连服务器,能连上就说明服务部署成功了.不过,有时候即使 ftp 服务部署成功了,windows 系统依然连接不上服务,这 ...

  2. js 评论时间换算

    //时间戳换算 let dateTime=2020-10-10 10:10:10 getDateDiff(dateTime){ let dateTimeStamp = new Date(dateTim ...

  3. 关于sql json数据的处理

    $resultProductPrice = DB::update("update lev_product_price set detail=json_set(detail,'$.颜色','红 ...

  4. viewport适配解决方案

    viewport的单位vw.vh vw.vh将viewport分成了一百份.vw即 viewport width vh即viewport height 1vw等于视图单位的1%的宽度 1vh等于视图单 ...

  5. 安装TortoiseSVN. msi 报错 2503 2502错误

    tortoisegit下载地址 https://tortoisegit.org/download/ [错误现象] 安装TortoiseSVN. msi 报错 2503 2502错误 [错误原因] 没有 ...

  6. 做文件上传功能时,dubbo对MultipartFile文件传输时,一个bug:Fail to decode request due to: RpcInvocation

    三月 22, 2019 2:37:27 下午 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() fo ...

  7. Win10家庭版安装docker desktop

    1.开启Hyper-V在桌面新建hyperv.cmd文件,内容如下: pushd "%~dp0" dir /b %SystemRoot%\servicing\Packages\*H ...

  8. unity tex2Dlod in vert

    https://forum.unity.com/threads/how-to-sample-a-texture-in-vertex-shader.513816/   GreatWall said: ↑ ...

  9. unity 变体 随手记

    1 #pragma multi_compile AAA BBB#pragma multi_compile CCC DDDAAA CCCAAA DDDBBB CCCBBB DDD------------ ...

  10. Qt中的串口编程

    串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口.串行接口(Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要 ...