Lesson 5 Information System Development
Lesson 5 Information System Development
Lesson 5 Information System Development
T O P I C S Learning Objectives
Phases of System Development After completing this lesson, the learners
System Development Life Cycle should be able to:
Planning Phase
Analysis Phase explain the phases in the system
Design Phase development life cycle
Implementation Phase
Operation and Maintenance Phase identify the core activities in the
information systems development
process
Alternative System-Building Approaches
Prototyping
describe the guidelines for system
Application Software Package
development
End-User Development
Developing Systems with Teams: JAD and RAD appraise other system-building
Outsourcing alternatives
Application Development for the Digital Firm
Planning Phase
The initiation of a system development project may begin in many different ways. A system user requests a new or modified
information system for a variety of reasons, some external and some internal. An external reason is competition. For
example, once one bank offers Internet access to account information, others will have to follow suit, or run the risk of losing
customers. One internal reason for modifying an information system is to improve or enhance it. For example, if a school
wants to provide students with the ability to register for classes via the telephone, the school would have to modify the
existing registration system to include this enhancement. The most obvious internal reason for changing an information
system is to correct a business problem. For example, the stock-on-hand listed on a report may not match the actual stock-
on-hand in the warehouse. The planning phase for a project begins when the management receives a project request. If a
system project is called for, this phase identifies its general objectives, specifies the project’s scope, and develops a project
plan that can be shown to management. During the planning phase, five major activities are performed: (1) review and
approve the project request, (2) identify the objectives, (3) develop the project plan, (4) form a project team, and (5) allocate
resources such as money, people, and equipment to the approved project. If the management receives several projects
requests at the same time, the project requests should be prioritized. The projects that receive the highest priority are those
mandated by management or some other governing body. These requests are given immediate attention. The steering
committee evaluates the remaining project requests based on their value to the company. The steering committee approves
some projects and rejects others. Of the approved projects, it is likely that only a few will begin their system development
cycle immediately. Others will have to wait for additional funds or resources to become available.
Analysis Phase
System analysis is the analysis of the problem that the organization will try to solve with an information system. The analysis
phase consists of two major tasks: (1) conducting a preliminary investigation and (2) performing detailed analysis. The
detailed analysis further contains three activities: (a) study how the current system works; (b) determine the user's wants,
needs and requirements, and (c) recommend a solution. The preliminary investigation, also called the feasibility study, is a
user-oriented overview of the proposed information system's purpose and feasibility. The purpose of the preliminary
investigation is to define the problem or enhancement, identify its causes or sources, determine whether or not the problem
or enhancement identified is worth pursuing, and determine whether that projects is feasible, or achievable, given the
organization's resources and constraints. Should the company continue to assign resources to this project? To answer this
question, the systems analyst conducts a general study of the project and presents his or her findings in a report.
The most important aspect of the preliminary investigation is to define accurately the problem or enhancement. The
perceived problem or enhancement identified in the project request may or may not be the actual problem. In other words,
the actual problem may be different from the one suggested in the project request. For example, suppose the shipping
department complains that the marketing department takes too long to send customer names and addresses. An
investigation might reveal the marketing department is not the problem. The problem exists because the marketing
department does not have instant access to the customer names and addresses. The preliminary investigation begins with
an interview of the user who submitted the project request, and other users who will be affected by the project. In addition
to interviewing, members of the project team may use other data gathering techiques. During the preliminary investigation,
through examining documents and procedures, observing system operations, and interviewing key users, the development
Management Information System for an Educational Institution
team can identify the problem area and objectives to be achieved by the solution. Upon completion of the preliminary
investigation, the systems analyst writes the feasibility report that presents his/her findings and a recommendation to the
steering committee. The feasibility report contains these major parts: introduction, review of existing system, benefits of a
new system, feasibility of a new system, and the recommendation. Three major areas of feasibility must be addressed in the
report:
i. Technical Feasibility: whether the proposed information system can be implemented with the available hardware,
software, technical resources, and human resource.
ii. Economic Feasibility: whether the benefits of the proposed information system outweigh the costs.
iii. Operational Feasibility: whether the proposed solution is desirable within the existing managerial and
organizational framework and culture.
Normally the feasibility study will identify several alternative solutions that can be pursued by the organization. The written
feasibility report will assess the feasibility of each alternative, describe the costs and benefits, advantages and disadvantages
of each alternative, and give a recommendation. However, it is up to the steering committee to determine which mix of
costs, benefits, technical features, and organizational impacts represents the most desirable alternative. In some cases, the
project team may recommend not to continue the project. In other words, the team considers the project infeasible. If the
steering committee agrees, the project ends at this point. If the project team recommends continuing and the steering
committee approves this recommendation, however, then detailed analysis begins. 41
Figure 7. Establishing information requirements requires close cooperation
among system analyst, users, and other specialists throughout the system
analysis phase.
While studying the current system and identifying user requirements, the systems analyst collects a great deal of data and
information. A major task for the systems analyst is to document these findings in a way that can be understood by everyone.
Both users and IT professionals refer to this documentation. Most system analysts use either a process modeling or object
modeling approach to analysis and design. Process modeling is an analysis and design technique that describes processes
that transform inputs into outputs. Tools that a systems analyst uses for process modeling include entity-relationship
diagrams, data flow diagrams, and the project dictionary.
An entity-relationship diagram (ERD) is a tool that graphically shows the connections among entities in a system. An entity
is an object in the system that has data. Each relationship describes a connection between two entities. For example, in the
ERD shown in Figure 8, a vendor supplies one or more computers. A customer may or may not use one of these computers.
A customer may or may not place an order. Some customers may place multiple orders. Each order contains one or more
items from the menu. It is important that the systems analyst reviews the ERD with the user. After users approve the ERD,
the systems analyst identifies data items associated with an entity. For example, the VENDOR entity might have these data
items: Vendor Number, Vendor Name, Address, City, State, Postal Code, Telephone Number, and E-mail Address. A data
flow diagram (DFD) is a tool that graphically shows the flow of data in a system. The key elements of a DFD are the data
flows, the processes, the data stores, and the sources (Figure 9). A data flow, indicated by a line with an arrow, shows the 42
input or output of data or information into or out from a process. A process, which is drawn as a circle, transforms an input
data flow into an output data flow. A data store, shown as a rectangle with no sides, is a holding place for data and
information. A source, drawn as a square, identifies an entity outside the scope of the system. Source send data into the
system or receive information from the system. Like ERDs, systems analysts often use EFDs to review processes with users.
The project dictionary, sometimes called the repository, contains all the documentation and deliverables of a project. The
project dictionary helps everyone keep track of the huge amount of details in a system. The dictionary explains every item
found on DFDs an ERDs. Each process, data store, data flow, and source on every DFD has an entry in the project dictionary.
Every entity on the ERD has an entry in the project dictionary. The dictionary also contains an entry for each data item
associated with the entities. The number of entries added to the dictionary at this point can be enormous. As you might
imagine, this activity requires a huge amount of time. The system analyst uses a variety of techniques to enter these items
in the project dictionary. Some of these include structured English, decision tables, decision trees, and the data dictionary,
as shown in Figure 10.
43
(d) Data Dictionary
Figure 10. System analyst uses these techniques to describe a process in the project dictionary.
Another approach systems analysts can use is the object modeling, sometimes called object-oriented (OO) analysis and
design, which combines the data with the processes that act on that data into a single unit, called an object. An object is an
item that can contain both data and the procedures that read or manipulate that data. For example, a Customer object might
contain data about a customer (Customer ID, First Name, Last Name, Address, and so on) and instructions about how to print
a customer's record or the formula required to compute a customer's amount due. Each data element is called an attribute
or property. The procedure in the object, called an operation or method, contains activities that read and manipulate the
data. Object modeling can use the same tools as those used in process modeling. Many systems analysts, however, choose
to use tools defined in the UML (Unified Modeling Language). Although used in all types of business modeling, the UML has
been adopted as a standard notation for object modeling and development. The UML is a graphical tool that enables analysts
to document a system. It consists of many interrelated diagrams. Each diagram conveys a view of the systems. A popular tool
on the market today that uses the UML is the Rational Unified Process, which uses case diagram and class diagram, as shown
in Figure 11. After having studied the current system and determined all user requirements, the systems analyst
communicates possible solutions for the project in a system proposal. The purpose of the system proposal is to assess the
feasibility of each alternative solution and then recommend the most feasible solution for the project. The systems analyst
presents the system proposal to the steering committee. If the latter approves a solution, the project enters the design
phase.
Figure 11. The case diagram and class diagram are two common tools in the UML.
Design Phase
Information analysis describes what an information system should do to meet information requirements, while information
systems design shows how the system will fulfill this objective. The design of an information system is the overall plan or
model for that system, which consists of all the specifications that give the system its form and structure. These specifications
should address all of the managerial, organizational, and technological components of the system solution. The design phase
consists of two major activities: logical design and physical design. Logical design lays out the logical model that describes
the components of the system and their relationship to each other as they would appear to the users. It describes inputs and
outputs, processing functions to be performed, business procedures, data models and controls. Controls specify standards
for acceptable performance and methods for measuring actual performance in relation to these standards. After the systems
analyst identifies the data and process requirements, the next step is to develop detailed specifications for the components
in the proposed solutions. A detailed design sometimes is called a physical design. Physical design is the process of translating
the abstract logical model into the specific technical design for the new system. It produces the specifications for hardware,
44
software, physical databases, input/output media and format, networking, manual procedures, and specific controls.
Physical design develops all of the details of the information system to be implemented with respect to functionality,
features, and performance. To obtain these specifications, the systems analyst researches using a variety of techniques such
as talking with other analysts, visiting vendor's stores, surfing the Web, and reviewing written technical materials. Many
trade journals, newspapers, and magazines provide some or all of their printed content as e-zines. An e-zine, or electronic
magazine, is a publication available on the Web.
Figure 12. This input screen is a mockup for users to review and approval.
Figure 13. This is the layout chart for the mockup in Figure 12.
During database design, the system analyst builds upon the data dictionary developed during the analysis phase. The systems
analyst works closely with the database analysts and database administrators to identify those data elements that currently
exist within the company and those that are new. With relational database systems, the systems analyst defines the structure
of each table in the system, as well as relationships among the tables. The systems analyst also addresses user access
privileges. That is, the systems analyst defines which data elements each user can access, when they can access the data
elements, what actions they can perform on the data elements, and under what circumstances they can access the elements.
The result of database design is called a data model. During the input and output design, the systems analyst carefully
designs every menu, screen, and report specified in the requirements. The outputs often are designed first because they
help define the requirements for the inputs. Thus, it is very important that outputs are identified correctly and that users
agree to them. The systems analyst typically develops two types of designs for each input and output: a mockup and a layout
chart. A mockup is a sample of the input or output that contains actual data (Figure 12). The systems analyst shows mockups
to users for their approval. Because users will work with the inputs and outputs of the system, it is crucial to involve users
during input and output design. After users approve the mockup, the systems analyst develops a layout chart for the 45
programmer. A layout chart is more technical and contains programming-like notations for the data items (Figure 13). Other
issues that must be addressed during input and output design include the types of media to use (paper, video, audio); formats
(graphical or narrative); and data entry validation techniques, which make sure the entered data is correct. During program
design, the systems analyst prepares the program specification package, which identifies the required programs and the
relationship among each program, as well as the input, output, and database specifications. Many people should review the
detailed design specifications before they are given to the programming team. Reviewers should include users, systems
analysts, managers, IT staff, and members of the system development team. One popular review technique is an inspection.
An inspection is a formal review of any system development cycle deliverable. A team of four or five people examines the
deliverables, such as reports, diagrams, mockups, layout charts, and dictionary entries. The purpose of an inspection is to
identify errors in the item being inspected. Any identified errors are summarized in a report so they can be addressed and
corrected. Once again, the systems analyst reevaluates feasibility to determine if it still beneficial to proceed with the
proposed solution. If the steering committee decides the project still is feasible, which usually is the case, the project enters
the implementation phase.
Implementation Phase
Once the design is completed, the project enters the implementation phase. The implementation phase converts the system
specifications established during systems analysis and design phases into a fully operational information system. The purpose
of this phase is to construct the new or enhanced system and then deliver it to the users. Five major activities are performed
in this phase: (1) acquire necessary hardware and software; (2) develop computer programs if necessary; (3) install and test
the new system; (4) train and educate users; and (5) convert to the new system. According to the specifications in the system
design, the system analyst sends either a request for quotation or a request for proposal to prospective hardware and
software vendors. A request for quotation (RFQ) is used when you know which products you want. The vendor quotes prices
for the specified products. A request for proposal (RFP) is used when you want the vendor to select the products that meets
your requirements and them quote the prices. Systems analysts have a variety of ways to locate vendors. Many publish their
product catalogs on the Web. These online catalogs provide up-to-date information on and easy access to products, prices,
technical specifications, and ordering information. Another source for hardware and software products is a value-added
reseller. A value-added reseller (VAR) is a company that purchases products from manufacturers and then resells these
products to the public--offering additional services with the product. Examples of additional services include user support,
equipment maintenance, training, installation, and warranties. Instead of using vendors, some companies hire IT consultants;
that is, they outsource this task. An IT consultant is a professional who is hired based on computer expertise, including service
and advice. IT consultants often specialize in configuring hardware and software for businesses of all sizes.
After you receive completed quotations and proposals from the potential vendors, you must evaluate vendor proposals and
then select the best one. It is a difficult task. It is important to be as objective as possible while evaluating each proposal. A
popular technique is to establish a scoring system that you can use to rate each proposal. System analysts use many
techniques to test the various software products from vendors. They obtain a list of user references from the software
vendors. They also talk to current users of the software to solicit their opinions. Some vendors will give a demonstration of
the product specified. Other vendors provide demonstration copies to test the software themselves. Demonstration copies
usually are free and have limited functionality. Trial versions are free or have minimal fees and provide full functionality for
a set time. In some cases, the demonstration copies and trial versions are available to download from the Web.
Sometimes it is important to know whether the software can process a certain volume of transactions efficiently. In this case,
the systems analyst conducts a benchmark test. A benchmark test measures the performance of hardware or software. For
example, a benchmark test could measure the time it takes a billing program to print 50 billing statements. Some computer
magazines conduct benchmark tests while evaluating hardware and software and then publish these results for consumers
to review. Having rated the proposals, the systems analyst presents a recommendation to the steering committee. The
recommendation could be to award a contract to a vendor or to not make any purchases at this time. If the project
development team decides to write custom software, instead of purchasing packaged software, then the programmers will
Management Information System for an Educational Institution
develop programs from the program specification package created during analysis and design. It is here, called programming,
that system specifications are translated into program code, the actual instructions for the machine. Like the system
development life cycle, program development also follows an organized set of activities, called program development life
cycle (PDLC). The PDLC is an important part of the implementation phase. If new hardware was acquired, the hardware must
be installed and tested at this point. Both packaged software and custom software programs have to install on the hardware.
It is extremely important that the hardware and software be tested thoroughly. Inadequate system testing will lead to serious
problems or even disaster to the organization. Just as you test individual programs, you must test the entire information
system to ensure that the programs and hardware operate together to accomplish the desired functions. System tests
frequently uncover inconsistencies among programs as well as inconsistencies in the original hardware or software
specification. It is better to find errors so you can correct them before putting the system into production; that is delivering
it to the users. Testing an information system can be broken down into four types of activities:
1. Unit Testing: test each program separately in the system. The purpose of such testing is to guarantee that programs
are error-free.
2. System Testing: test the functioning of the information system as a whole and verify that all programs in the system
work together properly.
3. Integration Testing: verify that the information system works well with other systems.
46
4. Acceptance Testing: provide the final certification that the system is ready to be used in a production setting.
System tests are evaluated by users and reviewed by management. When all parties are satisfied that the new
system meets their standards, the system is formally accepted for the conversion.
For an information system to be effective, users must be trained properly on its functionality. They must be trained on how
to use both the hardware and the software. According to a recent study, poor user training is one of the top ten reasons why
system development projects fail. Users must be trained properly on a system's functionality. Training is the process of
ensuring that system users know what they need to know about both the work system and the information system. Training
shows the users exactly how they will use the new hardware and software in the system. Training may take place as
classroom-style lectures or Web-based training that is a self-directed, self-paced online instruction method. The training
format depends on user backgrounds and the purpose and features of both work system and the information system.
Companies can also provide education to the users. Education is the process of learning new principles or theories that help
users understand the system. For example, many companies do their businesses electronically. In this case, employees need
to be educated on the concepts and practices of E-commerce. The final implementation activity is to change from the old
system to the new system. This process is called a conversion. This conversion can take place using one or more of the
following conversion strategies (Figure 14):
Figure 14. Converting from the old system to the new system usually follows one of these strategies.
Direct cutover strategy: With direct cutover strategy, users stop using the old system and begin using the new
system on a certain date. The advantage of this strategy is that it requires no transition costs and is a quick
implementation technique. The disadvantage is that it is extremely risk and can disrupt operations seriously if the
Management Information System for an Educational Institution
new system does not work correctly, since there is no other system to fall back on.
Parallel strategy: Both the old system and its potential replacement are running together for a specified time
period until it is assured that the new one functions correctly. The advantage of this strategy is that any problems
with the new system can be solved before the old system is terminated. The disadvantage is that it is very expensive
since additional staff or resources may be required to run the extra system.
Phased strategy: This strategy introduces the new system in stages, either by functions or by organizational units.
Each function or organizational unit is converted separately at different times using either a direct cutover or
parallel conversion. This strategy is often used with larger systems that are split into individual sites.
Pilot strategy: This strategy introduces the new system to only a limited area of the organization, such as a single
department or operating unit. When this pilot version is complete and working smoothly and correctly, it is
installed throughout the rest of the organization, using one of the aforementioned conversion strategies.
CASE Tools
Many systems analysts use computer software to assist in the SDLC. Computer-aided software engineering (CASE) software
tools are designed to support a variety of activities of the SDLC. CASE tools typically include diagrams to support both process
and object modeling. Some CASE tools exist separately. One program might be a dictionary and another might allow you to
create drawings. The most effective tools are integrated (see Figure 15).
Figure 15. CASE tools can assist systems and developers in their development processes.
The purpose of these tools is to increase the efficiency and productivity of the project development team. Usually an
integrated CASE product includes the following capabilities:
48
Prototyping
A major problem with the traditional SDLC is that the user does not use the solution until the system is nearly complete. The
traditional approach is also inflexible -- changes in user requirements cannot be accommodated during development. One
of alternative approaches to system development is the prototyping. Prototyping takes an iterative approach to the systems
development process. During each iteration, requirements and alternative solutions to the problem are identified and
analyzed, new solutions are designed, and a portion of the system is implemented. Users are then encouraged to try the
prototype and provide feedback. The prototype is a working version of an information system or part of the system, but it
meant to be only a preliminary model. During the development process, the prototype will be further refined until it
conforms precisely to users' requirements. For many applications, a prototype will be extended and enhanced many times
before a final design is accepted. Once the design has been finalized, the prototype can be converted to a polished production
system.
Prototyping is most useful when there is some uncertainty about requirements or design solutions. Requirements may be
difficult to specify in advance or they may change substantially as implementation progresses. This is particularly true of
decision-oriented applications, where requirements tend to be very vague. Prototyping is also valuable for the design of the
Management Information System for an Educational Institution
end-user interface of an information system (the part of the system that end users interact with, such as online display and
data entry screens, reports, or Web pages). User needs and behaviors are not entirely predictable and are strongly dependent
on the context of the situation. Because prototyping encourages intense end-user involvement throughout the systems
development process, it is more likely to produce systems that fulfill user requirements. However, rapid prototyping can
gloss over essential steps in systems development. If the completed prototype works reasonably well, management may not
see the need for reprogramming, redesign, or full documentation and testing to build a polished production system. Some
of these hastily constructed systems may not easily accommodate large quantities of data or a large number of users in a
production environment.
When a system is developed using an application software package, system analysis will include a package evaluation effort.
The most important evaluation criteria are the functions provided by the package, flexibility, user-friendliness, hardware and
software resources, database requirements, installation and maintenance effort, documentation, vendor quality, and cost.
The package evaluation process often is based on a Request for Proposal (REP). When a software package solution is
selected, the organization no longer has total control over the system design process. Instead of tailoring the system design
specifications directly to user requirements, the design effort will consist of trying to mold user requirements to conform to
the features of the package. If the organization's requirements conflict with the way the package works and the package
cannot be customized, the organization will have to adapt to the package and change its procedures. Even if the
organization's business processes seem compatible with those supported by a a software package, the package may be too
constraining if these business processes are continually changing. A new company that was just being set up could adopt the
business processes and information flows provided by the package as its own business processes. But organizations that
have been in existence for some time may not be able to easily change the way they work to conform to the package.
End-User Development
One of the most difficult steps in creating any new system is determining the user requirements. What does the system need
to do and how will it work? This step is crucial. If the designers make a mistake here, the system will either be useless or will
need expensive modifications later. SDLC and prototyping take different approaches to this problem. With SDLC, analysts
talk with users and write reports that describe how the system will operate. User examine the reports and make changes.
This approach is time consuming and difficult for users because they only see paper notes of the proposed system.
Prototyping overcomes some of the problems by letting users work with actual screens and reports. But use of prototyping
is hard to expand beyond one or two users.
Designing and developing systems is much easier if the entire system can be built by one person. In fact, that is one of the
strengths of recent tools -- they enable a single person to build more complex systems. The term end-user development
simply means that users do all of the development work themselves. Using fourth-generation languages, graphics languages,
and PC software tools, end users can access data, create reports, build business models, and develop entire information
systems on their own, with little or no help from professional systems analysts or programmers. Many of these end-user
developed systems can be created much more rapidly than the traditional systems life cycle. Clearly the main advantage is
that users get what they want without waiting for an IS team and without the difficulty of trying to describe the business
problems to someone else. Two basic reasons explain why end-user development is increasingly popular. First, most IS teams
are facing a two- or three-year backlog of projects. That means that if you bring a new project to the IS team, the designers
will not even start on it for at least two years. The second reason is that software tools are getting more powerful and easier
to use at the same time. Today, it is possible for managers to create a business model and solve a business problem with a
spreadsheet in a few hours that 10 years ago would have taken IS programmers a month to build with third-generation
languages. As tools become more powerful and more integrated, it becomes possible to create even more complex systems.
Many organizations have reported gains in application development productivity by using end-user computing approach that
in a few cases have reached 300 to 500 percent. Allowing users to specify their own business needs improves requirements
gathering and often leads to higher level of user involvement and satisfaction with the system. However, end-user computing
still cannot replace conventional methods for some business applications because the end users cannot easily handle the
complexity of large transactions or applications with extensive procedural logic and updating requirements. The potential
problems of end-user development are not always easy to see. Most of them arise from the fact that users generally lack the
Management Information System for an Educational Institution
training an experience of systems analysts and programmers. For instance, systems produced by end users tend to be written
for only one person to use. They are oriented to working on stand-alone personal computers. The systems are often
customized to fit the needs of the original users. The systems lack security controls and are hard to modify.
Other problems stem from the bottom-up approach inherent in end-user development. People in different areas of the
company will wind up working on the same problem, when it could have been solved once by IS teams. Data tends to be
scattered throughout the company, making it hard to share and wasting space. Not following standards generates
incompatibilities among systems, making it difficult to combine systems created by different departments or even by people
within the same department. The end-user computing poses organizational risks because it occurs outside of traditional
mechanisms for information system management and control. When systems are created rapidly, without a formal
development methodology, testing and documentation may be inadequate. Control over data can be in systems outside the
traditional information systems department. The last, and possibly most import, complication is that end-user development
takes time away from the user's job. Some users spend months creating and modifying systems that might have been created
by IS programmers in a fraction of the time. One of the reasons for creating an IS department is to gain efficiency from using
specialists.
To help organizations maximize the benefits of end-user applications development, management should control the
development of end-user applications by requiring cost justification of end-user information system projects and by
establishing hardware, software, and quality standards for user-developed applications. Some organizations use information
50
centers to promote standards for hardware and software so that end users could not introduce many disparate and
incompatible technologies into the firm. Information centers are special facilities housing hardware, software, ad technical
specialists to supply end users with tools, training, and expert advice so they can create information system applications on
their won or increase their productivity. The role of information centers is diminishing as end-users become more computer
literate, but organizations still need to closely monitor and manage end-user development.
A technique known as joint application design (JAD) was created to accelerate the generation of information requirements
and to develop the initial systems design. With JAD the main system is designed in an intense three- to five-day workshop.
Users, managers, and systems analysts participate in a series of intense meetings to design the inputs and outputs needed
by the new system. By putting all of the decision makers in one room at the same time, conflicts are identified and resolved
faster. Users and managers gain a better understanding of the problems and limitations of technology. The resulting system
has greater value for users and managers because it more closely matches their needs. There is less need for changes later,
when they become more expensive, so the system is cheaper to create. Properly prepared and facilitated, JAD sessions can
significantly speed the design phase while involving users at an intense level.
The biggest drawback to JAD is that it requires getting everyone together at the same time for an extended period of time.
Even for moderately complex system, the meetings can run eight hours a day for three to five days. Most managers and
users find it difficult to be away from their jobs for that length of time. Higher-level managers are also needed at these
meetings to ensure the system provides the appropriate reports and information. Finally, the meetings can only succeed if
they are led by a trained facilitator. The facilitator keeps the discussions moving in the right direction, minimizes conflicts,
and encourages everyone to participate. At the end of the sessions, the systems development team should have a complete
description of the proposed system.
By providing advanced development tools, pre-built objects, and collaboration tools, some companies have found it is
possible to reduce the overall development time. The key is to target steps that can overlap and be performed by multiple
teams. By improving the collaboration tools, more steps can be compressed. Many e-commerce projects were developed
with rapid application development (RAD) techniques. RAD is used to describe the 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 elements, the automation of program code generation, and close teamwork
among end users and information systems specialists. RAD applies the value of teamwork to the developers. Firms are
concerned about being the first in the market and feel they need to develop software rapidly. Systems often can be
assembled from pre-built components. The process does not have to be sequential, and key parts of development can occur
simultaneously. The techniques of using small groups of programmers using advanced tools, collaboration, and intense
programming sessions was relatively successful at quickly producing thousands of new applications.
Outsourcing
If a firm does not want to use its internal resources to build or operate information systems, it can hire an external
organization that specializes in providing these services to do the work. The process of turning over an organization's
computer center operations, telecommunications networks, or applications development to external vendors is called
Management Information System for an Educational Institution
outsourcing. The application service providers (ASPs) are one form of outsourcing. Subscribing companies would use the
software and computer hardware provided by the ASP as the technical platform for their system. In another form of
outsourcing, a company would hire an external vendor to design and create the software for its system, but that company
would operate the system on its own computer. Outsourcing has become popular because some organizations perceive it
as more cost effective than maintaining their own computer center or information systems staff. The provider of outsourcing
services benefits from economies of scale (the same knowledge, skills, and capacity can be shared with many different
customers) and is likely to charge competitive prices for information systems services. Outsourcing allows a company with
fluctuating needs for computer processing to pay for only what it uses rather than to build its own computer center, which
would be underutilized when there is no peak load. Some firms outsource because their internal information systems staff
cannot keep pace with technological change or innovative business practices or because they want to free up scarce and
costly talent for activities with higher payback.
Not all organizations benefit from outsourcing, and the disadvantages of outsourcing can create serious problems for
organizations if they are not well understood and managed. Many firms underestimate costs for identifying and evaluating
vendors of information technology services, for transitioning to a new vendor, and for monitoring vendors to make sure they
are fulfilling their contractual obligations. These "hidden costs" can easily undercut anticipated benefits from outsourcing.
When a firm allocates the responsibility for developing and operating its information systems to another organization, it can
lose control over its information systems function. If the organization lacks the expertise to negotiate a sound contract, the
firm's dependency on the vendor could result in high costs or loss of control over technological direction. Firms should be 51
especially cautious when using an outsourcer to develop or to operate applications that give it some type of competitive
advantage.
Building a dynamic core business application that runs over the Web is much more complicated. Such applications must meet
special business needs. They must be able to scale up to support highly variable transaction throughput from potentially
thousands of users. Ideally, they can scale up instantly when needed. They must be reliable and fault tolerant, providing
continuous availability while processing all transactions accurately. They must also integrate with existing infrastructure,
including customer and order databases, existing applications, and enterprise resource planning systems. Development and
maintenance must be quick and easy, as business needs may require changing applications on the fly. In the digital firm
environment, organizations need to be able to add, change, and retire their technology capabilities very rapidly. Companies
are adopting shorter, more informal development processes for many of their e-commerce and e-business applications,
processes that provide fast solutions that do not disrupt their core transaction processing systems and organizational
databases. They are relying more heavily on fast-cycle techniques such as JAD, prototypes, and reusable standardized
software components that can be assembled into a complete set of services for e-commerce and e-business.
In summary, systems development can be a difficult task. Many projects have failed because they cost much more than
anticipated or they did not produce useful systems. All development methods introduced in this chapter involve five basic
steps: feasibility and planning, systems analysis, design, implementation, and maintenance. Prototyping and end-user
development typically focus on the design stage. However, managers need to remember that implementation problems can
arise with any new system, regardless of how it was created. The following table compares the advantages and disadvantages
of each of the system-building alternatives.
participation
Commercial software Design, programming, May not meet
eliminates need for installation, and organization's unique
internally developed maintenance work requirements
software programs reduced May not perform many
Applications Can save time and cost business functions well
software when developing Extensive customization
package common business raises development
applications costs
Reduces need for
internal information
systems resources
Systems created by end User control systems- Can lead to
users using forth- building proliferation of
End-user
computing
generation software Saves development time uncontrolled
tools and cost information systems
Rapid and informal and data
52
Minimal role of Reduces application Systems do not always
information systems backlog meet quality assurance
specialists standards
Systems built and Can reduce or control Loss of control over the
sometimes operated by costs information systems
external vendor Can produce systems function
Outsourcing when internal resources Dependence on the
are not available or technical direction and
technically deficient prosperity of external
vendors
Companies today often have a chief security officer (CSO) who is responsible for physical security of a company's property
and people and also is in charge of securing computing resources. It is critical that the CSO is included in all system
development projects to ensure that all projects adequately address information security. The CSO uses many techniques to
maintain confidentiality or limited access to information, ensure integrity and reliability of systems, ensure uninterrupted
availability of systems, ensure compliance with laws, and cooperate with law enforcement agencies. An important
responsibility of the CSO is to develop a system security plan. A system security plan summarizes in writing all of the
safeguards that are in place to protect a company's information assets. A system security plan should do the following:
1. Identify all information assets of an organization, including hardware, software, documentation, procedures,
people, data, facilities, and supplies.
2. Identify all security risks that may cause an information asset loss. Rank risks from most likely to occur to least
likely to occur. Place an estimated value on each risk, including the value of lost business. For example, what is
the estimated loss if customers cannot access computers for one hour, one day, or one week?
3. For each risk, identify the safeguards that exist to detect, prevent, an recover from a loss.
The CSO should evaluate the system security plan annually or more frequently for major changes in information assets, such
as the addition of a new computer or the implementation of a new application. In developing the plan, the CSO should
recognize that some degree of risk is unavoidable; the more secure a system is, the more difficult it is for everyone to use.
The goal of a system security plan is to match an appropriate level of safeguards against the identified risks.
53
Study Guide for Lesson 5
What are the phases of
system development? Cite
a particular organization
for its application.
system is implemented?
What can you do to ensure
the system continues to
meet the knowledge
workers’ needs?
A S S I G N M E N T
Connect to the Internet and several sites that offer freeware and shareware on human resource management. Install and
try it in your computer. Explain on how did it answered the computing needs of your company.
54