The Data Tree
Counting Logical Files.
This tree represents the data storage and data retrieval functionality of your software application.
Functional size derived from the data tree is based on the type of Data Group and the combined effect of the number of Record Element Types (RETs) and Data Element Types (DETs) it contains. Where a:
- RET is a unique user recognisable sub-group of DETs within a data group.
- DET is a unique user recognisable field.
The data tree is the only tree with Four types of nodes instead of two. (See also Detailed Recording of Data Groups)
The Four node types are:
- Data Group Folder, is the parent level 1 node, that can exist by itself (i.e. without any nested child nodes), or can optionally contain a collection of Data Groups, or DETs (but not a mixture of both). E.g. CRM System Reference Files = Customer Discount Rules, Customer Billing Rules, Files from other Applications. You can create a hierarchy of Data Group Folders to assist you in grouping your Logical Files.
- Data Group, is the parent level 2 node, that can exist by itself (i.e. without any nested child nodes), or can optionally contain a collection of RETs, or a collection of DETs (but not a mixture of both). E.g. Invoice File = Data Group.
- RET, is a child node of a Data Group and may optionally contain a collection of DETs. E.g. Invoice Header, Invoice Item Details are sub-groups of the Invoice Data Group.
- DET is the lowest level node and may be a child of a Data Group or RET. E.g. Invoice Number, Invoice Date are fields within the Invoice File Data Group and are child nodes of the Invoice Header RET.
As with the Function Tree, you can choose the level of detail you wish to enter.
HINT: It is good function point counting practice to map your Logical Data Groups listed in the Data Tree to the name of their corresponding Physical File in the Notes Tree. Create a Notes SET called “Physical Tables” and insert the name of each physical table as a Note. Link each table to their corresponding Logical File. This assists with impact analysis of future Change Requests and provides useful documentation for anyone auditing your function point count.