Page 70 -
P. 70

CHAPTER 2  THE PROCESS                                              41

               FIGURE 2.10
               One element of                      None
               the concurrent
                              Analysis activity
               process model
                                             Under
                                          development


                                   Awaiting
                                   changes


                                                     Under review
                                        Under
                                       revision
                                                  Baselined




                                              Done




                                           Represents a state of a
                                           software engineered activity



                              during early stages of design, an inconsistency in the analysis model is uncovered.
                              This generates the event analysis model correction which will trigger the analysis activ-
                              ity from the done state into the awaiting changes state.
                                The concurrent process model is often used as the paradigm for the develop-
                              ment of client/server 11  applications (Chapter 28). A client/server system is com-
                              posed of a set of functional components. When applied to client/server, the
                              concurrent process model defines activities in two dimensions [SHE94]: a system
                              dimension and a component dimension. System level issues are addressed using
                              three activities: design, assembly, and use. The component dimension is addressed
                              with two activities: design and realization. Concurrency is achieved in two ways:
                              (1) system and component activities occur simultaneously and can be modeled
                              using the state-oriented approach described previously; (2) a typical client/server
                              application is implemented with many components, each of which can be designed
                              and realized concurrently.
                                In reality, the concurrent process model is applicable to all types of software devel-
                              opment and provides an accurate picture of the current state of a project. Rather than


                              11 In a client/server applications, software functionality is divided between clients (normally PCs)
                                and a server (a more powerful computer) that typically maintains a centralized database.
   65   66   67   68   69   70   71   72   73   74   75