软件工程期末复习(1)

news2025/1/22 18:03:22

学习资料

软件工程知识点总结_嘤桃子的博客-CSDN博客

软件工程学习笔记_软件工程导论第六版张海藩pdf-CSDN博客

【软件工程】软件工程期末试卷习题课讲解!!_哔哩哔哩_bilibili

【拯救者】软件工程速成(期末+考研复试+软考)均适用. 支持4K_哔哩哔哩_bilibili

软件工程导论-张海藩(第六版)期末+考研复习_哔哩哔哩_bilibili


总体框架

考试要求

考试:无期中考试,只有一次期末考试,形式为书面的闭卷考试。内容以课堂所讲作业要求为准。注意:期末考试一定会考要求写程序代码的题目!!! 


 第一章 软件工程简介

1.1 软件工程概述

1.1.1软件定义

软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。

1.1.2软件危机

软件危机(Software Crisis):指由于落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。

  • 始于1960年代
  • 计算机应用逐渐普及,软件的数量急剧膨胀,软件的复杂度急剧上升,软件的成本急剧增加
  • 同时软件开发的效率低下,软件的质量难以保证,软件的开发周期长且难以控制,软件难以维护

1968年,NATO(北约)的一些科学家提出了“软件工程”的概念,即“为了经济的获得可靠的能在世纪机器上运行的软件,而建立和使用完善的工程原理”,企图借助于将工程原理用于软件开发,以缓解软件危机。

软件工程:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,经济的开发出高质量的软件并维护它

1.1.3传统软件的生命周期

软件计划 需求分析 软件设计(包括总体设计和详细设计) 编码 测试 运行维护

1.2软件开发过程模型

瀑布模型

  •  Dr. Win Royce于70年代提出
  • 广为流传和使用 (传说中的)
  • 优点:1.开发进度易于掌握    2.过去开发中每个步骤的经验有助于对新的软件项目中类似步骤做出估计     3.每个阶段产生文档,有助于复用
  • 最初的瀑布模型(被广为流传的)不允许迭代 (不灵活,不能处理需求的变化,难以维护)

快速模型

  • 采用原型来帮助确定需求规范 一旦需求确定,就采用瀑布模型(或其他模型)
  • 设计一旦开始,原型就不再需要:1.原型不可以作为实现的基础,因为原型工具产生的代码质量     2.用户必须被告知原型和最终产品的不同,原型并非80-90%的产品(也许不到10%) 

渐增式模型

 螺旋式模型

基于组件的开发模型

  • 寻找Find 选择Select 调整Adapt 创建Create 组装Compose 替换Replace

考试习题可参考

(软件工程复习核心重点)第一章软件工程概论习题-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1279764.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

树基本概念+前中后序遍历二叉树

🌈一、树的基本概念 ☀️1.树的定义:树是一种非线性结构,看起来像一棵倒挂的树,根朝上,而叶朝下。 ☀️2.相关术语 1.根节点:图中的A,无前驱结点 2.叶节点(终端节点)&a…

场效应管mosfet和IGBT晶体管的区别

一、概念 在结构上,MOSFET和IGBT看起来非常相似,实则不同。IGBT由发射极、集电极和栅极端子组成,而MOSFET由源极、漏极和栅极端子组成。IGBT的结构中有PN结,MOSFET没有任何PN结。 在应用中,IGBT和MOSFET都可以用作静…

Zookeeper 安装与部署

Zookeeper官网 目录 1 配置文件参数解读2 Zookeeper 单点安装3 Zookeeper 分布式安装 1 配置文件参数解读 Zookeeper 中的配置文件 zoo.cfg 中参数含义解读如下: (1)tickTime 2000:通信心跳数,Zookeeper 服务器与客户…

【bat】批处理脚本大全

目录 1.概述 2.变量 3.运算符 3.2.重定向运算符 3.3.多命名运算符 3.4.管道运算符 4.命令 4.1.基本命令 4.2.参数传递 4.3.查看脚本内容 4.4.注释 4.5.日期和时间 4.6.启动脚本 4.7.调用其他bat 4.8.任务管理 4.8.1.任务列表查看 4.8.2.任务终止 4.9.文件夹 …

V8引擎类型转换(VIP课程)

这一章是源于一道面试题 完成以下条件并且输出console if(a 1 && a 2 && a 3) {console.log(true) }好家伙 乍一看一个变量怎么可能等于三个值?带着疑问我们去深入了解 类型系统 在JavaScript中类型系统不同于别的语言,例如JavaSc…

API无代码开发让尘锋SCRM与营销系统集成,提高电商平台客服效率

API无代码开发的力量 随着电商平台业务的日益增长,客服系统的效率和响应速度成为了企业关注的焦点。API无代码开发的出现,为企业提供了一个高效的解决方案。API(Application Programming Interface,应用编程接口)允许不同的软件系统之间进行有…

Hdoop学习笔记(HDP)-Part.02 核心组件原理

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

c语言-联合体和枚举

文章目录 一、联合体1. 联合体类型的声明和创建2. 联合体的特点3. 联合体大小的计算4.总结 二、枚举1. 枚举类型的声明2. 枚举类型的优点3. 枚举类型的使用 一、联合体 (1) 像结构体⼀样,联合体也是由一个或者多个成员构成,这些成…

深入理解Zookeeper系列-3.Zookeeper实现原理及Leader选举源码分析

👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码、Kafka原理、分布式技术原理🔥如果感觉博主的文章还不错的话&#xff…

微服务的流量管理-服务网格

对于单体应用来说,一般只有流入和流出两种流量。而微服务架构引入了跨进程的网络通信,流量发生在服务之间。由许多服务组成了复杂的网络拓扑结构,每次请求都会产生流量。 这些流量如果没有妥善的管理,整个应用的行为和状态将会不…

SmartSoftHelp8,IIS Nginx,windows linux 高并发服务器优化配置工具

Windows IIS 性能优化配置 Windows Nginx 性能优化配置模板 Linux Nginx 性能优化配置模板 Nginx 常用命令 webconfig 优化配置详细说明 下载地址: https://pan.baidu.com/s/1zBgeYsqWnSlNgiKPR2lUYg?pwd8888

鼠标点击效果.html(网上收集6)

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>鼠标点击</title> </head><body> <script>(function () {var a_idx 0;window.onclick function (event) {var a new Array(…

DS二分查找_搜索二维矩阵

Description 使用二分查找法来判断m*n矩阵matrix中是否存在目标值target。 该矩阵有以下特性&#xff1a; 1. 每行中的整数从左到右升序排列&#xff1b; 2. 每行的第一个整数大于前一行的最后一个整数。 Input 第一行输入m和n&#xff0c;分别表示矩阵的行数和列数&#…

msyql迁移到mongodb

关系型数据库迁移到mongodb的理由 高并发需求&#xff0c;关系型数据库不容易扩展 快速迭代 灵活的json模式 大数据量需求 应用迁移难度&#xff1a; 关系型到关系 oracle-》mysql oracle -》 postgresql 关系到文档- oracle -》 mongodb 需要考虑&#xff1a; 总体架构&#…

非功能关键知识总结(一)

文章目录 一、稳定性(一)、服务级别协议1、SLA2、OLA3、UC (二)、可用性指标(三)、突发事件等级 三、质量(一)、千行代码缺陷数量(二)、软件质量模型的发展(三)、产品质量模型 四、安全(一)、网络安全 五、灾备(一)、灾备指标(二)、灾难恢复等级(三)、容灾技术分类 一、稳定性 …

JDK中lock锁的机制,其底层是一种无锁的架构实现的,公平锁和非公平锁

简述JDK中lock锁的机制&#xff0c;其底层是一种无锁的架构实现的&#xff0c;是否知道其是如何实现的 synchronized与lock lock是一个接口&#xff0c;而synchronized是在JVM层面实现的。synchronized释放锁有两种方式&#xff1a; 获取锁的线程执行完同步代码&#xff0c;…

安装selenium+chrome详解

1、创建yaml文件 创建yaml文件,命名为:docker-compose-chrome.yaml,具体内容如下: version: "3.9" services:spiderdriver:image: selenium/standalone-chrome:114.0restart: alwayshostname: spiderdrivercontainer_name: spiderdriverdeploy:resources:limit…

【STM32F103】GPIO通用输入输出口

GPIO 简介 GPIO&#xff08;General Purpose Input Output&#xff09;通用输入输出口是微控制器&#xff08;MCU&#xff09;必备的片上外设&#xff0c;可以实现微控制器与外部设备的数字交换。 STM32F103系列的芯片最多可以提供112个多功能双向IO引脚&#xff0c;但是显然…

8 9 固件库

文章目录 8.1 什么是固件库8.2 什么时候使用8.3 封装注意点8.3.1 fsl 8.4 GPIO库函数定义8.4.1 初始化结构体 gpio_pin_config_t8.4.2 定义引脚模式的枚举类型8.4.3 初始化结构体8.4.4 定义中断配置函数8.4.5 定义GPIO初始化函数8.4.6 使用函数控制GPIO8.4.7 定义 IOMUXC 外设控…

开源软件license介绍与检测

开源License介绍 通俗来讲&#xff0c;开源许可证就是一种允许软件使用者在一定条件内按照需要自由使用和修改软件及其源代码的的法律条款。借此条款&#xff0c;软件作者可以将这些权利许可给使用者&#xff0c;并告知使用限制。这些许可条款可以由个人、商业公司或非赢利组织…