• Prev
  • Next

Sharpen the Saw

This may not be the typical blog post you see from DCG. You’ll often find us discussing software trends, challenges, and best practices. These conversations and musings hopefully enable you to produce high quality software, but there’s another important factor in that process – you. Yes, you are an important part of the culture in your workplace, and the work you do necessitates that you’re up to the challenge.

This leads me to today’s blog post, which touches on habit seven from Stephen Covey’s Seven Habits of Highly Effective People: Sharpen the saw. 

I recall the first time I read Covey’s book and the impact the idea of sharpening the saw had on me. It’s such a simple idea. In essence, it means taking time out from the daily grind to work on the most important tool in your toolbox, yourself, so you can be the best you can be when you return to your work.  

Covey suggested that we focus on four areas as we sharpen the saw:

  • Physical: Eating properly, exercising, and getting proper rest
  • Emotional: Nurturing social relationships
  • Mental: Investing in curiosity and a lifetime learning habit
  • Spiritual: Spending time in prayer or meditation

Like any other habit one is trying to cultivate, sharpening the saw begins with making a commitment to focus on the habit and consistently repeating the activity until it becomes ingrained. I think of it as making lifestyle changes, activities that just become integral parts of how you conduct your life, rather than something you must just cross off of your list.

So as the summer wraps up, I encourage everyone to spend some time each day exercising, even if it’s just a 10-minute walk; spend time with family and friends; read for pleasure, but also try to learn something new. And finally, nurture your spirit – 10 minutes of daily prayer or meditation can change your outlook.

If we do these things on a regular basis the saw will stay sharp and we’ll be able to maximize the productivity, quality, and timeliness of our work.


Anthony Manno, III
Vice President, Outsourced Services

 

 

 

 

 

 

Written by Tony Manno at 05:00
Categories :

Software Vendor Savings

Tony MannoDo you engage with software vendors to do your development? If so, then you know the drill. You provide your vendors with detailed requirements and they come back with a price for the project. But how do you really know whether you’re paying a fair price, and what’s your basis for negotiation?

If you could quantify the unit value created by the project, and know the fair market rate for those units, then you would know what you should pay for the project. You would be in a strong position to negotiate a fair price with your vendor.

Function Point Analysis can provide that information. It is a technique for measuring the functionality that is meaningful to a user, independent of technology. Function Point Analysis is governed by IFPUG, which produces the Function Point Counting Practices Manual. This manual is used by all IFPUG-certified Function Point Analysts to conduct function point counts. IFPUG is an ISO standard for software measurement.

Industry standard rates for the development of function points are available. Armed with the function point count for the project, along with the market rate, you’re ready for a win-win negotiation with your vendor.

Additional Resources:

Looking for more information? Check out these publications:

  1. An introduction to Function Point Analysis, including what it is and who would benefit from it. Download.
  2. DCG’s Function Point Analysis services. Download.
  3. DCG’s Software Vendor Savings offering. Learn more.

 If you need more information on how to use Function Point Analysis for evaluation and negotiation of vendor pricing, or if you have general questions about function points, don’t hesitate to reach out! I’m always up for a discussion!

 

Anthony Manno, III
Vice President, Outsourced Services

t.manno@softwarevalue.com

 

Written by Tony Manno at 05:00

Function Point Q&A

DCG Software Value is a long-time provider of software sizing services. We firmly believe that accurately sizing software is a critical aspect of managing and controlling successful software project delivery. Several sizing methodologies are available, but most often we employ the use of IFPUG function points (from the International Function Point Users Group), which measures functional requirements. This technique is known as Function Point Analysis.

Although this technique is widely and effectively used, we often get a number of questions about it. This blog post attempts to answer some of the most common questions we receive, but if you have others, please leave a comment below and we’ll address it!

What is Function Point Analysis?

Function Point Analysis is a technique for measuring the functionality that is meaningful to a user, independent of technology. Function Point Analysis is governed by IFPUG, which produces the Function Point Counting Practices Manual. This manual is used by all IFPUG-certified Function Point Analysts to conduct function point counts. IFPUG is an ISO standard for software measurement.

Function Point Analysis considers five major components of an application or project: External Inputs, External Outputs, External Inquiries, Internal Logical Files and External Interface Files. The analyst evaluates the complexity of each component and assigns an unadjusted function point value. The analyst then analyzes the application against 14 general system characteristics to further refine the sizing and determine a final adjusted function point count.

Function Point Analysis

When Can Function Point Analysis Be Used?

  • Function Point Analysis can be used at the beginning of projects to derive cost and duration estimates using well defined, industry-proven models and software.
  • Function Point Analysis can be used at the end of the project. Metrics such as productivity, defect density and time-to-market can be created using function point counts. These metrics allow measurement for internal improvement initiatives, contract compliance and comparison to industry benchmarks.                

Can Function Point Analysis Be Used When Evaluating Commercial Off the Shelf (COTS) Software?

Function Point Analysis can be used with COTS software projects in several important ways. These include the following:

  1. Functional requirements analysis: Like for any project, once the functional requirements have been defined, a function point count can be done to quantify the size of the application or project. This sizing can then be used for selection of the COTS package or for build-or-buy decisions.
  2. COTS function analysis: A function point count can be done on a prospective COTS package and used for comparison to functional requirements during the evaluation and selection process.
  3. Gap analysis: Comparison of the functionality provided by the COTS package to the requirements yields the gaps that must be filled with custom applications or additional COTS software.
  4. Project estimation: Using function point counts as input to industry-leading estimation applications and models provides accurate estimates for COTS configuration, customization, custom development and testing. This includes estimates for development of COTS extensions and external interfaces. 

Additional Resources:

Looking for more on function points? Check out these publications:

  1. An introduction to Function Point Analysis, including what it is and who would benefit from it. Download.
  2. DCG’s Function Point Analysis services. Download.

If you need more information on enhancement productivity improvement opportunities, or you have questions about function points, don’t hesitate to reach out! I’m always up for a discussion!


Anthony Manno, III
Vice President, Outsourced Services

t.manno@softwarevalue.com

Written by Tony Manno at 05:00

Is Function Point Analysis Valuable in an Agile Environment?

Tony MannoMany organizations are embracing Agile as their development framework of choice. The Agile project team, consisting of a Product Owner, Scrum Master and developers, creates and prioritizes user stories, which describe the functionality to be delivered by completion of the task/story. The team plans and executes in sprints to develop and implement functionality for each user story, and updates and reprioritizes the backlog of user stories (backlog grooming) for each subsequent sprint. By working in this way, Agile provides faster realization of value through incremental delivery of functionality, prioritizing the deliverables that will have the most impact. It involves the user in the development process, reduces risk by identifying issues earlier in the project lifecycle and embraces change throughout the project. It’s easy to understand why it’s become such a popular framework!

As in traditional waterfall, Agile project teams have a responsibility to the business to deliver on time and within budget. An estimate of the overall project spend and schedule can be done at the beginning of the Agile project and modified throughout the lifecycle to ensure accuracy as project requirements change. Project metrics can be derived at the end of the project and compared within the company portfolio or to industry benchmarks. But, the question is how to do this.

The answer, of course, is Function Point Analysis. Function Point Analysis is a standardized method for measuring the functionality delivered to a user, independent of technology. It works well for Agile and traditional waterfall projects. Function Point Analysis can be used at the beginning of an Agile project, once the user stories have been defined. Cost and duration estimates can be derived for the overall project from the function point counts using well defined, industry proven models and software. At the end of the project, metrics such as productivity, defect density and time-to-market are valuable in the Agile environment as within waterfall. These metrics allow measurement for internal improvement initiatives, contract compliance and comparison to industry benchmarks.

Estimation and project metrics based on functional sizing are good practices, regardless of the delivery framework used. They allow the project team to provide the business with realistic expectations of project cost and duration and to measure themselves against improvement goals and the industry.

For more insight on the use of function points in an Agile environment, check out the July 2015 DCG Trusted Advisor report, “Story Points or Function Points or Both?”


Tony Manno
Vice President, Outsourced Services

Written by Tony Manno at 09:46
Categories :

"It's frustrating that there are so many failed software projects when I know from personal experience that it's possible to do so much better - and we can help." 
- Mike Harris, DCG President

Subscribe to Our Newsletter
Join over 30,000 other subscribers. Subscribe to our newsletter today!