《软件工程概论模拟题》文档包含了针对软件工程基础理论知识设计的一系列练习题目,旨在帮助学生和从业者加深对软件开发流程、方法及实践的理解与掌握。
【知识点详解】
1. 软件工程的基本手段:软件工程控制复杂性主要依赖于“分解”与“抽象”。通过将大问题拆分为小部分来简化管理,并忽略不重要的细节,聚焦核心功能。
2. 计算机软件构成:计算机软件通常包括程序和文档。其中,程序是实现特定任务的代码集合;而文档则记录了设计、开发及维护等信息。
3. 可行性研究方面:在项目可行性分析中,需要评估经济、技术和法律方面的因素以确定项目的实施价值与可能性。
4. “软件工程”名词起源:“软件危机”的出现促使1968年北大西洋公约组织(NATO)的计算机科学家提出了“软件工程”这一概念来解决相关问题。
5. 可行性研究分析:除了经济和技术可行性,还需考虑法律方面的因素。
6. 软件设计步骤:从管理角度来看,软件的设计过程包括概要设计和详细设计两个阶段。
7. 瀑布模型:W.Royce在1970年提出的瀑布模型是经典的软件开发模式之一。该模型按照线性的顺序进行各个开发活动的执行。
8. 结构化分析方法:这是一种基于数据流的需求分析方式,主要使用数据流图和数据字典作为工具。
9. 结构化设计映射:通过变换分析及事务分析将抽象的数据流转换为软件结构框架。
10. 面向对象中的“类”:“类”是面向对象编程中对具有共同属性与行为的对象进行定义的模型。
11. 封装:封装在面向对象程序设计里指数据和操作被捆绑在一起,对外隐藏实现细节以提高安全性及可维护性。
**简答题解析**
1. 客户订货处理判定树:可以建立一个基于“欠款时间”的决策树,并根据库存状况做出发货决定。
2. 电话号码描述:校内电话为4位数字且首位非零,校外分为本地(0开头加8位)和外地(0+3区号再加8位),均需以非零数开始。
3. 数据流图转换成系统结构图:在设计中,数据流的处理、存储等节点将被映射为软件中的相应模块或组件。
4. 抽象数据流图转初始软件结构图:基于给定的数据流图表绘制出对应的初始软件架构,并通过输入输出和过程来连接各个元素。
5. 伪代码转化为N-S流程框图:利用N-S盒表示程序逻辑,如开始、条件判断(if)、循环(while)等基本控制语句的转换。
6. 判定表创建:根据天气情况制作一个2x2决策表以确定是否携带雨伞以及穿戴大衣的行为模式。
7. 软件设计模块耦合与内聚分析:方案一中A和B间为控制依赖,而内部表现为过程集中;方案二则是数据关联性,具有更好的独立性和可维护性。
8. 用例图解析:执行者可以是教师或学生角色;基本功能包括登录、录入成绩及查询/删除操作。这些活动之间的关系说明了某些任务需先完成特定步骤才能进行其他工作或者被扩展至更大的场景中去处理。
以上内容涵盖了软件工程的基础概念,分析方法以及设计原则等方面的知识点和简答题解析,对于期末复习具有重要的指导作用。