Derived Data in Classifying an EO



Similar documents
FUNCTION POINT ANALYSIS: Sizing The Software Deliverable. BEYOND FUNCTION POINTS So you ve got the count, Now what?

Calculation of the Functional Size and Productivity with the IFPUG method (CPM 4.3.1). The DDway experience with WebRatio

FUNCTION POINT ANAYSIS DETERMINING THE SIZE OF ERP IMPLEMENTATION PROJECTS By Paulo Gurevitz Cunha

Why SNAP? What is SNAP (in a nutshell)? Does SNAP work? How to use SNAP when we already use Function Points? How can I learn more? What s next?

SIZING ANDROID MOBILE APPLICATIONS

APPLYING FUNCTION POINTS WITHIN A SOA ENVIRONMENT

Fundamentals of Function Point Analysis

Using Entity-Relationship Diagrams To Count Data Functions Ian Brown, CFPS Booz Allen Hamilton 8283 Greensboro Dr. McLean, VA USA

How to Determine Your Application Size Using Function Points

Software Development: Tools and Processes. Lecture - 16: Estimation

How to Avoid Traps in Contracts for Software Factory Based on Function Metric

PMI PMBOK & ESTIMATING PMI PMBOK & ESTIMATING PMI PMBOK & ESTIMATING PMI PMBOK & ESTIMATING PMI PMBOK & ESTIMATING PMI PMBOK & ESTIMATING

DETERMINING THE SIZE OF ERP IMPLEMENTATION PROJECTS. Paulo Gurevitz Cunha EDS EDS --Electronic Data Systems Data Engineering West,

Function Point Measurement from Java Programs

Copyright 2014 Alvin J. Alexander All rights reserved. No part of this book may be reproduced without prior written permission from the author.

Mobile Applications, Function Points and Cost Estimating. Tammy Preuss International Cost Estimation & Analysis Association Conference June 11, 2013

Function Point Counting Practices Manual. Release 4.1.1

SIZE & ESTIMATION OF DATA WAREHOUSE SYSTEMS

Extending Function Point Estimation for Testing MDM Applications

MEASURING THE SIZE OF SMALL FUNCTIONAL ENHANCEMENTS TO SOFTWARE

Counting Infrastructure Software

How to Avoid Traps in Contracts for Software Factory Based on Function Point Metric

Introduction to Function Points

Measuring Change Requests to support effective project management practices.

Appendix G Technical Methodology and Approach Document

FAST Function Points. David Seaver Director Estimation and Measurement Fidelity Investments

Sizing Logical Data in a Data Warehouse A Consistent and Auditable Approach

Measuring Software Functionality Using Function Point Method Based On Design Documentation

Does function point analysis change with new approaches to software development? January 2013

Inventory Control System Administration Manual

Function Points Analysis Training Course

A FRAMEWORK FOR AUTOMATIC FUNCTION POINT COUNTING

Cloud Perspectives. Steven Woodward CFPS, CSQA

Define Activities Sequence Activities Estimate Activity Resources Estimate Activity Durations Develop Schedule Control Schedule

Position Classification Flysheet for Inventory Management Series, GS Table of Contents

Access Queries (Office 2003)

Full Function Points for Embedded and Real-Time Software. UKSMA Fall Conference

B122 Business Administration Supply Chain and Operations Management (MTCU name Business Administration --- Materials and Operations Management)

The IFPUG Counting Practices On-Going Effort in Sizing Functional Requirements. Janet Russac

IPA/SEC Data entry form Version 3.0 for IPA/SEC White Paper 20xx on software development projects in Japan

Core Fittings C-Core and CD-Core Fittings

The structure of accounting systems: how to store accounts Lincoln Stoller, Ph.D.

Position Classification Standard for Supply Clerical and Technician Series, GS Table of Contents

Formal Verification and Linear-time Model Checking

Managerial Accounting Prof. Dr. Vardaraj Bapat Department of School of Management Indian Institute of Technology, Bombay

Road map for ISO implementation

How To Write A Life Cycle Assessment

A Cross-Functional View of Inventory Management, Why Collaboration among Marketing, Finance/Accounting and Operations Management is Necessary

ISO IEC ( ) INFORMATION SECURITY AUDIT TOOL

FUNCTION POINT ESTIMATION METHODS: A COMPARATIVE OVERVIEW

Position Classification Standard for Management and Program Clerical and Assistance Series, GS-0344

Contents 1. Introduction Login Order Status Search for pre-advice and orders View pre-advice or order...

EPL603 Topics in Software Engineering

Merrill Lynch Team s Development Plan v.1

Software Cost Estimation using Function Point with Non Algorithmic Approach

Monte Carlo analysis used for Contingency estimating.

Dell E-Commerce guide for Skyward Users 1

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT

10426: Large Scale Project Accounting Data Migration in E-Business Suite

A Comparison of System Dynamics (SD) and Discrete Event Simulation (DES) Al Sweetser Overview.

Simulation and Lean Six Sigma

Sizing Application Maintenance and Support activities

A Comparative Evaluation of Effort Estimation Methods in the Software Life Cycle

ABSTRACT. assesses the perception of billing of consumers via computerized system. The project is aimed

(Refer Slide Time 00:56)

MK II FUNCTION POINT ANALYSIS COUNTING PRACTICES MANUAL

Objectives After completion of study of this unit you should be able to:

How to Download Census Data from American Factfinder and Display it in ArcMap

Inventory Management Help Guide

SupportDesk and Customer Relationship Management

Chapter 2 Global E-Business and Collaboration

The Inventory Module. At its core, ecomdash is an inventory management system. Use this guide as a walkthrough to the Inventory module.

Table of Contents INDEX...47

A SIMULATION MODEL FOR RESOURCE CONSTRAINED SCHEDULING OF MULTIPLE PROJECTS

Materials Management - Inventory Management

An Overview on Theory of Inventory

Comprehensive Business Budgeting

Edition VIRGINIA TECH. Office of Budget and Financial Planning. FACSAL User Manual

Content-Based Recommendation

UNITED STATES OF AMERICA POSTAL REGULATORY COMMISSION WASHINGTON, DC

Automated Function Points in a Continuous Integration Environment (Agile AFP)

ZETA. Business Software Defined INVENTORY & ORDER MANAGEMENT

REVIEWS ON FUNCTIONAL SIZE MEASUREMENT IN MOBILE APPLICATION AND UML MODEL

How to Use the Cash Flow Template

Checkout FAQs. What are my Pay Now Button Options? These options define the end user experience of your buyers during checkout.

Course Supply Chain Management: Inventory Management. Inventories cost money: Reasons for inventory. Types of inventory

PROCESSING & MANAGEMENT OF INBOUND TRANSACTIONAL CONTENT

Index. Terminology Pg. 2 Your Backend Pg. 3. Settings Pg. 5 Shipping methods Pg. 5 Tax settings Pg. 6 Store settings Pg. 7 SEO Settings Pg.

Problems, Methods and Tools of Advanced Constrained Scheduling

Press 1 for How to count Press 2 for an IVR Press 3 for using Function Points

How to UsePurchase Orders

HUMAN RESOURCE MANAGEMENT

Using irecruit Updated 5/03/2013

Integration Technologies Group (ITG) ITIL V3 Service Asset and Configuration Management Assessment Robert R. Vespe Page 1 of 19

CHAPTER PETROLEUM CONTACT WATER

2009, AdventNet Inc. All rights reserved. Product Customization

Regulatory Considerations for Medical Device Software. Medical Device Software

Bookstore Inventory System Software Requirements Specification. Version 1.0

Increase ICT Project Success with Concrete Scope Management. Bachelor of SPI

Transcription:

itip Guidance from the Functional Sizing Standards Committee on topics important to you Derived Data in Classifying an EO itip # 07 (Version 1.0 08/08/2014) itips provide guidance on topics important to the FPA community. They explain the application of IFPUG FPA method in a particular situation. itips are not rules, but interpretation of the rules, and provide guidance using realistic examples to explain the topic being covered. This itip is focused on describing the IFPUG FPA method as it applies to derived data as defined in the current CPM. This itip provides examples of what is considered derived data and what is not. This is not an exhaustive examination of the subject. Background There are currently three areas in Part 1 (the rules) of the CPM addressing Derived Data. In the Terms and definitions section of the ISO standard, the definition states: Section 3 Terms and Definitions 3.17 derived data: data created as a result of processing that involves steps, other than or in addition to, direct retrieval and validation of information from data functions Within the processing logic section, derived data is given a narrower scope, because it just focuses on that type of derived data that makes a difference between an EO and an EQ: Section 5.5.2.3 Forms of Processing Logic 9. Derived data is created by transforming existing data to create additional data This directly affects the elementary process classification of an External Output: Section 5.5.3 Classify Each Elementary Process Page 1 2014 IFPUG

b) an EO, if it has the primary intent of presenting information to the user and it includes at least one of the following forms of processing logic: 1) mathematical calculations are performed; 2) one or more ILFs are updated; 3) derived data is created; 4) the behavior of the application is altered, There are two concepts that are represented here the first is the definition of derived data which is very broad; the second is the type of derived data that qualifies as processing logic that makes a difference between an EQ and EO, which is much narrower. When establishing accounts, the unique identifiers often contain derived data. They are created by transforming existing data to create additional data such as government identification numbers, Credit Card Numbers, Driver s License numbers from some countries and Vehicle Identification Numbers. Most often, the resulting derived data from the process of transforming existing data to create additional is stored in an ILF. The justification for classifying an elementary process as an EO or an EQ is not the presence of derived data. It is the presence of the element of processing logic which states how the data is derived specifically that Derived data is created by transforming existing data to create additional data - Number 9 in the Forms of processing logic table. The following examples illustrate the application of the above discussion in evaluating the presence of derived data vs. processing logic to derive data for presentation, thus allowing classification as an EO. Example 1: Populating a Y or an N on a Report A field on a report is populated with Y or N following the rule - if the customer in the report is willing to receive emails or not - the information on receiving the email is stored on an ILF as an email address. The processing logic checks for an email address in the ILF; if found, the field on the report is populated with Y, otherwise with N. This would be classified as an EQ. To be counted as an EO, requires that "Derived data is created by transforming existing data to create additional data" (CPM part 1, Page 15). This is not the case in this example. The Y or N is a result of Form 3 of processing logic "Equivalent values are converted". Other forms of processing logic involved are: Page 2 2014 IFPUG

Form 1, Validations are performed, (Validation is usually indicated by a true/false situation), and Example 2: Logical Results Displayed To determine what customers should appear on a report the processing logic checks for customers that live in Maryland, have dependents, and own a home. This is as an EQ. To be counted as an EO requires that "Derived data is created by transforming existing data to create additional data" (CPM part 1, Page 15). This is not the case in this example. The forms of processing logic involved are: Example 3: Report Includes Hard-Coded Information A report displays a comment if the customer is from Maryland. The report displays a different comment if the customer is a home owner. If both conditions exist, the home owner comment takes precedence. The comments are hard-coded. Hardcoded data is generally the type of code data classified as static data. It is treated the same as if the static data were stored in a table structure. This is an EQ. To be counted as an EO requires that "Derived data is created by transforming existing data to create additional data" (CPM part 1, Page 15). This is not the case in this example. The content of the hard-coded comment field is from Form 3 of processing logic "Equivalent values are converted". The other forms of processing logic involved are: Form 5, Conditions are analyzed.., Example 4: Populating a Y or an N Based on a Calculation On an Inventory Report, the 'Reorder Now' field is populated with Y or N depending on if the reorder point has been reached. The processing logic checks the quantity on hand to see if it is less than or equal to the reorder point value. If true, the 'Reorder Now' field is set to yes. This is an EO based on the assumption that the quantity on hand is calculated. Page 3 2014 IFPUG

If the quantity on hand is not calculated, it is simply a comparison of the quantity on hand to the reorder point. It must be noted that comparisons (less than, greater than, equal, etc.), by themselves do not constitute a mathematical formula or calculation. That is processing logic Form 5, Conditions are analyzed.. Example 5: Print Advertising Messages A Customer Letter includes advertising messages retrieved from an EIF based on customer profile data (e.g., previously ordered certain services). This is an EQ. To be counted as an EO requires that "Derived data is created by transforming existing data to create additional data" (CPM Part 1, Page 15). No derived data is created in this example. The forms of processing logic involved are: Form 5, Conditions are analyzed.., Example 6: Transactional Data An application extracts records that have been added, updated or logically deleted from one of its ILFs and sends them to another application. It must include a transaction code for add, change or delete. This would be classified as an EQ. To be counted as an EO requires that "Derived data is created by transforming existing data to create additional data" (CPM part 1, Page 15). This is not the case in this example. The transaction codes are based on a logical determination and not a transformation. The forms of processing logic involved are: Form 3, "Equivalent values are converted", Form 5, Conditions are analyzed.., Example 7: Transformed Data An application has an elementary process to print the shipping label with the unique package tracking number as a QR code. The package tracking code is a derived field consisting of Customer ID, shipping company, order ID. (Note: we are Page 4 2014 IFPUG

not intimating that the QR generation process is derived data just the package tracking code itself is.) The information is not stored as part of the elementary process. This would be classified as an EO. Form 9, "Derived data is created by transforming existing data to create additional data is involved. Other forms of processing logic involved are: Summary For an output transaction to be classified as an EO due to derived data, the processing logic must transform existing data to create additional data. The presence of derived data alone is not sufficient. Frequently Asked Questions (FAQ) 1. Is there ever a situation where derived data is created by transforming existing data to create additional data in an output transaction where the data is not also updating an ILF? Yes, see Example 7. However it is far more likely for derived data to be created as part of an external input or to be saved as part of the elementary process when it occurs as an output because it generally represents something that the user wants to use in the future. 2. Is formatting data for presentation a situation where derived data is created by transforming existing data to create additional data? No. There is no additional data created by formatting. Formatting data is part of form 11 of processing logic: Prepare and present information outside the boundary or Form 3 of processing logic: Equivalent values are converted. 3. Is displaying retrieved information from a code table as a result of logical analysis a situation where derived data is created by transforming existing data to create additional data? No. New data is not created as part of the elementary process. Further Reading IFPUG Counting Practices Manual, Part 1, Section 5.5 Measure Transactional Functions. Page 5 2014 IFPUG

IFPUG Counting Practices Manual, Part 2, Chapter 7 Measure Transactional Functions. IFPUG offers itips at no charge to the international function point community to stimulate the further promulgation and consistent application of the IFPUG FPA Method. IFPUG would appreciate if you or your organization would support IFPUG in its mission by becoming a member. For further information please visit www.ifpug.org or send an email to ifpug@ifpug.org. IFPUG thanks you for your support. Page 6 2014 IFPUG