Page 210 - DCAP302_ENTERPRISE_RESOURCE_PLANNING
P. 210

Enterprise Resource Planning




                    notes          should include, and gave guidance on the conditions that should be met in order that a project
                                   be allowed to proceed from one stage to the next. The aim of this model was to bring control and
                                   discipline to what had previously been a rather unstructured and chaotic process.
                                   The  waterfall  model  involved  progressing  through  a  series  of  different  stages,  including
                                   requirements  definition,  specification,  planning,  design,  implementation,  and  integration.
                                   The emphasis was on preparing a detailed design specification up-front in development, and
                                   thereafter executing on this specification in an efficient manner.
                                   While  the  waterfall  model  of  development  proved  to  be  a  successful  response  to  the  early
                                   problems that had plagued software development, increasing dissatisfaction was expressed with
                                   its results in the years that followed. The criticism was especially strong in environments where
                                   considerable  uncertainty  surrounded  either  the  product’s  customer  requirements  and/or  its
                                   needed technical solutions.
                                   The problem lay in the assumptions embedded in the model, the biggest of which was that as
                                   long as the up-front work was performed correctly, there was little need to gain intermediate
                                   feedback on performance, or to have a process that was receptive to changing requirements.
                                   Consequently, these became the primary objectives for more “flexible” models of development –
                                   models with the ability to respond to the different types of uncertainty that software developers
                                   increasingly faced.
                                   Over time, this view of software development as a process that could be pro-actively managed
                                   led to the development of other process models, each proposing to address shortfalls with the
                                   waterfall model. While most of these models had a common aim – a more flexible model of
                                   development – the details of their execution appeared to differ substantially. Beginning in the
                                   early 1980’s, a host of more flexible models of development began to emerge, each seeking to
                                   address perceived shortfalls with the waterfall model.
                                   The first types of models that emerged to supplant the waterfall model were based upon the use
                                   of one or more prototypes to be shown to customers at an early stage, thereby gaining feedback
                                   based upon a representation of the product, as opposed to a text specification. In the approach
                                   of prototyping model, use is made of a prototype early in development, typically as a way of
                                   informing decisions about the design of the user interface. The prototypes are thrown away after
                                   use – they are not an integral part of the product. The process that is subsequently used to detail
                                   the design is similar in nature to the waterfall model described above.
                                   The next series of models that emerged from efforts to improve flexibility in development are
                                   characterized by the fact that they involve developing sub-sets of a product’s functionality on an
                                   incremental basis. These are known as Rapid Development Models. The primary objective of the
                                   incremental delivery model is to reduce risk in large projects by delivering subsets of the planned
                                   functionality to customers earlier in development. Development is split into a number of sub-
                                   cycles each of which typically uses a mini-waterfall process, resulting in a complete subsystem
                                   that is delivered to customers.
                                   The latest model is both incremental and iterative. This is called the spiral development model,
                                   which encompasses a feedback mechanism that allows it to

                                   1.   Re-work features in these intermediate versions in response to customer feedback
                                   2.   Re-schedule subsequent activities in light of the new information generated when each
                                       sub-cycle is completed.

                                   The spiral development model combines the waterfall development model and the prototype
                                   approach,  which  is  a  series  of  partial  implementations  of  the  product.  Advantages  of  the
                                   spiral  development  model  include  an  early  focus  on  reusing  existing  software  components,
                                   the incorporation of software quality standards and the integration of hardware and software
                                   development cycles.





          204                              LoveLy professionaL university
   205   206   207   208   209   210   211   212   213   214   215