西门子TP1200显示屏
软件工程中遇到的问题几乎总是如此。软件测试人员可以使用定性研究方法来解决在测试中遇到的与人相关的低效问题,而项目经理们则可以使用这些方法来研究团队的社交指标会如何影响效率。设计师、开发人员以及需求工程师们可以使用定性研究方法来更深入地理解他们的用户,以便更好地满足用户的需求。当你需要分析谁、什么、何时、何地、怎么做以及为什么之间的关系的时候,定性研究方法就可以帮上忙。
使用定性研究方法就和当个名侦探或者记者一样:关键是要发现事实真相,并讲一个令人信服的故事——但同时还必须意识到从不同的角度会看到不同的事实真相。你会如何来发现这些角度在很大程度上取决于研究的状况。你需要对研究所处的社会背景有所领悟,这样你才能知道谁可以信任、他们存在哪些偏见以及他们的哪些动机可能会影响你的判断。只有具备了这些认识之后,你才能确定如何结合使用直接观察、跟踪观察、访谈、文档分析、日记研究等方法。
*后,你是否信任这项研究的输出及其推论?学术论文的写作标准要求将研究结果和推论区分开来,以方便读者确定他们是否可以根据同样的证据得出同样的结论。但是在Knuth的文章中,他从头到尾都把两者混在了一起,不但详细地介绍了TeX的各种故障,也提出了他的研究推论。比如说,在描述了关于意外类错误(Knuth说这些是全局误解)的各种有趣故事之后,他这样说道:
这段经历告诉我们,所有的软件系统都应该经历你能想象到
浔之漫智控技术(上海)有限公司(w)是中国西门子的合作伙伴,公司主要从事工业自动化产品的集成,销售和维修,是全国的自动化设备公司。公司坐落于中国城市上海市,我们真诚的希望在器件的销售和工程项目承接、系统开发上能和贵司开展多方面合作。以下是我司主要代理西门子产品,欢迎您来电来函咨询,我们将为您提供优惠的价格及快捷细致的服务!
善*难对付的测试的磨炼,否则,即便在大量部署并取得较好的反响之后的数年中,我们也几乎可以肯定系统会不断地产生bug。
当结果和推论并排在一起的时候,读者就很容易忘记这二者的区别,也会忘记应该将它们分开来分析。我相信Knuth对于这些(导致了上述推论的)故事的记忆,因为他描述了他记录这些故事的流程。但是,我认为Knuth过度解读了这些故事的意义,使其更符合他的结论。如果Knuth花了如此多的时间在痛苦测试上,他还有可能完成TeX吗?我相信他的日记
我们还可以把开发人员从这个方法中完全剔除出来,只研究文档。开发人员们在旧系统中报告了哪些bug,又在新系统中报告了哪些这样我们也许可以发现开发人员不愿在新系统中报告的bug类型。这样你也许可以找到一些使用旧系统的原因,但是真正的原因仍然存在于团队成员的头脑之中。
上述几种都是定性研究的方法,他们都有各自的局限性。要想解决这些限制,我们就必须接受它们:只用一个方法无法揭示完整而不偏不倚的事实。好的人文研究会结合多种方法,并将各种方法得出的证据结合在一起。举例来说,比如你既对员工们进行了访谈,又调查了哪些bug是在新系统中提交的。两种方法给你的结论虽然不同,但相互之间或多或少的有一致性。通过对比这些结论的相同点和不同点,你就可以了解到这个问题的真正答案。