Page 545 -
P. 545

544 Part Four  Building and Managing Systems


                                   13.4  APPLICATION DEVELOPMENT FOR THE DIGITAL
                                             FIRM

                                   In the digital firm environment, organizations need to be able to add, change,
                                   and retire their technology capabilities very rapidly to respond to new oppor-
                                   tunities, including the need to provide applications for mobile platforms.
                                   Companies are starting to use shorter, more informal development pro-
                                   cesses that provide fast solutions. In addition to using software packages
                                   and external service providers, businesses are relying more heavily on
                                   fast-cycle techniques such as rapid application development, joint application
                                   design, agile development, and reusable standardized software components that
                                   can be assembled into a complete set of services for e-commerce and e-business.


                                   RAPID APPLICATION DEVELOPMENT (RAD)

                                   Object-oriented software tools, reusable software, prototyping, and fourth-
                                   generation language tools are helping systems builders create working systems
                                   much more rapidly than they could using traditional systems-building methods
                                   and software tools. The term rapid application development (RAD) is used
                                   to describe this process of creating workable systems in a very short period
                                   of time. RAD can include the use of visual programming and other tools for
                                   building graphical user interfaces, iterative prototyping of key system ele-
                                   ments, the automation of program code generation, and close teamwork among
                                   end users and information systems specialists. Simple systems often can be
                                   assembled from prebuilt components. The process does not have to be sequen-
                                   tial, and key parts of development can occur simultaneously.
                                     Sometimes a technique called joint application design (JAD) is used
                                   to accelerate the generation of information requirements and to develop
                                   the initial systems design. JAD brings end users and information systems
                                   specialists together in an interactive session to discuss the system’s design.
                                   Properly prepared and facilitated, JAD sessions can significantly speed up the
                                   design phase and involve users at an intense level.
                                     Agile development focuses on rapid delivery of working software by
                                   breaking a large project into a series of small subprojects that are completed
                                   in short periods of time using iteration and continuous feedback. Each
                                   mini- project is worked on by a team as if it were a complete project, including
                                   planning, requirements analysis, design, coding, testing, and documentation.
                                   Improvement or addition of new functionality takes place within the next itera-
                                   tion as developers clarify requirements. This helps to minimize the overall risk,
                                   and allows the project to adapt to changes more quickly. Agile methods empha-
                                   size face-to-face communication over written documents, encouraging people
                                   to collaborate and make decisions quickly and effectively.


                                   COMPONENT-BASED DEVELOPMENT AND WEB
                                   SERVICES

                                   We have already described some of the benefits of object-oriented develop-
                                   ment for building systems that can respond to rapidly changing business
                                     environments, including Web applications. To further expedite software
                                     creation, groups of objects have been assembled to provide software compo-
                                   nents for common functions such as a graphical user interface or online ordering









   MIS_13_Ch_13 global.indd   544                                                                             1/17/2013   2:31:25 PM
   540   541   542   543   544   545   546   547   548   549   550