Page 31 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 31

Unit 2: Software Processes and Models



            process and it provides a definition of the process to be used for evaluation and improvement.   Notes
            A process model can be an aliased, validated and simulated, if executable. The process models
            are used mainly for software process control (evaluation and improvement) in an organization,
            but they can be also used for experimenting with software process theory and to ease process
            automation.

            2.1 Processes and Models

            On the contrary to software life cycle models, software process models often stand for a
            networked Sequence of activities, objects, transformations, and events that exemplify strategies
            for accomplishing software development. Such models can be used to develop more precise and
            formalized descriptions of software life cycle activities. Their power emerges from their utilization
            of a sufficiently rich notation, syntax, or semantics, often suitable for computational processing.
            Software process networks can be viewed as representing multiple interconnected Task chains
            represent a non-linear sequence of actions that structure and transform available computational
            objects (resources) into intermediate or finished products. On-linearity implies that the sequence
            of actions may be non-deterministic, iterative, accommodate multiple/parallel alternatives, as
            well as partially ordered to account for incremental progress. Task actions in turn can be viewed
            a non-linear sequences of primitive actions which denote atomic units of computing work,
            such as a user’s selection of a command or menu entry using a mouse or keyboard. Wino grad
            and others have referred to these units uncooperative work between people and computers as
            “structured discourses of work while task chains have become popularized under the name of
            “workflow” Task chains can be employed to characterize either prescriptive or descriptive action
            sequences. Prescriptive task chains are idealized plans of what actions should be accomplished,
            and in what order. For example, a task chain for the activity of object-oriented software design
            might include the following task actions:

            • Develop an informal narrative specification of the system.
            • Identify the objects and their attributes.

            • Identify the operations on the objects.


            • Identify the interfaces between objects, attributes, or operations.
            • Implement the operations.

            Circumstances or idiosyncratic clearly, this sequence of actions could entail multiple iterations and
            non-procedural primitive action invocations in the course of incrementally progressing toward
            an object-oriented software design. Task  chains join or split into other task chains  resulting
            in an overall production network or web. The production web represents the “organizational
            production  system”  that  transforms  raw  computational,  cognitive,  and  other  organizational
            resources into assembled, integrated and usable software systems. The production lattice therefore
            structures how software system is developed, used, and maintained. However, prescriptive task
            chains and actions cannot be formally guaranteed to anticipate all possible foul-ups that can
            emerge in the real world of software development.

                                    Figure 2.1: Processes and Models


                   Problem                         Compile
                   statement         Code                          Unit test Release

                                                Problem        Problem


                                     Debug





                                             LOVELY PROFESSIONAL UNIVERSITY                                    25
   26   27   28   29   30   31   32   33   34   35   36