本文是学习功能点度量的笔记,原文是三位日本前辈的一篇论文(Takuya UEMURA, Shinji KUSUMOTO, and Katsuro INOUE)
从UML到Function point的映射,主要是使用了类图和时序图。在功能点分析的机制中运用于未调整功能点(Unadjusted Function Point)的识别。
计算Data Function Types
1 选择具有属性的,且和非角色对象交互(non-actor objects)的对象作为data functions(DF)的候选
2 在所有候选中,具有改变其他对象操作的对象作为ILF,此外都是EIF
3 无论ILF,EIF,他们的属性的个数作为DET,RET常为1(根据经验)
对应的IFPUG的相关定义:
ILF:系统边界内部的,由软件所维护的持久化逻辑数据
EIF:系统边界外部的,由另一个软件所维护的,仅仅是被所度量软件引用的持久化逻辑数据
DET:
RET:
rel="File-List" href="file:///C:%5CUsers%5CRosicky%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml"> rel="Edit-Time-Data" href="file:///C:%5CUsers%5CRosicky%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_editdata.mso"> rel="themeData" href="file:///C:%5CUsers%5CRosicky%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx"> rel="colorSchemeMapping" href="file:///C:%5CUsers%5CRosicky%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml">
计算Transactional Function Types
Rule1
EI = m
DET = |args|
RET = 1
Rule2
If args = DF.attributes then EQ = m
Else EO = m
DET = |args|
RET = 1
Rule3
If m2.args = DF.attributes then EQ = m1 + m2
Else EO = m1 + m2
DET = |args|
RET = 1
Rule4
Rule4 = Rule1 + Rule2