一个功能的开发过程是怎么样?

简介: 介绍一个功能的开发过程

产品是为解决工作/生活过程的问题及满足人【需要】的产物,这样的产品才有存在的价值,产品的存在形式有很多,日常生活品、消费品、计算机系统或APP应用等都是产品,本文主要介绍的是运行于计算机上/App上的系统或应用。

大家看到的系统或APP应用,在计算机中,是以一段操作命令的字符存在的,当你在使用功能时,计算机会根据您使用的功能(请求的资源),拆解出资源的路径,定位到功能对应的操作命令,然后执行这段命令,通过计算机的计算器、存储器等,将结果通过网络,传输回用户端,用户端通过可视化程序将结果演染出来,才有你看到的功能的操作界面。从这个过程中,大家可以看出,在计算机中的命令,只会产生一个结果,要么正确,要么错误。它不像人类的语言,一词可以表达多种意思。因此在开发功能时,功能描述(细化流程逻辑)要正确,不能存在多歧义,这样开发人员才能编写好逻辑程序,让功能满足产品的需求。

那么,一个系统功能的开发过程是怎么样?会包含哪些步骤呢。

首先 架构设计

系统的设计人员/架构师,会详细的分析产品功能的需求、原型,主要是从功能的描述、功能所包含数据的内部流转逻辑、操作流程是否闭环,各个环节的数据控制逻辑是否正确等方面进行评估,如果存逻辑不通,或者逻辑断层等问题,则会与产品功能的负责人进行沟通,直到功能逻辑都走通。在这个过程中,设计人员会记录问题,并提交到产品经理,由产品经理进行解答。在分析完后,会进行数据存储结构的设计,功能内部流转流程的设计,数据流转的设计、开发任务的拆分,并形成简单的说明文档,以指导开发人员进行开发。

第二 功能开发分工

功能开发分工,根据第一步的产出物,召开技术评估会/或者几个人进行简单的交流,讨论功能需求,技术开发方案等有没有问题,如果是产品需求问题,则记录下来,并反馈到产品经理;如果是技术开发问题,则讨论出一个可行的技术解决方案,原则是要满足功能需求。讨论完后,将开发任务落实到具体的开发人员,并落实完成时间。

第三 需求分析

系统的开发人员拿到产品需求、原型、设计相关的文档后,进行详细的阅读与理解,如果还有问题,则反馈到分析人员/产品经理。同时,开发人员根据这些信息后,定义好程序的输入/输出,如果与其他系统有交互,必须与其他系统的开发人员进行讨论,确定好功能的对接方式。一切准备就绪后,就开始功能代码的开发,至于过程中有问题,则在与分析人员/产品经理进行沟通。(这里说的开发人员包括前端开发与后端开发人员)

第四、单元测试

开发人员开发好功能代码后,需要对功能进行单元测试,以发现功能代码是否存在缺陷、控制流程、数据存储逻辑及数据流转、边界控制等是否有问题,另外还要关注性能是否达标。如果与其他系统有对接,也要与其他系统的功能进行测试,主要是功能流转、状态是否正确。

以上是一个系统功能的开发过程,会涉及到分析、设计、任务分工、编码过程、单元测试等环节,每个环节都是紧密相连的。系统功能的开发过程是自上而下,只有前面的工作做好了,后面的实施人员实施起来才能快,才能准,才能减少复工的成本。

文章来源公众号,ID:技术老男孩

目录
相关文章
|
3月前
|
前端开发 JavaScript 测试技术
探索现代前端工程化工具与流程:提升开发效率和项目质量
探索现代前端工程化工具与流程:提升开发效率和项目质量
探索现代前端工程化工具与流程:提升开发效率和项目质量
|
3月前
|
小程序 IDE API
如何提升小程序开发质量?
如何提升小程序开发质量?
35 0
|
3月前
|
SQL 消息中间件 Java
一次开发过程中解决问题的过程及思考
在Java开发中,面对大型电商项目订单处理模块的性能瓶颈,通过问题分析发现数据库查询和更新、事务管理是主要症结。通过优化SQL查询、分页查询与懒加载、事务处理及引入消息队列进行异步处理,有效解决了并发问题,提升了系统响应速度和吞吐量。这次经历强调了深入理解基础知识、面向性能设计、技术选型及持续监控调优的重要性,促进了开发者对高并发、高性能系统设计的理解和技能提升。
|
17天前
|
缓存 算法 Java
非功能需求的测试
非功能需求的测试
15 2
|
1月前
|
jenkins 数据管理 测试技术
在LabVIEW开发生命周期中提高代码质量的自动化测试方法
在LabVIEW开发生命周期中提高代码质量的自动化测试方法
32 0
|
3月前
|
数据采集 前端开发 JavaScript
前端自动化测试:确保质量和稳定性的关键步骤
前端自动化测试:确保质量和稳定性的关键步骤
前端自动化测试:确保质量和稳定性的关键步骤
|
存储 算法 Cloud Native
基于测试的质量守护:分层测试、测试自动化、单元测试 | 学习笔记
快速学习基于测试的质量守护:分层测试、测试自动化、单元测试
162 0
基于测试的质量守护:分层测试、测试自动化、单元测试 | 学习笔记
|
SQL 前端开发 测试技术
|
小程序 前端开发
小程序定制开发过程中要注意哪些问题?
小程序对于现在的生活来说已经是一个特别热门的应用了,没有人不知道小程序的存在,小程序有很多的优势,小程序具有体积小、无需安装等优点,加上微信的使用人数逐步扩大,小到十来岁达到六七十岁,这一“小而轻”的特点在一定程度上说明了将来移动互联网应用的发展走势。
133 0
|
存储 Ubuntu 网络协议
mineportal2:基于mailinbox,一个基本功能完备的整合个人件
本文关键字:mailserver backed new mineportal,邮箱附件外链,owncloud backend static web hosting,阿里云省事建站,如何借助mineportal低成本把虚拟空间+email玩成个人portal,one place webapps for personal use
220 0
mineportal2:基于mailinbox,一个基本功能完备的整合个人件