代码质量第5层-只是实现了功能

CSDN云计算 CSDN云计算     2023-03-03     482

关键词:

 

产品实现的功能是产品价值的体现形式。功能实现是基础。功能没有实现,其他方面做得再好也没有意义。那么,如何保证实现的功能覆盖了需求呢?

产品实现的功能是产品价值的体现形式。功能实现是基础。功能没有实现,其他方面做得再好也没有意义。

本文主要内容如下:

如何做到:实现的功能覆盖了需求。
仅仅实现了功能有什么问题。

如何做到:实现的功能覆盖了需求


要实现功能覆盖需求,需要团队不同角色的共同努力。如下图所示:

开发人员自测


开发人员自测指:开发人员开发完后,自己测试功能是否可以全部实现。如果产品经理有出验收标准,则需要对着标准跑一遍。对前端来说,自测的内容主要是:功能,UI 交互和浏览器兼容性。

开发自测很重要。一方面,程序员自测,能更早的发现问题。越早发现问题,修复问题花的成本越低。另一方面,开发人员自测是对自己代码质量负责,也是专业素质的体现。没自测就提交测试,也浪费 QA 的时间。

建议将自测这块体现到工作流工具中。如果你用的是 CODING,可配置任务流转规则:状态流转到测试中时,一定要填写自测的内容:

QA测试


QA 会对功能做全面深入的测试:不仅测试正常的流程功能,还会测试异常流程,异常值,边界值等。因此,QA测试是对功能实现检查中很重要的一环。

专业的 QA 都会设计测试用例。测试用例完整的覆盖需求。QA 测试通过,就是要通过所有的测试用例。

当然,QA 测试也存在局限性:如果开发过程中引入的缺陷不在当前测试功能的范围内,QA 很有可能发现不了。要缓解这种局限性,有 2 个建议:

开发在提交测试时,告知 QA 可能会影响的其他功能。
QA 不管测试什么功能,测试完成后,都要再跑一遍产品所有模块最核心的测试用例。
产品经理验收
产品经理验收的是功能。产品经理对功能更敏感,容易发现漏做或实现的不对的功能。

设计师验收
设计师验收的是 UI 和交互。设计师有“像素眼”:能发现常人发现不了的 UI 问题。

仅仅实现了功能有什么问题


对于短期项目,仅仅实现功是没问题的。但现实中,很多是长期维护的项目。随着时间的推移,会加很多功能,也会改很多功能。项目会变得越来越大,越来越复杂。只管实现,不管代码的维护性。会加速的出现如下的问题:

增加新功能,改 bug 越来越难。花的时间也越来越长。
改了这个 bug,出现其他bug。
因此,对于长期项目,我们不仅要实现功能,还要注重代码的可维护性。我在下面的文章中会做详细介绍。

代码质量第5层-只是实现了功能

...题花的成本越低。另一方面,开发人员自测是对自己代码质量负责,也是专业素质的体现。没自测就提交测试,也浪费QA的时间。建议将自测这块体现到 查看详情

关于“如何在代码层实现软件的6个质量属性”

日期:2020.03.05博客期:161星期四    我知道大家每每入门(想了想,与“学会”相比,还是说“入门”比较好)一门编程语言,也许都会做那么一两个“自制小软件”!我也一样,我之前也是做过不少软... 查看详情

测试工作一

...知的一部分。 1.技术选型2.搭建开发环境3.项目部署4.代码编写5.代码质量管控6.联调7.跟踪测试8.代码优化,性能优化 OSI七层模型1.应用层:所有应用程序的网络在此展开2.表示层:表示数据形式,完成对传输数据的转化(... 查看详情

ssl协议openssl及创建私有ca(代码片段)

  在互联网发展早期,NetSpace公司发明了第一个浏览器及Web服务器。而http协议传输数据是明文的,为了基于加密的机制实现http,NetSpace公司在TCP层和应用层之间引入了半个层,这半层就是SSL。SSL不是一个软件,可以将它理解为... 查看详情

三层交换配置及rip动态路由

三层交换vlan间通信1.1问题VLAN实现了广播域的隔离,同时也将VLAN间的通信隔离了。三层交换技术使得VLAN间可以通信。通过三层交换实现VLAN间通信1.2方案为了解决了传统路由器低速、复杂所造成的网络瓶颈问题,引入了三层交换... 查看详情

从代码质量谈起

...上做一些升级开发。说白了就是只能使用旧的技术在原有代码上增加功能,有的是需要开发新功能有的只是在原有基础上进行改进。刚开始,项目经理在和我谈需求的时候聊得轻描淡写,以为只是做一些简单的迭代开发,因此信... 查看详情

beta冲刺————第四天(4/5)

...的新文章。(我们的文章都要求自己内部人员看过,所以质量会比直接进行大批导入好很多)美文:http://wufazhuce.com/情感:http://www.duwenzhang.com/meiwen.html幽默:http://www.duwenzhang 查看详情

代码质量第2层-可重用的代码!

...解读云时代热点技术,探秘行业发展新机。可重用的代码指:在相似业务场景下,用的是同一份代码。可重用的代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成可重用的代码。... 查看详情

深度学习:基于python:第7章卷积神经网络(代码片段)

第7章卷积神经网络第7章卷积神经网络7.1整体结构7.2卷积层7.2.1 全连接层存在的问题7.2.2 卷积运算7.2.3 填充7.2.4 步幅7.2.5 3维数据的卷积运算7.2.6 结合方块思考7.2.7 批处理7.3池化层7.4卷积层和池化层的实现7.4.1 4维数组7... 查看详情

dao层实现

一、实验介绍1.1实验内容本节课程主要利用MyBatis框架实现DAO层。1.2实验知识点MyBatis框架MySQL1.3实验环境JDK1.8EclipseJavaEE二、实验步骤根据第一节,我们可以知道系统的功能包括了哪些,根据第三节和第四节,我们知道了数据库表... 查看详情

第6章静态路由和动态路由_静态路由

...每一个数据包单独地选择转发路径,网络层并不提供服务质量的承诺。也就是说路由器直接丢弃传输过程中出错的数据包,如果网络中待发的数据包太多,路由器处理不了也直接丢弃,既不判断数据包重复,也不确保数据包按发... 查看详情

第07组beta版本演示(代码片段)

...比例团队成员贡献比例工作量杨明哲44%分工,后端,实现代码编辑器林兴源8%加工PPT,演讲PPT卞永亨5%博客评分,制作评审表林鑫5%加工PPT薛紫微8%写了三次博客,美化了文件页面,点赞系统进行一半陈碧芬8%写了三次博客,美化... 查看详情

第07组beta版本演示(代码片段)

...比例团队成员贡献比例工作量杨明哲44%分工,后端,实现代码编辑器林兴源8%加工PPT,演讲PPT卞永亨5%博客评分,制作评审表林鑫5%加工PPT薛紫微8%写了三次博客,美化了文件页面,点赞系统进行一半陈碧芬8%写了三次博客,美化... 查看详情

spring——第一个spring-web项目(三层架构实现前后端数据交互)(代码片段)

文章目录:1.写在开头2.项目的大体步骤 2.1项目大致结构 2.2 IDEA中使用Maven创建一个web 2.3在pom.xml文件中加入依赖2.4创建Student实体类2.5 创建dao接口和对应的mapper文件2.5.1StudentDao接口 2.5.2StudentDao.xml 2.6创建mybatis主配置文件... 查看详情

课堂作业05--6种质量属性

1.可用性战术:错误检测战术对系统的所有信息的输入及数据处理进行异常的处理。尤其对信息进行填报时,编写异常类来捕获异常。2.可修改性战术维持语义一致性:指模块中责任之间的关系,可根据一组预期的变更来度量语... 查看详情

osi网络模型和网络连接设备

...组)第2层(链路层)传输的pdu叫:frame(桢)tcp/ip协议族实现了OSI7层模型的共呢,并且简化了OSI7层模型,只用4层就实现了。应用层:http,ftp 查看详情

[架构之路-95]:《软件架构设计:程序员向架构师转型必备》-5-需求分析之需求列表(功能需求质量需求约束条件)

...,主要完成三个输出:需求列表:功能需求、质量需求、约束条件=》第5章用例图=》第6章概念架构=》第7章上述工作,通常是由需求分析工程师或系统工程师SE完成,也可以由架构师完成。第5章需求... 查看详情

9bridge桥梁模式将类的功能层次结构与实现层结构分离结构型设计模式(代码片段)

1、何为桥接模式桥接模式是一种将类的功能层次和实现层次分离的技术,所谓类的功能层次指的是类要实现什么功能,要定义多少个函数还进行处理,在功能之中我们会用到继承来定义新的方法同时也能使用父类的方法,这样... 查看详情