Middle East Association of Computer Science and Engineering (MEACSE)
In many fields, it has been found necessary to take account of many ways of looking at some subject matter. Multiplicity appears in various guises in software engineering: view integration in software development environments, the multi-paradigm development and N-version programming. Multiplicity also appears in other areas such as data base design, distributed artificial intelligence, belief systems, and distributed problem-solving. The use of viewpoints in requirements engineering is an emerging area of research. This paper establishes the context for viewpoint-based requirements engineering and then gives a critical review of the existing methods. A viewpoint method is seen here as a requirements engineering process of identifying viewpoints, reasoning within a viewpoint, reasoning between different viewpoints, and revising a viewpoint.