ProjectCodeMeter提供开发项目分析功能,可以在软件界面直接分析项目进度,可以对远程员工,自由职业者或外包的工作时间评估,可以评估您的源代码所花的时间和金钱,通过分析类似物来预测开发预算和进度,也支持监视开发团队生产力的下降数据,可以将您的开发效率与统计平均值进行比较,从而获取警告和效率指标,本软件功能丰富,可以,可以分析的内容很多,新版提供详细的源代码指标:重复的行,重构的代码,循环复杂性,增加的代码增长估算,改进的源代码差异比较:检测已删除的代码,改进的用户界面体验,如果你需要这款软件就下载吧!
软件功能
ProjectCodeMeter 软件简介
ProjectCodeMeter 是一款专业的软件工具,可让项目经理通过分析其源代码来评估和评估软件项目的时间,成本,复杂性, 质量和可维护性以及开发团队的生产率。通过使用称为加权微功能点(WMFP)的现代软件大小调整算法,可替代祖先科学方法(如COCOMO,环复杂性和Halstead复杂性)。比传统的软件大小调整可提供更准确的结果 工具,同时配置起来更快,更简单。通过使用ProjectCodeMeter,项目经理可以在几分钟内洞悉软件源代码开发,从而节省了浏览代码的时间。
软件开发成本估算
ProjectCodeMeter 衡量(由普通程序员)将项目设计应用于代码中所做的开发工作,包括:编码,调试,名义代码重构和修订,测试以及错误修复。从本质上讲,该软件旨在回答“ 普通程序员创建该软件需要多长时间? ” 的问题,这是为软件开发工作定价的关键问题,而不是其花费的开发时间。您在特定办公环境中的特定程序员,这可能无法反映出客户从效率较低/效率更高的竞争对手那里获得的价格,这是可靠的统计模型的来源,APPW 它从对传统成本模型的研究以及现代软件开发方法论中的许多新研究案例中得出数据。
软件开发成本预测
ProjectCodeMeter 通过使用与您要创建的项目类似的功能,可以预测开发软件所需的时间和成本。这种基于类比的 成本估算模型的前提是,与像COCOMO之类的传统成本估算模型那样,准确地回答对项目属性(成本驱动因素)进行评级的众多问题相比,选择具有类似功能的项目需要更少的专业知识和经验。和COSYSMO。
在为实施未来项目提供报价时,所需的成本估算是普通程序员执行该实施的成本,因为这是与竞争对手提供的报价最接近的估算。
软件开发生产力评估
评估开发团队的生产力是管理决策的主要因素,影响项目管理的许多方面,包括:角色分配,目标产品价格标签,进度和预算计划,评估市场竞争力以及评估 成本效益外包。ProjectCodeMeter允许项目经理在几分钟之内密切关注项目源代码的进度,如果开发效率下降,则可以立即获得指示。ProjectCodeMeter 可以主动监视软件开发进度,通过合计多个分析测量结果(称为里程碑)。结果自动比对项目时间跨度,以及APPW 的平均开发团队的统计模型, 以及(如果有的话)的实际时间 ,产生生产率百分比值以评估您的团队绩效。
软件特色
即使在两个软件源代码包含相同的行数(SLOC)的 情况下,ProjectCodeMeter产生的时间测量值也可以为评估软件大小提供一个标准,客观,可重复和可比较的值。WMFP 考虑了源代码的复杂性。
代码质量检查ProjectCodeMeter 生成
的 代码度量标准指示了影响维护性,重用性和同级审查的一些基本和必要的源代码质量。如果这些指标中的任何一个表明存在问题,ProjectCodeMeter也会显示 文本通知。广泛的编程语言支持
ProjectCodeMeter支持许多编程语言,包括C,C ++,C#,Java,ObjectiveC,DigitalMars D,Javascript,JScript,Flash ActionScript,UnrealEngine和PHP
代码质量指标
这些代码度量标准指示了影响可维护性,重用性和同行评审的一些基本源代码质量。如果这些指标中的任何一个表明存在问题,ProjectCodeMeter还将在“ 摘要”和“ 质量报告”的“ 质量注释” 部分中显示文本通知。代码质量注释计数 -显示指示质量问题的警告数量。理想情况下,该值应为0,更高的值表示该代码将难以维护。
代码注释率(CCR)
显示注释行和代码语句(LLOC)之间的平衡,值为100表示每个代码行都有一个注释,较低的意味着只有一些代码行具有注释,而较高的意味着每个代码有多个注释线。例如,值60意味着只有60%的代码语句具有注释。请注意,这是一个平均值,因此注释可能不会在文件中平均分散。
基本注释因子(ECF)
显示高质量注释 行和重要代码声明(代码行)之间的平衡。重要的代码语句是具有较高复杂度的语句。值100表示每个重要的代码语句都有高质量的注释,值较低意味着只有一些代码行具有注释,而值较高意味着每个代码行有多个注释。例如,值为60意味着只有60%的重要代码语句具有高质量的注释。这种指示很重要,因为至关重要的是,复杂的代码行必须有注释来解释它们。请注意,这是一个平均值,因此注释可能不会在文件中平均分散。
代码结构模块化(CSM)
表示将代码划分为类和函数的程度。大约100的值表示每个模块的代码平衡良好,较低的值表示模块性低(大量代码),较高的值表示分段的代码。
逻辑密度(LD)
指示程序代码中逻辑的凝聚方式。较低的值表示将较少的逻辑打包到代码中,因此可以表示简单明了或自动生成的代码,而较高的值表示更可能由人生成的代码。
源散度熵(SDE)
指示逻辑操作对象的程度。值越高,意味着操纵越多。
信息多样性因子(IDF)
指示对对象进行了多少重用。更高的价值意味着更多的重用。
对象卷积因子(OCF)
显示对象彼此相互作用的程度。价值越高意味着互动越多,因此信息流越复杂。
安装方法
1、打开软件直接将其安装到电脑,点击agree
2、设置软件的安装C:\Program Files (x86)\ProjectCodeMeter
3、提示软件的安装完毕界面,可以在电脑桌面打开软件使用
4、软件界面如图所示,如果你会使用这款软件就下载吧!
官方教程
ProjectCodeMeter的准确性
ProjectCodeMeter使用WMFP 分析算法的APPW 在其计算的基础统计模型。与所有统计模型一样,数据集越大,其与统计数据越接近,因此分析的源代码(或差异)越小,可能的偏差就越大。
该APPW模型假定几个先决条件,商业项目的发展是必不可少的:
A.程序员是有经验的语言,平台,开发项目所需的方法和工具。
B.已经编写了项目设计和规格文件,或者将单独测量功能设计阶段。
满足这些前提条件的程度以及所需用户输入的准确性设置,影响结果的准确性水平。
ProjectCodeMeter 衡量(由普通程序员)将项目设计应用到代码中所做的开发工作,包括调试,名义代码重构和修订,测试以及错误修复。请注意,它仅衡量开发时间,不衡量学习,研究,设计,文档,包装和营销方面的外围工作:创建项目设计和描述文档,研究,创建数据和资源文件,背景知识,系统架构研究,针对有限速度或大小限制的代码优化,未记录的重大项目重新设计或修订,GUI设计,设备故障,原始代码中嵌入的复制代码,致命的设计错误。
还要注意,在 表现出高规格重新设计的开发过程中,或者在进行了重大重新设计的项目上,这些项目导致超过标称数量的代码被扔掉(删除),ProjectCodeMeter将把开发时间计算为低于实际时间 。为了解决这个问题,请在每次重大重新设计之前保存源代码快照,并使用累积差异分析 代替简单的正态分析。 请注意,差异分析不考虑重构,因此重构后的代码将比实际花费更多的精力。
根据Schemequest Software的软件大小调整算法的比较,根据美国航空的一项研究,COCOMO II模型显示了75%的测量项目的70%准确性,而较旧的COCOMO 81模型显示了58%到68%的测量项目的80%准确性。部队技术学院。相比之下,WMFP + APPW在80%的被测项目中显示出82%的准确性,突破了80/80的门槛。
语言特定的限制
计算精度
由于该算法使用高精度小数点来计算和存储数据,并且通常显示的数字中没有小数点(整数),因此结果是,所添加的几个数字看起来可能会提供比预期更高的总和,因为该软件包括小数点值。例如2 + 2可能会得出5,因为实际数据是2.8 + 2.9 = 5.7,但是用户只能看到整数部分。这是一件好事,因为计算和总和的计算精度高于可见的精度。
代码语法
给定无效或非标准的源代码,ProjectCodeMeter将尽最大努力理解您的源代码。要求源代码有效并且最好是可编译的。ProjectCodeMeter不是代码错误检查程序,而是代码良好实践指导(除了是成本估算工具之外)。为了进行错误检查,请使用诸如lint之类的静态代码分析器以及代码覆盖率和代码分析器工具。
COSYSMO
该建设性系统工程成本模型(COSYSMO)是由里卡多Valerdi创建,而在南加州中心大学的软件工程。它估计了将花费在硬件和软件项目上的人员系统工程资源所需的人月数。该模型最初于2002年开发,现在包含由大型航空航天和国防公司(例如,雷神公司,诺斯罗普·格鲁曼公司,洛克希德·马丁公司,上汽集团,通用动力公司和BAE Systems)提供的50多个项目的校准数据集。
COSYSMO支持ANSI / EIA 632标准作为标识系统工程任务的指南,并支持ISO / IEC 15288标准标识系统生命周期的阶段。CSSE的几位会员,LAI联盟成员和国际系统工程理事会(INCOSE)的成员都参与了驱动程序的定义,等级量表的制定,数据收集以及模型的战略方向。
与其前身COCOMO相似,COSYSMO根据系统功能大小来计算工作量(和成本),并根据与系统工程相关的许多环境因素对其进行调整。
COSYSMO的中心成本估算关系或CER的形式为:
其中“大小”是四个大小加法大小驱动因素之一,而EM表示十四个乘数乘数乘数之一。
COSYSMO根据程序大小和一组“成本动因”来计算软件开发工作量,其中包括对产品,硬件,人员和项目属性的主观评估:
估算内部预算计划的未来项目进度和成本
在计划软件项目时,您需要验证项目开发是否在组织可用或分配给项目的时间和预算限制之内,并且在从目标价格标签中扣除成本后,确保剩余足够的利润率。
分步说明:
1。 创建一个项目文件夹,其中包含将来项目中需要的具有类似功能的文件集合。通常从您较旧的项目中获取文件,或者从一个开放源代码存储库网站中下载一个开放源代码项目。请注意,该代码不需要是可编译的,因此无需修复任何错误或创建实际的IDE项目或构建脚本,也无需添加任何自动生成的文件,以及功能已经包含在代码库中的文件。
2. 确保电子表格或浏览器中没有打开的ProjectCodeMeter报告文件,因为这会阻止更新这些文件。
3。在“项目文件夹”文本框中选择该文件夹(确保不要选择“差异比较”)。
4.选择 描述项目的设置以及开发团队可以使用的工具,以及 一名 开发人员的实际平均 每小时总价格(包括薪金,税金,福利,办公室租金,支持人员成本等) ,获得这个数字的最简单方法是,将您整个公司的每小时费用除以同时开发的项目数量,然后除以该项目的开发人员数量。
5. 单击“分析”按钮。当 分析完成后,时间和成本的结果将在右下角显示 总结屏幕
与Microsoft Visual Studio 6集成
在“ 工具 - 自定义...”菜单下:
整个项目的手动分析:
标题:ProjectCodeMeter
命令: C:\ Program Files \ ProjectCodeMeter \ ProjectCodeMeter.exe
参数: / P:“ $(WkspDir)”
初始目录: C:\ Program Files \ ProjectCodeMeter
所有可选复选框都应取消选中。
与Microsoft Visual Studio 2003集成-2010
根据工具 - 外部工具..菜单(您可能需要先点击工具-设置-专家设置):
整个项目的手动分析:
标题:ProjectCodeMeter
命令: C:\ Program Files文件\ ProjectCodeMeter \ ProjectCodeMeter.exe
参数: / P:'$(SolutionDir)'
初始目录: C:\ Program Files \ ProjectCodeMeter
所有可选复选框都应取消选中。
项目码表
分析结果图
图表可以显示“ 摘要”和“报告”文件中已经存在的数据。仅在分析过程完成并且已获得整个项目的有效结果时才显示它们。过早地停止分析将阻止显示图表和摘要。
分钟条形图
显示整个项目的WMFP度量标准。用于可视化开发人员在每种指标类型上花费的时间。结果以分钟为单位显示,并带有可选的单字母后缀:K代表数千,M代表百万。 请注意,带M或K后缀的数字将四舍五入。
在上面的示例图像中,Ttl(以分钟为单位的总项目开发时间)表示9K,表示9000-9999分钟。DT(数据传输开发时间)指示490,这意味着490分钟用于开发数据传输代码。
百分比饼图
显示整个项目的WMFP度量指标。有助于可视化根据每种度量标准类型划分的开发时间和成本分配,以及通过注意到占主导地位的度量标准百分比(例如,面向数学(AI),面向决策(FC)或数据I)来指示项目的性质面向/ O(DT和OV)。
在上面的示例图片中,OV(深蓝色)非常高, 标称DT(浅绿色),典型的是FC(橙色),而AI (黄色)则低于1%,因此未显示。这表明项目性质是面向数据的,具有相对较低的复杂性。
组件百分比条形图
显示 发力百分比每个组件相对整个项目,如计算由APPW模型 。根据三个主要的开发组件对编码时间,成本分配进行虚拟化很有用:编码,调试和测试。
在上面的示例图像中,开发时间和成本的大部分都花在了编码上(61%)。
加权微功能点(WMFP)
WMFP是 由Logical Solutions于2009年发明的一种现代软件大小调整算法,是固体祖先科学方法(如COCOMO,COSYSMO, Maintenanceability Index,Cyclomatic Complexity和Halstead Complexity,它 比传统的软件大小调整工具产生更准确的结果,同时需要更少的最终用户配置和知识,因为大多数估算是基于对现有源代码的自动测量。由于许多祖先测量方法都 使用源代码行(LOC)来测量软件大小,因此WMFP使用解析器来了解将源代码分解为微函数并得出若干代码复杂性和体积指标,然后将其动态 内插到最终代码中。努力得分。
被测元素
WMFP测量 元素是WMFP算法分析从源代码推导出的几个不同度量。它们表示为整个单位(项目或文件)工作量的百分比,并转换为时间。根据上下文,ProjectCodeMeter以绝对分钟为单位,以文件或项目的百分比显示这些元素。
流复杂度(FC) -以类似于传统“ 循环复杂度”的方式测量程序的流控制路径的复杂度,并通过使用权重和关系计算来提高准确性。
对象词汇量(OV)-测量程序源代码中包含的独特信息的数量,类似于具有动态语言 补偿的 传统 Halstead词汇表。Object Conjuration(OC) -通过程序源代码中包含的信息来衡量使用量 。算术复杂性(AI) -测量整个程序中算术计算的复杂性数据传输(DT) -测量程序代码结构(CS)中数据结构的操纵
-测量在程序结构上花费的精力,例如将代码分为类和函数
内联数据(ID) -测量在嵌入硬编码数据上花费的精力
评论(CM) -测量在编写程序评论上花费的精力
计算方式
WMFP算法使用三个阶段的过程:功能分析,APPW转换和结果转换。
如下图所示:
动态算法平衡并求和被测元素,并得出总努力得分。
M = WMFP分析阶段测得的源指标值
W = APPW模型分配给指标M的调整权重
N =指标类型的计数
i =当前度量标准类型索引(迭代)
D =用户输入提供的成本动因因子
q =当前成本动因索引(迭代)
K =成本动因计数
∨ 展开