1、软件工程知识点梳理
1、软件开发环境
(1) 定义:软件开发环境是指支持软件产品开发的软件系统,它由软件工具集和环境集成机制构成。
- 工具集:用于支持软件开发的相关过程、活动和任务
- 环境集成机制:为工具集成和软件开发、维护和管理提供统一的支持
- 数据集成
- 界面集成
- 控制集成
(2)软件开发环境的特征:
- 环境的服务是集成的。
- 环境应支持小组工作方式,并为其提供配置管理
- 环境的服务可用于支持各种软件开发活动,包括分析、设计、编程、测试、调试和文档等
(3)集成型开发环境:是一种支持把多种软件开发方法和开发模型的软件工具集成在一起的软件开发环境。
2、软件项目管理
(1)定义:指软件生存周期中软件管理者所进行的一系列活动,其目的是在一定的时间和预设范围内有效地利用人力、资源、技术和工具,使软件系统或软件产品按原定计划和质量要求如期完成。
(2)软件项目管理设计的范围
- 人员
- 产品
- 过程
- 项目
(3)软件项目估算
常用的估算方法:
- 基于已经完成的类似项目进行估算
- 基于分解技术进行估算
- 基于经验估算模型的估算。典型的经验估算模型有IBM估算模型、CoCoMo模型和Putnam模型
1)成本估算方法:
- 自顶向下估算方法
- 自底向上估算方法
- 差别估算方法
- 专家估算法
- 类推估算法
- 算式估算法
2)CoCoMo估算模型
是一种精确的、易于使用的成本估算模型
按详细程度分为:基本COCOMO模型、中级COCOMO模型和详细COCOMO模型。
3)Putnam估算模型
定义:是一种动态多变量模型,他是假设在软件开发的整个生存周期中工作量有特定的分布。
3、进度管理
(1)定义:软件项目进度管理的目的是确保软件项目在规定的时间内按期完成。
(2)进度管理的基本安排原则如下:
- 划分
- 相互依赖性
- 时间分配
- 工作量确认
- 确定责任
- 明确输出结果
- 确定里程碑
(3)进度安排
进度安排的常用图形描述方法有:Gantt图和项目计划评审技术PERT图
- Gantt图能清晰地描述每个任务从何时开始,到何时结束,任务的进展情况以及各个任务之间的并行性。但是他不能清晰地反映出各任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分。
- PERT图不能反映出任务之间的并行关系