405 MID All Compiled 3
405 MID All Compiled 3
405 MID All Compiled 3
Mentioned Questions
Q1: What is System Analysis and design?
Answer-
System analysis is where the system analyst and the project team investigates the current
system for any problem and then analyses the problem to solve it. The system analyst first tries
to identify the problem by studying the current system called the as-is system. Next step is to
identify the causes of the problem by examining documents, work papers, and procedures,
observing system operations, and interviewing key users of the systems. Next step is so specify
the solution which often results in building a new system called the to-be system. A feasibility
study is done to determine whether the to-be system is feasible and achievable, whether it is
expected to be a good investment, whether the technology needed for the system is available
and can be handled by the firm’s information systems specialists, and whether the organization
can handle the changes introduced by the system. The last step is to identify the information
requirement which is done by requirement gathering (e.g., through techniques such as
interviews, group workshops, or questionnaires). Requirement analysis defines the objectives
of the new and develops a detailed description of the functions that the new system must
perform. Faulty requirements analysis will lead to systems failure, high systems development
costs, poor performance and major modification.
Systems design shows how the system will fulfill the objectives to meet the information
requirements. The design of an information system is the overall plan or model for the new
system. The systems designer details the system specifications that addresses the managerial,
organizational, and technological components of the new system. These specifications will
deliver the functions identified during systems analysis. Systems design shows how the system
will fulfill the objectives to meet the information requirements. The design of an information
system is the overall plan or model for the new system. The systems designer details the system
specifications that addresses the managerial, organizational, and technological components of
the new system. These specifications will deliver the functions identified during systems
analysis.
Q2: Who is systems analyst? Why is system analyst called change agent? What are his skill
set? What are the different roles of a systems analyst?
Answer- The systems analyst plays a key role in information systems development projects. The
systems analyst works closely with all project team members so that the team develops the
right system in an effective way. The systems analyst creates a road map of the existing
organization and systems, identifying the primary owners and users of data along with existing
hardware and software Systems analysts must understand how to apply technology to solve
business problems. In addition, systems analysts may serve as change agents who identify the
organizational improvements needed, design systems to implement those changes, and train
and motivate others to use the systems.
The system analyst is called change agent because he is the one who identifies the
organizational improvements needed, design systems to implement those changes, and train
and motivate others to adopt the system.
The skill set a of a systems analyst are: technical, business, analytical, interpersonal,
management, and ethical.
Technical skills- Analysts must have the technical skills to understand the
organization’s existing technical
environment, the new system’s technology foundation, and the way in which
both can be fi t
into an integrated technical solution.
Business skills- Business skills are required to understand how IT can be
applied to business situations and to ensure that IT delivers real business
value.
Analytical skills- Analytical skills are needed to solve continuous problems
at both the project and the organizational level, they put their analytical
skills to the test regularly.
Interpersonal skills- analysts need have interpersonal skills to
communicate effectively, one-on-one with users and business managers
(who often have little experience with technology) and with programmers
who often have more technical expertise than the analyst does). They must
be able to give presentations to large and small groups and to write reports.
Management skills- They also need management skills to manage people
with whom they work, and they must manage the pressure and risks
associated with unclear situations.
Ethical skills- Analysts need ethical skills as, they must deal fairly, honestly,
and ethically with other project team members, managers, and system
users. Analysts often deal with confidential information or information that, if
shared with others, could cause harm it is important for analysts to maintain
confidence and trust with all people.
System analyst Roles
The systems analyst role focuses on the IS issues surrounding the system. This person develops
ideas and suggestions for ways that IT can support and improve business processes, helps
design new business processes supported by IT, designs the new information system, and
ensures that all IS standards are maintained.
The business analyst role focuses on the business issues surrounding the system. This person
helps to identify the business value that the system will create, develops ideas for improving
the business processes and helps design new business processes and policies.
The requirements analyst role focuses on eliciting the requirements from the stakeholders
associated with the new system. Requirements analysts understand the business well, are
excellent communicators, and are highly skilled in an array of requirements elicitation
techniques.
The infrastructure analyst role focuses on technical issues surrounding the ways the system will
interact with the organization’s technical infrastructure (hardware, soft ware, networks, and
databases). Th is person ensures that the new information system conforms to organizational
standards and helps to identify infrastructure changes that will be needed to support the
system.
The change management analyst role focuses on the people and management issues
surrounding the system installation. This person ensures that adequate documentation and
support are available to users, provides user training on the new system, and develops
strategies to overcome resistance to change.
The project manager role ensures that the project is completed on time and within budget and
that the system delivers the expected value to the organization. The project manager is often a
seasoned systems analyst who, through training and experience, has acquired specialized
project management knowledge and skills.
Question:3 - What is SDLC? What are the steps in SDLC?
Answer- The systems development life cycle (SDLC) is the process of determining how an
information system (IS) can support business needs, designing the system, building it, and
delivering it to users.
Systems Development Life Cycle Phase
Planning- The planning phase is the fundamental process of understanding why an information
system should be built and determining how the project team will go about building it. It has
two steps:
1. During project initiation, the system’s business value to the organization is identified, how it
will contribute to the organization’s future success. Most ideas for new systems come from
outside the IS area and are recorded on a system request. The IS department works together
with the person or department generating the request called the project sponsor to conduct a
feasibility analysis. The feasibility analysis examines key aspects of the proposed project:
■ The technical feasibility (Can we build it?)
■ The economic feasibility (Will it provide business value?)
■ The organizational feasibility (If we build it, will it be used?)
The system request and feasibility analysis are presented to an information system
approval committee which decides whether the project should be undertaken.
2. Once the project is approved, it enters project management. During project management,
the project manager creates a workplace, staff s the project, and puts techniques in place to
help control and direct the project through the entire SDLC.
Analysis- The analysis phase answers the questions of who will use the system, what the
system will do, and where and when it will be used. During this phase, the project team
investigates any current system, identifies improvement opportunities, and develops a concept
for the new system. This phase has three steps:
1. An analysis strategy is developed to guide the project team’s efforts. Such a strategy usually
includes studying the current system (called the as-is system) and its problems, and envisioning
ways to design a new system (called the to-be system).
2. The next step is requirements gathering the analysis of this information, leads to the
development of a concept for a new system. The system concept is explained through a set of
requirement statements and a set of business analysis models that describe how the
business will operate if the new system is developed.
3. The analyses, system concept, requirements, and models are combined into a document
called the system proposal, which is presented to the project sponsor and other key decision
makers who will decide whether the project should continue to move forward.
Design- The design phase decides how the system will operate in terms of the hardware, soft
ware, and network infrastructure that will be in place; the user interface, forms, and reports
that will be used; and the specific programs, databases, and fi les that will be needed. The
design phase has four steps:
1. The design strategy must be determined. This clarifies whether the system will be
developed by the company’s own programmers, whether its development will be
outsourced to another firm, or whether the company will buy and install a prewritten soft ware
package.
2. This leads to the development of the basic architecture design for the system that
describes the hardware, soft ware, and network infrastructure that will be used
The interface design specifies how the users will move through the system and the forms and
reports that the system will use.
3. The database and fi le specifications are developed. Th ese defi ne exactly what data will be
stored and where they will be stored.
4. The analyst team develops the program design, which defines the programs that need to
be written and exactly what each program will do.
Implementation- The final phase in the SDLC is the implementation phase, during which the
system is built. This is the phase that usually gets the most attention, because for most systems
it is the longest and most expensive single part of the development process. This phase has
three steps:
1. System construction is the first step. The system is built and tested to ensure that it performs
as designed. Since the cost of fixing bugs can be immense, testing is one of the
most critical steps in implementation.
2. The system is installed. Installation is the process by which the old system is turned off
and the new one is turned on. One of the most important aspects of conversion is
training, during which users are taught to use the new system and help manage the
resulting organizational changes.
3. The analyst team establishes a support plan for the system. This plan usually includes a
formal or informal post-implementation review, as well as a systematic way for identifying
major and minor changes needed for the system.
List and describe the six general skills all project team members should have?
Technical: is to understand the organization’s existing technical environment, the new
system’s technology foundation, and the way in which both can be fit into an integrated
technical solution.
Business: is to understand how IT can be applied to business situations and to ensure that
IT delivers real business value.
Analytical: ability to solve problems at both the project and the organizational level.
Interpersonal: to communicate effectively, one-on-one with all other users. Must be able to
give presentations
to large and small groups and to write reports.
Management: ability to manage people they work with, and to manage the pressure and
risks associated with unclear situations.
Ethical: ability to deal fairly, honestly, and ethically with everyone in the organization. Must
maintain confidentiality of information. Must maintain confidence and trust with all people.
The business analyst role focuses on the business issues surrounding the system. This
person helps to identify the business value that the system will create, develops ideas for
improving the business processes, and helps design new business processes and policies.
The business analyst will have business training and experience, plus knowledge of analysis
and design.
The infrastructure analyst role focuses on technical issues surrounding the ways the
system will interact with the organization’s technical infrastructure (hardware, software,
networks, and databases). This person ensures that the new information system conforms to
organizational standards and helps to identify infrastructure changes that will be needed to
support the system. The infrastructure analyst will have significant training and experience
in
networking, database administration, and various hardware and software products.
Book Questions
1. Describe the major phases in the systems development life cycle (SDLC).
ANS- Building an information system using the SDLC follows a similar set of four fundamental phases:
planning, analysis, design, and implementation. . Each phase is itself composed of a series of steps.
Planning
The planning phase is the fundamental process of understanding why an information system should be
built and determining how the project team will go about building it. It has two steps:
1. During project initiation , the system’s business value to the organization is identified— how will it
contribute to the organization’s future success? Most ideas for new systems come from outside the IS
area and are recorded on a system request. A system request presents a brief summary of a business
need and explains how a system that addresses the need will create business value. The IS department
works together with the person or department generating the request (called the project sponsor ) to
conduct a feasibility analysis. The feasibility analysis examines key aspects of the proposed project:
Once the project is approved, it enters project management. During project management, the project
manager creates a workplan , staff s the project, and puts techniques in place to help control and direct
the project through the entire SDLC.
Analysis
The analysis phase answers the questions of who will use the system, what the system will do, and
where and when it will be used. During this phase, the project team investigates any current system(s),
identifies improvement opportunities, and develops a concept for the new system. This phase has three
steps:
1. An analysis strategy is developed to guide the project team’s eff orts. Such a strategy usually includes
studying the current system (called the as-is system ) and its problems, and envisioning ways to design a
new system (called the to-be system ).
2. The next step is requirements gathering (e.g., through techniques such as interviews, group
workshops, or questionnaires). The analysis of this information—in conjunction with input from the
project sponsor and many other people—leads to the development of a concept for a new system. The
system concept is explained through a set of requirement statements and a set of business analysis
models that describe how the business will operate if the new system is developed.
3. The analyses, system concept, requirements, and models are combined into a document called the
system proposal, which is presented to the project sponsor and other key decision makers (e.g.,
members of the approval committee) who will decide whether the project should continue to move
forward.
Design
The design phase decides how the system will operate in terms of the hardware, software, and network
infrastructure that will be in place; the user interface, forms, and reports that will be used; and the
specific programs, databases, and fi les that will be needed. Although most of the strategic decisions
about the system are made in the development of the system concept during the analysis phase, the
steps in the design phase determine exactly how the system will operate. The design phase has four
steps:
1. The design strategy must be determined. This clarifies whether the system will be developed by the
company’s own programmers, whether its development will be outsourced to another firm (usually a
consulting firm), or whether the company will buy and install a prewritten software package.
2. This leads to the development of the basic architecture design for the system that describes the
hardware, software, and network infrastructure that will be used. In most cases, the system will add to
or change the infrastructure that already exists in the organization. The interface design specifies how
the users will move through the system (e.g., by navigation methods such as menus and on-screen
buttons) and the forms and reports that the system will use.
3. The database and fi le specifications are developed. These define exactly what data will be stored and
where they will be stored. 4. The analyst team develops the program design , which defines the
programs that need to be written and exactly what each program will do.
Implementation
The final phase in the SDLC is the implementation phase , during which the system is actually built (or
purchased and installed if the design calls for a prewritten software package). This is the phase that
usually gets the most attention, because for most systems it is the longest and most expensive single
part of the development process. This phase has three steps:
1. System construction is the first step. The system is built and tested to ensure that it performs as
designed. Since the cost of fixing bugs can be immense, testing is one of the most critical steps in
implementation. Most organizations should spend more time and attention on testing than on
writing the programs in the first place.
2. The system is installed. Installation is the process by which the old system is turned off and the new
one is turned on. There are several approaches that may be used to convert from the old to the
new system. One of the most important aspects of conversion is training , during which users are
taught to use the new system and help manage the resulting organizational changes.
3. The analyst team establishes a support plan for the system. This plan usually includes a formal or
informal post-implementation review, as well as a systematic way for identifying major and minor
changes needed for the system.
ANS- The deliverables produced in the analysis phase provide a general idea what the new system will
do. These deliverables are used as input to the design phase, which then refines them to produce a set
of deliverables that describes in much more detailed terms exactly how the system should be built.
These deliverables in turn are used in the implementation phase to guide the creation of the actual
system.
3. Describe the four steps of business process management (BPM). Why do companies adopt BPM as a
management strategy?
ANS= BPM generally follows a continuous cycle of systematically creating, assessing, and altering
business processes. Business analysts, with their in-depth business knowledge, play a particularly
important role in BPM by:
3. finding ways to eliminate or consolidate steps in the process that do not add value,
4. creating or adjusting electronic workflows to match the improved process maps. The last step is
particularly relevant to our discussion since the need for information system projects is frequently
identified here.
4. Compare and contrast BPA, BPI, and BPR. Which is most risky? Which has the greatest potential
value?
ANS- BPA is the automation of business processes. Technology components are used to complement or
substitute for manual processes.
PI or business process improvement results from studying the business processes, creating new,
redesigned processes to improve workflows.
BPR or business process reengineering means changing the fundamental way in which the organization
operates in order to take advantage of new ideas and new technology.
BPR holds the most risk and the greatest potential due to the significant operational changes that occur.
5. Describe the roles of the project sponsor and the approval committee.
Ans- the project sponsor develops the initial vision of the new system. The project sponsor works
throughout the SDLC to make sure that the project is moving in the right direction from the perspective
of the business and serves as the primary point of contact for the project team. The project sponsor has
the insights needed to determine the business value that will be gained from the system, in both
tangible and intangible ways. Usually, the sponsor of the project is from a business function such as
marketing, accounting, or finance.
The Project Approval Committee are the people who coordinates the activities of the committees and
ensure that the organization's resources are used as effectively as possible to meet our collective goals.
The committee reviews the system request and makes an initial determination, based on the
information provided, of whether to investigate the proposed project or not. If approved, the next step
is to conduct a feasibility analysis.
ANS- Technical Feasibility= The first issue in the feasibility analysis is to assess the technical feasibility of
the project, the extent to which the system can be successfully designed, developed, and installed by
the IT group.
• Project size
• Compatibility
Economic Feasibility
Economic feasibility is determined by identifying costs and benefits associated with the system,
assigning values to them, calculating future cash flows, and measuring the financial worthiness of the
project. As a result of this analysis, the financial opportunities and risks of the project can be
understood. Which can be calculated by ROI,BEP,NPV
Organizational Feasibility=
The final feasibility analysis issue is the organizational feasibility of the system: how well the system
ultimately will be accepted by its users and incorporated into the ongoing operations of the
organization. There are many organizational factors that can have an impact on the
Familiarity with application: Less familiarity generates more risk. When analysts are unfamiliar
with the business application area, they have a greater chance of misunderstanding the users or
missing opportunities for improvement. Th e risks increase dramatically when the users
themselves have limited knowledge of the application.
• Familiarity with technology: Less familiarity generates more risk. Familiarity with the technology is
another important source of technical risk. When a system uses technology that has not been used
before within the organization , there is a greater chance that problems and delays will occur because of
the need to learn how to use the technology. Risk increases dramatically when the technology itself is
new (e.g., a Big Data project using Hadoop).
• Project size: Large projects have more risk. Familiarity with the technology is another important source
of technical risk. When a system uses technology that has not been used before within the organization ,
there is a greater chance that problems and delays will occur because of the need to learn how to use
the technology. Risk increases dramatically when the technology itself is new (e.g., a Big Data project
using Hadoop). When the technology is not new but the organization lacks experience with it, technical
risk is reduced somewhat, since outside expertise should be available from vendors and consultants.
• Compatibility: The harder it is to integrate the system with the company’s existing technology, the
higher the risk will be. project teams need to consider the compatibility of the new system with the
technology that already exists in the organization. Systems are rarely built in a vacuum—they are built in
organizations that have numerous systems already in place. New technology and applications need to be
able to integrate with the existing environment for many reasons. They may rely on data from existing
systems, they may produce data that feed other applications, and they may have to use the company’s
existing communications infrastructure.
ANS= Project size is an important consideration, whether measured as the number of people on the
development team, the length of time it will take to complete the project, or the number of distinct
features in the system. Larger projects present more risk, because they are more complicated to
manage and because there is a greater chance that some important system requirements will be
overlooked or misunderstood. Large systems are typically highly integrated with other systems,
increasing project complexity.
8. Describe a “risky” project in terms of technical feasibility. Describe a project that would not be
considered risky.
Less familiarity generates more risk. When analysts are unfamiliar with the business application area,
they have a greater chance of misunderstanding the users or missing opportunities for improvement. Th
e risks increase dramatically when the users themselves have limited knowledge of the application.
A project is also risky when a system uses technology that has not been used before within the
organization , there is a greater chance that problems and delays will occur because of the need to learn
how to use the technology. The harder it is to integrate the system with the company’s existing
technology, the higher the risk will be. project teams need to consider the compatibility of the new
system with the technology that already exists in the organization.
9. List two tangible benefits and two operational costs for a system. How would you determine the
values that should be assigned to each item?
Two tangible benefits are: an increase in sales and a decrease in no collectable accounts receivable.
Operational costs are the ongoing costs associated with the new system, and are fairly easy to
determine objectively.
10. What is stakeholder analysis? Discuss three stakeholders that would be relevant for most projects.
Stakeholder analysis is the process of assessing a system and potential changes to it as they relate to
relevant and interested parties. This information is used to assess how the interests of those
stakeholders should be addressed in a project plan, policy, program, or other action.
The champion is a high-level executive and is usually, but not always, the project sponsor who created
the system request. The champion supports the project by providing time and resources (e.g., money)
and by giving political support to the project by conveying its importance to other decision makers.
More than one champion is preferable because if the champion leaves the organization, the support
could leave as well.
Organizational management also needs to support the project. Such management support conveys to
the rest of the organization the belief that the system will make a valuable contribution and that
necessary resources will be made available. Ideally, the management should encourage people in the
organization to use the system and to accept the many changes that the system will likely create.
The system users who ultimately will use the system once it has been installed in the organization. Too
often, the project team meets with user at the beginning of a project and then disappears until aft er the
system is created. In this situation, the final product rarely meets the expectations and needs of those
who are supposed to use it, because needs change and users become savvier as the project progresses
Chapter-2
Web services can be used as tools for building new information system
applications or enhancing existing systems. Because these software services
use a universal set of standards, they promise to be less expensive and less
difficult to weave together than proprietary components.
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. web services can
provide significant cost savings in systems building while opening up new
opportunities for collaboration with other companies by creating software
components that can communicate and share data regardless of the
operating system, programming language, or client device
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, as illustrated in Figure 13.9.
The systems life cycle methodology maintains a formal division of labor between end users and
information systems specialists. Technical specialists, such as systems analysts and programmers, are
responsible for much of the systems analysis, design, and implementation work; end users are limited to
providing information requirements and reviewing the technical staff’s work. The life cycle also
emphasizes formal specifications and paperwork, so many documents are generated during the course
of a systems project.
The systems life cycle is still used for building large, complex systems that require a rigorous and formal
requirements analysis, predefined specifications, and tight controls over the system-building process.
However, the systems life cycle approach can be costly, time-consuming, and inflexible a “waterfall”
approach in which tasks in one stage are completed before work for the next stage begins.
documents must be generated, and steps retraced if requirements and specifications need to be revised
The life cycle approach is also not suitable for many small desktop systems, which tend to be less
structured and more individualized.
Prototyping
Prototyping consists of building an experimental system rapidly and inexpensively for end users to
evaluate. By interacting with the prototype, users can get a better idea of their information
requirements. The prototype endorsed by the users can be used as a template to create the final
system. 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. Once operational, the prototype will be further refined until it
conforms precisely to users’ requirements. Once the design has been finalized, the prototype can be
converted to a polished production system. The process of building a preliminary design, trying it out,
refining it, and trying again has been called an iterative process of systems development because the
steps required to build a system can be repeated over and over again. Prototyping is more explicitly
iterative than the conventional life cycle, and it actively promotes system design changes. It has been
said that prototyping replaces unplanned rework with planned iteration.
Steps in Prototyping
Step 1: Identify the user’s basic requirements. The systems designer (usually an information systems
specialist) works with the user only long enough to capture the user’s basic information needs.
Step 2: Develop an initial prototype. The systems designer creates a working prototype quickly, using
tools for rapidly generating software.
Step 3: Use the prototype. The user is encouraged to work with the system to determine how well the
prototype meets his or her needs and to make suggestions for improving the prototype.
Step 4: Revise and enhance the prototype. The system builder notes all changes the user requests and
refines the prototype accordingly.
After the prototype has been revised, the cycle returns to Step 3. Steps 3 and 4 are repeated until the
user is satisfied.
Advantages of prototyping
Prototyping is most useful when there is some uncertainty about requirements or design solutions and
is often used for designing an information system’s end-user interface (the part of the system with
which end users interact, such as online display and data entry screens, reports, or web pages). Because
prototyping encourages intense end-user involvement throughout the systems development life cycle, it
is more likely to produce systems that fulfill user requirements
Disadvantages of prototyping
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.
End-User Development
End-user development allows end users, with little or no formal assistance from technical specialists, to
create simple information systems, reducing the time and steps required to produce a finished
application. Using user friendly query languages and reporting, website development, graphics, and PC
software tools, end users can access data, create reports, and develop simple applications on their own
with little or no help from professional systems analysts or programmers. A query language is a software
tool that provides immediate online answers to questions that are not predefined, such as “Who are the
highest-performing sales representatives?” Query languages are often tied to data management
software end-user-developed systems can be completed more rapidly than those developed through
the conventional systems life cycle. Allowing users to specify their own business needs improves
requirements gathering and often leads to a higher level of user involvement and satisfaction with the
system. However, end-user software tools still cannot replace conventional tools for some business
applications because they cannot easily handle the processing of large numbers of transactions or
applications with extensive procedural logic and updating requirements.
Risk of end user
End-user computing also poses organizational risks because it occurs outside of traditional mechanisms
for information systems management and control. When systems are created rapidly without a formal
development methodology, testing and documentation may be inadequate. Control over data can be
lost in systems outside the traditional information systems department. 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.
Today many systems are based on commercially available application software packages or cloud
software as a service (SaaS). For example, companies can choose to implement Oracle enterprise
resource planning, supply chain management, or human capital management software in-house or pay
to use this software running on the Oracle Cloud platform. Microsoft Office desktop productivity
software comes in both desktop and cloud (Office 365) versions. Many applications are common to all
business organizations—for example, payroll, accounts receivable, general ledger, or inventory control.
For such universal functions with standard processes that do not change a great deal over time, a more
generic system will fulfill the requirements of many organizations. If a commercial software package or
cloud software service can fulfill most of an organization’s requirements, the company does not have to
write its own software. The company can save time and money by using the prewritten, predesigned,
pretested software programs from the software vendor. Package and SaaS vendors supply much of the
ongoing maintenance and support for the system, including enhancements to keep the system in line
with ongoing technical and business developments.
If an organization has unique requirements that the package does not meet, these tools include
capabilities for customization. Customization features allow a commercial software package or cloud-
based software to be modified to meet an organization’s unique requirements without destroying the
integrity of the software.
RFP
When a system is developed using an application software package or a cloud software service, systems
analysis will include a formal evaluation of the software package or service in which both end users and
information systems specialists will participate. The most important evaluation criteria are the functions
provided by the software, flexibility, user-friendliness, hardware requirements, database requirements,
installation and maintenance efforts, documentation, vendor quality, and cost. The package or software
service evaluation process often is based on a request for proposal (RFP)
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 software as a service (SaaS) providers are one form of outsourcing. Subscribing
companies use the software and computer hardware provided by the service as the technical platform
for their systems. In another form of outsourcing, a company could hire an external vendor to design
and create the software for its system, but that company would operate the system on its own
computers. The outsourcing vendor might be domestic or in another country.
Domestic outsourcing
Domestic outsourcing is driven primarily by the fact that outsourcing firms possess skills, resources, and
assets that their clients do not have. Installing a new supply chain management system in a very large
company might require hiring an additional 30 to 50 people with specific expertise in supply chain
management software licensed from a vendor. Rather than hire permanent new employees, most of
whom would need extensive training in the new software, and then release them after the new system
is built, it makes more sense, and is often less expensive, to outsource this work for a 12-month period.
Offshore outsourcing
In the case of offshore outsourcing, the decision is much more cost-driven. A skilled programmer in India
or Russia earns about $10,000–$30,000 per year compared with about $60,000 or more per year for a
comparable programmer in the United States. The Internet and low-cost communications technology
have drastically reduced the expense and difficulty of coordinating the work of global teams in offshore
locations. Firms generally do not outsource the conception, systems analysis, and design of IT systems to
offshore firms, but often do outsource programming, testing, maintenance, and daily operation of IT
systems.
Outsourcing offshore incurs additional costs for coping with cultural differences that drain productivity
and dealing with human resources issues, such as terminating or relocating domestic employees. All of
these hidden costs undercut some of the anticipated benefits from outsourcing. Firms should be
especially cautious when using an outsourcer to develop or to operate applications that give it some
type of competitive advantage.