苍穹外卖 软件开发流程

软件开发的流程:
1.需求分析
    完成需求规格说明书、产品原型。
        需求规格说明书:一般而言是word文档描述当前项目的各个组成部分,如:系统定义、应用环境、功能规格、性能需求等,都会在文档中描述。
        产品原型:一般是通过网页(html)的形式展示当前的页面展示什么样的数据,页面的布局样式,点击、打开页面的效果,相当于就是需求网页的模板。
    但是这一步和后端开发基本上无关,开发只需要根据说明书和原型进行开发即可。
2.设计
    设计内容包含UI设计、数据库设计、接口设计。
        UI设计:用户界面的设计,主要是设计项目的页面效果,这与开发技术方面无关。
        (重要)数据库设计:需要设计当前项目涉及的数据库,每一个数据库中包含的表、这些表结构之间的关系是什么、表结构中需要包含哪些字段。
        (重要)接口设计:通过分析原型图,先粗粒度的分析页面会有多少接口;然后再细粒度的分析每个接口需要传入的参数,返回值的参数;同时需要
    明确接口的请求路径及其请求方式。
        数据库设计和接口设计是十分重要的,必须仔细、全面的设计;但是设计也并非是一蹴而就的,在开发过程中也可能会根随时发生改变。
    但是设计也并非后端程序员的工作,但后端会和前端协商接口文档。
3.编码
    编写项目代码,完成单元测试;这主要是后端程序员的工作。
        编写代码:对项目模块功能分析之后,结合接口文档(接口文档十分重要),进行编码实现。
        单元测试:编码完成之后,后端先要进行单元测试,通过后才可以进入下一阶段。
4.测试
    测试人员将项目部署在测试环境中进行功能测试,并出具测试报告。
5.上线运维
    项目上线之前,运维人员会准备服务器上的软件环境安装、配置;配置完毕后再将项目部署在服务器上运行。


软件环境:
    开发环境:
        软件开发人员在开发阶段使用的环境,一般外部用户无法访问。
    测试环境:
        当软件开发工程师,将项目的功能模块开发完毕,并且单元测试通过后,就需要将项目部署到测试服务器上,让测试人员对项目进行测试。
        那这台测试服务器就是专门给测试人员使用的环境,也就是测试环境,用于项目测试,一般外部用户无法访问。
    生产环境:
        当项目开发完毕,并且由测试人员测试通过之后,就可以上线项目,将项目部署到线上环境,并正式对外提供服务,这个线上环境就是生产环境。

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

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

相关文章

卷积、频域乘积和矩阵向量乘积三种形式之间的等价关系与转换

线性移不变系统 线性移不变系统(Linear Time-Invariant System, LTI系统)同时满足线性和时不变性两个条件。 线性:如果输入信号的加权和通过系统后,输出是这些输入信号单独通过系统后的输出的相同加权和,那么该系统就…

15分钟学 Go 第 53 天 :社区资源与学习材料

第53天:社区资源与学习材料 目标 了解Go语言官方资源掌握社区重要学习平台学会利用开源项目学习构建个人知识体系 一、Go语言官方资源汇总 资源类型网址说明Go官网golang.org官方文档、下载、教程Go Blogblog.golang.org技术博客、最新特性介绍Go Playgroundpla…

「QT」文件类 之 QIODevice 输入输出设备类

✨博客主页何曾参静谧的博客📌文章专栏「QT」QT5程序设计📚全部专栏「Win」Windows程序设计「IDE」集成开发环境「UG/NX」BlockUI集合「C/C」C/C程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「UG/NX」NX定制…

timescale使用例子 - 纽约出租车

一、资料使用 在timescale的官方网站的“教程”菜单中,有几个不同业务场景的例子,其中就有运输行业的例子。我访问中文站点的时候,关于教程的几个步骤内容刷不出来,所以还是建议访问英文站点。 https://docs.timescale.com/tuto…

树(二叉查找树、平衡二叉树、红黑树)

树(二叉树、二叉查找树、平衡二叉树、红黑树) 二叉查找树(二叉排序树、二叉搜索树)添加元素查找元素遍历弊端 平衡二叉树旋转机制:左旋旋转机制:右旋需要旋转的四种情况1. 左左:一次右旋2. 左右…

医疗器械包装运输试验之抗压试验的条件选取及方法和设备的要求

医疗器械包装运输试验之抗压试验的试验目的: 抗压试验通常用来评估产品在承受外界压力时,包装对内装物样品的保护能力。试验通常模拟产品在运输流通过程中可能遇到的压力环境。通过试验,可以验证包装对内装物的保护能力、包装结构的完整性、…

C++内存池实现

1.内存池概念 内存池就和其他的池数据(如线程池)结构类似,由程序维护一个“池”结构来管理程序使用的内存,然后根据需要从内存池中申请使用内存或者向内存池中释放内存,来达到高效管理内存的目的。 在一般的内存管理的…

数据结构-二叉树

一.二叉树的定义 二叉树有左右儿子之分 完美二叉树(满二叉树)除了最下面的没有儿子其他结点都有两个儿子,叶节点比较齐的,完全二叉树不是满二叉数允许缺失最后的结点 满二叉树可以达到2^k-1 边的总数节点数-1 二.二叉树的存储结构…

OKR制定指南

Goal Crafting 目标制定是最基本的领导活动之一。组织绩效和团队成长依赖于精心制定的目标。没有良好的目标制定练习,团队可能只关注眼前的事务,解决看似可以快速解决的问题。良好的目标制定迫使你不忽视或推迟那些需要新思维方式、合作或克服困难的问题…

详细分析Java中FilterChain过滤器的基本知识

目录 前言1. 基本知识2. Demo 前言 基本的Java知识推荐阅读: java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)【Java项目】实战CRUD的功能整理(持续更新) 从实战中学习: 常用在一些重复代…

TableGPT2-7B:用于表格数据分析的大规模解码器模型

TableGPT2-7B 是浙江大学开发的最先进的大规模解码器模型,专为涉及表格数据的数据密集型任务而设计。该模型以 Qwen2.5 架构为基础,包括针对表格数据的专用编码,其中独特的语义编码器可从行、列和整个表格中获取洞察力。 主要特点和功能 Ta…

SQL面试题——抖音SQL面试题 主播播出时长

主播播出时长 现有如下数据,主播id、房间号、播出的批次号,每个批次号进出房间的时间戳、分区时间: 每一次直播都有一个上播和下播,每个房间里,同一个批次号会有两条数据,分别记录了上播和下播时间,求每个主播的播出时长? 通过上面的数据,可以清晰的看出,同一个批次…

数字信号处理Python示例(14)生成锯齿波和三角波

文章目录 前言一、锯齿波和三角波二、生成锯齿波和三角波的Python代码三、仿真结果及分析写在后面的话 前言 因其独特的数学特性和物理表现,在工程和技术领域扮演着重要角色。这是生成非正弦信号的几个Python示例的其中一个,生成三角波与锯齿波&#xf…

HBase理论_HBase架构组件介绍

近来有些空闲时间,正好最近也在开发HBase相关内容,借此整理一下学习和对HBase组件的架构的记录和个人感受,付出了老夫不少心血啊,主要介绍的就是HBase的架构设计以及我的拓展内容。内容如有不当或有其他理解 matirx70163.com HB…

前端快速上手(一):HTML

目录 1. HTML 基础 1.1 HTML 标签 1.2 标签的结构关系 2. HTML 常见标签 2.1 标题标签: h1 - h6 2.2 段落标签: p 2.3 换行标签: br 2.4 图片标签: img 2.5 超链接: a 标签 2.5.1 外部链接 2.5.2 内部链接 2.5.3 文件资源链接 2.5.4 空链接 2.6 表格标签 2.7 表单…

QT<30> Qt中使鼠标变为转圈忙状态

前言:当我们在写软件时,在等待阻塞耗时操作时可以将鼠标变为忙状态,并在一段时间后恢复状态,可以用到GxtWaitCursor:Qt下基于RAII的鼠标等待光标类。 一、效果演示 二、详细代码 在项目中添加C文件,命名为…

Shell环境导致编译失败处理方法

在嵌入式Linux系统源码(BSP包)编译时,有可能会如现如下提示: [[: not found 这种提示,一般是Shell环境为dash而不是bash导致,可以通过如下命令来切换: sudo dpkg-reconfigure dash 执行后会…

nginx openresty lua-resty-http 使用的一些问题记录

需求背景 需求是使用 nginx 做一个 https 服务的代理 nginx 收到 http 请求后,需要修改 body 中的某些参数值,然后将修改后的数据发送到目标服务器(https) 本来以为很简单的需求,结果中间出现了不少岔子,这…

Redis的分布式锁分析

系列文章目录 Java项目对接redis,客户端是选Redisson、Lettuce还是Jedis? 由Redis引发的分布式锁探讨 系列文章目录一、什么是分布式锁?二、Redis分布式锁的几种实现1. 简单分布式锁2. Redlock 三、Redis 锁的问题1. 互斥失效2. 时钟偏移 四…

柯桥生活英语口语学习“面坨了”英语怎么表达?

“面坨了”英语怎么表达? 要想搞清楚这个表达,首先,我们要搞明白“坨”是啥意思? 所谓“坨”就是指,面条在汤里泡太久,从而变涨,黏糊凝固在一起的状态。 有一个词汇,很适合用来表达这…