《软件工程原理与实践》复习总结与习题——软件工程

软件生命周期

软件生命周期分为三个时期、八个阶段

软件定义时期: 

1)问题定义阶段:要解决什么问题

2)可行性研究阶段:确定软件开发可行

3)需求分析阶段:系统做什么

软件开发时期:

1)概要设计阶段:如何实现系统

2)详细设计阶段:如何具体实现系统

3)编程阶段:编写程序源代码

4)软件测试阶段:黑盒白盒测试

 软件维护时期:

软件维护阶段:漫长的运行和维护期

软件过程模型

瀑布模型

优点:有利于用大型软件开发中人员的组织和管理,提高了大型软件开发的效率和质量

缺点:强调活动顺序化、文档化、过于理想化。且不可逆。

快速原型模型

优点:需求分析优于瀑布模型,更为准确,减少后期返工,用户参与性强,适合需求模糊或者随时间变化的系统

缺点:不考虑软件的整体质量和长期的可维护性,可能会选择不合适的操作系统和算法,达不到质量可能被抛弃 

增量开发模型

瀑布模型的改进模型。

改进了什么?一次性全部功能按阶段推进比较困难,将需求分解成一系列增量产品,一次完成一个增量

优点:1)人员分配灵活,开发初期不需要大量人力

            2)核心产品受欢迎可以增加人力实现下一构件

            3)可以先发布功能给客户

缺点:可能出现不能集成的风险,必须要有开放式体系结构

螺旋模型

可以将螺旋模型理解为是在每个阶段前都增加了风险分析的快速原型模型,融合了三种模型

优点:灵活设计,可以在项目各阶段变更

            以小分段构建大型系统,使得成本计算简单容易

缺点:过多的迭代次数会增加开发成本,延迟提交时间

喷泉模型

优点:用户需求驱动模型,开发人员可在各阶段同步进行节省时间,支持迭代式开发

缺点:各个阶段重叠导致需要大量人力 

统一过程模型(RUP)

初始:类似问题定义

细化:类似需求设计

构建:类似编码运行

移交:类似维护

敏捷过程模型

特点:各阶段都有具体测试 


习题

对比瀑布模型、快速原型模型、增量模型、螺旋模型

瀑布模型:过于理想化;

快速原型模型:比瀑布模型更好需求分析;

增量模型:解决了一次性全部功能按阶段推进比较困难;

螺旋模型:融合了上述三种模型,但是对开发人员要求高

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

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

相关文章

单片机霍尔测速系统设计+源程序

一、系统方案 1、本设计采用52单片机作为主控器。 2、霍尔测速送到液晶1602。 3、蜂鸣器报警。 二、硬件设计 原理图如下: 三、单片机软件设计 1、首先是系统初始化 void lcd_init()//液晶初始化函数* { write_1602com(0x38);//设置液晶工作模式,意思…

嵌入式八股 | 校招秋招 | 笔试面试 | 精选题目

欢迎关注微信公众号【赛博二哈】获取八股PDF 并加入嵌入式求职交流群。提供简历模板、学习路线、岗位整理等 欢迎加入知识星球【嵌入式求职星球】获取完整嵌入式八股。 提供简历修改、项目推荐、求职规划答疑。另有各城市、公司岗位、笔面难题、offer选择、薪资爆料等 嵌入式…

CSS预处理器(如Sass或Less):变量、嵌套规则和混合器等高级功能

在Vue项目中,可以使用CSS预处理器(如Sass或Less)来编写样式。 这些预处理器提供了一些高级功能,如变量、嵌套规则和混合器等。 1. 变量 在Sass中,我们可以使用$符号定义变量。这些变量方便我们在多个地方重复使用&a…

算法基础之模拟散列表

模拟散列表 核心思想&#xff1a;数组模拟冲突处理 拉链法 #include<iostream>#include <cstring>using namespace std;//找到的大于范围的最小质数const int N100003;//h[x]表示哈希后的数组 e,ne表示处理冲突的链表int h[N],e[N],ne[N],idx;void insert(int x)…

利用数据库的表,生成word文档的表结构注释说明

文章目录 1.场景说明2.解决办法3.生成文档3.1.实现思路3.2.引入Apache POI依赖3.3.获取表及表字段说明Mapper3.4.POI创建文档表格&#xff0c;并填充数据3.5.完整的接口下载代码3.6.效果展示 1.场景说明 在项目中表已经建立好了&#xff0c;但是现在想对外提供一个表的字段的描…

物联网开发(一)新版Onenet 基础配置

onenet新创建的账号&#xff0c;没有了多协议接入&#xff0c;只有新的物联网开放平台 第一讲&#xff0c;先给大家讲一下&#xff1a;新版Onenet 基础配置 创建产品 产品开发-->创建产品 产品的品类选择个&#xff1a;大致符合你项目的即可&#xff0c;没有影响 选择智…

watch函数与watchEffect函数

watach函数&#xff1a; 与vue2.x的配置功能一致 监视指定的一个或多个响应式数据, 一旦数据变化, 就自动执行监视回调 默认初始时不执行回调, 但可以通过配置immediate为true, 来指定初始时立即执行第一次 通过配置deep为true, 来指定深度监视 watchEffect函数&#xff1a;…

企业人力资源公司抖音直播招聘断播怎么处理?

企业人力资源公司抖音直播招聘断播怎么处理&#xff1f; 最直接的处理方式就是进行抖音直播招聘报白&#xff0c;报白后在直播和视频中发布招聘和企业信息&#xff0c;不用担心被封禁和限制流量。 可以通过抖音直播进行招聘&#xff0c;也可以在视频中添加小程序&#xff0c;…

【送书活动二期】Java和MySQL数据库中关于小数的保存问题

之前总结过一篇文章mysql数据库&#xff1a;decimal类型与decimal长度用法详解&#xff0c;主要是个人学习期间遇到的mysql中关于decimal字段的详解&#xff0c;最近在群里遇到一个小伙伴提出的问题&#xff0c;也有部分涉及&#xff0c;今天就再大致总结一下Java和MySQL数据库…

ChatGPT成了背锅侠:利用AI做蹭热点视频

我是卢松松&#xff0c;点点上面的头像&#xff0c;欢迎关注我哦&#xff01; 在抖音\视频号上已经有很多人利用ChatGPT做热点视频的案例了&#xff0c;视频都是点赞大几千、几万。看完本文&#xff0c;你会略知一二&#xff0c;如下图所示&#xff1a; 这个视频&#xff0c…

Windows安装Docker、自定义安装目录

目录 前言一、Docker安装包下载二、自定义Docker安装路径、设置到其他盘三、安装Docker四、安装后配置1.修改镜像保存路径2.自定义镜像源&#xff08;可选&#xff09; 五、Docker运行验证1.docker/welcome-to-docker2.MySQL服务 总结 前言 Docker是一种开源的容器化平台&…

预付费远传水表好用还是后付费远传水表好用?

在远传水表市场中&#xff0c;预付费远传水表和后付费远传水表各自具有一定的优势和劣势。接下来&#xff0c;小编就来为大家讲下两者的优劣势&#xff0c;以此来判断到底是预付费远传水表好用还是后付费远传水表好用。 一、预付费远传水表 1.优点 (1)先付费后用水&#xff1a;…

Proteus的网络标号与总线

Proteus为了减少过多、复杂的连线&#xff0c;可以使用网络标号与总线配合使用。 Proteus的导线上添加了网络标号&#xff0c;意味着在Proteus上相同的网络标号是连在一起的&#xff0c;所说在图纸上看不出来。 如下图是比较好的Proteus中使用总线的绘制的图纸。可以效仿着画…

Echarts的引入使用

ECharts文档 1.下载并引入Echarts 2.准备一个具备大小的DOM容器 3.初始化echarts实例对象 4.指定配置项和数据(option) 5.将配置项设置给echarts实例对象 最后是一个js文件 echarts的引入 1.引入echarts - js 文件 <script src"js/echarts.min.js"></scri…

17 动态规划解礼物的最大价值

问题描述&#xff1a;在一个m*n的棋盘上每一格都放有一个礼物&#xff0c;每个礼物都有一定的价值(价值大于0)&#xff0c;你可以从棋盘的左上角开始拿格子里的礼物&#xff0c;并每次向右或向下移动一格&#xff0c;直到到达期盼的右下角&#xff0c;给定一个棋盘极其上面的礼…

Git和Git小乌龟安装

目录 Git简介 Git安装 Git小乌龟简介 Git小乌龟安装 Git简介 Git是一个开源的分布式版本控制系统&#xff0c;可以有效、高速地进行从很小到非常大的项目的版本管理。它最初是由Linux Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。Git具有速度、…

笙默考试管理系统-MyExamTest----codemirror(42)

笙默考试管理系统-MyExamTest----codemirror&#xff08;42&#xff09; 目录 一、 笙默考试管理系统-MyExamTest----codemirror 二、 笙默考试管理系统-MyExamTest----codemirror 三、 笙默考试管理系统-MyExamTest----codemirror 四、 笙默考试管理系统-MyExamTest---…

国密加密工业路由器 数据安全升级

国密加密工业路由器&#xff0c;简称国密加密路由器&#xff0c;是指遵循“商用密码管理规范”中规定的国家商用密码算法&#xff0c;采用国密加密芯片和密码算法的专业路由器。相比-般路由器&#xff0c;国密加密路由器具有更高级别的加密保护&#xff0c;可以有效提高数据传输…

QML TextField Button 属性 pyside6

在 QML 中&#xff0c;TextField 和 Button 是两个常用的用户界面元素&#xff0c;它们拥有多种属性来自定义外观和行为。以下是这两个组件的主要属性列表&#xff1a; TextField 属性 text: 文本字段中的文本。placeholderText: 当 TextField 为空时显示的占位符文本。color…

Python---练习:求某同学成绩的总分及平均分

需求&#xff1a; 已知某同学的语文(70)、数学(90) 、英语(80)、历史(75)、地理(85)五门课的成绩,编程求该同学的总分以及平均分。 思考&#xff1a; 要求是算总分和平均分&#xff0c;先看总分&#xff0c;已经知道了各科成绩&#xff0c;那么可以用把成绩赋值给每个学科的…