2.软件生命周期及流程(包含笔试/面试题)

news2024/9/20 18:27:45

一、软件生命周期

1.什么是软件的生命周期?
软件生命周期就是软件从开始研发到最终被废弃不用的一整个过程。

二、软件生命周期模型

1.瀑布型生命周期模型(基本不用这个模型)

最早期的模型,流程是从上而下的,如同瀑布流水,有顺序性的。

缺点:

测试介入比较晚(有问题的话回溯成本比较高)

测试周期比较长


2.V模型

开发和测试同时进行的方式,缩短开发周期,提高开发效率

软件生命周期的各阶段:(重点)
1.问题的定义和规划
        主要确定软件的开发目的及其可行性,制定项目总体开发计划

2.需求分析
        在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析,明确客户的需求,输出需求规格说明书(原型图)提交评审。

3.设计
        把需求分析得到的结果转换为软件结构和数据结构,形成系统架构
        概要设计:主要是架构的实现,指搭建架构,表述各模块功能,模块结构链接和数据传递的实现等项事务。
        详细设计:对概要设计中表述的各模块进行深入分析,包括数据库设计说明。

4.编码

        按照详细设计好的模块功能表,编程人员编写出计算机可运行的程序代码。

5.软件测试

        先单元测试,再集成测试,系统测试,最后进行验收测试。

6.运行维护

        要延续软件的使用寿命

3.敏捷开发模型
以人为核心,迭代,循序渐进的开发方法,就是把一个大项目分为多个相互联系,但也可单独运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。


例如:
XM系统:

功能:文字聊天,语音聊天,视频聊天,朋友圈,支付,小程序

时间:一年完成

第一版本:实现功能文字聊天,语音聊天 (两个月)
迭代第二版本:实现功能视频聊天,朋友圈 (三个月)

迭代第三版本:实现支付,小程序 (三个月)

特点:完成快,结合用户的需求,不断维护更新,弱化文档,通过人与人之间的沟通实现需求分析。

三、软件测试流程

1.步骤解析

1)测试需求分析阶段:参与需求评审会议,分析需求点

2)测试计划阶段:编写测试计划书,测试工作统筹安排(测试内容,测试人员,任务分配,测试环境,工具,时间安排)--- 测试负责人/主管/组长
2)测试设计阶段:编写测试用例,参考需求文档,用例编写完成后回进行评审
3)测试执行阶段:搭建环境,执行冒烟测试,没问题后正式进入系统测试,遇到问题就提交bug到缺陷管理平台,并对bug进行跟踪,知道软件在符合条件可以发布(剩余bug数量很少+用例执行覆盖率),没有重大bug,测试结束。(完善测试用例)
4)测试评估阶段:出测试报告,对整个测试的过程和版本质量做一个详细的评估,确认是否可以上线。 

2.环境分类:
1)开发环境:开发人员写代码的环境

2)测试环境:测试人员进行测试的环境(1个或者一个以上)

3)预发布环境(UAT环境):验收测试(UAT测试)进行的环境

4)生产环境:真实的用户使用环境
 

四、常见笔试面试题

笔试题:

1.软件生命周期模型包含哪些阶段?你们开发的模型是什么?

        软件生命周期模型包含项目规划,需求分析,设计,编码,测试,维护

        我们开发的模型是敏捷开发模型

2.测试流程包含哪些阶段?

        需求分析,需求评审,编写测试计划,设计测试用例,评审测试用例,冒烟测试,执行测试用例,缺陷管理,输出测试报告,确定是否可以上线。

面试题:
1.你们公司的开发流程是怎样的?

        立项,需求分析,需求评审,编写开发计划,开发人员进行概要设计(设计项目整理的规划和功能模块之间的关系)和详细设计(设计具体的编码实现功能),编码,开发人员自测,提交测试。


2.你们公司的测试流程是怎样的?各个阶段的输出是什么?

        测试流程是:需求分析,需求评审,制定测试计划,编写测试用例,评审测试用例,冒烟测试,执行测试用例,缺陷管理,输出测试报告。

        各阶段的输出:
                需求分析阶段 - 根据需求规格说明书输出项目测试点列表

                制定测试计划 - 输出测试计划文档

                用例设计 - 输出用例文档

                执行测试 - 输出bug,缺陷管理

                评估测试 - 输出测试报告

3.开发环境,测试环境,生产环境是什么?你在测试环境后台添加的数据和信息,能够在生产环境看到吗?

        开发环境:开发人员编写程序的环境

        测试环境:测试人员测试时的环境

        生产环境:真是用户使用的环境

        测试后台添加的数据,生产环境看不到。

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

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

相关文章

【机器人工具箱Robotics Toolbox开发笔记(二)】Matlab中机器人工具箱的下载与安装

Matlab机器人工具箱(Robotics Toolbox)可从Peter Corke教授提供的网站上免费下载。网址为:http://www.petercorke.com/Robotics_Toolbox.html。 图1 网站所提供的机器人工具箱版本 在Downloading the Toolbox栏目中单击here按钮进入下载页面,然后在该页面中填写国家、组织…

基于Python爬虫的淘宝服装数据分析项目

文章目录 一.项目介绍二.爬虫代码代码分析 三. 数据处理四. 数据可视化 一.项目介绍 该项目是基于Python爬虫的淘宝服装数据分析项目,以致于帮助商家了解当前服装市场的需求,制定更加精确的营销策略。首先,需要爬取淘宝中关于服装的大量数据…

JS_函数声明

JS中的方法,多称为函数,函数的声明语法和JAVA中有较大区别 函数说明 函数没有权限控制符不用声明函数的返回值类型,需要返回在函数体中直接return即可,也无需void关键字参数列表中,无需数据类型调用函数时,实参和形参的个数可以不一致声明函数时需要用function关键字函数没有…

STM32F407VET6开发板RT-Thread MSH 串口的适配

相关文章 STM32F407VET6开发板RT-Thread的移植适配 环境 STM32F407VET6 开发板(魔女),http://www.stm32er.com/ Keil MDK5,版本 5.36 串口驱动 RT-Thread 通过适配 串口驱动,可以使用 MSH shell 当前手动搭建的 …

c++基础版

c基础版 Windows环境搭建第一个C程序c程序运行原理注释常亮字面常亮符号常亮 变量数据类型整型实型常量类型确定char类型字符串布尔类型 控制台输入随机数产生枚举定义数组数组便利 指针基础野指针空指针指针运算动态内存分配 结构体结构体默认值结构体数组结构体指针结构体指针…

JavaWeb笔记整理13——Mybatis

目录 Mybatis介绍 删除 预编译SQL SQL注入 新增 更新 查询 数据封装 条件查询 XML映射文件 动态SQL 更新案例 foreach Mybatis介绍 删除 预编译SQL SQL注入 新增 更新 查询 数据封装 条件查询 XML映射文件 动态SQL <if> 更新案例<set> foreach &l…

消息中间件 --Kafka

一、 Kafka 1.kafka介绍 Kafka 是一个分布式流媒体平台,类似于消息队列或企业消息传递系统。 生产者发送消息&#xff0c;多个消费者只能有一个消费者接收到消息 生产者发送消息&#xff0c;多个消费者都可以接收到消息 producer&#xff1a;发布消息的对象称之为主题生产者…

人工智能,语音识别也算一种人工智能。

现在挺晚了&#xff0c;还是没有去睡觉&#xff0c;自己在想什么呢&#xff0c;也不确定。 这是一篇用语音写的文章&#xff0c;先按自己的想法说出来&#xff0c;然后再适当修改&#xff0c;也许就是一个不错的文章。 看来以后就不需要打字了&#xff0c;语音识别度很高&#…

两数之和--力扣1

两数之和 题目思路C代码 题目 思路 根据题目要求&#xff0c;元素不能重复且不需要排序&#xff0c;我们这里使用哈希表unordered_map。注意题目说了只对应一种答案。 所以我们在循环中&#xff0c;使用目标值减去当前循环的nums[i]&#xff0c;得到差值&#xff0c;如果我们…

ICM20948 DMP代码详解(8)

接前一篇文章&#xff1a;ICM20948 DMP代码详解&#xff08;7&#xff09; 上一回讲解了EMP-App中的入口函数main()中重点关注的第2段代码的后一个函数inv_icm20948_register_aux_compass&#xff0c;讲解了其各个参数&#xff0c;本回对于函数代码进行解析。为了便于理解和回顾…

市场独宠大尺寸超微小间距LED显示屏COB智能会议一体机

在当今这个信息化高速发展的时代&#xff0c;大屏幕显示设备已成为企业会议、教育培训、展览展示、商业广告等多个领域不可或缺的重要工具。随着技术的不断进步&#xff0c;市场上涌现出了投影机、液晶一体机、DLP背投、小间距LED、LED会议一体机以及新兴的COB智能会议一体机等…

vulhub Thinkphp5 2-rce远程代码执行漏洞

步骤一&#xff1a; 执行以下命令启动靶场环境并在浏览器访问 cd /vulhub/thinkphp/2-rce #进入漏洞环境所在目录docker-compose up -d #启动靶场docker ps #查看容器信息 步骤二&#xff1a;访问网页 步骤三&#xff1a;?s/Index/index/L/${phpinfo()} 步骤四&#xff1a;?…

828华为云征文 | 搭建云服务器Flexus X实例,开启简单上云第一步

828华为云征文 | 搭建云服务器Flexus X实例&#xff0c;开启简单上云第一步 Flexus云服务器X实例是一个高度可扩展的云平台&#xff0c;提供了一系列的服务&#xff0c;包括数据处理、应用开发、服务器托管等&#xff1b;对于开发者来说&#xff0c;Flexus云服务器X实例提供了一…

Percona 开源监控方案 PMM 详解

文章目录 前言1. 安装部署1.1 Server 安装1.2 Client 安装 2. 监控数据库2.1 MySQL2.2 PostgreSQL 3. Dashboard 介绍总结 前言 Percona Monitoring and Management (PMM) 是 Percona 公司基于业界流行的组件 Prometheus 和 Grafana 设计开发的一体化数据库监控解决方案。本篇…

vulhub ThinPHP5 2-rce远程代码执行漏洞

1.打开环境 进入环境所在的文件 docker-compose up -d 一键启动 2.浏览器访问环境 3.构造payload ?s/index/index/L/${phpinfo()} 4.写入一句话木马 ?s/Index/index/name/${print(eval($_POST[cmd]))} 5.使用蚁剑连接 http://192.168.10.233:8080/?s/Index/index/name…

SpringMVC基于注解使用:国际化

01-国际化介绍 首先在bootstrap下载个页面 下载后把登录页面的代码粘上去 然后再登录页面代码上有些超链接需要再spring-mvc.xml里面配置下&#xff0c;登录页面才能正常显示 配置静态资源 国际化-根据浏览器语言国际化 现在是中文的情况&#xff0c;要改为英文 1.配置下属…

秒懂:进程优先级

1.概念 简单来说&#xff0c;进程优先级是对于资源访问顺序来说的&#xff0c;谁先访问资源&#xff0c;谁的优先级就高。 注意&#xff1a;这和权限概念不一样&#xff0c;权限是能不能访问。 2.情景引入 进程的运行&#xff0c;是在CPU上执行&#xff0c;每次执行只能执行CP…

JavaWeb【day09】--(Mybatis)

1. Mybatis基础操作 学习完mybatis入门后&#xff0c;我们继续学习mybatis基础操作。 1.1 需求 需求说明&#xff1a; 根据资料中提供的《tlias智能学习辅助系统》页面原型及需求&#xff0c;完成员工管理的需求开发。 通过分析以上的页面原型和需求&#xff0c;我们确定了…

寒冬下,你不知道的赛道!

见字如面&#xff0c;技术人雄起&#xff01; 现在的环境怎样没有比技术人更有体会的了吧&#xff0c;但是我也不禁要问&#xff0c;还有那些赛道过的不错&#xff0c;还有谁在挣钱。因为能量是守恒的&#xff0c;西边不亮东边亮。真巧还真让我找到一些。 中药 2023年中国中药…

文件名管理器,一款免费的文件名管理工具,支持文件整理功能

文件名管理器是一款可以批量修改文件名的工具&#xff0c;但是相较于其他工具又有不同。除了批量重命名功能外&#xff0c;软件同时提供一些特色功能&#xff1a;把文件名插入到文本文件中、根据文件名写入音乐ID3信息&#xff0c;整理下载的视频资源、音乐分类整理等。软件提供…