【问题标题】:What is the best method to gather data about the use of your application?收集有关应用程序使用情况的数据的最佳方法是什么?
【发布时间】:2008-09-27 14:00:30
【问题描述】:

我的公司发布了一个小型软件产品,我最近接手了该产品的开发工作。它是一个 C# Windows 窗体应用程序。

我注意到的一件事是,有关软件使用方式的大部分信息都是通过我的上级过滤的,我觉得我在某些信息中遗漏了重要的细节。

我意识到我必须解决这种情况下的管理问题,但是为了对这个问题提出另一种看法,我一直在考虑采用技术解决方案。可能类似于“Microsoft 客户体验改善计划”。

我想知道是否有人对监控和报告其应用程序中的用户行为有任何经验或建议?

【问题讨论】:

  • 我在当前项目中遇到了同样的问题。客户使用软件的方式与我们在公司中使用的方式不同。我只是通过观察客户使用软件来了解大部分内容,但这对你来说太容易了,对吧? :)
  • 实际上,正如我试图表明的那样,OregonGhost,我与客户完全隔离。另外,“关注客户”并不是我所希望的编程极客答案,尽管这是一个很好的建议并感谢它。

标签: .net winforms user-interface measurement


【解决方案1】:

我建议您让您的应用程序在某处写入其“使用信息”,然后在用户许可的情况下,每隔一段时间以电子方式传输它。

请注意上面的重点。根据您所在的司法管辖区,您可能会在未经许可的情况下从其他人的计算机传输任何类型的数据时遇到严重问题。

如果满足以下条件,您更有可能获得许可:

1/ 您明确表示,在安装或更新时,您的程序只会在获得许可的情况下收集和传输信息。

2/ 你清楚地解释了信息是什么,它只包含“使用信息”,没有任何东西可以追溯到软件的用户(没有序列号等)。

3/ 您请求不经常传输的许可。如果我有一个讨厌的程序每天都问我,我很快就会完全停止使用它。

【讨论】:

  • 除了你所说的。我们还会向客户展示我们发送的数据。
【解决方案2】:

我相信您已经就技术解决方案的隐私方面的问题得到了很好的回答。

我还想提一下,您应该尝试在正常的 80/443 端口上使用 HTTP 或 HTTPS - 这些最不可能导致防火墙和代理出现问题。使用 MS IE 代理设置,因为它们通常设置正确。


从完全不同的角度来看,我想说了解您的软件使用情况的最佳方法是检查您的安装群中是否有任何“友好”用户并采访他们。 可能是一些合作伙伴公司或作为新版本测试版的“试点组”的人。跟他们讲话。抓住你的经理,如果可能的话,花一天时间去他们的网站,自己看看怎么做,然后他们点击按钮。做笔记。听取反馈。建立个人关系,以便下次他们直接与您交谈。

如果您的应用程序很小,而且您的公司不是 Microsoft,那么与您的用户群保持密切联系要比收集匿名使用数据要好得多,因为匿名使用数据需要花费大量精力来收集和处理,然后再花费更多精力来理解。

【讨论】:

    【解决方案3】:

    一个想法是在您的用户许可的情况下发送匿名统计数据。

    另一个想法是在您的应用程序中提供一个大的报告错误/提出问题按钮,以便他们可以告诉您何时发生他们认为错误的事情,您会在报告中发送应用程序状态。

    始终清楚您将要发送什么,并让用户可以选择非匿名(始终将匿名数据设置为默认值),当您通过用户选择获得大量非匿名数据时,您可能会感到惊讶.

    并且通过使用用户的语言来明确,永远不要说“我要发送应用程序堆栈和堆的当前状态的 Blowfish 加密内存转储。是/否?”,而是像“我'将发送您在程序中的活动列表:您单击的按钮以及您打开的文件的类型和数量。这将帮助我们为您创建一个更好的程序,但您可以选择您希望我们接收的内容。 "

    【讨论】:

      【解决方案4】:

      免责声明:我是这个产品的开发者,所以我可能对它有多棒有点偏见:)

      目前市场上有一种产品可以为您提供用于 .NET 和 Java 应用程序的此功能,我们称之为运行时智能。详情请参阅:http://www.preemptive.com/runtime-intelligence-services.html

      该产品目前可用于 .NET 和 Java,Visual Studio 2010 中将包含提供有限功能集的免费版本。

      可以跟踪应用程序的使用情况,范围从执行次数和操作系统/框架版本的高级统计数据到各个功能的使用频率。

      我们为您提供了一种方法,让您的用户可以选择加入或退出使用数据的传输,并且数据通过 SSL(默认)或标准 HTTP 发送。对您的应用程序的性能影响很小,我们非常注意不影响您的代码的响应能力。

      此解决方案非常适合评估或 Beta 测试,因为您可以直接跟踪应用程序的使用情况,而不是依赖调查或猜测用户在做什么。

      对于已发布的应用程序,这提供了客户体验改进计划的基架,并且对累积数据的可见性对从高层管理人员到开发人员的每个人都很有价值。

      我们发现只需不到一个小时就可以设置一个基本使用情况报告应用程序,而无需更改代码,因为我们可以直接处理程序集二进制文件。

      有关定价信息或获得评估,请通过我们的网站联系销售,因为我只是一名开发人员:)

      如需详细技术信息或任何其他问题,请随时与我联系。

      【讨论】:

        【解决方案5】:

        实际上,我认为您正在尝试做简单的商业智能。

        不要忘记设置“适当的”仪表板以跟踪您收集的数据,深入思考您将实施的指标。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-19
          • 1970-01-01
          • 2016-11-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多