标签: metrics

如何说服你的开发人员编写简短的方法?

长期方法在某些方面是邪恶的:

  • 他们很难理解
  • 他们很难改变
  • 它们很难重复使用
  • 他们很难测试
  • 他们的凝聚力很低
  • 它们可能具有高耦合
  • 他们往往过于复杂

如何说服你的开发人员编写简短的方法?(武器被禁止=)

来自agiledeveloper的问题

language-agnostic metrics

33
推荐指数
8
解决办法
2347
查看次数

软件开发指标和报告

最近我有一些关于软件开发指标的有趣对话,特别是它们如何在一个相当大的组织中使用,以帮助开发团队更好地工作.我知道有一些关于哪些指标可以使用的Stack Overflow问题 - 比如这个,但我的问题更多的是关于哪些指标对哪些利益相关者有用,以及在什么级别的聚合.

作为一个例子,我的观点是代码覆盖率在以下方面(也可能是其他方式)是一个有用的指标:

  • 当与其他测量结合使用时,团队自己的内部使用.
  • 对于促进/启用/指导团队而言,在逐个团队的基础上考虑作为趋势可能是有益的(例如,如果团队A和B在本月75和50的覆盖范围内,我会更关心团队如果前一个月他们有80和40,那么比B还要多.
  • 对于高级管理人员,在多个团队或整个部门中作为汇总统计数据呈现.

但我认为高级管理层在逐个团队的基础上看到这一点是有用的,因为这鼓励人为尝试通过仅运用而不是测试代码的测试来支持覆盖.

我在一个管理层次结构中有几个级别的组织中,但绝大多数管理人员都具有技术头脑和能力(许多人仍然沾沾自喜).一些开发团队在推动敏捷开发实践方面处于领先地位,但其他开发团队则落后,现在有一个严格的要求从最高层开始,以便组织的工作方式.我们中的一些人正在启动一项计划来鼓励这一点.在这种组织中,您认为哪种指标有用,对谁,为什么以及在什么级别的聚合?

我不希望人们根据他们可以人为影响的指标来评估他们的表现.与此同时,高级管理层将需要某种证据证明正在取得进展.根据您自己组织的经验,您可以提供哪些建议或警告?

编辑

我们绝对希望将指标用作组织改进的工具,而不是作为个人绩效评估的工具.

metrics code-coverage

31
推荐指数
2
解决办法
6901
查看次数

如何衡量软件开发绩效?

我正在寻找一些衡量软件开发团队绩效的方法.使用构建工具是个好主意吗?我们使用Hudson作为自动构建工具.我想知道我是否可以从Hudson报告中获取信息,并从中获取每个程序员的进度.

project-management metrics

28
推荐指数
5
解决办法
6万
查看次数

什么是最有用的软件开发指标?

我想跟踪可用于改进团队软件开发过程,改进时间估算以及检测项目执行期间需要解决的特殊情况变化的指标.

请将每个答案限制为一个指标,描述如何使用它,并投票给好的答案.

metrics process

27
推荐指数
8
解决办法
2万
查看次数

良好的PHP度量工具

我使用Netbeans在PHP中编写了一段时间,但它没有提供任何获取代码指标的工具.我之前也使用过SourceMonitor,但它不支持PHP,与Code Analyzer相同.

有没有人使用过,可以推荐任何从PHP代码获取代码指标的工具?

php metrics lines-of-code

26
推荐指数
2
解决办法
1万
查看次数

Mixpanel匿名用户转换为已识别的用户跟踪

我正在将Mixpanel添加到我的Web应用程序中,并且我很好奇当用户从"匿名"(未登录/注册)转换为"已识别"(当他们注册/创建帐户时)发生的情况的"过程"网站).

如果用户进入并且是该站点的新用户,则会获得匿名UUID(根据文档).该文档还说,Mixpanel目前无法在ID之间进行转换.

这是否意味着Mixpanel无法处理未注册用户向注册用户的转换,并在他们成为注册/识别用户之前跟踪他们的事件?

如果是这样,有没有人有解决这个问题的经验?你怎么样的?

javascript cookies metrics tracking mixpanel

26
推荐指数
3
解决办法
1万
查看次数

FnordMetric:我的Toplist Gauges消失了

我想做什么

我通过rails gem上ruby使用FnordMetric Classic,如Railscasts#378所示.fnordmetric

我想有一个我的"热门页面"列表,其中页面是我的网络应用程序的一种内容.

问题

无论使用的版本,在生产和开发中,我所谓的toplist仪表的内容都在不断消失.

这可以在下面的屏幕截图中看到,其中"热门页面Toplist Gauge" 的列表" Top Keys "是空的,其中应该填充最多访问的页面.

截图 -  toplist gauge是空的,但它不应该

一些观察

  • 例如,当我触发事件时,访问受监控应用程序上的页面时,访问的页面将显示在fnordmetric toplist量表中.但几分钟后,它就消失了.
  • 我试图增加存储持续时间设置,没有效果.
  • 从屏幕截图中可以看出,样本数不为零(为2.00).因此,数据必须位于数据库中,但不会显示.

源代码

这是创建此规范的源代码的相关部分:

 # script/fnordmetric_app.rb
 require 'fnordmetric'

 FnordMetric.namespace :my_web_app do
   toplist_gauge :popular_pages, title: "Popular Pages"
   event :show_page do
     observe :popular_pages, data[:title]
   end
   # ...
 end

 FnordMetric::Web.new(port: 4242, use: middleware)
 FnordMetric::Worker.new
 FnordMetric.run
Run Code Online (Sandbox Code Playgroud)

有谁知道我做错了什么?

metrics ruby-on-rails

26
推荐指数
1
解决办法
689
查看次数

声明和决策覆盖范围之间的差异

据说语句覆盖确保代码中的每个语句至少执行一次.据说
决策/分支覆盖测试是测试决策的每个分支/输出,即将执行假/真分支中的所有语句.
但是不一样吗?在Statement覆盖中我需要执行所有语句,所以我想它只能通过运行所有可能的方式来完成.我知道我在这里遗失了一些东西..

metrics code-coverage

24
推荐指数
3
解决办法
4万
查看次数

Timer和Meter指标的分钟率表示什么

为了给出上下文,我们尝试基于Yammer度量信息实现报告功能.

Yammer指标提供有关计时器和仪表的信息,如下所示,

METER_METRIC:
             count = 1
         mean rate = 0.01 count/s
     1-minute rate = 0.00 count/s
     5-minute rate = 0.00 count/s
    15-minute rate = 0.00 count/s

TIMER_METRIC:
             count = 1
         mean rate = 0.01 calls/s
     1-minute rate = 0.01 calls/s
     5-minute rate = 0.00 calls/s
    15-minute rate = 0.00 calls/s
               min = 89.77ms
               max = 89.77ms
              mean = 89.77ms
            stddev = 0.00ms
            median = 89.77ms
              75% <= 89.77ms
              95% <= 89.77ms
              98% <= 89.77ms
              99% <= 89.77ms
            99.9% <= 89.77ms …
Run Code Online (Sandbox Code Playgroud)

java metrics yammer

24
推荐指数
1
解决办法
2万
查看次数

什么代码指标说服您提供代码是"糟糕"?

每个文件的代码行,每个类的方法,圈复杂度等.开发人员抵制并解决大多数(如果不是全部的话)!有一篇很好的Joel文章(没时间找到它).

您建议使用哪些代码指标来自动识别"糟糕的代码"?

什么可以说服大多数(你不能说服我们所有人一些糟糕的指标!:O))开发人员认为这个代码是"废话".

只有可自动测量的指标才算重要!

language-agnostic automation metrics software-quality

23
推荐指数
9
解决办法
3924
查看次数