Title: SYSTEM DEVELOPMENT AND ACQUISITION
1Chapter 15
- SYSTEM DEVELOPMENT AND ACQUISITION
2Learning Objectives
- Understand the basic concepts of systems
development - Discuss the major steps in developing a decision
support system (DSS) and management support
system (MSS) application - Describe the major MSS applications and list
their major functionalities - List the major MSS application development
options, along with their benefits and limitations
3Learning Objectives
- Describe the four phases of the system
development life cycle planning, analysis,
development, and implementation (PADI) - Understand prototyping and throwaway prototyping
and why MSS are typically developed using these
methods - Discuss various MSS application outsourcing
options, including the use of an application
service provider (ASP) and utility computing
4Learning Objectives
- Describe some major MSS software packages and MSS
application suites - Describe various methods for connecting an MSS
application to back-end systems and databases - Discuss the value and technical foundation of Web
services in integrated applications - Understand the service-oriented architecture
(SOA) and its relationship to MSS
5Learning Objectives
- Describe the criteria used in selecting an
outsourcing vendor and package - Describe the factors that lead to MSS success or
failure - Discuss the importance of project management and
the skills a good project manager needs to have - Understand the learning process that occurs
during MSS development
6What Types of Support Systems Should You Build?
- Introduction to MSS development
- Types of Support Systems
- Infrastructure
- Data warehouses and business intelligence systems
- Knowledge management systems
- Enterprise information systems
- Portals
- The gateways to Web sites they can be public
(like Yahoo!), or private (corporate portals)
7What Types of Support Systems Should You Build?
- Introduction to MSS development
- Types of Support Systems
- Specific applications
- Tools and tool kits
- Platforms
8The Landscape and Framework of MSS Application
Development
9The Landscape and Framework of MSS Application
Development
- Step 1 Planning, identifying, and justifying MSS
- Step 2 Creating an MSS architecture
- MSS architecture
- A plan for organizing the underlying
infrastructure and applications of the MSS
project
10The Landscape and Framework of MSS Application
Development
- Step 3 Selecting a development option
- Build the system in house
- Have a vendor build a custom-made system
- Buy an existing application and install it, with
or without modifications, by yourself or through
a vendor - Lease standard software from an ASP, utility
computing, or set up a software-as-a-service
arrangement - Enter into a partnership or an alliance that will
enable the company to use someone else's
application - Use a combination of these approaches
11The Landscape and Framework of MSS Application
Development
- Step 4 Installing, testing, connecting, and
deploying MSS applications - Step 5 Operations, maintenance, and updating
12The Landscape and Framework of MSS Application
Development
- Managing the development process
- The development process can be fairly complex and
must be managed properly - For medium to large applications, a project team
is usually created to manage the process and the
vendors - Project management software
13Development Options for MSS Applications
- In-house development Insourcing
- Development options for in-house development
- Building from scratch
- Building from components
- Integrating applications
14Development Options for MSS Applications
- Methods used in in-house development
- System development life cycle (SDLC)
- A systematic process for the effective
construction of large information systems
15Development Options for MSS Applications
16Development Options for MSS Applications
- Rapid application development (RAD)
- A development methodology that adjusts a system
development life-cycle so that parts of the
system can be developed quickly, thereby enabling
users to obtain some functionality as soon as
possible. It includes methods of
phased development, prototyping, and throwaway
prototyping
17Development Options for MSS Applications
- Prototyping
- In system development, a strategy in which a
scaled-down system or portion of a system is
constructed in a short time, tested, and improved
in several iterations
18Development Options for MSS Applications
- Buying applications
- Leasing applications
- Lease from an outsourcer and then install it on
the companys premises - Lease from an ASP that hosts the application at
its data center
19Development Options for MSS Applications
- Methods used in in-house development
- Software-as-a-service (SaaS)
- Software that is rented instead of sold
- Factors driving the switch to software-as-a-servic
e - Reducing the risks involved in acquiring new
software - Influencing product and service quality via an
ongoing relationship with vendors - Changing usage commitments as business
circumstances change - Preparing financially justifiable business cases
- More accurately predicting ongoing expenses
20Development Options for MSS Applications
- Outsourcing development options
- Outsourcing
- Application Service Providers (ASP)
- A software vendor that offers leased software
applications to organizations - Utility (on-demand) computing
- Unlimited computing power and storage capacity
that, like electricity, water, and telephone
services, can be obtained on demand, used, and
reallocated for any application, and billed on a
pay-per-use basis
21Figure 15.3 Tools and Value-Added Services of
Utility Computing
Utility Computing Value
Utility Computing Value
Service-level-managementtools
Resource-managementtools
Virtualized infrastructures
22Development Options for MSS Applications
- Utility computing value proposition consists of
three layers of tools and two types of
value-added services - Tools
- Policy-based service-level-management tools
- Policy-based resource-management tools
- Virtualization tools
- Value-added services
- Multisourcing delivery and framework services
- Customer access and management services
23Development Options for MSS Applications
- A hybrid approach to MSS development
- Hybrid models work best when the outsourced
partner offers - A high level of security
- Fast time to market
- Service-level agreements
24Prototyping A Practical MSS Development
Methodology
- Advantages of prototyping
- Short development time
- Short user reaction time (i.e., feedback from
user) - Improved user understanding of the system, its
information needs, and its capabilities - Low cost
25Prototyping A Practical MSS Development
Methodology
- Limitations of prototyping
- Gains obtained from cautiously stepping through
each of the systems lifecycle stages might be
lost including - A thorough understanding of the information
systems benefits and costs - A detailed description of the businesss
information needs - An easy-to-maintain information system design
- A well-tested information system
- Well-prepared users
26Prototyping A Practical MSS Development
Methodology
- The prototyping development process
- Users and managers, as well as an executive
sponsor, must be involved - The analysis, design, and prototype
implementation phases are iteratively performed
until a small prototype is sufficiently developed
- The final implementation takes place
- Simultaneously, further iterations occur as other
subsystems or capabilities are added to the
deployed system until a fairly stable,
comprehensive system evolves
27Prototyping A Practical MSS Development
Methodology
28Prototyping A Practical MSS Development
Methodology
29Prototyping A Practical MSS Development
Methodology
- Collaboration in prototyping
- The interaction of user, developer, and
technology is extremely important in the
prototyping process - Evaluation in prototyping
- Iterative design
- A systematic process for system development that
is used in MSS. To produce a first version of
MSS, then revise it and produce the second design
version, and so on is called an iterative design
30Prototyping A Practical MSS Development
Methodology
- Implementing prototyping
- Target small, tactical applications that show
quick results - Use software components
- Make application deployment iterative and open to
customization - Use commodity hardware
- Use object technology, including tools such as
Java - Break major projects into manageable, deliverable
chunks - Use packaged applications whenever justifiable
- Consider IT service providers as well as utility
and grid computing - Use Web services, if possible
31Prototyping A Practical MSS Development
Methodology
- Successes factors in prototyping
- Users and managers should be involved in every
phase and iteration - Learning should be explicitly integrated into the
design process - Prototyping should essentially bypass the formal
information requirement definition in the SDLC - A key criterion associated with prototyping is
the short interval between iterations - The initial prototype must be low cost
32Prototyping A Practical MSS Development
Methodology
- Prototyping failures
- No prelaunch objectives or metrics
- Too many major projects were conducted
simultaneously - The CEO set budgets and deadlines before the
project team was involved - The budget and deadlines were not realistic
- There was no insider presence on the data
warehouse project team - An overburdened project manager was involved
- The availability of source data was unconfirmed
at the outset - No user demand for sophisticated data analysis
was considered - No routine meetings of executive sponsors and the
project manager took place - Business managers were not initially involved
33Prototyping A Practical MSS Development
Methodology
- Lessons learned from prototyping failure
- Executive sponsorship and partnership of the IT
staff and end users are the most critical success
factors for developing a data warehouse - Unclear understanding of the business objectives
and how they will be measured - An incremental pilot project should occur to
determine whether it is possible to obtain the
projected benefits - An organization should expect to make a major
investment in ongoing management of the data
warehouse - When all else fails, an organization should cut
its losses and run
34Criteria For Selecting an MSS Development
Approach
Selection criteria for buy or lease decision
- Flexibility
- Information requirements
- User friendliness
- Hardware and software resources
- Installation
- Maintenance services
- Vendor quality and track record
- Estimating costs
- Personnel
- Technological evolution
- Scalability
- Sizing
- Performance
- Reliability
- Security
35Third-party Providers of MSS Software Packages
and Suites
- Specialized and functional software packages
- MSS suite
- An integrated collection of a large number of
MSS tools that work together for applications
development
36Third-party Providers of MSS Software Packages
and Suites
37Third-party Providers of MSS Software Packages
and Suites
- Representative MSS suites
- MicroStrategy 8
- Hyperion System 9 BI
- BusinessObjects XI
- Microsoft BizTalk Server 2004
- Oracles MSS Products
- IBMs WebSphere Commerce Suite
38Connecting to Databases and Other Enterprise
Systems
- Connecting to databases Four tier architecture
- Web browser
- Web server
- Application server
- Database server
39Connecting to Databases and Other Enterprise
Systems
40Connecting to Databases and Other Enterprise
Systems
- Integrating MSS applications and back-end systems
- Many commercial MSS suites have built-in
integration capabilities - If a company wants to build its own database
interface - Web scripting languages
- Specialized application servers
41Connecting to Databases and Other Enterprise
Systems
- Middleware
- Software that links application modules from
different computer languages and platforms
42The Rise of Web Services, XML, and
Service-Oriented Architecture
- The need for integration
- Platform-specific objects
- Dynamic environment
- Security barriers
- Address these problems with
- Web Services
- An architecture enabling assembly of distributed
application from software services and tying them
together
43User-Developed MSS
- End-user computing
- Developing ones own information system
- User-developed MSS
- An MSS developed by one user or by a few users
in one department including decision makers and
professionals (knowledge workers, like financial
or tax analysts and engineers) who build or use
computers to solve problems or enhance their
productivity
44User-Developed MSS
- User-Developed MSS Advantages
- Delivery time is short
- The prerequisites of extensive and formal user
requirements specifications are eliminated - Some MSS implementation problems are reduced
- The cost is usually very low
45User-Developed MSS
- User-Developed MSS Risks
- User-developed MSS can be of poor quality.
- Three categories of potential quality risks
- Substandard or inappropriate tools and facilities
used in MSS development - Risks associated with the development process
- Data management risks
- Security risks
- Lack of documentation and maintenance procedures
46User-Developed MSS
- Steps to get users involved in MSS development
- Get management buy-in
- Understand the users business
- Consider the users priorities
- Assign good communicators
- Talk with users all along the business process
- Dont meet at users' offices
- Turn off mobile phones
- Focus on users problems, not on technology
- Listen well
- Use prototypes
47User-Developed MSS
- Reducing the risks of end-user computing
- Factors that contribute to spreadsheet errors
include - Developer inexperience
- Poor design approaches
- Application types
- Problem complexity
- Time pressure
- Presence or absence of review procedures
- Team-Developed MSS
48MSS Vendor and Software Selection
- MSS development tool selection
- MSS tools
- Software elements (e.g., languages) that
facilitate the development of a MSS or a MSS
generator - Hardware selection
- Software selection
49MSS Vendor and Software Selection
- Selecting vendors and MSS software packages
- On time
- On budget
- Full functionality
50MSS Vendor and Software Selection
- Six steps in selecting a software vendor and a
package - Identify potential vendors.
- Determine the evaluation criteria.
- Evaluate vendors and packages.
- Choose a vendor and package.
- Negotiate a contract.
- Establish a service-level agreement
51Putting Together an MSS
- MSS implementation issues
- Managers are more readily accepting MSS tools,
techniques, and methods - AI tools and methods are being embedded in MSS
and in enterprise applications - Web technologies continue to enable new
developments in MSS/BI - GSS continue to proliferate through collaborative
computing - Computer technology continues its fast-paced
evolution - Capabilities are increasing and costs are
decreasing - ERM/ERP systems, although extremely expensive,
are proliferating