13-12
Steps in the design phase are:
Describe how the objects will behave
Computer-Aided Software Engineering
If weve automated just about everything else with software, it shouldnt be a surprise
that were also automating software design and development. Computer aided software
13-13
Bottom Line: The system development process is a straightforward one with distinct
activities that bring order to the chaos of building new systems. The most important
13.3 Alternative System-Building Approaches
If youve ever watched a house being built, you know everything starts with the
blueprints. One page of the blueprint set has an overall picture of how the house will look
Traditional Systems Life Cycle
The systems life cycle is primarily used for large systems projects. It has existed for
years and uses tried-and-true methods that help ensure the success of the system from its
humble beginnings as an idea to an old relic that eventually needs replacing.
The traditional lifecycle may seem rigid today. This approach works well for major
Prototyping
Fast, cheap, user-centered. Prototyping may be the best way to develop a new system if
end users dont have a clue about what they really want the system to look like. Even if
they have a few clues, prototypes works well because the user can guide the process
13-14
Generally, you use prototyping for very small systems or small parts of a larger system.
You wouldnt want to use this method to build a company-wide information system. It
Steps in Prototyping
The text outlines the four steps you use when developing a prototype. The important
thing to keep in mind is that these steps should be repeated many times over. If you work
through them just once, you might be in trouble. Some additional tips:
Step 1: Ask lots of questions.
Advantages and Disadvantages of Prototyping
Prototyping can be less costly than the traditional systems approach, but if you fail to
follow some of the basic principles of systems development, it can be more costly. For
instance, if you ignore the basic principle of how the prototype fits into the other
End-User Development
Taking matters into their own hands. This method of system development is a bit like
prototyping, but the end user designs and develops the new system using fourth-
13-15
generation languages. Its convenient for small applications, and the user has complete
ownership of the system.
The tools available to the end user are getting easier to use all the time and increase the
likelihood that the system will meet the users specifications, because the user is building
The most frequent risks of end-user development methods are:
Testing and documentation may be inadequate.
Control over data may be lost.
Application Software Packages and Outsourcing
We mentioned earlier that software programs are becoming extremely complex to design,
Application Software Packages
Fast, easy, convenient, user-driven. Many software packages are extremely convenient
for nontechies to use to develop their information products. Commonly called off-the-
shelf software, these packages can be the best method of creating an information system
13-16
Application software packages also provide an easier method of obtaining code
corrections, updates, and enhancements: Simply go to the Web site of the company that
wrote the software and download the latest version. Need technical support for the
program? Log on to the Web and youre there. No telephone calls, no waiting on hold for
hours, no begging the IT staff to fix your problem. In fact, youll probably find answers
to questions you didnt even know you had!
Application software packages still need lots of planning, especially when it comes to
integrating them with the other information systems throughout the organization.
Compatibility is key.
You should determine the total cost of ownership with these programs beforehand. What
are the training costs, implementation costs, and integration costs? They all add up.
Selecting software packages can be just as demanding as developing a system on your
own. You have to evaluate:
The programs functions to make sure they fit your needs.
Just as you would for any piece of equipment, you would seek Requests for Proposal
(RFP) from several vendors to fully evaluate the software package according to your
needs. Remember, you give up a lot of control when you choose to go with a prewritten
software package.
Outsourcing
What happens if an organization decides it doesnt have the in-house expertise to support
the system development process or any of the system maintenance required? No
Should you decide to use an outsourcing company to develop an information system, you
must be more careful than ever to ensure that everything, right down to the smallest
detail, is in writing and agreed upon by both sides. You are signing a contract with the
outsourcer that carries the full force of law. You must agree on how changes will be
made to the current system. How responsive will the outsourcer be to changing
requirements? You still have some responsibilities for the system; what will they be? Get
it in writing!
Figure 13-11 Total Cost of Offshore Outsourcing
Bottom Line: There are different ways to develop information systems: prototyping,
13-18
13.4 Application Development for the Digital Firm
Until a few years ago it was common for system development to take months if not years.
That time frame has shortened to days or weeks. Pundits refer to “Internet time” as a
Rapid Application Development (RAD)
Supply and demand. The supply of technical specialists is not enough to support the
demand for new systems, or maintenance of the old ones. Something has to fill the gap
Rapid Application Development (RAD) reduces the time it takes to build systems by
using many of the tools that weve discussed. You can choose from prototyping or
Component-Based Development and Web Services
Component-based development is simply the practice of developing reusable
components that are commonly found in many software programs. Create a “Save File”
Web Services and Service-Oriented Computing
Both of these system development methods rely on reusable components obtained from
Web sites on the Internet. They are independent of operating systems, programming
languages, or client devices. That makes them cheaper and easier to incorporate than
proprietary software development.
13-19
Mobile Application Development
People are moving away from total dependence on desktop and laptop computing to
mobile computing access on iPads, iPhones, smartphones, and tablet mobile devices.
Obviously the screens are much smaller on the handheld devices so they must react and
interact differently than those on larger screens. Its not enough nowadays to simply
design one Web site and hope it works okay across multiple devices.
You have a choice. You can design three different Web sites for desktops, tablets, and
smartphones. Or, you can use responsive Web design that enables Web sites to
automatically change layouts according to a users screen resolution regardless of the
device used to access the site.
Here are the advantages of using responsive Web design:
Uses a mix of flexible grids and layouts.
13-20
Interactive Session: Technology: What Does It Take To Go Mobile (see page 547 on
the text) explains how companies are developing mobile apps or mobile Web sites to
Bottom Line: New methods of developing systems are continually being introduced.
These new technologies, rapid application development, joint application
Discussion Questions
1. In the spectrum of organizational change, which is the most radical type of change:
automation, rationalization of procedures, business process redesign, or paradigm
shifts? Why?
2. What are some of the reasons business process management efforts fail?
Answers to Discussion Questions
1. Paradigm shifts are the most radical type of change because they require the
2. The largest single barrier to successful business process change is organizational
13-21
3. Object-oriented development combines data and processes into a single object that
becomes the basic unit of systems analysis and design. Because processing logic
4. Application software packages are prewritten programs and are convenient for non-
5. Web services use open standards that any piece of hardware or software program can
access. Web services can be written once and used many different times or different
6. The user experience for mobile device interaction is fundamentally different from
using a desktop or laptop PC. Saving resources, bandwidth, screen space, memory,