文章目录
- 完整版(卫星):zzq668878
一:名词解释总结
(1)传统软件工程部分
A:非常重要
-
软件工程方法学:把在软件生命周期全过程中使用的一整套技术方法的集合称之为方法学,也称为范型
-
软件危机:在计算机软件开发和维护过程中所遇到的一系列严重问题。主要包含两个方面:如何开发软件,以满足日益增长的软件需求;如何维护数量不断膨胀的已有软件
-
软件工程:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,经济的开发出高质量的软件并维护它
-
软件过程:是为了获得高质量软件所需要完成的一系列任务框架,它规定了完成任务的工作步骤。通常用软件生命周期模型来描述软件过程
-
软件生命周期模型(软件开发模型):是跨越整个生存期的系统开发、运行和维护过程所实施的全部过程、活动和任务的结构框架
-
?RUP:是指Rational统一过程。是由Rational软件公司推出的一种完整而且完美的软件过程。它可以作为软件开发的良好开端。RUP最重要的它有三大特点:①软件开发是一个迭代过程;②软件开发是由Use Case驱动的;③软件开发是以架构设计(Architectural Design)为中心的
-
…
-
完整版(卫星):zzq668878
B:可以了解
-
软件:是计算机系统中与硬件相互依存的另一部分,包括程序、数据及其相关文档的完整集合
-
文档:是指某种数据媒体和其中所记录的数据。在软件工程中,文档用来表示对需求、工程或结果进行描述、定义、规定、报告或认证的任何书面或图示的信息。它们描述和规定了软件设计和实现的细节,说明使用软件的操作命令
-
结构化设计方法(SD方法):面向数据流的设计是以需求分析阶段产生的数据流图为基础,把信息流映射成软件结构(信息流的类型决定了映射的方法)
-
结构化分析方法(SA方法):是需求分析中使用最多的方法之一,适用于数据处理类型软件的需求分析。基本思想是采用自顶向下、逐步分解的方法分析整个系统,有效地控制系统开发的复杂性
-
PSL(问题陈述语言):是用来描述系统的形式语言
-
PSA(问题陈述分析程序):是处理PSL描述的分析程序
-
…
-
完整版(卫星):zzq668878
(2)面向对象设计部分
-
面向对象方法学:面向对象方法是一种以数据或信息为主线,把数据和处理相结合的方法,即把对象作为由数据及可以施加在这些数据上的操作所构成的统一体。面向对象的方法可以用下列方程来概括:OO = object(对象) + classes(类) + inheritance(继承) + communication with messages(封装)
-
对象(按照面向对象程序设计的角度):对象是具有相同状态的一组操作的集合。 在应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,它既可以是具体的物理实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西
-
对象(按照结构化角度):对象是封装了数据结构及可以施加在这些数据结构上的操作的封装体,这个封装体有可以唯一地标识它的名字,而且向外界提供一组服务。对象中的数据表示对象的状态,一个对象的状态只能由该对象的操作来改变。每当需要改变对象的状态时,只能由其他对象向该对象发送消息。对象响应消息时,按照消息模式找出与之匹配的方法,并执行该方法
-
类:“类”是对具有相同数据和相同操作的一组相似对象的定义,即类是对具有相同属性和行为的一个或多个对象的描述,包括对怎样创建该类的新对象的说明。类是支持继承的抽象数据类型,而对象就是类的实例
-
实例:实例就是由某个特定的类所描述的一个具体的对象。类是对具有相同属性和行为的一组相似的对象的抽象,类在现实世界中并不能真正存在。实际上类是建立对象时使用的“样板”,按照这个样板所建立的一个个具体的对象,就是类的实际例子,通常称为实例
-
属性:属性就是类中所定义的数据,它是对客观世界实体所具有的性质的抽象。类的每个实例都有自己特有的属性值
-
…
-
完整版(卫星):zzq668878
二:简答题总结
(1)传统软件工程部分
- 完整版(卫星):zzq668878
A:非常重要
1.
【答案】
软件危机的定义:软件危机是在计算机开发和维护过程中所遇到的一系列的严重问题,主要包含两个方面
- 如何开发软件,以满足日益增长的软件需求
- 如何维护软件数量不断膨胀的已有软件
软件危机的表现:
- 对软件开发成本和进度的估算不准确
- 用户对软件不满意
- 软件质量不可靠
- 软件不可维护
- 没有合适的文档资料
- 软件成本在计算机系统中的成本逐年上升
- 软件开发生产率低
软件危机的原因
①:主观方面
- 忽视需求分析
- 轻视软件维护
- 没有认识到程序只是软件的一部分
- 没有认识到开发只是软件漫长生命周期中一个比较次要的阶段
- 越到后期引入变动代价会越高
②:客观方面
- 软件是逻辑实体,具有不可见性,管理控制很困难
- 软件不会磨碎,维护意味着需要原来的设计,维护困难
- 软件规模庞大,程序的复杂性会随着软件规模增加而增加
如何解决
- 对计算机软件应该有正确的认识
- 要吸取和借鉴人类长期从事各种工程项目积累的原理、概念、技术和方法
- 积极开发和使用计算机辅助开发软件
- 探索更好更有效的管理措施和手段对开发过程进行控制和管理
2.
【答案】
软件工程定义:采用工程的概念、技术、原理和方法,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,经济的开发出高质量的软件并维护它
软件工程的特征
软件工程的原理
3.软件生命周期阶段如何划分?
【答案】
B:可以了解
- 完整版(卫星):zzq668878
1.什么是软件?软件的特点是什么?
【答案】
【答案】
在软件开发的不同阶段进行修改所付出的代价是不相同的。在早期引入变动,由于设计的面较少,因而代价也比较低;在开发的中后期,软件配置相关工作已经完成,引入一个变动时常常会引起所有与之有关的成分发生变化,所以代价较高。一个人编码错误是不可避免的,但是修改的成本是很小的,因为这不是整体架构的错误,只要不断进行阶段评审,不要让错误留到后期,在早期就尽可能解决
(2)面向对象设计部分
- 完整版(卫星):zzq668878
A:非常重要
1.什么是面向对象方法学?它有哪些优点?
【答案】
①定义
②:优点
- 与人类思维习惯一致
- 稳定性好
- 可重用性好
- 较易开发大型软件产品
- 可维护性好
2.什么是“对象”?它与传统的数据有何异同?
【答案】
- 对象是从客观世界中的实体抽象而来的,面向对象的软件系统是由对象组成的,其任何要素都是对象
- 相对于传统数据结构的静态被处理,对象既有静态的属性,也有动态的行为,是进行处理的主体
3.什么是类
【答案】
- “类”是对具有相同数据和相同操作的一组相似对象的定义,即类是对具有相同属性和行为的一个或多个对象的描述,包括对怎样创建该类的新对象的说明。类是支持继承的抽象数据类型,而对象就是类的实例
B:可以了解
1.建立对象模型相关概念
2.建立对象模型如何确定类与对象
3.建立对象模型如何确定关联
三:画图题总结
- 完整版(卫星):zzq668878
(1)概要(各章图形及对应符号)
A:传统软件工程部分
B:面向对象部分
(2)着重考察画法的图
标签:简答题,对象,西北师范大学,张海藩,zzq668878,面向对象,软件工程,软件,完整版 From: https://blog.csdn.net/2301_79772363/article/details/136673581