Software Productivity Research
SPR
Home About Us Contact Us News & Refereneces
 
Training & Enablement
Software Metrics & Counsel
Benchmark & Assessment
Dispute Resolution & Avoidance
Project Estimation
Client Services
Products Tools & Resources
Document Catalog
Client Services

Software Productivity Research – Client Services

How Do We Gain Control of Software Development?
Software development and maintenance became major corporate concerns in the last half of the twentieth century. Senior executive management remains troubled by a set of chronic problems associated with software applications: long schedules, major cost overruns, low quality and poor user satisfaction. These problems have occurred so widely that it is fair to characterize them as a "corporate epidemic."

Senior management throughout industry and government are realizing that possessing the ability to measure within their software environment is critical to their success and survival. Understanding current levels of productivity and quality is invaluable as an organization embarks on a process improvement initiative or considers their outsourcing alternatives. Identifying pockets of excellence within the organization, understanding why they exist, and then propagating these practices across the remainder of the organization can turn a good company into a world-class company.

The goal of software measurement is to provide software managers and professionals with a set of useful, tangible data points for sizing, estimating, managing, and controlling software projects with rigor and precision. By capturing and tracking project metrics for effort, duration, staffing, cost, deliverable size, and defects at several levels of granularity an organization is able to improve its estimation capabilities, develop benchmarks on software performance, identify the effectiveness of their technology investments, and capture organizational best practices.

Then, in assessing the measured data, management can compare actual and projected software project performance in terms of delivered quality and productivity to various benchmarks, including industry averages, "Best-in-Class" organizations, and internal standards. Assessment is also a vehicle to evaluate the strengths and weaknesses of the software environment and correlate them with quality and productivity performance. Process improvement recommendations can be modeled to evaluate the costs and benefits of implementation.

The SPR Method of Software Development Control: Diagnosis and Treatment
The fundamental rationale of the Software Productivity Research (SPR) methodology is that accurate diagnosis of software problems is a mandatory first step that must be taken before it is safe to prescribe effective therapies. Therefore, the SPR approach is to conduct an assessment of the software environment similar to a medical diagnostic study. By analyzing the quantitative data on delivered defects and current levels of productivity, as well as qualitative information on environmental factors such as developer experience levels, tools utilization, and project management and quality assurance experience from a representative group of software projects, an accurate diagnosis of an organization's software problems can be made. Once diagnosed, effective solutions can be identified and implemented, becoming the foundation for process improvement initiatives critical to achieving the organization's goals for success.

For this reason, SPR's consulting services can be divided into two distinct categories:
•  Software Diagnostics
•  Software Solutions

Diagnosing the Problems: Step I – A Process Assessment Baseline
The underlying premise of SPR's methodology and approach to improving software development is that a direct relationship exists between the environmental characteristics of a software organization and its level of performance. By analyzing and adjusting the qualitative environmental attributes of the organization, such as tools and methods, experience levels, office space, and programming languages, higher levels of quality and productivity can be achieved.

A Process Assessment Baseline (Baseline) produces a "stake in the ground" and establishes a quantitative foundation in terms of existing levels of quality and productivity for any improvement programs. This analysis examines every factor, which can influence the quality and productivity of software development, maintenance, and enhancement projects by as little as 1%.

The Baseline approach incorporates questionnaires, interviews, and the use of SPR KnowledgePLAN®, our proprietary software product, to assist in the analysis. Detailed questionnaires, which include strategic, tactical, and user satisfaction components are completed at the project level.

The collection of data at the project level facilitates the collection of data for key variables concerning software quality, level of effort, and the development environment, and permits comparison to our knowledge base of over 8,000 projects. A representative number of projects are evaluated in order to build a basic organizational profile and provide adequate information for developing subsequent improvement plans. Data collection activities and project team interviews are conducted to gain valuable information on the overall development infrastructure.

Upon completion of the analysis phase of the baseline, a report of our findings and recommendations is prepared and presented. The recommendations provide the basis for a set of productivity and quality improvement strategies.

Some of the specific topics covered in the report include:
•  Baseline Hard Data (Quality and Productivity Performance Levels)
•  Project Attribute Profiles (Personnel, Process, Technology, and Environment)
•  Risk/Value Analysis
•  User Satisfaction
•  Overall Software Strategies

The Deliverables: Accurate Information for Informed Decision Making
Many organizations claim to offer Process Assessment Baseline services, but the nature and depth of the deliverables vary between organizations. The following are what set the SPR deliverables apart from all the rest:
•  Long-Term Partnership – We understand that assessment, estimation and measurement initiatives are long-term commitments that require a collaborative relationship between SPR and our clients. We are available to support the client's programs in a manner that achieves their stated objectives. Our commitment to this process is reflected in the large number of long-term client relationships that we maintain.
•  Validation Procedures – While SPR collaborates with clients to collect organizational information, we expend significant effort to ensure that client-provided information is accurate.
•  Project Data – We believe that data collected at the project level is the most reliable. Therefore, an aggregation of projects that clearly represent the organization provides the basis for the most illuminating report.
•  Data Collection Process – SPR personnel work on site collecting organizational information and validating its accuracy. This enhances not only the accuracy of the data, but the insight we can provide in our deliverables. This benefit is difficult to achieve with remote questionnaire methods.
•  Assessment Approach – We collect a significant amount of detailed information about the client's software development process. This is based upon the realization that a Process Assessment Baseline is only the first diagnostic step of a process improvement initiative and that our report must provide clients with enough detail to develop improvement strategies.


Implementing Solutions
Upon completion of the diagnostic study and identification of the problems in the software development process, the next question is "How do we fix the problems?" and "What's the appropriate therapy?" In order to help our clients address these questions, SPR offers a comprehensive group of solutions offerings.

Software Measurement Programs
Continuous process improvement is dependent upon the ability to measure progress over time. This service identifies a set of software metrics, which supports an improvement initiative and seamlessly incorporates them into the software life cycle.

Metrics Counsel
An SPR Metrics Counsel works as a member of the client team, not unlike a legal counsel, providing the best possible metrics advice, whether with contract negotiations, balanced scorecards, process improvement initiatives, better estimation or work flow management.

Project Evaluations
A Project Evaluation is an analysis, similar to a Baseline, that examines the quantitative data and/or the qualitative factors associated with a single critical project. If the project is in progress, we can determine the likelihood that original estimates of quality, productivity, cost and effort are achievable. If the project is completed, we can determine areas of success and failure to be considered on future projects.

Project Estimation Support
Accurate software estimates are a key ingredient for success in software development. SPR consultants provide assistance to managers in the preparation of resource estimates, costs, quality and effort for various size development projects. Project Estimation Support includes either validation of existing plans or establishing initial project estimates and plans.

Quality Programs
A continuing trend in today's business environment is the constant need to improve product and service quality. Establishing a comprehensive quality assurance program is often necessary in order to fulfill corporate quality objectives. With this service, SPR assists organizations in establishing a quality assurance function that covers the entire software development life cycle. The program includes all levels of software delivery, including new development, enhancements to existing software, and maintenance support for existing software portfolios.

Function Point Analysis Support
Function points are fast becoming an industry standard for measuring and estimating the software development process. SPR offers its clients unparalleled levels of expertise in the area of Function Point Analysis (FPA). From customized seminars on the benefits of FPA to IFPUG-certified training in counting techniques, SPR educational offerings in the area of FPA are second to none. In addition to our educational support, we also provide counting support, sizing projects or entire application portfolios. Function points can be integral to a successful measurement program; therefore, we demonstrate for our clients how to use function point data to improve future estimates of productivity, quality and effort and/or to audit existing function point programs.

Balanced Scorecard
Whether it occurs during negotiations with a client or during formulation of an internal improvement plan, a balanced scorecard is often proposed as a method for measuring and reporting progress. Frequently, organizations use a balanced scorecard as a mechanism for proving performance and claiming a share of rewards. Regardless of the context, it can be a useful tool for many purposes. However, if the metrics reported are not clearly defined and if the specific commitments are not reasonably achievable, then balanced scorecards are of little long-term use and often lead to more problems and disputes than they resolve. SPR can assist both during the formulation of a balanced scorecard and after the implementation of one.

Training and Seminars
SPR offers a wide range of training workshops and seminars that empower customers to develop and utilize effective measurement and quality techniques.

Other Services
SPR markets a powerful group of services in addition to the Process Assessment Baseline.

Quality Practices Assessment
A Quality Practices Assessment is the foundation for a long-term quality improvement initiative. The process includes an in-depth analysis of the client organization's existing quality procedures, such as reviews and inspections and testing methodologies. The SPR consultant closely analyzes the quality-related attributes of the development environment, examining reports, test cases, etc. from completed or in-progress software projects in order to identify strengths and deficiencies in the existing quality process. The final report includes a detailed explanation of SPR's findings, and recommendations for improvement, which will result in the delivery of higher quality software to the end user.

Outsourcing Evaluations
Outsourcing all or some development activities is an option many organizations are considering today. An SPR Outsourcing Evaluation can provide the kind of information needed to make an informed decision. Upon completion of a Baseline, we can evaluate the client organization's current levels of performance and compare them to those offered by the outsourcing vendor. Through a separate set of proprietary questionnaires written by SPR, we can also assist you in such areas as vendor selection and identifying the activities within the organization that are good candidates for outsourcing, e.g., platform conversion or maintenance projects.

Dispute Resolution & Avoidance
From contract negotiations and balanced scorecard definitions to delivery disagreements and scope creep disputes the world of software often seems to be inhabited more by legal teams than IT professionals. SPR assists clients by providing the quantitative and qualitative analysis necessary to evaluate their metrics and avoid disputes by defining reasonable measurable objectives.

What makes SPR unique?

Access to Information: A Credible Knowledge Base
A major differentiate of the SPR methodology is our comprehensive knowledge base of software project data from over 8,000 software development, maintenance and enhancement projects accessible through our software management tool, KnowledgePLAN®.

Without sufficient data, it is impossible to deliver a meaningful report that includes process improvement recommendations. This knowledge base includes significant U.S. and international data on software development projects from IS, systems, and government software development environments. We also have the ability to profile an organization against "Best in Class" data, general industry and vertical industry standards.

Consequently, this knowledge base is an integral part of our consulting services, and our Process Assessment Baseline in particular. Through the use of KnowledgePLAN, the data collection can be automated, improvement strategies can be modeled, and higher-level, organizational profiles can be created, which address the need for a corporate view of the software development environment for senior management reporting and strategic decision making.

No other consulting organization possesses a knowledge base that is as large, comprehensive and flexible as SPR's.

The Granularity of the Details
The data collection portion of our diagnostic services is done at the project level through a series of interviews with senior management and project personnel. Project-level data is the most reliable and provides a strong foundation on which to produce individual project analyses, as well as enterprise analyses, created through the aggregation of the individual project data.
Unlike other assessments, trained, experienced SPR consultants do the data collection part of the SPR methodology on-site. This allows us to validate the data and ensure consistency in the interpretation of the questions and the corresponding responses. Hence, the resultant recommendations are based upon a more precise picture of the software environment.

Recognized Industry Authority
As with many emerging markets, the presence of an industry authority such as Capers Jones provides our clients with a sense of comfort. Capers Jones contributes a wealth of experience and technical depth to any engagement that is unparalleled in the industry. Mr. Jones, the founder of SPR, has played a prominent role in this market for over two decades. He is one of the most widely published authorities on the subject of improving software productivity and quality. His experience over the years is reflected in a comprehensive knowledge base on U.S., as well as international, software organizations. The process assessment methodology, which was developed by Mr. Jones over a decade ago, is continually refined and enhanced by SPR consultants.

Longevity
SPR has been in the business of providing software tools and consulting services to many U.S. and international companies since 1985, long before most other organizations currently offering measurement and benchmarking services.

Business Focus
Collecting data and analyzing the factors that impact software development performance is a primary business focus for SPR. Unlike other consulting organizations that offer a wide range of services, we have developed a specific area of expertise in benchmarking software organizations. Our clients benefit from receiving a technically superior study performed in an efficient manner.

Automation
We have developed KnowledgePLAN®, an automated knowledge-based software tool that assists in the project data collection process and also supports the analysis and presentation of the Baseline information. Additionally, KnowledgePLAN® is used in an engagement to model the recommended improvement strategies. This activity highlights specific productivity and quality improvement levels based upon presumed changes to the client's environment.

Substantial Client List
A company's list of satisfied clients speaks louder than any marketing material. SPR has worked with many Fortune 1000 companies and international companies. This not only affirms our position as a market leader, but also attests to the wealth of experience we bring to any engagement.

Function Point Expertise
SPR has been a proponent of functional metrics since the company started. We employ IFPUG-certified function point counters to count client systems and conduct all training programs. We believe this increases the quality of all deliverables.

SPR is committed to providing our clients the maximum assistance through these and similar service offerings. Our founder, Capers Jones, best summarizes our vision for software metrics and measurement, in his landmark book Applied Software Measurement (McGraw-Hill, 2nd edition, 1996):

" . . . the need for accurate measurements of software productivity and quality is directly related to the overall economic importance of software to industry, business, and government. That means that measurement is now a mainstream software activity, and it is one that is on the critical path to corporate and national success."