【软件工程】期末重点_现代程序员组-程序员宅基地

技术标签: 大学课程  软件工程  

1)增量模型的特点?

分批次把产品提交给用户

2)快速原型和瀑布模型的特点?

一次把所有满足所有需求的产品提交给用户

3)螺旋模型的特点?

每个阶段都增加了风险分析过程的快速原型模型

4)软件生命周期的8个阶段?

软件定义时期:问题定义、可行性研究、需求分析

软件开发时期:总体设计、详细设计、编码和测试单元(实现)、综合测试

软件维护时期:运行维护

八个阶段所对应于的文档:除了需求分析是需求规格说明书,运行维护是评价设计文档,其它的均为“某个阶段+报告”

5)可行性研究的目的?

不是解决问题而是确定问题是否值得去解决

6)可行性研究的三个方面?

1、技术可行性

2、经济可行性

3、操作可行性

7)规格说明书的作用?

描述用户的全面的需求(属于需求分析阶段的报告,前面阶段的报告只能作为后面阶段的依据)

8)什么是1:1的联系,什么是1:n的联系?

1:1   一个部门只有一个经理,一个经理只在一个部门任职

1:n   1个老师教多门课程,每门课程只有一个老师来教

9)E-R图中的各个符号所代表的含义?

矩形:实体

圆角矩形:属性

菱形:关系

10)耦合(越低越好,不同模块之间的互联程度)

数据耦合是低耦合,好;控制耦合、内容耦合(最高)是高耦合,不好;

  1. 内聚(越高越好,同一个模块间的紧密程度)

功能(内聚):10 >顺序:9 >通信:7 >过程:5 >时间:3 >逻辑:1  >偶然:0

  1. 深度、宽度、扇入、扇出的计算?P101
  2. 面向数据流的设计方法?(把信息流映射成为软件结构)

信息流分为:1、交换流2、事务流(以事务为中心)

  1. 什么是结构程序设计?

尽可能少的使用GO TO 语句的程序设计方法

  1. 人机界面的设计质量,直接影响用户对软件的评价,从而影响软件产品的竞争力和寿命,所以要对它足够重视
  2. 设计人机界面会遇到的四个问题?
  1. 系统响应时间
  2. 用户帮助设施
  3. 出错信息处理
  4. 命令交互
  1. Jackson方法的三个步骤?
  1. 确定输入输出数据结构
  2. 分析输入数据结构和输出数据结构中有对应关系的数据单元
  3. 数据结构图导出程序结构图
  4. 列出所有操作和条件,并把它分配到程序结构图的适当位置
  5. 伪码表示程序
  1. 测试的目标和定义?
  1. 测试是为了发现程序中的错误而执行程序的过程
  2. 好的测试方案是极其可能发现迄今为止未发现过的错误的测试方案(将来时)
  3. 成功的测试是发现了迄今为止未发现的错误的测试(完成时)
  1. 白盒测试包含什么?
  1. 逻辑覆盖
  2. 控制结构测试
  1. 逻辑覆盖包含了哪些覆盖?(语句、判定、条件考大题要会)
  1. 语句覆盖(最弱)
  2. 判定覆盖
  3. 条件覆盖(相对强)
  4. 判定/条件覆盖
  5. 条件组合覆盖......
  1. 黑盒测试的三种方法?
  1. 等价划分
  2. 边界值分析
  3. 错误推测
  1. 白盒测试和黑盒测试的区别?

白盒测试:测的是程序内部原理结构(开发者角度)

黑盒测试:测的是用户功能(用户角度)

  1. 调试和测试目标的区别?

调试的目标:找出软件错误的原因并改正

测试的目标:找出错误,但是不改正

  1. 调试途径有哪三个?
  1. 蛮干法(最差)
  2. 回溯法
  3. 原因排除法
  1. 软件维护的定义?

软件维护就是在软件已经交付使用之后,为了改正错误或者满足新的需要而修改软件的过程

  1. 面向对象方法学的出发点和基本原则?

尽可能模拟人类习惯的思维方式,使开发软件的方法和过程尽可能接近人类认识世界解决问题的方法和过程

  1. 面向对象的设计方法和传统的设计方法相比较有什么不同?

使用现实世界的概念抽象地思考问题从而自然地解决问题

  1. 分清楚类和实例的概念?

类:工人、护士、医生

实例:具体到某个人,张三、李四....

  1. 什么是封装?

封装就是信息隐藏,通过封装对外界隐藏了对象的实现细节

  1. 有哪三种模型?
  1. 对象模型(最基本最重要)
  2. 动态模型
  3. 功能模型
  1. UML的图与模型的对应建立关系?
  1. UML的类图----->对象模型
  2. 状态图------->动态模型
  3. 数据流图/例图------->功能模型
  1. 优秀软件设计的一个重要特点是容易维护
  2. 生命周期方法学中:

把设计划分成:1、总体设计2、详细设计

面向对象设计:1、系统设计2、对象设计

36)软件项目成功的关键:高素质的人员

37)三个程序员组的特点?

民主制程序员组的特点:(适合组内都是经验丰富的程序员)

  1. 小组成员完全平等,可以协商做出技术决策。
  2. 小组规模小
  3. 采用非正式的组织方式(名义组长)
  4. 积极性高,但是缺乏领导和权威

主程序员组的特点:(有很多方面不切实际)

  1. 专业化,每个人只完成受过专业训练的工作
  2. 层次化:能力强的程序员指挥每名组员工作,并由其全面负责

现代程序员组的特点:

  1. 把主程序员分为技术负责人和行政负责人
  2. 大型项目组采取分小组、多层次方式
  3. 分散决策提高成员积极性
  1. 估算软件规模分为哪两类?
  1. 代码行技术
  2. 功能点技术

题型:

单选题(20个)

判断题(10个)

简答题(4个)

设计题(4个)参考练习

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_55858611/article/details/125432255

智能推荐

基于element-ui的可分页表格穿梭框_elt-transfer-程序员宅基地

文章浏览阅读4.2k次,点赞2次,收藏16次。文章目录elt-transfer安装使用示例AttributesSlotNPMelt-transfer基于element-ui的可分页表格穿梭框安装npm install elt-transfer使用在main.js文件中引入插件并注册import eltTransfer from 'elt-transfer'Vue.use(eltTransfer)示例示例代码Attributes参数说明类型默认值value / v-model绑定值array—_elt-transfer

php url验证失败,PHP应用:php版微信开发Token验证失败或请求URL超时问题的解决方法...-程序员宅基地

文章浏览阅读215次。《PHP应用:php版微信开发Token验证失败或请求URL超时问题的解决方法》要点:本文介绍了PHP应用:php版微信开发Token验证失败或请求URL超时问题的解决方法,希望对您有用。如果有疑问,可以联系我们。PHP实例微信开发最近要用到的一个功能,其实就是一个非常的简单的用户输入然后自动搜索数据库并进行一个数据回复了,这个与官方没多大的问题,但小编就微信Token验证失败折腾了许多,下面解决..._php 验证url函数 企业微信

ue4 Encountered %d object(s) breaking Disregard for GC assumptions_-verifygc 不建议-程序员宅基地

文章浏览阅读2.1k次,点赞4次,收藏2次。今天遇到一个奇怪的崩溃Bug,具体的崩溃log如下:[2019.04.19-02.36.16:128][618]LogGarbage: Warning:Disregard for GC object Monatge_ON_AnimNotify/Game/_AI/BT/Task/AI_Random/W2_Stand_Relaxed_Unjam_Montage.W2_Stand_Relax..._-verifygc 不建议

TCP_一个tcp报文段首部的十六进制表示见下图阴影部分-程序员宅基地

文章浏览阅读7.4k次,点赞18次,收藏93次。一个TCP首部数据为:0x 0D 28 00 15 50 5F A9 06 00 00 00 00 70 02 40 00 C0 29 00 00(注:共20个字节,0x代表数据为16进制),分析数据,试求:这两个字节,总共16bit,a)源端口和目的端口(2分)源端口是3368目的端口是21b)序列号和确认号(16进制)(2分)序号50 5F A9 06..._一个tcp报文段首部的十六进制表示见下图阴影部分

【2024版】最新Kali Linux安装教程(非常详细)从零基础入门到精通,看完这一篇就够了(附安装包)-程序员宅基地

文章浏览阅读1.9w次,点赞27次,收藏211次。在前面的文章中我,我们也写过kali的安装。时间久了,kali的更新也比较快。这里我们以最新版为例,进行安装演示。_kali

Android 10 SurfaceFlinger_asurfacetransaction-程序员宅基地

文章浏览阅读1.4k次。Andorid 10 SurfaceFlinger ​​​​​​​模块介绍 SurfaceFlinger 接受来自多个源的数据缓冲区,然后将它们进行合成并发送到显示屏。WindowManager 为 SurfaceFlinger 提供缓冲区和窗口元数据,而 SurfaceFlinger 可使用这些信息将 Surf..._asurfacetransaction

随便推点

arm-从0开始刷机(linux下)-程序员宅基地

文章浏览阅读1.2k次。环境1.操作系统:deepin 5.3.152.代码编辑器:Visual Studio Code3.

boost.asio系列(一)——deadline_timer-程序员宅基地

文章浏览阅读71次。一.构造函数  一个deadline_timer只维护一个超时时间,一个deadline_timer不同时维护多个定时器。在构造deadline_timer时指定时间:1 basic_deadline_timer(boost::asio::io_service & io_service);2 3 basic_deadline_timer( boost::asio::io..._boost asio deadline lamdba

VCS 加速编译的方法——VCS Partition Compile_vcs加速编译-程序员宅基地

文章浏览阅读8.2k次,点赞9次,收藏112次。文章目录前言1 Partition Compile2 Autopartitioning(Ease of Adoption)3 Specifying Partitions Manually(Recommended)3.1 topcfg.v file3.2 Two step commands for partition compile3.3 Three step commands for partition compile3.4 Profiling of Compilation Time4 Best Pract_vcs加速编译

c语言随机数的生成_c语言生成随机-程序员宅基地

文章浏览阅读2.8w次,点赞68次,收藏167次。在正文开始之前,我们需要说明一件事情,在我们使用函数生成的随机数都不是真正的随机数,准确的叫法应该是伪随机数。在 C 语言当中使用随机数要用到 rand 函数和 srand 函数。int rand():返回值为随机值,参数为空,通过 rand 函数就会产生一个随机数。void srand(unsigned int seed):返回值为空, 就是设置随机种子的,当我们不设置随机种子的时候,默认设置的..._c语言生成随机

[TM4C123单片机实战] 两路ADC检测,短路报警_adc检测 短路保护-程序员宅基地

文章浏览阅读4.2k次,点赞2次,收藏8次。如果最终得到的数据是两路数据的差值, 我们可以采用ADC的 Difference 工作模式#include #include #include "inc/hw_memmap.h"#include "driverlib/adc.h"#include "driverlib/gpio.h"#include "driverlib/pin_map.h"#include "driver_adc检测 短路保护

Xcode控制台调试常用命令_xcode po命令-程序员宅基地

文章浏览阅读1.7k次。当遇到crash时,查看线程栈,只能看到栈帧的地址,使用imagelookup–address地址可以方便的定位到这个地址对应的代码行。命令可以打印出线程的堆栈信息,该信息比左侧的DebugNavigator看到的还要详细一些。在调试时,动态的修改变量的值,这在调试想要让应用执行异常路径(如执行某个else情况)很有用。命令类似,所以也是可以打印常量、变量,打印表达式返回的对象等。在控制台执行该命令,可以在不修改代码,不重新编译的情况下,修改界面上的视图。命令是打印所有线程的堆栈信息。......_xcode po命令

推荐文章

热门文章

相关标签