软件产品的特性 软件是一种逻辑实体,具有高度复杂性和抽象性 软件“开发过程”有别于一般物质的制造过程。一旦研 制开发成功,就可以大量拷贝同一内容的副本 软件没有磨损、老化的问题,其生命周期曲线不符合所 谓的“浴缸曲线” ·对硬件和环境的依赖性。这导致了软件移植的问题。 至今尚未完全摆脱手工作坊式的开发方式,生产效率低。 软件的成本相当昂贵 软件工作牵涉到很多社会因素。涉及机构、体制和管理 方式、人们的观念和心理
软件产品的特性 • 软件是一种逻辑实体,具有高度复杂性和抽象性。 • 软件“开发过程”有别于一般物质的制造过程。一旦研 制开发成功,就可以大量拷贝同一内容的副本。 • 软件没有磨损、老化的问题,其生命周期曲线不符合所 谓的“浴缸曲线”。 • 对硬件和环境的依赖性。这导致了软件移植的问题。 • 至今尚未完全摆脱手工作坊式的开发方式,生产效率低。 • 软件的成本相当昂贵。 • 软件工作牵涉到很多社会因素。涉及机构、体制和管理 方式、人们的观念和心理
故障率 时间 图1.1浴缸曲线
故 障 率 时间 图1.1 浴缸曲线
故障 率 Change 实际的曲线 理想的曲线 时间 图1.2软件故障曲线
实际的曲线 理想的曲线 故 障 率 时间 图1.2 软件故障曲线 Change
软件的分类 按功能划分 按规模划分 按工作方式划分 按服务对象的范围划分 按可靠性的高低划分
软件的分类 • 按功能划分 • 按规模划分 • 按工作方式划分 • 按服务对象的范围划分 • 按可靠性的高低划分
人们对软件开发的新认 个人技巧—团队意识 效率第一——清晰度第
人们对软件开发的新认识 • 个人技巧——团队意识 • 效率第一——清晰度第一