如何写好客户端技术方案_客户端开发文档-程序员宅基地

技术标签: 团队开发  Swift大讲堂  架构  objective-c  需求分析  工作总结  ios  


一、 背景

作为一个开发者,每次需求评审完事儿之后,首要的事情就是做技术方案,今天就拿我平时做技术方案的思路,写一下如何撰写出一个好的技术方案。 并会在下方附上方案模板,有不同观点的可以评论沟通。

二、 为什么要写技术方案

首先要肯定的是,写技术方案是必须要有的。

之前在不足500人的小公司工作,对于一个需求,需求评审结束以后,就会直接给出排期,然后研发小组组内各自分要完成的各个模块。 最后导致的结果就是:

  1. app各个模块各有各的风格,没有统一的书写方式,后期维护非常不便。
  2. 模块间调用方式也没有统一好,导致后期调用不方便,可能需要重新开发。
  3. 联调的时候,各个端串不起来,可能客户端想要的接口实现的功能和后端提供的接口要实现的功能都不一致。
  4. 各种修修补补,可见明显bug数上百个。
  5. 最终花费很大的精力,结果还是导致项目延期,代码也成为了一次性代码,根本没有拓展性和健壮性可谈。

通过以上结果:

我认为,技术方案需要写,技术方案写好,尤其是在联调以及整体架构方面,能够避免很多的坑。

在这里插入图片描述

三、 写技术方案需要注意哪些点

  • 判断需求是否合理,是否有收益,如果需求没有任何收益,那相当于是浪费人力,可以直接和产品反馈,不接该需求。
  • 要贴合需求,满足需求的大环境,要做到可扩展 — 考虑到后期该需求的迭代,做可扩展的架构(例如:开屏广告-- 要考虑到不同的点击跳过的方式(摇一摇跳过、上滑跳过、点击按钮跳过等等),做好可扩展)。
  • 根据需求的上线周期,来判断是否要引入一些新的、难的、耗时的技术。如果时间紧急,需要通过上线时间倒推开发时间,那么时间成本就需要多考虑。
  • 打点方案,提前和产品沟通,需要哪些打点,想要得到哪些数据。
  • 是否需要加入AB,来做降级处理。
  • 跨部门协作,接口是否都提供。
  • 灰度期间的方案 – 保证质量。

四、 技术方案模板

下面是我平时写技术方案的一个模板,共享出来。

1、 技术文档 描述

1.1、 项目组相关成员

主要是各团队的技术owner,对于跨团队协作,方便后期找到想对应的人,进行沟通。

1.2、 设计准备
1.2.1、 需求及产品设计

这里可以贴上 产品的需求文档以及相关的设计文档

1.2.2、 预期收益

这里主要是写此次需求的哪些正向结果以及明显的收益

1.2.3、 开发前期调研

开发前期调研相关技术点,是否可以实现,实现效果以及有哪些难度,这里都可以写,后期可以抛出来和其他组员沟通探讨。

2、 详细设计

2.1、 架构描述

这里可以附上相关的架构图以及相关的业务流程图以及数据模型相关的图。

2.2、 实现细节

这里主要写各个模块的实现细节,以及时序图,以及对外接口的定义以及说明
伪代码或者相关节点的重要代码,或者对外提供的接口 都可以暴露出来。

2.3、 对外依赖

主要描述其他团队,包括上下游和合作者的技术依赖,这是为了确认依赖方有无对应的资源给我们,我们依赖的什么时候能给到我们才能不阻塞我们的正常开发。

2.4、 打点相关

其实就是打点需求,是否有打点,打点的目标是什么,想要检测哪些状态等等。这个也需要和数据老师沟通,看是否需要新建报表来进行监控。

3、 工期

列出项目人员工期以及各时间节点

4、 测试

这里可以贴上测试用例,以及相关的测试方法,测试的mock等。方便后期自测以及测试来看

5、 技术评审

技术评审中发现的相关问题,这里记TODO会后进行解决。并再同步给参与会议的人员。

五、 产研整体流程分享

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/liyunxiangrxm/article/details/122948725

智能推荐

过拟合和欠拟合概念的详细讲解_generalization performance-程序员宅基地

文章浏览阅读1.7k次。课前小例子各位同学上一节课我们讲解了一个多分类的问题,让我们从现在开始会讲一些在深度学习中间时候的一些小技巧这些小技巧可是帮助大家理解深度学习一个非常必要的环节,首先我们来看第一个深度学习中存在的一个问题就是过拟合和和欠拟合。在讲解过拟合和和欠拟合之前,我们来讲一个数据的真实的模态,我们把它一个叫做数据的真实分布那么我们来看第一个例子就是房价例子,然后房价的这个x坐标表示它的房子的面积,..._generalization performance

jquery实现截取pc图片_jquery 图片截取工具jquery.imagecropper.js-程序员宅基地

文章浏览阅读341次。除了jquery,本插件还引用了UI库,包括ui.draggable.jsImageCropper 演示需要asp.net支持。测试通过ImageCropper 下载 https://www.jb51.net/jiaoben/25688.html插件用法:var imageCropper = $('#imgBackground').imageCropper();要注意的是此插件只应用在有src属性..._jquery image crop shield

ucl介绍_交换机的ucl是什么东西-程序员宅基地

文章浏览阅读1.4k次。目录1、概述2、global configuration3、update command list3.1、UCL的格式:3.2、host commands3.3、firmware commands3.4、条件执行3.5、使用变量1、概述UCL是Update Command List的简称。从《mfgtools工作流程概述》这个文章中知道对目标单板的具体烧写过..._交换机的ucl是什么东西

idea html设置字体大小,intellij idea设置(字体大小、背景)-程序员宅基地

文章浏览阅读1.8k次。1. 配置信息说明Intellij Idea: 2017.2.52.具体设置<1> 设置主题背景、字体大小File---->Settings----->Appearance & Behavior------>Appearance,主题背景:Theme: Darcula,Intellij,Windows主题字体大小:Override default fonts ..._idea的html标签字体大小

【目标检测】RCNN算法详解_rcnn算法思想-程序员宅基地

文章浏览阅读2.3k次。reference link:https://blog.csdn.net/u011534057/article/details/51218250一、相关理论&amp;nbsp; &amp;nbsp;本篇博文主要讲解2014年CVPR上的经典paper:《Rich feature hierarchies&amp;nbsp;for&amp;nbsp;Accurate Object Detection and Segmentat..._rcnn算法思想

金陵科技学院专转本计算机书,2021金陵科技学院五年一贯制专转本计算机科学与技术考试大纲(最新)...-程序员宅基地

文章浏览阅读766次。2021年金陵科技学院五年一贯制专转本计算机科学与技术专业考试内容包括《计算机网络基础》和《计算机应用基础》两部分,具体考试大纲如下《计算机网络基础》考试大纲一、参考书目:《计算机网络技术与应用(第2版)》,段标、张玲主编,电子工业出版社.二、考试形式:闭卷,考试时间90分钟三、考试内容和要求(一)考试要求1.计算机网络理论知识● 掌握计算机网络的定义、计算机网络的组成、功能与应用● 掌握计算机网..._计算机科学与技术转本那两本专业书

随便推点

laypage分页控件使用方法-程序员宅基地

文章浏览阅读547次。laypage是一款非常简单易用的分页控件,由于最近项目中使用到了,简单记录一下使用方法1、引入laypage所需的js和css文件<link href="js/laypage/1.3/skin/laypage.css" rel="stylesheet"/><script type="text/javascript" src="js/laypage/..._div装进laypage

一招解决python pip install 安装库失败_python-pip 安装失败-程序员宅基地

文章浏览阅读8.8w次,点赞153次,收藏377次。PIP是python强大的安装利器,但是我们经常遇到安装库失败的问题,以下本人觉得最有效的解决方法:1.打开 https://www.lfd.uci.edu/~gohlke/pythonlibs网站,2.搜索(CTRL+F)需要安装的库的名称,比如pandas3.找到对应自己系统的版本并下载,cp后面的数字时python的版本,如cp36代表python3.6版本,WIN后面的数..._python-pip 安装失败

华为鸿蒙osbeta用户体验,华为Mate40鸿蒙OS手机Beta版-程序员宅基地

文章浏览阅读184次。华为Mate40鸿蒙OS手机Beta版现在华为手机系统最新升级的一个版本,相信很多用户这几天已经尝试到了最新的系统操作,感受非常的智能和特别和以往的各种系统来说,更加具有智能性,而且操作起来也更加的流畅,在很多小细节方面上也进行了优化,处处都充满了惊喜,让整个华为手机操作起来,更加具有娱乐性。华为Mate40鸿蒙OS手机Beta版特色:1、华为全新推出的一个专属系统,会与人们常用的安卓系统存在很大..._华为 mate40 退出系统beta

kafka分区及副本在broker的分配_topic 分区分配 brokearray-程序员宅基地

文章浏览阅读2.1k次。转自:https://blog.csdn.net/jediael_lu/article/details/77097361 kafka分区及副本在broker的分配@(KAFKA)[kafka, 大数据]部分内容参考自:http://blog.csdn.net/lizhitao/article/details/41778193下面以一个Kafka集群中4个Broker举例,创建1个t..._topic 分区分配 brokearray

虚拟机安装VMwareTools_vmware tools iso-程序员宅基地

文章浏览阅读1k次。在VMware虚拟机中安装VMwareTools_vmware tools iso

〖产品思维训练白宝书 - 核心竞争力篇⑥〗- 产品经理核心竞争力解读之执行力_产品经理执行能力定义-程序员宅基地

文章浏览阅读2.9w次,点赞15次,收藏9次。该章节的内容是针对 "产品经理" 的 "执行力" 进行讲解,"执行力" 作为 "初级产品经理" 的必备技能,看起来似乎很容易,只要把领导交代的任务完成就可以了,其实不然。真的想执行的顺利、执行的到位,肯定是要花一番功夫的。所以这一章节,就为各位小伙伴讲解一下 "执行力" 的概念、意义以及 "产品经理" 在 "执行力" 上的执行动作对于我们普通人而言都有哪些参考价值。_产品经理执行能力定义

推荐文章

热门文章

相关标签