软件系统分析与设计
- 格式:docx
- 大小:97.84 KB
- 文档页数:18
第 1 章 软件工程基础知识
1.1 软件工程知识体系
软件需求(Software Requirements)
软件设计(Software Design)
软件构造(Software Construction)
软件测试(Software Testing)
软件维护(Software Maintenance)
软件配置管理(Software Configuration Management)
软件工程管理(Software Engineering Management)
软件工程过程(Software Engineering Process)
软件工程工具和方法(Software Engineering Tools and Methods)
软件质量(Software Quality)
1.2 软件生存周期与软件开发模型
1.2.1 软件生存周期
Boehm 定义的软件生存周期模型
GB 8566-1988 定义的软件生存周期模型
GB/T 8566-1995 定义的软件生存周期过程模型
GB/T 8566-2001 定义的软件生存周期过程模型
UP 定义的软件生存周期模型
1.2.2 软件开发模型
瀑布模型(waterfall model)
快速原型模型(rapid prototype model)
演化模型(evolutionary model)
增量模型(incremental model)
螺旋模型(spiral model)
喷泉模型(water fountain model)
1.3 软件质量模型与软件质量管理
1.3.1 软件质量模型
软件产品的内部质量、外部质量和使用质量
质量特性、质量子特性和度量
功能性:适宜性、准确性、互用性、依从性、安全性
可靠性:成熟性、容错性、可恢复性
可用性:可理解性、易学性、可操作性
效率:时间特性、资源特性
可维护性:可分析性、可修改性、稳定性、可测试性
可移植性:适应性、易安装性、一致性、可替换性
1.3.2 软件质量管理
质量需求分析
质量计划
质量保证
质量控制
质量改进
软件质量管理体系 1.4 软件配置管理
1.4.1 软件配置项与基线
计算机软件配置项(CSCI)
基线(baseline)
功能基线(functional baseline)
指派基线(allocated baseline)
产品基线(product baseline)
1.4.2 软件配置管理过程
对象标识
版本控制
变化控制
配置审计
配置报告
1.5 软件过程管理
1.5.1 软件能力成熟度模型(CMM)
CMM 的 5 个等级:初始级、可重复级、已定义级、已管理级、优化级
CMM 的关键过程域(KPA):需求管理、软件项目计划、软件项目跟踪和监控、软件子
合同管理、软件质量保证、软件配置管理、组织级过程焦点、组织级过程定义、培训
大纲、集成软件管理、软件产品工程、组间协调、同行评审、定量过程管理、软件质
量管理、缺陷预防、技术变更管理、过程变更管理
1.5.2 软件过程与软件能力成熟度评估
第一步,建立评估组
第二步,填写提问单
第三步,响应分析
第四步,现场考察
第五步,提出调查发现清单
第六步,制作关键过程域(KPA)剖面图
1.5.3 软件过程改进
第一步,比较“目标状态”与“目前状态”,找出所有差距
第二步,确定改进目标
第三步,制定改进计划
第四步,执行改进计划
第五步,总结本轮改进经验,开始下一轮改进
1.6 小节
软件工程学是研究如何有效地组织和管理软件开发的工程学科。
软件产品所要经历的计划、分析、设计、编程、测试、维护直至被淘汰这样一个全过
程被称为软件生存周期。用不同的方式将软件生命周期中的所有开发活动组织起来,
可以形成不同的软件开发模型。
软件质量就是软件与明确地和隐含地定义的需求相一致的程度。软件质量管理是指软
件开发机构为保证软件项目满足客户需求所要实施的质量活动。
软件配置管理是在软件的整个生命期内管理变化的一组活动,目标是使变化更正确且
更容易被适应。
软件过程是指人们用于开发和维护软件及其相关产品的一系列活动,包括软件工程过
程和软件管理过程。软件过程管理的目的就是提升软件组织的提高软件开发能力。 第 2 章 项目管理基础知识
2.1 项目与项目管理
1.
1.
2.1.1 项目
项目是在特定条件下、具有特定目标的一次性任务,是在一定时间内、满足一系列特
定目标的多项相关工作的总和。
项目的临时性
项目的独特性
项目的渐进性
2.1.2 项目管理
项目管理就是将各种知识、技能、工具和技术应用于项目之中,以达到项目的要求。
项目范围
项目时间
项目成本
项目质量
2.2 项目管理过程与过程组
2.2.1 过程与过程组
过程就是一组为了完成一系列事先指定的产品、服务或成果而需执行的互相联系的行
动和活动。软件项目管理过程可归纳为五个过程组。
启动过程组(initiating process group)
规划过程组(planning process group)
实施过程组(executing process group)
监控过程组(monitoring and controlling process group)
收尾过程组(closing process group)
2.2.2 项目管理过程的交互作用
项目管理过程并不是互不相干的一次性事件
项目管理过程组之间是一种前后衔接、承前启后的关系
项目管理过程组之间有时又是一种时间交错、空间并行的关系
项目管理过程组之间还是一种信息收集、存储、处理和传递的关系
某些过程组的关联具有重复迭代性
规划过程组、执行过程组和监控过程组之间形成一种闭环的关系
过程组的交互作用往往还会跨越项目阶段
项目阶段和过程之间有相互联系
2.2.3 项目管理过程的裁剪
不同类型的软件项目应选用不同的项目管理过程
不同阶段的软件项目应选用不同的项目管理过程
不同软件项目的管理过程会有不同的具体过程
不同软件项目的管理过程会有不同的具体过程顺序
不同软件项目的管理过程会有不同的条件与约束
不同软件项目的管理过程会有不同的简化程度
不同软件项目的管理过程需要不同的集成程度
项目变更会使项目管理过程随之变化
2.3 项目管理知识体系
项目综合管理
项目范围管理
项目时间管理 项目成本管理 项目质量管理 项目人力资源管理 项目沟通管理 项目风险管理 项目采购管理
2.4 小节
项目管理就是将项目管理知识、技能、工具和技术应用于项目活动之中,可以将软件
项目管理活动视做一系列相互联系的过程。
项目管理过程可归纳为 5 个过程组:启动过程组、规划过程组、实施过程组、监控过
程组与收尾过程组。
项目管理包括 9 个知识领域:项目综合管理、项目范围管理、项目时间管理、项目成
本管理、项目质量管理、项目人力资源管理、项目沟通管理、项目风险管理与项目采
购管理。
第 3 章 软件开发技术
3.1 软件开发平台
1.
1. 3.1.1 Microsoft .NET 平台
Microsoft .NET Framework:.NET CLR(通用语言运行环境);.NET BCL(基础类库);
;。
Microsoft Visual Studio .NET: 组件;XML 数据组件;Windows 表单组件;
应用服务; Web 表单;Web 服务支持。
3.1.2 J2EE 平台
组件-容器:搭建体系架构
平台标准服务
多层应用模型
3.1.3 Microsoft .NET 与 J2EE 的异同
类似的平台基础构造
相同的三层/多层体系
不同的移植、性能和扩展
在 Web 支持方面的比较
第三方厂商的支持
潜在的市场
3.2 中间件技术
3.2.1 中间件简介
终端仿真/屏幕转换中间件
数据访问中间件
远程过程调用中间件
消息中间件
交易中间件
对象中间件
Web 服务器中间件
安全中间件
3.2.2 消息代理中间件