首页 > 其他分享 >在开始编码之前,问问为什么

在开始编码之前,问问为什么

时间:2023-04-18 22:35:15浏览次数:25  
标签:编码 为什么 问问 项目 解决方案 问题 了解 顾客

客户很少知道什么是对的

image.png

开发者不只是生产代码,更重要的是提供问题的解决方案,代码只是(有时候并非总是)其中的副产品。

昨天我写了一篇文章,讲述了顾客认为他们知道自己需要什么,但通常是错误的。

一位评论者想知道 - 你如何得体地了解顾客真正需要什么?

我所说的“顾客”

有时候,你是通过顾客或客户的直接请求来解决问题的。

其他时候,请求会通过项目经理进行过滤。或者,销售团队需要一定的功能集来支持他们的市场战略。偶尔,请求直接来自CEO或高管层。

我将在本文中使用“顾客”一词。当我这样说时,我指的是“你正在解决问题的人/人群”。这可能是直接的顾客,也可能是销售、产品、高管等。

掌握“为什么”的艺术

学会发掘项目背后的动机对于成为一名软件开发者,提供价值至关重要。

以下是我们需要回答的问题…

  • 在这个项目之前和之后,顾客希望发生什么变化?
  • 为什么现在?这个变化为什么很紧急或者很重要?
  • 如果我们不做这个项目或者做得更小,会有什么风险?为什么项目被规定在这个范围内?
  • 对于他们的个人或商业目标来说,完成这个项目意味着什么?
  • 他们愿意为使项目成功付出多少时间、精力和资源?

搞清楚这些问题将节省你很多时间、精力和痛苦。

如何问“为什么”

在开始一个新项目时,你需要了解它的根本原因。

但是如何得体地提出这些问题却很困难。老实说,许多业务领导人不习惯软件工程师问关于业务结果的问题。他们会有点惊讶你在问这些问题。

以下是一个好的方法...

  1. 为新项目安排一个启动会议。开始会议时,要求客户描述他们所想的解决方案。
  2. 让客户在会议的第一部分自我介绍他们设想的解决方案。他们需要分享,这样他们就知道你已经听到了。
  3. 然后说:“这很棒。我们可以暂停一下,放大一下视角吗?我有一些高层次的问题。”
  4. 将对话引向为什么、为什么现在,以及利害关系。利用你之前在对话中学到的知识使这些问题更相关。

如果你想了解比上面更好的方法,请查看Jonathan Stark关于了解客户真正想要什么的建议。他和我最近都在写类似的内容。

更成功的项目

提前获得重要问题的答案可以做到以下几点:

  • 揭示期望结果并澄清项目的“成功”是什么。(这不是微不足道的。)
  • 考虑实现期望目标的其他方法。
  • 确立你自己作为商业伙伴,而不仅仅是“代码猴子”来完成任务。
  • 了解该项目的紧急性和优先级,以及它与你的其他潜在项目相比的位置。
  • 了解你的解决方案的商业价值。

你可能会明白,提前了解这些事情会使项目更有可能成功。

在每个项目之前问几个简单的问题,可以对你的职业生涯和日常工作产生巨大的影响。

每日清单

喜欢这里的内容吗?我每天都会为2,000名软件开发人员写一些新的东西。

如果你喜欢我的文章,点赞,关注,转发!

标签:编码,为什么,问问,项目,解决方案,问题,了解,顾客
From: https://blog.51cto.com/u_12409319/6204094

相关文章

  • Redis 一、(简介,redis-linux下载,启动方式,常用配置,应用场景,数据结构和内部编码,字符类型)
    目录Redis一、Redis1、简介2、RedisLinux下载安装3、redis启动方式3、1.简单启动3、2.动态参数启动3、3.配置文件启动5、常用配置6、redis应用场景7、redis通用命令8、数据结构和内部编码9、redis字符串类型Redis一、Redis1、简介#Redis特性1)速度快10wops(每秒10万......
  • ArcGIS Portal/Server局域网域名访问问题
    安装好arcgisportal后,假设:门户url:https://esrichina.arcgiscloud.com/arcgis/home/ip:10.0.3.159则需要修改host进行域名访问,找到C:\Windows\System32\drivers\etc下的HOSTS文件,打开HOSTS文件在文件最下面新加一行:10.0.3.159esrichina.arcgiscloud.com由于Windows的自我保护设置......
  • 什么是全栈工程师,为什么全栈开发用Python,Python web全栈开发到底有多高薪?
    我们经常听到全栈工程师这个词语。那么很多小伙伴还是不明所以,什么是全栈工程师?为什么全栈开发用Python?Pythonweb全栈开发到底有多高薪?一、什么是Pythonweb全栈工程师?全栈工程师是指掌握多种技能,并能利用多种技能独立完成产品的人。也叫全端工程师(同时具备前端和后台能力),英文F......
  • Mybatis 批量更新(foreach成多条sql) 为什么比 java 中反复执行单条插入语句效率高?
    使用MyBatis的批量更新功能可能比逐行更新更高效。使用批量更新可以将多个更新操作合并为一个批处理操作,并将所有操作发送给数据库一次(只需建立一次连接),从而减少了数据库的IO操作和网络开销,提高了系统的性能。mybatis批量更新的方法:https://cloud.tencent.com/developer/arti......
  • 为什么html页面不能显示标签el-checkbox的多选框,只有名称值
    问题描述我引入了el-checkbox之后,发现浏览器页面只是显示里面的文字,并没有显示出来我想要看到的相应样式问题解决经过一定的百度查证可知,使用Element-UI组件时,我们需要用div标签将其包裹起来;然后使用script标签定义一下div里面的id属性,然后才能够引用到这个el-标签,让其中的样......
  • 为什么负责任的技术始于数据治理
    每个组织都处理数据,但并非每个组织都将其数据用作业务资产。但是,随着数据继续呈指数级增长,将数据视为业务资产正在成为竞争优势。埃森哲的一项研究发现,只有33%的公司“足够信任他们的数据,能够有效地使用它并从中获得价值”。但是,如果您不信任数据的质量,那么就很难根据这些数据做......
  • 软件行业迫切需要基于正向生成的编码模型
    逆向生成难以实现飞跃软件行业长期面临生产率瓶颈。程序员的工作强度已经接近极限,要继续提高软件交付速度似乎难上加难。近年来在开发流程和工具上,如GPT显然提供了一定的提效,但是实质上没有改变软件开发的基本模式————逆向生成。目前软件项目的大部分工作时间都花在理解“现......
  • Linq专题之提高编码效率—— 第一篇 Aggregate方法
    的几个方法,这个系列我会带领大家看遍linq,好的,废话不多说,先从Aggregate这个貂毛说起。 一:应用场景前不久在写一个项目的时候,我需要捞取营销活动,刚好营销活动有两个类型,一种是普通活动,一个是触发式活动,由于存放在两张表中,并且捞取之后需要做一些实体的转存,等等计算,所以就有了类......
  • Linq专题之提高编码效率—— 第二篇 神一样的匿名类型
    说起匿名类型,我们都知道这玩意都是为linq而生,而且匿名类型给我们带来的便利性大家在实战中应该都体会到了,特别适合于一次性使用,临时使用这些场景,虽然说是匿名类型,也就是说是有类型的,只是匿名了而已,对吧,这篇我们就来探索下匿名类型到底和linq有多大关系呢???......
  • 一种通过编码的反爬虫机制
    遇到一个反爬虫机制,该网页为gbk编码网页,但是请求参数中,部分请求使用gbk编码,部分请求使用utf8编码,还设置了一些不进行编码的安全字符,在爬取的过程中形成了阻碍。提示:在认为参数设置正常,又无法正确爬取数据的情况下,通过response.requests.headers和esponse.requests.body与浏览器的请......