系统思维与任何专业测试人员都息息相关,但是尽管学习技术/方法具有明显的优势,使您能够根据系统的组成部分与其他系统之间的关系和交互作用来学习系统,但很少有测试人员进行研究。仅对组件进行单独研究,并假设将它们放在一起时它们将发挥相同的作用-对任何测试人员来说,这听起来不是一个熟悉的问题吗?)


哪些好的学习资源是否有想要了解更多信息的测试人员?



那里是否有优秀的品酒师来吸引对这个想法全新的测试人员?
那有关如何开始应用不同系统概念的更实用建议?
是否有值得掌握的关键文本?
任何伟大的社区/论坛都可以讨论您正在学习的内容吗?
/>

评论

“很少有测试者学习”系统思维是过于笼统的概括。系统思考不仅适用于测试人员,而且适用于软件中的许多人员。实际上,有人可能会辩称,任何在学校学习过生物学或其他自然科学的人都在某种程度上“研究”了系统思维。当然,将系统思想应用于软件测试(或工程)的能力是关键。 (FWIW我从未见过孤立地测试单个组件的测试人员,但是也许您的经验有所不同。)

公平点-我一点也不试图暗示系统思考仅对测试人员有用。我要解决的这个问题是尝试为想要将系统思维本身作为主题研究的测试人员收集资源记录。我相信,能够使用词汇表和系统思考的概念来检查测试问题可能会有所帮助,即使其中一些概念在您刚开始阅读有关问题时似乎有点熟悉(而且对于那些一直在关注)。感谢您的反馈-我将考虑如何改善问题

在攻读软件工程学位时,我实际上曾接受过系统思维方面的培训-偏爱于此,以便刷新知识。

罗素·阿科夫(Russell Ackoff)博士的演讲为系统思考提供了很好的例子。

#1 楼

有Weinbergs的“通用系统思想入门”书和他的“ Quality Software Management”(质量软件管理)第1卷(其他两卷也可能适用)。

我在该网站上找到了一些不错的读物“系统思考评论”,例如“以正确的方式种植土豆”。

希望其他人对此有所补充,我将非常感兴趣地看看他们提出了什么。

评论


为systemthinkingreview站点+1,尤其是他们的播客:itunes.apple.com/gb/podcast/the-systems-thinking-review/…

– DuncN
2012年1月23日在13:44



“种土豆...”的文章很棒!您在软件测试环境中有任何类似的故事吗?

– dzieciou
2012年12月16日上午10:48

#2 楼

Donella Meadows的系统思维:入门是从动态系统及其特征模式入手的好地方。
http://www.amazon.co.uk/Thinking-Systems-Donella-H-Meadows/dp/ 1844077268 /

评论


谢谢James,出色的记录员(我有那本书,目前正在阅读)。另外,很高兴在这里见到你!

– testerab
2012年1月20日19:14

#3 楼

Phil K提供了一些很好的参考,事实上,我正在阅读《通用系统思维入门》。

我最近遇到了Kenneth Boulding的一篇文章,他在书中被Gerald Weinberg引用(值得一读)。阅读)关于他对通用系统思维的看法:http://www.panarchy.org/boulding/systems.1956.html

#4 楼

我想解决一个您所关注的问题:


关于如何开始应用不同系统概念的更实用建议呢?


系统思考对于测试人员的日常工作很有用:计划测试(要测试什么以及如何进行测试?),隔离缺陷(根本原因在哪里?)和验证修复程序(可能是什么原因)受修复影响吗?如果仅测试此方法,我是否会获得足够的信心?)。

我不知道有哪本书可以从系统思考的角度来解决这些任务。但是,根据我的经验,了解系统行为是如何从其组件和子系统的行为中出现的。您可以通过分析系统架构并分析用户与系统的交互方式(用户是系统的一部分!)来综合这些知识。

了解系统架构

这将有助于学习系统思考,而思考的范围通常是软件体系结构,尤其是特定技术。向开发人员,架构师和操作人员询问有关该系统的问题也可以有所帮助。为了获得完整的系统图,我经常会问一些问题,例如:


这些组件如何相互作用?
系统不同层之间的关系是什么? X是直接访问数据库还是通过某些外观,Web服务或队列访问DB?
它们紧密耦合在一起吗?通过接口,格式?它们是同步还是异步交互?
系统中的数据流是什么?
如果这里发生错误,会影响到它吗?错误如何在系统中传播?
这些库是否在不同组件之间共享?替换该库是否可能导致此缺陷?
操作系统与我们的系统之间有什么关系?假设您要将应用程序从64位系统移植到32位系统。我们现在使用的64位OS / VM有哪些功能需要验证?
我们与这个DBMS有多紧密的结合?我们是否使用MSSQL不支持的Oracle的任何特定功能?
如何使用这些德国标签/区域设置文件?它们存储在前端还是后端?如果我更改它们,用户会立即看到更改,还是内容缓存在某处?
应用程序是否有状态?什么改变了应用程序的状态?应用程序的行为取决于其状态吗?状态对于整个应用程序而言是相同的,还是针对每个用户/会话而言是特定的?

用户是系统的一部分

与您的业务分析人员进行交谈,现有用户可以帮助理解他们之间的关系与系统。例如:


用户如何才能同时使用此功能?它们可以互相干扰吗?
用户是否会立即收到通知,或者链中涉及其他过程或过程?它可以阻止系统吗?
资源权限和用户权限之间是什么关系?也许她因为未获得查看权限而无法看到它?
此功能的用户是谁?技术人员?