如果汉语背后没有文化,文化背后没有思想,思想背后没有精神,光TMD编造老娘和乔布斯没有说过的话,那中国永远不会是一个伟大的国家。——撒切尔夫人

2021/03/25 《构建之法》阅读笔记之一

之前很多老师问过我们:“什么是软件?”,我总是想到了软件=数据结构+算法,但是看了《构建之法》之后,我突然醒悟原来我之前的角度和看法都是有误的,正确的思路是程序就是数据结构+算法、软件即程序+软件工程、软件企业即软件+商业模式。程序包括算法、数据结构是基本功,但是在算法和数据结构之上,软件工程决定了软件的质量,商业模式决定了一个软件企业的成败。将我从软件就是单纯的一串串的代码的死胡同中拉了出来,带我进入一个新的视野。在《构建之法》中,有句一著名的笑话:这不是缺陷,这是一个功能(It’s not a bug,it’s a feature)!很多人认为有Bug就是质量不合格,没有Bug就是质量完美,其实这也未必。我们大街上看到很多不同品牌的汽车;这些汽车出厂时都通过了各自的质量检测,符合行业的质量标准。但是你问路人哪些车的“质量好”,很多人会告诉你有些车的质量大大好于另外一些车,那为什么还有人买那些质量“不够好”的汽车呢?对于某些顾客来说,某一类的汽车满足了他们的需求,他们就会买。如果销售人员不经市场调研向不合适的目标用户推销自己公司的汽车,最后销量未必理想。其实是否存在一个问题只是看你的角度问题,站在一个角度看可能是一个缺陷但是站在另一个的角度上看,可能就是一个完美的东西。例如在沙漠上看黄金会远远不值于水,但是在城市里看水的价值将会远远的不够黄金重要。用户对软件的需求又分为:对产品功能性的需求;对产品开发过程的需求;非功能性需求;以及综合需求。所以软件团队和客户代表在需求阶段一定要把这些问题定义清楚,不然届时所做产品以客户要求不符合就会很麻烦。

关于典型用户(Persona)和场景(Scenario)、软件功能说明书(Functional Spec)和技术说明书(Design Doc)、功能驱动的设计(FDD)、用例(Use Case)。有以下解释

  1、典型用户可以包含:名字、年龄、收入、代表的用户在市场上的比例和重要性、使用软件的典型场景、使用本软件/服务的环境、生活/工作情况、知识层次和能力、用户的动机、用户的偏好。

 

  2、功能驱动的设计的主要步骤有:

 

   (1)构造总体模型(Develop an Overall Model);

 

           (2)构造功能列表(Build a Feature List);

 

           (3)制定开发计划(Plan by Feature);

 

           (4)功能设计阶段(Design by Feature);

 

           (5)实现具体功能(Build by Feature)。

而获取用户需求——用户调查具体包括:

  焦点小组(Focus Group),深入面谈(In-depth Interview),卡片分类(Card Sorting),用户调查问卷(User Survey),用户日志研究(User Diary Study),民族志/人类学调查(Ethnograpic Strudy),眼动跟踪研究(Eye Tracking),快速原型调研(Quick Prototype),A/B测试(A/B Testing)

posted @   崤函隳  阅读(46)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示