About Us


  Process Models

  SE Resources


  Contact us

Breaking News!

A new blog ... visit OnCenter, Roger Pressman's running commentary on the world at large

A new edition ... the 6th edition of Software Engineering is available now

A first novel ... Roger Pressman's first novel is a technothriller -- The Aymara Bridge

A new training curriculum! RSP&A has partnered with QAI to develop a comprehensive Internet-based software engineering curriculum.

A redesigned Web site ... we've done a major redesign and added many new features

Reference Library
Process: A Generic View

This page provides access to a variety of downloadable papers that address generic process issues. The following topics are considered:

Capability Maturity Model (CMM) and Capability Maturity Model Integration (CMMI)
General Discussion
Process Patterns
Personal Software Process (PSP)/ Team Software Process (TSP)
Software Process Improvement (SPI)

Capability Maturity Model (CMM) and Capability Maturity Model Integration (CMMI)

Capability Maturity Model® Integration (CMMIsm), Version 1.1
Continuous Representation [PDF]

Carnegie Mellon Software Engineering Institute

This report is on Capability Maturity Models (CMMs) and Capability Maturity Model Integration (CMMI). Model components, model terminology, capability levels and generic model components, framework interactions, using CMMI models, and process areas are detailed.

Capability Maturity Model® Integration (CMMIsm), Version 1.1
Staged Representation [PDF]

Carnegie Mellon Software Engineering Institute

This report is on Capability Maturity Models (CMMs) and Capability Maturity Model Integration (CMMI). Model components, model terminology, common features, generic goals and generic practices, framework interactions, using CMMI models, and process areas are detailed.

CMMI V1.1 Tutorial [PDF]
Mike Phillips

This slide presentation addresses: why to focus on Process, why to use a model, CMMI structure, comparisons with SW-CMM v1.1, SE-CMM, and EIA/IS 731, a process areas overview, appraisal methodology, and training

CMMI-SE/SW V1.1 to SW-CMM V1.1 Mapping [PDF]
USAF Software Technology Support Center (STSC)

Contains mappings of the Capability Maturity Model for Software (SW-CMM) Version 1.1 to and from the Capability Maturity Model- Integrated - Systems Engineering/Software (CMMISE/SW/IPPD) Version 1.1 by the Software Technology Support Center to answer the questions What does this mean to me?" and "How does this compare to what I am already doing with regard to an existing model?". Also includes sections on SW-CMM key process areas, CMMI-SE/SW specific practices and how to read the maps.

KPA Summary of the Evolution of the SEI's Software CMM® [PDF]
Mark C.Paulk

Contains tables that summarize the general changes at the key process area (KPA) level between different iterations of the "CMM" as it evolved from a software process maturity framework in 1987 to 1993's Software CMM v1.1.

Using the Software CMM® in Small Organizations [PDF]
Mark C. Paulk

This paper discusses how to use the CMM in any business environment but focuses on the small organization with the use of examples. The conclusion of this paper is that using the CMM may be different in degree between small or large projects or organizations, but they are not different in kind.

Using the Software CMM® With Good Judgement [PDF]
Mark C. Paulk

This paper discusses how to use the CMM in any organization but focuses on the small organization, rapid prototyping projects, maintenance shops, R&D outfits, and other environments with the use of examples. This paper concludes that the issues of interpreting the CMM are the same for any organization, they may be different in degree but they are not different in kind.

Back to the top

General Discussion

A Software Development Process for Small Projects [PDF]
Melissa L. Russ and John D. McGregor

This article is about how the software development process can be just as critical to a small project's success as it is to that of a large one. The authors present scenarios why a process can be important to small projects for reasons other than the large number of dependencies. The authors then describe their software development process and then evaluate a projects process.

Empirical Studies of the Global Software Process - The Impact of Feedback [PDF]
G. Kahen, M.M. Lehman and J.F. Ramil

This paper discusses a key result of FEAST/1; that the global software process is a feedback system, whose behaviour is strongly impacted by the properties of the feedback mechanisms it contains. FEAST/2 goals are include and lists are presented of extracted material of the detailed FEAST/2 plans in the project proposal. A list of tasks the authors consider as being of immediate theoretical interest and practical concern on the basis of what has been learned from the FEAST/1 are also presented.

Introduction [PDF]
Jim Johnson

This is an introduction of CHAOS by the chairman of The Standish Group. This introduction briefly explains each chapter in the report. The report details the results of over 40,000 completed IT projects, 400 plus workshops, focus groups and project group therapy sessions. Nine years of research on why projects succeed or failed is presented.

The Power of Process [PDF] *FEE*
Steve McConnell

This article discusses software processes with sections on costs of inattention to process, when a project thrashes, process to the rescue and process verses creativity.

Software Process Improvement (SPI): Modeling Return on Investment (ROI) [PDF]
David F. Rico

This article exhibits metrics and models for estimating return on investment (ROI) of software process improvement (SPI). Also this article shows software managers and engineers: 1) how to estimate ROI early, quickly, and accurately, 2) how to maximize ROI using total life cycle costs, and 3) how to estimate ROI for Inspections, Personal Software Process (PSPsm), Team Software Process (TSPsm), Software Capability Maturity Model (SWCMMsm), ISO 9001, and CMM Integration (CMMIsm).

Surfing the Edge of Chaos: Applications to Software Engineering [PDF]
Juan C. Nogueira, Carl Jones and Luqi

This paper discusses the problems of software engineering as the weakest link in the development of systems capable of achieving information superiority. The authors analyze the introduction of complex adaptive systems as an alternative for planning and change and also analyze the strategy of "competing on the edge" showing the risks and the skills required navigating on the edge. The feasibility of using this theory in software engineering as an alternative to bureaucratic software development processes is discussed as well as some recommendations that could help to acquire competitive advantage in software development, hence achieve information superiority.

Using Process History to Predict Software Quality [PDF] *FEE*
Taghi M. Khoshgoftaar, Edward B. Allen, Robert Halstead, Gary P. Trio and Ronald M. Flass

Many software quality models use only product metrics such as lines of code or McCabe cyclomatic complexity which assumes all modules have a similar process history but for systems that evolve this is not true. In this article the authors have developed a quality model based solely on process-history variables. They tested their model in a case study involving the Joint Surveillance Target Attack Radar System, an embedded, real-time military system developed by Northrop Grumman for the US Air Force in support of the US Army.

Back to the top

Process Patterns

A Whirlwind Introduction to Process Patters [PDF]
Edward Garson

This paper discusses Process Patterns which provide guidance on how to effectively carry out discrete tasks within the development process. As an example of a Process Pattern, the paper describes an approach to conducting code inspections.

An Introduction to Process Patterns [PDF]
Nicola Hughes and Gareth Pelly

This slide presentation outline highlights what a process pattern is, types of process patterns, a task process pattern - e.g. technical review, a stage process pattern - program, and phase process patterns - e.g. construct.

An Introduction to Process Patterns [PDF]
Scott W. Ambler

This paper discusses what a Process Patterns is and types of Process Patterns. The paper then discusses the technical review task process pattern, the program stage process pattern, and the phase process patterns. Why process patterns and process antipatterns are also mentioned.

Common Template for Software Development Process Patterns [PDF]
Michael Gnatz, Frank Marschall, Gerhard Popp, Andreas Rausch and Wolfgang Schwerin

The template described in this document serves as one possibility to document a process model according to a proposal of a common process meta-model (Gnatz, Marschall, Popp, Rausch, Schwerin: A Common Meta-Model for a Living Software Development Processes).

Describing Process Patterns with UML [PDF]
Harald Störrle

Patterns are now widely used for describing software designs but they may also be used to describe process structure rather than the product structure. This may be accomplished by adapting the well known pattern description schemes to the software process domain. Within this scheme, the author uses the description techniques and notions of the UML wherever suitable.

Pattern-Oriented Approach to Software Process Evolution [PDF]
Hajimu lida

In this article, an approach for evolving software development processes using Software Process Pattern as a template of process evolving transformation is proposed. Software Process Pattern mainly consists of several components such as Problem, Context, Resulting Context, etc. By applying pattern-based transformations to a primitive process, we can generate practical development processes with less effort of process authoring.

Support for the Definition and Usage of Process Patterns [PDF]
Mariele Hagen

Since the 1980s software patterns have gained rising interest within the software community. Despite this increasing attention, patterns of all types bear shortcomings with respect to their description. This paper explains these deficiencies with respect to process patterns, but these deficiencies are valid for any pattern type.

Towards a Living Software Development Process based on Process Patterns [PDF]
Michael Gnatz, Frank Marschall, Gerhard Popp, Andreas Rausch and Wolfgang Schwerin

In this paper the authors propose a Process Framework, which is modularly structured, and define the concept of process patterns. This framework allows the authors to describe development processes in such a way that integration, change and evolution of processes are facilitated. An example illustrates the approach.

Back to the top

Personal Software Process (PSP)/ Team Software Process (TSP)

Data Quality Problems in the Personal Software Process [PDF]
Anne M. Disney

This thesis investigates the Personal Software Process where the author built a tool to automate the PSP and then examined 89 projects completed by nine subjects using the PSP in an educational setting. To examine the analysis problem the author developed a rule set, corrected the errors as far as possible, and compared the original and corrected data. This resulted in substantial differences for numbers such as yield and the cost-performance ratio. The results raise questions about the accuracy of published data on the PSP and directions for future research.

Pathways to Process Maturity: The Personal Software Process and Team Software Process [PDF]
Watts S. Humphrey

Although the Capability Maturity Model® (CMM®) provides a powerful improvement framework, its focus is necessarily on "what" organizations should do and not "how" they should do it. This paper discusses the Personal Software Process (PSPsm) and how the author exposes engineers to the new way of working by removing them from their day-to-day environment and put them through a rigorous training course. The paper also discusses Industrial results with the PSP and Building a supportive team environment: the Team Software Process

Personal Software Process [PPT]
Bruce R. Maxim

This is a PowerPoint presentation on Personal Software Process that outlines several points such as: process improvement, logic of time management, tabular time recording log pages, period and product planning, elements of time management, managing commitments, project management, what a personal software process is, as well as other points.

Six Sigma Meets Personal and Team Software Processes
Creating Disciplined Software Development Processes for Financial Services Providers [PDF]

Christian Middel

This paper examines two software development methodologies that support Six Sigma by improving both individual and team development processes. Six Sigma "is an organization-wide approach to improving processes in large and diffuse organizations". These methodologies are: the Personal Software Process (PSP) and Team Software Process (TSP) whose goal is to provide a framework to support the production of high quality software applications.

Team Building with the TSPi [PDF]
Thomas B. Hilburn

This paper describes a position about use of the introductory Team Software Process (TSPi) to teach the principles and practice of software engineering. This document describes and elaborates on the features of the TSPi that support building effective student software project teams.

Team Software Process (TSPi) [PPT]
Author Unknown

This PowerPoint presentation outlines the Team Software Process. It includes TSP strategy, TSP process, life cycle phases, cycle descriptions, cycle phases, motivation (teamwork), common team problems, and a TSP planning overview.

The Team Software Process (TSPsm) [PDF]
Watts S. Humphrey

This report describes the TSP and how it was developed. Starting with a brief background discussion of software quality, the report provides an overview of the basic elements of teamwork. It then describes the relationships among the TSP, Personal Software Process (PSP), and Capability Maturity Model ?(CMM) process improvement initiatives. The report also describes the TSP process structure, launching a TSP team, the TSP teamworking process, and the issues and methods for introducing the TSP. The report concludes with a review of TSP experience, current status, and trends.

The Personal Software Process
A Software Engineering Seminar[PDF]

Mike Grasso

This slide presentation describes a personal software process (PSP). A framework is introduced for statistically managed software engineering discipline on a personal level. Key process areas of the PSP are covered and compared to the capability maturity model.

Back to the top

Software Process Improvement (SPI)

Consolidated Product
Software Process Assessment - Part1: Concepts and Introductory Guide Version 1.00 [PDF]


This part of this International Standard provides overall information on the concepts of software process assessment and its use in the two contexts of process improvement and process capability determination. It describes how the parts of the suite fit together, and provides guidance for their selection and use. It explains the requirements contained within this International Standard, and their applicability to the conduct of an assessment, to the construction and selection of supporting tools, and to the construction of extended processes.

Consolidated Product
Software Process Assessment - Part 3: Rating Processes Version 1.00 [PDF]


As part of the Software Process Assessment Standard this document establishes the requirements for a software process assessment, for rating, analysing and profiling an assessment, and defines the circumstances under which assessment results are comparable. This document describes a process assessment framework which: encourages self-assessment, takes into account the context in which the assessed processes operate, produces a set of process ratings (a process profile) rather than a pass/fail result, through the generic practices, addresses the adequacy of the management of the assessed processes, and is appropriate across all application domains and sizes of organization.

Planning for a Software Process Assessment [DOC]
Software Quality Assurance Subcommittee of the Nuclear Weapons Complex Quality Managers

This report presents a guide for how to plan for a software process assessment and how to use the assessment results to guide process improvement. It defines the steps associated with conducting a successful assessment and identifies the framework needed to establish a successful process improvement program. The assessment methodology is based upon the Software Engineering Institute's (SEI) software process assessment.

SCAMPIsm, v1.0
Standard CMMIsm Assessment Method for Process Improvement: Method Description, Version 1.0 [PDF]

CMMI Product Development Team

This document describes the Standard CMMISM Assessment Method for Process Improvement (SCAMPI). This document explains the role of assessments in the context of the IDEALSM (Initiating, Diagnosing, Establishing, Acting, Leveraging) approach to software process improvement. Guidelines are provided for establishing resource requirements for conducting a SCAMPI assessment and the SEI Appraiser Program is discussed, detailing the qualifications required to become an SEI-authorized SCAMPI Lead Assessor.

Software Process Improvement Guidebook
Revision 1 [PDF]

Goddard Space Flight Center

This guidebook provides guidance for implementing a software process improvement program in any NASA software development or maintenance community. This guidebook describes the program's concepts and basic organizational components and provides details on how to define, operate, and implement a working software process improvement program by using specific examples.

Software Process Improvement Handbook Version 1.0 [PDF]
Donald Beldin

This handbook is intended as an introduction to continuous software process improvement (SPI) programs with emphasis on the software process assessment (SPA). Section 4 provides detailed descriptions of all the SPA events. Section 5 catalogs the human resources required of a SPI program including guidelines for selecting SPI personnel.

Software Process Improvement through Standards [PDF]
Wolfgang Emmerich, Anthony Finkelstein and Richard Stevens

The aims of this slide presentation/tutorial is to provide a practical guide on how to achieve software process improvement through the use of software and systems engineering standards, to give an understanding of what standards are and what they can deliver, to examine the standardization process and issues arising from the control and evolution of standards.

The e-Commerce Capability Development Model
A Framework to Implement e-Commerce Successfully
A Tutorial For The SEPG Conference[PDF]

John D. Vu

This slide presentation is a tutorial by the end of which you will be able to understand the evolution of e-commerce, understand major issues in e-commerce and describe the fundamental concepts of the e-CDM.

Back to the top