第7章面向对象软件工程的概念
- 格式:ppt
- 大小:423.00 KB
- 文档页数:59


.
.....
第一章
1、软件概念:由计算机程序,数据,软件文档组成
软件的特点:无法直接观察它的物理形态,只能通过观察他的是实际 运行情况来了解他的功能特性和质量等; 人们在分析设计开发测试过 程以及软件开发项目的管理过程中渗透了大量的人类的脑力劳动;不存在磨损和老化但存在缺陷维护和技术更新的问题; 开发运行依赖一定的计算机系统环境;具有可复用性
软件的分类:按功能分:系统支撑应用软件; 按服务对象:通用定制软件;按规模:大中小型软件;按工作方式:实时分时交互式批处理
2、软件危机:是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件的开发与维护过程中出现一系列严重问题的现象。
主要表现:
开发人员开发的软件产品不能完全满足用户的需求;
软件产品的质量难以得到保障;
开发周期开发经费和维护费用很难被准确估计从而给项目的管理带来很多麻烦;
随着技术的更新,用户的扩大,已有的软件产品不能灵活地适应环境的改变;
软件文档不完备并且存在文档内容与软件产品不符的情况。
原因:
①软件开发是一项 复杂的工程,需要用科学的工程化思想来组织和指导软件开发的各个阶段
②没有完善的质量保证体系
③软件文档的重要性没有得到软件开发人员和用户的足够重视
④从事软件开发的专业人员对这个产业认识不够充分缺乏经验
⑤软件独有的特点也给软件的开发和维护带来困难
3、软件工程是指应用计算机科学与技术,数学和管理学的原理,运用工程学理论方法和技术,研究和指导软件开发和演化的一门交叉学科。
软件工程的目标:
使软件开发的成本控制在预计的合理范围内;
使软件产品的各项功能和性能能够满足用户需求;
提高软件产品的可靠性;
使生产出来的软件产品易于移植维护升级和使用;
使软件产品的开发周期能够控制在预计的合理时间范围内。
软件工程学科内容:
软件工程原理过程方法模型管理度量环境应用。
第1章 软件工程学概述
1.1 软件危机
1.1.1 软件危机旳简介
软件危机(软件萧条、软件困扰): 是指在计算机软件旳开发和维护过程中所碰到旳一系列严重问题。
软件危机包括下述两方面旳问题:
怎样开发软件, 满足对软件日益增长旳需求;
怎样维护数量不停膨胀旳已经有软件。
软件危机旳经典体现:
(1)对软件开发成本和进度旳估计常常很不精确;
(2)顾客对“已完毕旳”软件系统不满意旳现象常常发生;
(3)软件产品旳质量往往靠不住;
(4)软件常常是不可维护旳;
(5)软件一般没有合适旳文档资料;
(6)软件成本在计算机系统总成本中所占旳比例逐年上升;
(7)软件开发生产率提高旳速度, 远远跟不上计算机应用迅速普及深入旳趋势 。
1.1.2 产生软件危机旳原因
(1)与软件自身旳特点有关
(2)与软件开发与维护旳措施不对旳有关
1.1.3 消除软件危机旳途径 对计算机软件有对旳旳认识。
认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完毕旳工程项目。
应当推广使用在实践中总结出来旳开发软件旳成功技术和措施, 并继续研究探索。
应当开发和使用更好旳软件工具。
总之, 为了处理软件危机, 既要有技术措施(措施和工具), 又要有必要旳组织管理措施。
1.2
1.2.1 软件工程旳简介
软件工程: 是指导计算机软件开发和维护旳一门工程学科。采用工程旳概念、原理、技术和措施来开发与维护软件, 把通过时间考验而证明对旳旳管理技术和目前可以得到旳最佳旳技术措施结合起来, 以经济地开发出高质量旳软件并有效地维护它, 这就是软件工程。(期中考)
软件工程旳本质特性:
软件工程关注于大型程序旳构造
软件工程旳中心课题是控制复杂性
软件常常变化
开发软件旳效率非常重要
友好地合作是开发软件旳关键
软件必须有效地支持它旳顾客
在软件工程领域中是由具有一种文化背景旳人替具有另一种文化背景旳人发明产品
1.如果要开发“图书馆管理信息系统”,你认为采用什么开发模型比较合适?请说明理由。
答:开发“图书馆管理信息系统”采用瀑布模型比较合适。因为瀑布模型在开发过程中各阶段非常清晰,便于评审、跟踪、管理和控制,并且“图书馆管理信息系统”也基本符合瀑布模型的条件:
(1)“图书馆管理信息系统”在开发过程中需求变化很少。
(2)分析和设计人员对“图书馆管理信息系统”比较熟悉。
(3)“图书馆管理信息系统”是低风险项目。
(4)“图书馆管理信息系统”的用户使用环境比较稳定。
(5)“图书馆管理信息系统”的用户除提出需求以外,很少参与开发工作。
2.简述结构化程序设计方法的基本要点。
(1)采用自顶向下,逐步求精的程序设计方法。
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环
(3)采用主程序员组的组织形式。
3.下图中,模块G为判定,判断涉及到模块B、F、G,请指出设计中的错误,再根据改进模块图的基本原则,画出1~2 个改进方案(不改变模块G 的判断关系),并说明是按照哪条基本原则进行改进的。
解:下图为一个改进方案,将模块G的位置提高,使其作用范围为控制范围的子集,减少模块之间的联系。
4.根据下列条件使用等价类划分法设计测试用例。
某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065。
用等价划分法:
(1)划分等价类并编号,如表1 表1 八进制常量输入条件的等价类
输入条件 合理等价类 不合理等价类
八进制整数 1.2—4位以0打头的数字串
2.以-0打头的3—5位数字串 3.以非0非-打头的串
4.0打头含有非数字字符的串
5.以-0打头含有非数字字符的串
6.多于5个字符
7.-后非0的多位串
8.-后有非数字字符
9.后多于4个数字
八进制
数范围 10.在-177—177之间 11.小于-177
12.大于177
(2)为合理等价类设计测试用例。表2中有两个合理等价类,设计两个例子。
1
第一章
软件危机概念:指在计算机软件的开发和维护过程中,所遇到的一系列严重问题。
软件危机表现:
1.对软件开发成本和进度的估计常常很不正确
2.用户对“已完成的”软件系统不满意的现象经常发生
3.软件产品的质量往往靠不住
4.软件常常是不可维护的
5.软件通常没有适当的文档资料
6.软件成本在计算机系统总成本中所占的比例逐年上升
7.软件开发生产率提高的速度远远跟不上计算机应用迅速普及深入的趋势
软件危机原因:
1.与软件本身的特点有关
2.与软件开发与维护的方法不正确有关
①软件开发尚未完全摆脱手工开发方式。
②软件成本相当昂贵,主要依靠大量复杂的、高强度的脑力劳动。
③软件的开发和运行常常受到计算机系统的限制,对计算机系统有着不同程度的依赖性。
怎样消除软件危机:
1 、彻底消除“软件就是程序”的错误观念。
2 、充分认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目,不是个人 独立的劳动。
3 、推广和使用在实践中总结出来的软件开发的成功技术和方法。
4 、开发和使用更好的软件工具
软件工程概念:
概括地说,软件工程是指导计算机软件开发和维护的一门工程学科。...p5
软件工程方法学:
通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学也称为范型。
结构化范型和面向对象范型的要点:
1采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务;
2把软件生命周期划分为若干个阶段,按顺序完成每个阶段的任务;
3每个阶段开始和结束都有严格的标准,对任何两个相邻的阶段而言,前一个阶段的结束标准就是后一阶段的开始标准;
4每一个阶段结束之前都必须进行正式严格的技术审查和管理复审
传统方法学的优点:
分解任务,分工合作,降低整个软件开发工程的困难;
采用科学的管理技术和良好的技术方法对每个阶段成果都进行严格的审查。保证了软件的质量。