CHAPTER 13 "Building Information Systems"
13.1 Systems As Planned Organizational Change
Building a new information system is one kind of planned
organizational change. The introduction of a new information system involves
much more than new hardware and software.
Systems Development and Organizational Change
There are four kinds of structural organizational change that are
enabled by information technology: automation, rationalization, business
process redesign, and paradigm shifts. Each carries different risks and
rewards.
Automation involved
assisting employees with performing their tasks more efficiently and
effectively. A deeper form of organizational change—one that follows quickly
from early automation—is rationalization
of procedures. A more powerful type of
organizational change is business
process redesign, in which business processes
are analyzed, simplified, and redesigned. A paradigm shift involves rethinking
the nature of the business and the nature of the organization.
Business Process Redesign
Business process management provides a variety of tools and methodologies to analyze existing processes, design
new processes, and optimize those processes. Companies practicing business
process management go through the following steps:
- Identify processes for change
- Analyze existing processes
- Design the new process
- Implement the new process
- Continuous measurement
Tools for Business Process Management
Over 100 software firms provide tools for various aspects of BPM,
including IBM, Oracle, and TIBCO. These tools help businesses identify and
document processes requiring improvement, create models of improved processes, capture
and enforce business rules for performing processes, and integrate existing
systems to support new or redesigned processes.
13.2 Overview of Systems Development
The activities that go into producing an information system
solution to an organizational problem or opportunity are called systems development.
Systems development is a structured kind of problem solved with distinct
activities. These activities consist of systems analysis, systems design,
programming, testing, conversion, and production and maintenance.
Systems Analysis
Systems analysis is
the analysis of a problem that a firm tries to solve with an information
system. It consists of defining the problem, identifying its causes, specifying
the solution, and identifying the information requirements that must be met by
a system solution. The systems analysis also includes a feasibility study to
determine whether that solution is feasible, or achievable, from a financial,
technical, and organizational standpoint.
Establishing Information Requirements
At the most basic level, the information requirements of
a new system involve identifying who needs what information, where, when, and
how.
Systems Design
Systems design shows
how the system will fulfill this objective. Like houses or buildings,
information systems may have many possible designs. Each design represents a
unique blend of all technical and organizational components.
Completing The Systems Development Process
The remaining steps in the systems development process translate
the solution specifications established during systems analysis and design into
a fully operational information system. These concluding steps consist of
programming, testing, conversion, production, and maintenance.
Modeling and Designing Systems: Structured and Object-Oriented Methodologies
There are alternative methodologies for modeling and designing
systems. Structured methodologies and object-oriented development are the most prominent.
Structured Methodologies
Structured methodologies are top-down, progressing from the highest,
most abstract level to the lowest level of detail—from the general to the
specific. The primary tool for representing a system’s component processes and
the flow of data between them is the data
flow diagram (DFD). The data flow diagram
offers a logical graphic model of information flow, partitioning a system into
modules that show manageable levels of detail.
Another tool for structured analysis is a data dictionary, which
contains information about individual pieces of data and data groupings within
a system. Process specifications describe the transformation occurring within the lowest level of
the data flow diagrams. They express the logic for each process. In structured
methodology, software design is modeled using hierarchical structure charts.
The structure chart is a top-down chart, showing each level of design, its
relationship to other levels, and its place in the overall design structure.
Object-Oriented Development
Object-oriented development uses the object as the basic unit of systems analysis and design.
Computer-Aided Software Engineering
Computer-aided software engineering (CASE)—sometimes called computer-aided systems engineering—provides software tools to automate the methodologies we have
just described to reduce the amount of repetitive work the developer needs to
do.
13.3 Alternative Systems-Building Approaches
Traditional Systems Life Cycle
The systems life cycle is the oldest method for building information systems. The life
cycle methodology is a phased approach to building a system, dividing systems
development into formal stages.
Prototyping
Prototyping consists of
building an experimental system rapidly and inexpensively for end users to
evaluate. The prototype is a working version of an information system or part of the system,
but it is meant to be only a preliminary model.
Steps in Prototyping
- Identify the user’s basic requirements.
- Develop an initial prototype.
- Use the prototype.
- Revise and enhance the prototype.
Advantages and Disadvantages of Prototyping
Prototyping is most useful when there is some uncertainty about
requirements or design solutions and often used for designing an information
system’s end-user interface. However, rapid prototyping can gloss over essential steps in
systems development.
End-User Development
Some types of information systems can be developed by end users
with little or no formal assistance from technical specialists. This phenomenon
is called end-user development. A series of software tools categorized as fourth-generation languages
makes this possible. Fourth-generation languages are software tools that enable end users to create reports or
develop software applications with minimal or no technical assistance. End-user computing also poses organizational
risks because it occurs outside of traditional mechanisms for information
systems management and control.
Application Software Packages and Outsourcing
Application Software Packages
During the past several decades, many systems have been built on
an application software package foundation. If a software package can fulfill
most of an organization’s requirements, the company does not have to write its
own software. If an organization has unique requirements that the package does
not address, many packages include capabilities for customization. Customization features allow
a software package to be modified to meet an organization’s unique requirements
without destroying the integrity of the packaged software.
Outsourcing
If a firm does not want to use its internal resources to build or
operate information systems, it can outsource the work to an external
organization that specializes in providing these services. Cloud computing and
SaaS providers, are one form of outsourcing. Domestic outsourcing is driven
primarily by the fact that outsourcing firms possess skills, resources, and
assets that their clients do not have. In the case of offshore outsourcing,
the decision tends to be much more cost-driven.
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 opportunities.
Rapid Application Development (RAD)
The term rapid application
development (RAD) is used to describe this
process of creating workable systems in a very short period of time. Sometimes a technique called joint application design (JAD) is used to accelerate the generation of information requirements
and to develop the initial systems design. 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.
Component-Based Development and Web Services
To further expedite software creation, groups of objects have been
assembled to provide software components for common functions such as a
graphical user interface or online ordering capability that can be combined to
create large-scale business applications. This approach to software development
is called component-based development, and it enables a system to be built by assembling and
integrating existing software components.
Web Services and Service-Oriented Computing
In addition to supporting internal and external integration of
systems, Web services can be used as tools for building new information system
applications or enhancing existing systems. Web services can perform certain
functions on their own, and they can also engage other Web services to complete
more complex transactions, such as checking credit, procurement, or ordering
products.
----------------------------------------------------End-------------------------------------------------------------
source: "Management Information System" e-book, 12th edition, written by Kenneth C. Laudon and Jane P. Laudon.