Prompt 语宙Prompt 语宙
  • 首页
  • 语宙 AI 导航
  • AIGC 资讯
    • AIGC 早报Hot
    • 最新趋势
    • AI 工具
    • 热门资源
    • 强化 AI 学习
  • AI 绘图
    • Prompt 实战
    • AI 绘画教程
    • 模型精选
  • AI 图库
    • 人物
    • 展台场景
    • Banner
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • AI 生图 Prompt
    • 写实人像
    • 产品与广告
    • 游戏资产与 3D
    • 界面与图标
    • 建筑与室内
    • 动漫与插画
    • 风景与自然
Search
  • Contact
  • Blog
  • Complaint
  • Advertise
© 2024 Prompt 语宙. HalfPX. All Rights Reserved.
阅读: 如何构建高质量软件:一个被忽略的课题 [译]
Share
登陆
通知 阅读更多
Font Resizer字体
Font Resizer字体
Prompt 语宙Prompt 语宙
Search
  • 首页
  • 语宙 AI 导航
  • AIGC 资讯
    • AIGC 早报Hot
    • 最新趋势
    • AI 工具
    • 热门资源
    • 强化 AI 学习
  • AI 绘图
    • Prompt 实战
    • AI 绘画教程
    • 模型精选
  • AI 图库
    • 人物
    • 展台场景
    • Banner
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • AI 生图 Prompt
    • 写实人像
    • 产品与广告
    • 游戏资产与 3D
    • 界面与图标
    • 建筑与室内
    • 动漫与插画
    • 风景与自然
已有帐户? 登陆
  • Contact
  • Blog
  • Complaint
  • Advertise
© 2023 Prompt 语宙. Paooo.com. All Rights Reserved.
Maximizing
Prompt 语宙 > 强化 AI 学习 > 如何构建高质量软件:一个被忽略的课题 [译]
强化 AI 学习

如何构建高质量软件:一个被忽略的课题 [译]

宝玉的分享
最近更新: 2026年5月23日 下午6:31
SHARE

by Florian Bellmann

阅读目录
  • 大学教给你的
  • 公司如何勉强按时交付
  • 如何打破日复一日的工作循环
    • 讨论金钱的重要性
    • 最小有效剂量
    • 我关注的事项
  • 项目的好处
  • 让项目变得更好的方法

你是否曾在一个软件项目中发现缺少关键的质量保证(QA)措施?这种情况其实在很多公司和项目中都普遍存在。很多人虽然知道有质量保证这个环节,也明白我们应该去实施它,但所有的努力往往都集中在产品发布前的那一轮紧张的 QA 冲刺中。这种压力巨大的时刻,往往只能保证软件勉强能用。而且,这种混乱在下一次的发布周期中又会重演,而且毫无改善。

大学教给你的

谈到大学教育,如果你学习计算机科学,你会发现课程并没有教授如何确保软件的质量标准。大部分时间都在学习算法、计算机的工作原理、一些编程语言和概念的历史等等。至少在我的学习经历中,还包括了一个学期关于项目管理和敏捷开发的内容。这些知识固然重要,但却完全没有涉及 QA。这是非常遗憾的,因为超过 90% 的计算机专业学生毕业后都会在公司里工作,而在这些环境中,按时交付没有缺陷的软件是非常必要的。

公司如何勉强按时交付

我已经见过太多次了:在项目预算紧张的情况下,质量保证(QA)标准和措施往往是最先被牺牲的。这些措施通常被安排在项目的最后阶段,但如果开发耗时过长(这种情况很常见)或者出现需求膨胀(几乎总是会发生),那么就没有剩余的时间来进行 QA 了。结果,我们只能进行最基本的非结构化测试,然后上线一个结构脆弱的数字产品。

最大化
最大化

在一些公司或团队中,确实存在一些 QA 标准。这通常是由团队中的资深成员来强制执行。他们很可能已经深刻体会到,没有 QA 的话,后续的工作会变得极为困难。遗憾的是,即使存在这些标准,也并不足以确保质量。这些团队经常只是为了满足项目管理的指标而编写测试,而不是真正关注质量。

如何打破日复一日的工作循环

我花了好几年的时间积累经验和信心,才敢在项目中指出缺失的 QA(质量保证)措施。我与管理层争论、在产品发布的紧张时刻苦苦挣扎、处理生产系统的故障,还要四处寻找缺失的监控措施。这些经历并不愉快。对于代码库或项目的其他改进,比如重构,情况也差不多,因为这些对管理者来说并不直观。但对 QA 来说,挑战尤为巨大,因为如果我们从未实施过任何措施,我们也就无法学会正确的方法。

最大化
最大化

当你的单元测试通过了,但集成测试失败时的情景。

只有持续提出问题,反复引发讨论,我们才能找到跳出这个无尽循环的第一步。

讨论金钱的重要性

我后来意识到,我之前的论点并不够有效。向那些不直接参与代码工作的人解释软件“更稳定”或“维护更容易”这些观点,对他们来说太抽象了。我们需要谈论的是金钱。作为开发者,我们需要讨论不进行 QA 所带来的成本。这是商业和管理层更通用的语言。现在,我总是试图用类似这样的例子来说明 QA 措施的重要性:‘如果我们现在不这样做,4 个月后的开发工作(以及相关成本)将增加 15%。’或者‘我们需要为所有功能实现单元测试,否则我们的发布稳定化阶段会越来越长。这与我们构建的每个功能直接相关,因为我们需要每次手动测试所有的副作用。这将导致我们在每次发布时取得的进展越来越少。’

根据我的经验,这种观点的转变有助于更清晰地传达问题的核心。最终,你的努力将让每个人的生活变得更好,尽管目前还不是每个人都意识到这一点。

最小有效剂量

为了保持现实,重要的是不要在 QA(质量保证)措施上进行过度设计并投入过多的初期成本。我们不应该阻碍整个项目的进展,而且这种方法也不太可能获得所有利益相关方的支持。我建议始终专注于应用程序中最关键的部分。通常,会有某个特定用例、功能或其他核心内容,整个应用就是围绕它构建的。一些对于客户而言至关重要的核心功能必须正确运行。对这些功能进行测试。想出措施和方法,确保它们始终按预期运行。

我很喜欢“最小有效剂量”(MED)这个概念。它指的是能产生预期结果的最小剂量。在 QA 中,这可能意味着一个手动测试计划、流水线中的自动化测试,或者其他方式。这是一个好的起点。如果核心功能得到了保障,你可以逐步扩展到其他稳定性更高的领域。例如,对于所有新功能,都增加一个单元测试。此外,考虑一下那些你无法控制的信息来源,如外部 API 或用户输入。找到验证它们的方法,因为这些地方是软件由于误用而崩溃的潜在风险点。进行迭代和逐步改进,这也适用于 QA。

我关注的事项

每当我开始或加入一个新项目,我都会特别关注质量保证(QA)的概念。不论项目大小,我认为团队应该对此有深入的思考。

  • 我们准备发布什么产品?
  • 我们需要确保哪些功能能够正常运作?
  • 我们如何达成这个目标?
  • 我们有意放弃哪些措施,背后的原因是什么?

拥有一份关于这些内容的书面文件,以及一个测试计划,是软件发展的坚实基础。这表明我们作为一个团队已经考虑了前进的方向。再次强调,考虑到最小有效剂量的重要性。此外,我建议定期回顾所选择的方法,比如每季度进行一次。

在编写新代码时,我虽然不采用测试驱动开发(TDD),但我强烈推荐在编写软件的同时编写测试。这是编写测试的最佳时机。如果你在实现功能的同时编写测试,你的代码就必须被结构化成可以实际测试的形式。事后为现有软件编写测试往往会发现代码过于互相依赖,或者违反了单一职责原则。通过测试,你可以证明你理解了期望的行为,并确保一切都按预期工作。如果愿意,这甚至可以被看作是一种代码文档。

项目的好处

Maximizing
Maximizing

当你积极发言时,周围的人会感受到你对项目的关心。提出有关质量的讨论并建议可能的解决方案,可以增强你作为开发者的影响力。这不仅对你个人有利,也有利于整个项目。它能够提升开发人员和管理人员的工作生活质量,并且这种改变是显而易见的。

只有实施了合适的 QA 措施,项目才能健康、稳定地成长。

让项目变得更好的方法

你的项目中已经开始实施 QA(质量保证)措施了吗,还是一切仍显得很脆弱?你是否渴望提升自己的开发技能,成为编写优质软件的佼佼者?

先从小事做起。思考一下你项目中的最小有效剂量(MED)。主动承担责任,成为你团队中推动积极变革的引领者。不是每个人都需要成为 QA 的倡导者,但你可以通过身体力行,教会团队成员必要的方法和技巧。激发团队内的讨论。

行动起来吧。

祝好,
Flo

“提示注入”与“破解”并不是一回事 [译]
2024 年人工智能指数报告 —— 由斯坦福大学人工智能研究院发布 [译]
探索 Claude 的新纪元 [译]
在你找到金矿之前,别急着建造矿井 [译]
局外人/边缘人(Outsider)思维与人工智能时代 [译]
分享
Email 复制链接 打印
Share
上一篇 大语言模型的类比推理能力[译]
下一篇 示意图:展示 Chrome 浏览器和 Ollama 如何相互作用 利用客户端技术开发基于大语言模型(LLM)的 Web 应用 [译]
发表评价

发表评价 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Please select a rating!

Ad image
- 入群领取知识星球折扣卷, 仅剩99份 -
Ad imageAd image

最近更新

FeyNoBg – Feyn Labs 开源的自动背景去除模型
AIGC 资讯
Qwen-Audio-3.0-ASR-Flash – 阿里千问推出的语音识别大模型
AIGC 资讯
全息流体渐变通用占位特色图
微软云端隐忧:千亿营收背后的增速换挡与杠杆风险
AIGC 资讯
全息流体渐变通用占位特色图
微信公众号推出 AI”一键排版”:自动分段、生成小标题、匹配配图三步到位
AIGC 资讯

相关推荐

强化 AI 学习

通向通用人工智能的里程碑:评估进展的新框架 [译]

宝玉的分享
参见说明
强化 AI 学习

RAPTOR:树状组织的递归抽象检索技术 [译]

宝玉的分享
强化 AI 学习

Torvalds 畅谈人工智能对编程的影响 [译]

宝玉的分享
1次查看
强化 AI 学习

RAG 在长上下文大语言模型 (LLM) 中的应用探讨 [译]

宝玉的分享
/ Prompt 语宙 /

Experience the limitless creative possibilities of generative AI and unlock new levels of innovation.

Quick Link

  • Remaker AI
  • BGRemaker 抠图Hot
  • AIGC 工具
  • Prompt 咒语生成器
  • 去水印工具

Support

  • Contact
  • Blog
  • Complaint
  • Advertise

标签

AIGC Midjourney prompt AI Agent GPT Image 2 多模态大模型 EvoLink灵感 AI绘画 字节跳动 开源工具 开源模型 早报 具身智能 openai 大语言模型 开源大模型 阿里通义 强化学习 腾讯混元 Anthropic MoE架构 多模态AI 开源框架 AI智能体 教程 AI工具 扩散模型 AI视频生成 chatgpt 大模型
Prompt 语宙Prompt 语宙
Follow US
© 2009-2026 Prompt 语宙. Paooo.com. All Rights Reserved.