【课前思考】
�1、什么是软件工程过程?什么是软件过程的框架?
  2、什么是软件项目管理?它包括哪几个步骤?
  3、软件工程过程的直接度量包括哪些?软件产品的直接度量包括哪些?
  4、软件产品的间接度量包括哪些?
  5、面向规模的度量的对象是哪些?度量值有哪些?
  6、面向功能的度量的对象是哪些?如何计算功能点?
  7、软件质量度量的事后度量包括对哪些质量特性度量?如何度量?
  8、软件的范围包括哪些?其中,接口包括哪4种情况?
  9、软件开发的资源包括哪些?开发过程中人力资源如何安排?硬件资源有哪几种?软件资源有哪几种?
  10、如何从LOC或FP通过分解估算软件的工作量和成本?
  11、软件开发成本估算有几种方式?
  12、如何通过基本或中间COCOMO模型估算软件的工作量和进度?
  13、在成本 效益分析时,如何计算投资回收期和纯收入?
  14、软件风险分为哪3种类型?每一种风险表明什么含义?
  15、风险项目检查表包括哪些风险?说明每一种风险的含义。
  16、软件开发小组的人数与软件生产率有什么样的关系?
  17、软件定义与开发阶段的工作量分配叫做40 20 40规则。它表明什么意思?各种任务的工作量比例如何分布?
  18、软件组织机构有3种模式。每一种模式各有什么优缺点?
  19、程序设计小组的组织也有3种形式。它们各有什么优缺点?
  20、项目组织有哪些要求?说明任务分解结构和任务责任矩阵的作用。

【学习目标
 �1. 了解软件过程的概念、软件过程框架和软件过程模型。
  2. 了解软件项目管理的过程。
  3. 了解软件度量的种类,面向规模和面向功能的度量以及质量度量的种类。
  4. 掌握LOC估算和FP估算的方法,分解技术和工作量估算方法。
  5. 了解软件成本估算的概念,掌握COCOMO成本估算方法。
  6. 了解软件成本�D效益估计方法。
  7. 了解风险分析的步骤,风险的种类、风险项目和风险构成。
  8. 了解软件进度安排方法及图形工具。
  9. 了解软件项目划分的方式,项目组织的模式,人员配备的原则和条件。

学习指南
  软件管理是主要指软件项目的管理,即对整个软件生存期的所有活动进行管理。对任何项目来说,工程的成败,都与管理的好坏有密切的关系,软件项目也不例外。软件项目管理对保证高质量的软件产品具有极为重要的意义。
  本章首先概要介绍了软件过程的概念,然后介绍了软件开发过程的概要。以后各节所介绍的都是软件管理的活动。
  为了估算软件项目开发的工作量和成本,必须对以往完成的项目进行度量,用度量值作为项目估算的依据,进而作出计划和安排。本章讨论了对软件产品和软件过程的直接度量和间接度量、面向规模和面向功能点的度量,给出了相应的公式和方法。然后给出软件项目估算的各种方法,以此为依据,制定项目开发计划。在计划中给出了成本估算、进度安排、人力和资源配置等。成本估算模型有COCOMO模型、Putnam模型等,进度安排有 Gantt图和PERT技术等。
  本章还介绍了风险分析、风险估计和风险避开等概念。在软件开发中存在各种各样的风险,风险识别、风险估计和风险驾驭对于消除风险、保证软件项目的成功有着特殊重要的作用。

【难重点
  ◇ 软件过程的定义、软件过程关键过程域包含的内容
  ◇ 软件过程框架形式、它的层次结构及其内容
  ◇ 问题循环解决的过程模型
  ◇ 软件项目管理的过程:启动项目、制定计划、计划追踪与控制、评审与评价、编制管理文档。
  ◇ 软件度量的目的和按直接度量、间接度量的分类
  ◇ 面向规模度量及其计算公式
  ◇ 面向功能度量及其计算公式
  ◇ 软件正确性、可维护性、完整性、可使用性的定义及其度量
  ◇ 软件估算的特征:项目的复杂性、规模、结构化程度
  ◇ 软件范围:功能、性能、限制、接口、可靠性
  ◇ 软件开发的资源:人、工具(硬件、软件)
  ◇ 开发阶段各种人员随工作进展的参与情况
  ◇ 软件工具的种类:业务系统计划工具、项目管理工具、支持工具、分析和设计工具、编程工具、集成和测试工具、原型化工具、维护工具、框架工具等。
  ◇ 用分解技术估算的思路和利用估算表估算待开发项目所需工作量
  ◇ 软件开发成本估算的三种方法:自顶向下估算、自底向上估算、差别估计法
  ◇ Deiphi技术的步骤及利用它进行估算的公式
  ◇ Putnam模型的前提和计算公式
  ◇ COCOMO模型中软件项目的类型、用它计算软件项目的工作量和进度
  ◇ 有形效益与无形效益的概念,货币的时间价值的计算
  ◇ 根据货币的时间价值简单计算投资回收期和纯收入
  ◇ 风险分析的4个步骤:风险识别、风险估计、风险评价和风险驾驭
  ◇ 风险的种类:项目风险、技术风险和商业风险的内容
  ◇ 风险项目检查表包含内容:产品规模、商业影响、客户特性、过程定义、开发环境、建造技术、人员数量及经验
  ◇ 风险构成:性能风险、成本风险、支持风险、进度风险
  ◇ 风险评价三元组含义:风险、风险发生概率、风险影响
  ◇ 开发小组人数和生产率间的关系
  ◇ 软件开发阶段工作量分配:40-20-40原则
  ◇ 应用PERT图求解关键路径
  ◇ 任务分解结构及任务责任矩阵的建立
  ◇ 软件项目组织的原则:尽早落实责任、减少接口、责权均衡
  ◇ 软件组织模式:按课题划分、按职能划分、矩阵型模式
  ◇ 程序设计组组织:主程序员小组、民主制小组、层次式小组
  ◇ 恒等配备人力的利弊
  ◇ 配备人员的原则:重质量、重培训、双阶梯提升