week 10 - method of system development
TRANSCRIPT
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 1/59
McGraw-Hill © 2008 The McGraw-Hill Companies, Inc. All rights reserved.
Chapter 5.1( week 10 )
SYSTEMS DEVELOPMENTPhases, Tools, and Techniques
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 2/59
6-2
STUDENT LEARNING OUTCOMES
1. Define the traditional systems development lifecycle (SDLC) and describe the 7 major phaseswithin it.
2. Compare and contrast the various component-based development methodologies.
3. Describe the selfsourcing process as an
alternative to the traditional SDLC.
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 3/59
6-3
STUDENT LEARNING OUTCOMES
4. Discuss the importance of prototyping andprototyping within any systems developmentmethodology
5. Describe the outsourcing environment and howoutsourcing works.
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 4/59
6-4
SAVING LIVES THROUGH SYSTEMSDEVELOPMENT
Centers for Disease Control (CDC) tracks a wealthof information
Antimicrobial-resistant infections in hospitals Influenza outbreaks
Terrorist biochemical attacks
Bacteria counts in rivers and stagnant ponds, etc
Unfortunately, most of that information is stored inseparate IT systems that do not communicate witheach other
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 5/596-5
SAVING LIVES THROUGH SYSTEMSDEVELOPMENT
The CDC is using a service-oriented architecture(SoA) to integrate all those systems and information
An SoA treats every component of an IT system – adatabase file, a server, a CRM software solution, etc – as a building block
Within an SoA, those building blocks can be
“plugged and played” so that everything workstogether in an integrated fashion
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 6/596-6
SAVING LIVES THROUGH SYSTEMSDEVELOPMENT
1. All computers use a common binary baselanguage. That being true, why is it so difficult toget computer systems to easily communicate witheach other?
2. In systems development, prototyping is used tobuild a model of a proposed system. How have
you used prototyping in your personal life?3. Outsourcing – going to another company for
systems development – is big business. Whywould the CDC not want to pursue outsourcing?
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 7/596-7
INTRODUCTION
Information systems are the support structure formeeting the company’s strategies and goals
New systems are created because employeesrequest them
New systems are created to obtain a competitiveadvantage
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 8/596-8
INTRODUCTION
When developing a new system, you have 3 “who”
choices…
1. Insourcing – IT specialists inside your organization
2. Selfsourcing – do-it-yourself approach many endusers take with little or no help from IT specialists
3. Outsourcing – a third-party organization (i.e., let
someone do the work and pay them for it)
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 9/596-9
CHAPTER ORGANIZATION
1. Insourcing and the SDLC
Learning outcome #1
2. Component-Based Development
Learning outcome #23. Selfsourcing
Learning outcome #3
4. Prototyping
Learning outcome #4
5. Outsourcing
Learning outcome #5
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 10/596-10
INSOURCING AND THE SDLC
Systems development life cycle (SDLC) - astructured step-by-step approach for developinginformation systems
7 distinct phases, each with well-defined activities
Also called a waterfall methodology , an approachin which each phase of the SDLC is followed by
another, from planning through implementation
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 11/596-11
SDLC Phases & Major Activities
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 12/596-12
SDLC as a Waterfall Methodology
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 13/596-13
Phase 1: Planning
Planning phase - create a solid plan fordeveloping your information system
Three primary planning activities:1. Define the system to be developed
You can’t build every system, so you make choices
based on your organization’s priorities, which may be
expressed as critical success factors
Critical success factor (CSF) - a factor simply criticalto your organization’s success
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 14/596-14
Phase 1: Planning
2. Set the project scope
Project scope - clearly defines the high-level systemrequirements
Scope creep - occurs when the scope of the projectincreases
Feature creep - occurs when developers add extrafeatures that were not part of the initial requirements
Project scope document - a written definition of theproject scope and is usually no longer than a paragraph
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 15/596-15
Phase 1: Planning
3. Develop the project plan including tasks, resources,and timeframes
Project plan - defines the what, when, and who
questions of system development Project manager - an individual who is an expert in
project planning and management, defines anddevelops the project plan and tracks the plan to ensure
all key project milestones are completed on time Project milestones - represent key dates for which
you need a certain group of activities performed
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 16/596-16
Phase 1: Planning
Sample Project Plan
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 17/596-17
Phase 2: Analysis
Analysis phase - involves end users and ITspecialists working together to gather, understand,and document the business requirements for theproposed system
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 18/59
6-18
Phase 2: Analysis
Two primary analysis activities:
1. Gather the business requirements
Business requirements - the detailed set ofknowledge worker requests that the system must meetin order to be successful
Business requirements address the “why” and “what” of
your development activities
Joint application development (JAD ) - knowledgeworkers and IT specialists meet, sometimes for severaldays, to define or review the business requirements forthe system
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 19/59
6-19
Phase 2: Analysis
2. Prioritize the requirements
Requirements definition document – prioritizes thebusiness requirements and places them in a formal
comprehensive document Again, you probably can’t do everything, so prioritizing
is important
Users sign off on this document which clearly sets the
scope for the project
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 20/59
6-20
Phase 2: Analysis
Take time during analysis to get the business requirements correct. If
you find errors, fix them immediately. The cost to fix an error in the earlystages of the SDLC is relatively small. In later stages, the cost is huge.
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 21/59
6-21
Phase 3: Design
Design phase - build a technical blueprint of howthe proposed system will work
Two primary design activities:
1. Design the technical architecture
Technical architecture - defines the hardware,software, and telecommunications equipment requiredto run the system
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 22/59
6-22
Phase 3: Design
2. Design system models
This includes GUI screens that users will interface with,database designs (see XLM/C), report formats,
software steps, etc
Starting with design, you take on less of an activeparticipation role and act more as a “quality control”
function, ensuring that the IT people are designinga system to meet your needs
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 23/59
6-23
Phase 4: Development
Development phase - take all of your detaileddesign documents from the design phase andtransform them into an actual system
Two primary development activities:
1. Build the technical architecture
2. Build the database and programs
Both of these activities are mostly performed by ITspecialists
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 24/59
6-24
Phase 5: Testing
Testing phase - verifies that the system worksand meets all of the business requirementsdefined in the analysis phase
Two primary testing activities:
1. Write the test conditions
Test conditions - the detailed steps the system mustperform along with the expected results of each step
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 25/59
6-25
Phase 5: Testing
2. Perform the testing of the system
Unit testing – tests individual units of code
System testing – verifies that the units of code
function correctly when integrated Integration testing – verifies that separate systems
work together
User acceptance testing (UAT) – determines if the
system satisfies the business requirements
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 26/59
6-26
Phase 6: Implementation
Implementation phase - distribute the system toall of the knowledge workers and they begin usingthe system to perform their everyday jobs
Two primary implementation activities
1. Write detailed user documentation
User documentation - highlights how to use thesystem
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 27/59
6-27
Phase 6: Implementation
2. Provide training for the system users
Online training - runs over the Internet or off a CD-ROM
Workshop training - is held in a classroomenvironment and lead by an instructor
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 28/59
6-28
Phase 6: Implementation
Choose the right implementation method
Parallel implementation – use both the old and newsystem simultaneously
Plunge implementation – discard the old systemcompletely and use the new
Pilot implementation – start with small groups ofpeople on the new system and gradually add more
users
Phased implementation – implement the newsystem in phases
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 29/59
6-29
Phase 7: Maintenance
Maintenance phase - monitor and support thenew system to ensure it continues to meet thebusiness goals
Two primary maintenance activities:
1. Build a help desk to support the system users
Help desk - a group of people who responds toknowledge workers’ questions
2. Provide an environment to support system changes
COMPONENT-BASED
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 30/59
6-30
COMPONENT BASEDDEVELOPMENT
The SDLC focuses only on the project at hand
Component-based development (CBD) – focuseson building small self-contained blocks of code(components) that can be reused across a variety ofapplications
CBD focuses on
1. Using already-developed components to buildsystems quickly
2. Building new components as needed that can beused in all future systems
Component-Based Development
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 31/59
6-31
Component Based DevelopmentMethodologies
Rapid application development (RAD)
Extreme programming (XP)
Agile methodology
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 32/59
6-32
Rapid Application Development (RAD)
Rapid application development (RAD) (also calledrapid prototyping ) - emphasizes extensive userinvolvement in the rapid and evolutionary
construction of working prototypes of a system toaccelerate the systems development process
Prototypes are models of the software components
The development team continually designs,develops, and tests the component prototypes untilthey are finished
R id A li i D l (RAD)
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 33/59
6-33
Rapid Application Development (RAD)
Build newsoftware
components
Use already-existing software
components
E t P i (XP)
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 34/59
6-34
Extreme Programming (XP)
Extreme programming (XP) - breaks a project intotiny phases and developers cannot continue on to thenext phase until the first phase is complete
A il M th d l
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 35/59
6-35
Agile Methodology
Agile methodology - a form of XP, aims forcustomer satisfaction through early and continuousdelivery of useful software components
S A A A hit t P ti
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 36/59
6-36
SoA – An Architecture Perspective
Service-oriented architecture (SoA) – perspectivethat focuses on the development, use, and reuse ofsmall self-contained blocks of code (called services )
to meet all application software needs
All CBD methodologies adhere to an SoA
Services are the same as components , which are
the same as small self-contained blocks of codeMore in Chapter 7
SELFSOURCING
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 37/59
6-37
SELFSOURCING
Selfsourcing (end-user development) – thedevelopment and support of IT systems by endusers with little or no help from IT specialists
Do-it-yourself systems development approach
Can relieve IT specialists of the burden ofdeveloping many smaller systems
Selfso rcing Approach
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 38/59
6-38
Selfsourcing Approach
Is similar to traditional SDLC
Big exception is that design, development, testing,and implementation are replaced by the process of
prototyping
Prototyping is the process of building models, and – in this case – continually refining those models until
they become the final system
Selfsourcing Approach
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 39/59
6-39
Selfsourcing Approach
Selfsourcing Advantages
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 40/59
6-40
Selfsourcing Advantages
Improves requirements determination
Increases end user participation and sense ofownership
Increases speed of systems development
Reduces invisible backlog
Invisible backlog – list of all systems that an
organization needs to develop but – because of theprioritization of systems development needs – neverget funded because of the lack of organizationalresources
Selfsourcing Disadvantages
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 41/59
6-41
Selfsourcing Disadvantages
Inadequate end user expertise leads to inadequatelydeveloped systems
Lack of organizational focus creates “privatized” IT
systems
Insufficient analysis of design alternatives leads tosubpar IT systems
Lack of documentation and external support leads toshort-lived systems
The Right Tool for the Job
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 42/59
6-42
The Right Tool for the Job
End users must have development tools that:
Are easy to use
Support multiple platforms
Offer low cost of ownership
Support a wide range of data types
PROTOTYPING
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 43/59
6-43
PROTOTYPING
Prototype – a model of a proposed product,service, or system
Prototyping - the process of building a model that
demonstrates the features of a proposed product,service, or system
Proof-of-concept prototype - used to prove thetechnical feasibility of a proposed system
Selling prototype - used to convince people of theworth of a proposed system
The Prototyping Process
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 44/59
6-44
The Prototyping Process
The prototyping process involves four steps:
1. Identify basic requirements
2. Develop initial prototype
3. User review
4. Revise and enhance the prototype
The Prototyping Process
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 45/59
6-45
The Prototyping Process
Advantages of Prototyping
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 46/59
6-46
Advantages of Prototyping
Encourages active user participation
Helps resolve discrepancies among users
Gives users a feel for the final system
Helps determine technical feasibility
Helps sell the idea of a proposed system
Disadvantages of Prototyping
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 47/59
6-47
Disadvantages of Prototyping
Leads people to believe the final system will follow
Gives no indication of performance underoperational conditions
Leads the project team to forgo proper testing anddocumentation
OUTSOURCING
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 48/59
6-48
OUTSOURCING
Outsourcing – the delegation of specified work toa third party for a specified length of time, at aspecified cost, and at a specified level of service
The third “who” option of systems development,after insourcing and selfsourcing
OUTSOURCING
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 49/59
6-49
OUTSOURCING
The main reasons behind the rapid growth of theoutsourcing industry include the following:
Globalization
The Internet
Growing economy and low unemployment rate
Technology
Deregulation
Outsourcing Options
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 50/59
6-50
Outsourcing Options
IT outsourcing for software development can takeone of four forms:
1. Purchase existing software
2. Purchase existing software and pay the publisher tomake certain modifications
3. Purchase existing software and pay the publisher forthe right to make modifications yourself
4. Outsource the development of an entirely new andunique system for which no software exists
Outsourcing Options
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 51/59
6-51
Outsourcing Options
Outsourcing Process
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 52/59
6-52
Outsourcing Process
Like selfsourcing, the selfsourcing process lookssimilar to the traditional SDLC
Big exception here is that you “outsource” most of
the work to another company
Outsourcing Process
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 53/59
6-53
Outsourcing Process
When outsourcing, you’ll develop two vitally important
documents – a request for proposal and a service levelagreement
Outsourcing – RFP
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 54/59
6-54
Outsourcing RFP
Request for proposal (RFP) – formal documentthat describes in excruciating detail your logicalrequirements for a proposed system and invitesoutsourcing organizations (vendors) to submit bids
for its development
In outsourcing, you must tell another organizationwhat you want developed; you do that with an RFP
Therefore, the RFP must be very detailed andcomplete
Some RFPs can take months or even years todevelop
Outsourcing – SLA
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 55/59
6-55
Outsourcing SLA
Service level agreement (SLA) - formalcontractually obligated agreement between twoparties
In outsourcing, it is the legal agreement betweenyou and the vendor and specifically identifies whatthe vendor is going to do (and by when) and howmuch you’re going to pay
Supporting SLA documents – service level specifications and service level objectives – contain very detailed numbers and metrics
Outsourcing Options
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 56/59
6-56
g p
There are three different forms of outsourcing:
1. Onshore outsourcing - the process of engaginganother company within the same country for
services 2. Nearshore outsourcing - contracting an
outsourcing arrangement with a company in anearby country
3. Offshore outsourcing - contracting with a companythat is geographically far away
Offshore Outsourcing
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 57/59
6-57
g
Primary outsourcing countries are:
India
China
Eastern Europe (including Russia)
Ireland
Israel
Philippines
The Advantages and Disadvantages ofOutsourcing
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 58/59
6-58
Outsourcing
Advantages:
Focus on unique core competencies
Exploit the intellect of another organization
Better predict future costs
Acquire leading-edge technology
Reduce costs
Improve performance accountability
The Advantages and Disadvantages ofOutsourcing
8/4/2019 Week 10 - Method of System Development
http://slidepdf.com/reader/full/week-10-method-of-system-development 59/59
6-59
Outsourcing
Disadvantages:
Reduces technical know-how for future innovation
Reduces degree of control
Increases vulnerability of your strategic information
Increases dependency on other organizations