Random Ramblings on LabVIEW Design

Community Browser
Labels
cancel
Showing results for 
Search instead for 
Did you mean: 

Function Point Analysis

swatts
Active Participant

Hello Lovelies

We have been reading a lot of discussion recently about LabVIEW performance and scalability and this has become increasingly interesting to us because we don't have any real issues with it. Is it the technique/method or the project that is making the difference here?

Well, before we can really evaluate techniques and methods we need to be a bit more scientific about judging and comparing project complexity. If for example you are using 15 classes, 400 VIs etc to print "Hello World" it should come as no great surprise that LabVIEW grunts a bit when you actually throw a real-life project at it.

Function Point Analysis is a method of breaking down a project down into similar sized lumps, as an estimation tool these lumps are generally based on an approximate effort to do a task. In this discussion we want to pull it a little bit away from just being an estimation tool and use it as a baseline for our complexity metrics.

So project xxxx would have 350 FPs and if we use 500 VIs to solve the problem rather than 5000 will LabVIEW perform better. If this is the case (and without doing this work any discussion is fairly meaningless currently), should we then modify our techniques to better accommodate LabVIEW. At the very least we would have a tool the would help us predict if we're going to run into trouble.

So here are some examples of a single Function Point, this could be argued as being too fine a grain, but we have to start somewhere.

1 Hardware Action (e.g. DMM Initialise)

1 Database Query

1 File Action (save or load)

1 User Interface Update

1 User Event

1 Report Action

1 State - transition (counting the transitions may give a better number than counting the states, but I'm undecided about this)

1 Communication message (via Queue or any other transport mechanism)

1 Logical Decision

Distributed systems should be regarded as separate projects.

The point of the exercise is to come to a consensus regarding a projects complexity so expect a bit of averaging out here and there (for example an INSERT SQL statement is more tricky than a SELECT but it should even out in the end)

So a question to you clever people is...

Can you think of any others and do you think this worth pursuing?

The next stage will be to assign these FPs to existing projects and do some comparisons. Perhaps User Groups could help here.

Lots of Love

Steve

Steve


Opportunity to learn from experienced developers / entrepeneurs (Fab,Joerg and Brian amongst them):
DSH Pragmatic Software Development Workshop


Random Ramblings Index
My Profile

Comments