Friday, December 4, 2009

Chapter 3. Process Overview










 < Free Open Study > 





Chapter 3. Process Overview

Process management is one of the activities that project managers must consider before they can begin any project in earnest. This activity lays out the framework for how progress on a project may be measured. The authors of this book used a process to divide up the chapters, produce the information, review it, and get it to the publishers for integration into a completed book. Process management ensures the correct execution of the organization's procedures, policies, and life-cycle model. For example, this addresses the question, "Were all the files tested and checked for quality before being released to the customer?" Process management controls the software development activities. For example, it might check to ensure that a change request existed and was approved for fixing and that the associated design, documentation, and review activities were completed before allowing the code to be "checked in" again.

"Process" is defined in Box 3�1.



Box 3�1 Process Definition



process



a bounded set of interrelated activities that takes one or more kinds of inputs and creates outputs that are of value to the customer by means of one or more transformations


A process represents activities, tools, methods, and practices that transform inputs, or raw materials, into outputs, or finished products, as shown in Figure 3-1. With software engineering, the transformation (production and evolution) is from user's requirements into software. IEEE 610 defines process as "a sequence of steps performed for a given purpose�for example, the software development process." In Managing the Software Process, Watts Humphrey says:



Software development can be exceedingly complex and there are often many alternative ways to perform the various tasks. A defined process can help guide the software professionals through these choices in an orderly way. With an established process definition they can better understand what they should do, what they can expect from their co-workers, and what they are expected to provide in return. This allows them to focus on doing their job… Software engineering, however, is not a routine activity that can be structured and regimented like a repetitive manufacturing or clerical procedure. We are dealing with an intellectual process that must dynamically adjust to the creative needs of the professionals and their tasks. A trade-off is thus required between the individual need for flexibility and the organizational need for standards and consistency. Some of the factors to be considered are:



  1. Since software projects have differences, their software engineering processes must have differences as well.

  2. In the absence of a universal software engineering process, organizations and projects must define processes that meet their own unique needs.

  3. The process used for a given project must consider the experience level of the members, current product status and the available tools and facilities.[1]

Figure 3-1. Process Flow

This chapter provides an understanding of the basics of process management and how it fits into the front end of the project life cycle. Key foundation documents in process management are IEEE 1074 and 1074.1. The specific understanding and application of 1074 and 1074.1 to evolve a project's life cycle will be stressed in this chapter. The life cycles that are used in the practitioner's guide are direct derivations from 1074.












     < Free Open Study > 



    No comments: