软件生命周期(二)

1. 软件生命周期定义

软件生命周期(SDLC)是软件开始研制最终废弃不用所经历的各个阶段 – 软件开发模型

2. 瀑布型生命周期模型

瀑布模型规定自上而下,相互衔接的固定次序,如同瀑布流水,逐级下落,具有顺序性和依赖性

在这里插入图片描述

3. V模型

RAD(快速应用开发)模型,也称之为V模型,通过开发和测试同时进行的方式来缩短开发周期,提高开发效率

在这里插入图片描述

4. 阶段讲解

在这里插入图片描述

4.1 问题的定义及规划 – 收集用户需求+初步需求文档+确定可行性(产品 市场 客户)

主要确定软件的开发目的及其可行性。指定项目的总体开发计划。 – 初步需求文档

4.2 需求分析和评审

在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细设计,明确客户的需求(需求评审–产品,开发,测试),输出需求规格说明书终版

4.3 设计开发

把需求分析得到的结果转换为软件结构和数据结构,形成系统架构

概要设计:主要是架构的实现,指搭建架构,表述各模块功能,模块接口连接和数据传递的实现等项事务

详细设计:对概要设计中的表述的各模块进行深入分析等,其中包含数据库设计说明,接口文档,数据库字典

4.4 编码 – 写代码 开发

按详细设计好的模块功能表,编写程序

4.4 编码 --写代码开发

4.5 软件测试

软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正

测试的方法主要有白盒测试和黑盒测试(灰盒测试)两种。建立详细的测试计划并严格按照计划进行

  • 单元测试(Unit test):主要测试程序代码,为的是确保各单元模块被正确的编译,具体到模块,具体到类,函数,方法的测试等 – 开发自测,白盒测试
  • 集成测试:单元测试后,将各单元组合成完整的体系,测试软件单位之间的接口是否正确,数据能否正常传递 – 接口测试,灰盒测试
  • 系统测试:把软件系统搭建起来,按照软件规格说明书中所要求,测试软件其功能,界面,兼容,易用,性能, 安全等是否和用户需求相符合,在系统中运行是否存在漏洞等
  • 验收测试:主要就是用户在拿到软件的时候,在使用现场,会根据前边所提到的需求,以及规格说明书来做相应测试,以确定软件达到符合效果

5. 运行维护 – 软件生命周期里时间最长

软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的需求。要延续软件的使用寿命,就必须对软件进行维护。软件的维护主要包括纠错型维护和改进性维护两个方面

在这里插入图片描述

6. 敏捷开发模型 – 市场主流

一种以用户需求为核心,且分多个子项目-快速迭代,收集用户需求的开发方法。

强调以人为本,专注于交付对客户有价值的软件。

是一个用于开发和维持复杂产品的框架。就是把一个大项目分为多个项目联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态

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

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

相关文章

sqli-labs(超详解)——Lass32~Lass38

Lass32(宽字节注入) 源码 function check_addslashes($string) {$string preg_replace(/. preg_quote(\\) ./, "\\\\\\", $string); //escape any backslash$string preg_replace(/\/i, \\\, $string); …

double类型 精度丢失的问题

前言 精度丢失的问题是在其他计算机语言中也都会出现,float和double类型的数据在执行二进制浮点运算的时候,并没有提供完全精确的结果。产生误差不在于数的大小,而是因为数的精度。 一、double进行运算时,经常出现精度丢失 0.10.2使用计算…

记录一次网关无响应的排查

1. 使用jstack pid > thread.txt 打印进 thread.txt 文件里 去观察线程的状态。 我发现,一个线程在经过 rateliter的prefilter后, 先是调用 consume方法,获取到锁。 接着在执行 jedis的 evalsha命令时 一直卡在socket.read()的状态。 发现jedis官…

软件测试必备技能

在软件测试领域,以下是一些必备的技能和能力,可以帮助你成为一名优秀的软件测试工程师: 1. 测试基础知识: 熟悉软件测试的基本概念、原则和流程,包括不同类型的测试(如单元测试、集成测试、系统测试&#…

这几个高级爬虫软件和插件真的强!

亮数据(Bright Data) 亮数据是一款强大的数据采集工具,以其全球代理IP网络和强大数据采集技术而闻名。它能够轻松采集各种网页数据,包括产品信息、价格、评论和社交媒体数据等。 网站:https://get.brightdata.com/we…

LLM(大语言模型)「Agent」开发教程-LangChain(三)

v1.0官方文档|最新文档 一、LangChain入门开发教程:Model I/O 二、基于LangChain的RAG开发教程 LangChain是一个能够利用大语言模型(LLM,Large Language Model)能力进行快速应用开发的框架: 高度抽象的组件…

智能仪表板DevExpress Dashboard v24.1 - 新增级联参数过滤

使用DevExpress Analytics Dashboard,再选择合适的UI元素(图表、数据透视表、数据卡、计量器、地图和网格),删除相应参数、值和序列的数据字段,就可以轻松地为执行主管和商业用户创建有洞察力、信息丰富的、跨平台和设…

揭秘LoRA:利用深度学习原理在Stable Diffusion中打造完美图像生成的秘密武器

文章目录 引言LoRA的原理LoRA在角色生成中的应用LoRA在风格生成中的应用LoRA在概念生成中的应用LoRA在服装生成中的应用LoRA在物体生成中的应用结论 引言 在生成式人工智能领域,图像生成模型如Stable Diffusion凭借其出色的生成效果和广泛的应用场景,逐…

NVIDIA Triton系列03-开发资源说明

NVIDIA Triton系列03-开发资源说明 大部分要学习 Triton 推理服务器的入门者,都会被搜索引擎或网上文章引导至官方的 https://developer.nvidia.com/nvidia-triton-inference-server 处(如下截图),然后从 “Get Started” 直接安…

Google四年推迟两次,Cookie不弃了,但也不藏了

四年两次推迟,这段改变了数字广告生态系统发展的代码,还是被Google保留了下来。2020年,Google第一次提出,将在2022年初结束Cookie的使用,同步推出隐私沙盒计划;2021年6月,Google第一次进行了延迟…

人脸识别Arcface的Tensorrt C++

代码已经上传至github,欢迎使用,不是为了研究人脸识别,而是为了实现Tensorrt部署Arcface模型,推理耗时33ms左右~ GitHub - Broad-sky/face-recognition-arcface-tensort: This project mainly implements the transplantation of…

50etf期权行权采用什么交割方式 ?

50ETF期权是欧式期,要到期日当天才能行权交制,其交割方式是实物交割买卖双方在到期行权日时需要准备一手交钱,一手收货或是一手交,一手收钱,如果持有期权到达到期日之前,投资者认为行权并不划算&#xff0c…

Linux 照片图像编辑器

前言 照片图像编辑器是一种软件程序,它允许用户对数字照片或图像进行各种编辑和修改。以下是一些常见的功能及其解释: 裁剪与旋转 : 裁剪:移除图像的某些部分,以改善构图或符合特定尺寸要求。旋转:改变图像的方向,可以校正歪斜的照片或者为了艺术效果而旋转。调整亮度…

【画流程图工具】

画流程图工具 draw.io draw.io(现称为 diagrams.net)是一款在线图表绘制工具,可以用于创建各种类型的图表,如流程图、网络图、组织结构图、UML图、思维导图等。以下是关于它的一些优点、应用场景及使用方法: 优点&a…

密码学基础-身份认证

密码学基础-身份认证 概述 书信的亲笔签名;公文、证书的印章起到了核准、认证的功能。 如前文密码学基础-数据加密所述,信息安全少不了身份认证的话题。只有认证了信息的来源,我们才能知道这条信息是否是正确的,合法的&#xff…

如何在linux系统上安装tomcat应用程序?

1)首先查看安装包信息 yum info tomcat yum info tomcat 2)安装 yum -y install tomcat yum -y install tomcat 3)查看安装是否成功 rpm -q tomcat rpm -q tomcat 4)如果输出一下内容则代表安装成功 tomcat-7.0.76-16.el7_9.n…

力扣高频SQL 50题(基础版)第三十八题

文章目录 力扣高频SQL 50题(基础版)第三十八题1484.按日期分组销售产品题目说明实现过程准备数据实现方式结果截图总结 力扣高频SQL 50题(基础版)第三十八题 1484.按日期分组销售产品 题目说明 表 Activities: ---…

Python的100道经典练习题,每日一练,必成大神!!!

Python的100道经典练习题是一个广泛而深入的学习资源,可以帮助Python初学者和进阶者巩固和提升编程技能 完整的100多道练习题可在下面图片免沸获取哦~ 整理了100道Python的题目,如果你是一位初学者,这一百多道题可以 帮助你轻松的使用Python…

新书《计算机视觉从入门到进阶实战:基于Pytorch》

本书基于PyTorch深度学习框架,结合计算机视觉中的主流任务,介绍了深度学习相关算法的计算机视觉上的应用。 本书主要内容分为两部分。 第一部分为PyTorch框架使用的相关知识,以及计算机视觉和深度学习的入门知识。第二部分重点介绍深度学习在…

C++——多态经典案例(三)计算器

案例:使用多态实现一个简单的计算器,计算两个数的加减乘除结果 分析:定义一个抽象类AbstractCalc ,其内部定义一个纯虚函数getResult,用于得到计算结果 定义加减乘除四个类,分别继承这个抽象类AbstractCal…