ABSTRACT

A software process is a set of activities, methods, practices, and transformations that people use to develop and maintain software and associated products (project plans, design documents, code, test cases, user manuals, and so on) [1]. Process is a collection of activities, activity is the collection of tasks and the task is an operation converting input into output operation. Software evolution has become an important characteristic in the software life cycle [2]. A software evolution process is a set of interrelated software processes under which the corresponding software is evolving [3]. A well-managed software evolution process will lead to high quality and efficient evolution of software systems on time and under budget. Software evolution process models describe the software process activities, roles, work products, resources and other information which is used to analyze and implement the evolution process. Activities, roles and work products are the most basic elements in all these process elements [4]. The relationship among Activities, Roles and Work products are depicted in Figure 1.