[Logo] Function Point Analysis And Software Estimation Forum
  [Search] Search   [Recent Topics] Recent Topics   [Hottest Topics] Hottest Topics   [Members]  Member Listing   [Groups] Back to home page 
[Moderation Log] Moderation Log   [Register] Register / 
[Login] Login 
Messages posted by: Ryan Schofield
Forum Index » Profile for Ryan Schofield » Messages posted by Ryan Schofield
Author Message
Here's the IFPUG guide on the topic of counting multiple media.
Does anyone have any thoughts/tips on how to count a project where the output is Open Source code? We're not actually providing an application to end-users per se, but rather providing the code to anyone who can them use it to develop their own custom applications. I could see the end-users being the people developing the custom app, but this is new for me and would appreciate thoughts on it.
I think I understand what you're talking about. I just had a count with something similar. I needed to include the functionality of this "middleware" piece because we were looking at internal productivity metrics on the project, not just functionality delivered to the user (in which case we wouldn't count the "Bus"). For middleware you basically treat it as a separate application and do a count as you would for the online shopping. Two applications combine for a single project FP count.
I know this is basically quoting the CPM, but the only factor to consider is the user(s)' view. The user may be a person or another system/application, but the boundary is defined by the users' view. If you're struggling to define the application boundary it can help to look at the transactional functions first. Since the transactional functions must cross the boundary, you can for example look at a report to see where the data is coming from, and where it's going. If it's going to the printer/screen/email, then you have the "user" side so now you just look at what database the data came from. Though some of the databases may be EIFs and external to the boundary, there are most always elements coming from ILFs. Find the ILFs and you are now looking inside the application boundary.

Hope that helps.
I've got a related question that I think will help expand on this topic:

We've got an application to handle Customer Payments. We have an ILF for Customer information (aka probably customer info is split into a few tables, but they together comprise the ILF). We have another table to store customer payments.

Just from that info, would you count the "Payments" table as a separate ILF from "Customer"? I don't know how "Payments" info would be independent of Customers, but do you really have to know more about the use of the payments information (i.e. look at additional requirements)? The only way "Payments" would be independent is if there is a requirement to report on the Payments info without referencing/including any information from "Customers", right?
There is a button that allows a specific user role to change their views. This is currently only visible to one user role, but new requirement is for this feature to be given to a second user role. When pressed, the user is presented with a screen to input the user view they want to switch to. From a technical side they are only modifying the conditions used to determine if the button is visible (and adding a new method to help this process). From a functional standpoint, I'm not really sure how to look at this. I don't think it's just "navigation", which wouldn't be counted. I feel like it's some sort of transaction, just not sure what.

Thanks for the input!
Thanks everyone! This was a great first trip to this site (recommended by my mentor). I look forward to contuining here for support (and hopefully providing some as well).
I have an enhancement project where we have added an communication layer that sits between the application and the database. The layer will receive all our existing queries and pass them to the database, then receive the results from the database and pass back to the application. This was a major infrastructure change as it required rewriting all the transactions that were previously referencing the database so they now point to the communication layer.

I'm thinking I don't count any of this as it doesn't impact the user--everything is back-end performance/technical improvements. Do you agree?
Forum Index » Profile for Ryan Schofield » Messages posted by Ryan Schofield
Go to:   
Powered by Function Point Modeler © FPM Team