30
Chapter 6 Chapter 6 SYSTEMS DEVELOPMENT SYSTEMS DEVELOPMENT Phases, Tools, and Phases, Tools, and Techniques Techniques

Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Embed Size (px)

Citation preview

Page 1: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Chapter 6Chapter 6

SYSTEMS DEVELOPMENTSYSTEMS DEVELOPMENT

Phases, Tools, and Phases, Tools, and TechniquesTechniques

Page 2: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Opening Case:Opening Case:Cameras Use Film?Cameras Use Film?

Page 3: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Opening Case:Opening Case:Cameras Use Film?Cameras Use Film?

Kodak 35mm film sales dropped Kodak 35mm film sales dropped from $7 billion in 2004 to an from $7 billion in 2004 to an estimated $1.9 billion in 2010estimated $1.9 billion in 2010

Many retailers no longer process Many retailers no longer process 35mm film35mm film

Web sites like SnapFish, Photo Web sites like SnapFish, Photo Bucket, and Flickr are now the Bucket, and Flickr are now the normnorm

Page 4: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

INTRODUCTIONINTRODUCTION Information systems are the support structure Information systems are the support structure

for meeting the company’s strategies and goalsfor meeting the company’s strategies and goals

New systems are created --New systems are created -- because employees request it because employees request it to obtain a competitive advantageto obtain a competitive advantage

Billions of dollars spent yearly on acquisition, Billions of dollars spent yearly on acquisition, design, development, implementation, and design, development, implementation, and maintenance of IT systemsmaintenance of IT systems

Companies depend on information more than Companies depend on information more than ever ever

Page 5: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

THE SYSTEMS THE SYSTEMS DEVELOPMENT LIFE CYCLEDEVELOPMENT LIFE CYCLE

Systems development life cycle (SDLC)Systems development life cycle (SDLC)

Defining SuccessDefining Success On timeOn time On budgetOn budget Meets requirementsMeets requirements

DeliverableDeliverable MilestoneMilestone

Page 6: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

SDLC Phases & Major SDLC Phases & Major ActivitiesActivities

Page 7: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

SDLC as a Waterfall SDLC as a Waterfall MethodologyMethodology

Page 8: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 1: PlanningPhase 1: Planning

Planning phasePlanning phase create a solid plan for developing your create a solid plan for developing your

information system information system Three primary planning activities:Three primary planning activities:

1.1. Define the system to be developedDefine the system to be developed You can’t build every system, so you make You can’t build every system, so you make

choices based on your organization’s priorities, choices based on your organization’s priorities, which may be expressed as critical success which may be expressed as critical success factorsfactors

Critical success factor (CSF)Critical success factor (CSF) - a factor critical - a factor critical to your organization’s success to your organization’s success

Page 9: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 1: PlanningPhase 1: Planning

2.2. Set the project scopeSet the project scope Project scope Project scope - - clearly defines the clearly defines the

high-level system requirements high-level system requirements Scope creep Scope creep -- occurs when the scope occurs when the scope

of the project increasesof the project increases Feature creep Feature creep - - occurs when occurs when

developers add extra features that were developers add extra features that were not part of the initial requirementsnot part of the initial requirements

Project scope documentProject scope document –– written written document of the project scopedocument of the project scope

Page 10: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 1: PlanningPhase 1: Planning3.3. Develop the project plan including Develop the project plan including

tasks, resources, and timeframestasks, resources, and timeframes Project planProject plan

Project managerProject manager

Project milestonesProject milestones

Page 11: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 1: PlanningPhase 1: Planning

Sample Project Plan

Page 12: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 2: AnalysisPhase 2: Analysis Analysis phaseAnalysis phase

involves end users and IT specialists working involves end users and IT specialists working together to gather, understand, and document the together to gather, understand, and document the business requirements for the proposed system business requirements for the proposed system

Two primary analysis activities:Two primary analysis activities:1.1.Gather the business requirementsGather the business requirements

Business requirements Business requirements - the detailed set of - the detailed set of knowledge worker requests that the system knowledge worker requests that the system must meet in order to be successfulmust meet in order to be successful

Joint application developmentJoint application development ( (JADJAD) - ) - knowledge workers and IT specialists meet, knowledge workers and IT specialists meet, sometimes for several days, to define or review sometimes for several days, to define or review the business requirements for the system the business requirements for the system

Page 13: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 2: AnalysisPhase 2: Analysis

2.2. Prioritize the requirementsPrioritize the requirements Requirements definition Requirements definition

document -document -prioritizes the business prioritizes the business requirements and places them in a requirements and places them in a formal comprehensive document formal comprehensive document

Users sign off on this document which Users sign off on this document which clearly sets the scope for the projectclearly sets the scope for the project

Page 14: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 2: AnalysisPhase 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 early stages of the SDLC is relatively small. In later stages, the cost is huge.

Page 15: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 3: DesignPhase 3: Design Design phaseDesign phase

build a technical blueprint of how the build a technical blueprint of how the proposed system will work proposed system will work

Two primary design activities:Two primary design activities:1.1. Design the technical architecture Design the technical architecture

the hardware, software, and the hardware, software, and telecommunications equipment required to telecommunications equipment required to run the system run the system

2.2. Design system modelsDesign system models GUI screens that users will interface with, GUI screens that users will interface with,

database designs (see XLM/C), report database designs (see XLM/C), report formats, software steps, etcformats, software steps, etc

Page 16: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 3: DesignPhase 3: Design Starting with design, you take on Starting with design, you take on

less of an active participation role less of an active participation role and act more as a “quality control” and act more as a “quality control” function, ensuring that the IT people function, ensuring that the IT people are designing a system to meet your are designing a system to meet your needsneeds

Page 17: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 4: DevelopmentPhase 4: Development Development phaseDevelopment phase

take all of your detailed design take all of your detailed design documents from the design phase and documents from the design phase and transform them into an actual system transform them into an actual system

Two primary development activities:Two primary development activities:1.1. Build the technical architectureBuild the technical architecture2.2. Build the database and programs Build the database and programs

Both of these activities are mostly performed Both of these activities are mostly performed by IT specialistsby IT specialists

Page 18: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 5: TestingPhase 5: Testing Testing phaseTesting phase

verifies that the system works and meets all of the verifies that the system works and meets all of the business requirements defined in the analysis phase business requirements defined in the analysis phase

Two primary testing activities:Two primary testing activities:1.1. Write the test conditionsWrite the test conditions

Test conditionsTest conditions - the detailed steps the system - the detailed steps the system must perform along with the expected results of must perform along with the expected results of each step each step

2.2. Perform the testing of the systemPerform the testing of the system Unit testing Unit testing – tests individual units of code– tests individual units of code System testingSystem testing – verifies that the units of code – verifies that the units of code

function correctly when integratedfunction correctly when integrated Integration testingIntegration testing – verifies that separate – verifies that separate

systems work togethersystems work together User acceptance testing (UAT) User acceptance testing (UAT) – determines – determines

if the system satisfies the business requirements if the system satisfies the business requirements

Page 19: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 6: ImplementationPhase 6: Implementation Implementation phaseImplementation phase

distribute the system to all of the knowledge workers distribute the system to all of the knowledge workers and they begin using the system to perform their and they begin using the system to perform their everyday jobs everyday jobs

Two primary implementation activitiesTwo primary implementation activities

1.1. Write detailed user documentationWrite detailed user documentation User documentationUser documentation - highlights how to use the - highlights how to use the

system system

2.2. Provide training for the system usersProvide training for the system users Online trainingOnline training - runs over the Internet or off a - runs over the Internet or off a

CD-ROM CD-ROM Workshop training Workshop training - - is held in a classroom is held in a classroom

environment and lead by an instructor environment and lead by an instructor

Page 20: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 6: ImplementationPhase 6: Implementation

Choose the right implementation Choose the right implementation methodmethod Parallel implementationParallel implementation

Plunge implementationPlunge implementation

Pilot implementationPilot implementation

Phased implementationPhased implementation

Page 21: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Phase 7: Maintenance Phase 7: Maintenance Maintenance phaseMaintenance phase

monitor and support the new system to monitor and support the new system to ensure it continues to meet the business goals ensure it continues to meet the business goals

Two primary maintenance activities:Two primary maintenance activities:1.1. Build a help desk to support the system users Build a help desk to support the system users

Help deskHelp desk - a group of people who responds to - a group of people who responds to knowledge workers’ questions knowledge workers’ questions

2.2. Provide an environment to support system Provide an environment to support system changes changes

Page 22: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Sourcing the ProjectSourcing the Project

Three choices for building a system Three choices for building a system include:include: InsourcingInsourcing SelfsourcingSelfsourcing OutsourcingOutsourcing

Page 23: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

SelfsourcingSelfsourcing

SelfsourcingSelfsourcing (also called (also called knowledge worker development knowledge worker development oror end user development end user development))

Page 24: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

SelfsourcingSelfsourcing AdvantagesAdvantages

Improves requirements determinationImproves requirements determination Increases knowledge worker participation and sense Increases knowledge worker participation and sense

of ownershipof ownership Increases speed of systems developmentIncreases speed of systems development

Potential pitfalls and risksPotential pitfalls and risks Inadequate knowledge worker expertise leads to Inadequate knowledge worker expertise leads to

inadequately developed systemsinadequately developed systems Lack of organizational focus creates “privatized” IT Lack of organizational focus creates “privatized” IT

systemssystems Insufficient analysis of design alternatives leads to Insufficient analysis of design alternatives leads to

subpar IT systemssubpar IT systems Lack of documentation and external support leads to Lack of documentation and external support leads to

short-lived systemsshort-lived systems

Page 25: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

OUTSOURCINGOUTSOURCING

Developing strategic partnershipsDeveloping strategic partnerships

OutsourcingOutsourcing

Page 26: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Developing Strategic Developing Strategic PartnershipsPartnerships

IT outsourcing takes on 1 of 4 forms:IT outsourcing takes on 1 of 4 forms:1.1. Purchasing existing softwarePurchasing existing software

2.2. Purchasing existing software and pay the Purchasing existing software and pay the publisher to make certain modificationspublisher to make certain modifications

3.3. Purchasing existing software and pay the Purchasing existing software and pay the publisher for the right to make publisher for the right to make modifications yourselfmodifications yourself

4.4. Outsourcing the development of an Outsourcing the development of an entirely new and unique system for which entirely new and unique system for which no software existsno software exists

Page 27: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Outsourcing OptionsOutsourcing Options

There are three different forms of There are three different forms of outsourcing:outsourcing:1.1. Onshore outsourcingOnshore outsourcing - - the process of the process of

engaging another company within the engaging another company within the same country for servicessame country for services

2.2. Nearshore outsourcingNearshore outsourcing - contracting an - contracting an outsourcing arrangement with a company outsourcing arrangement with a company in a nearby countryin a nearby country

3.3. Offshore outsourcingOffshore outsourcing - contracting with - contracting with a company that is geographically far awaya company that is geographically far away

Page 28: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

OutsourcingOutsourcing AdvantagesAdvantages

Focus on unique core competenciesFocus on unique core competencies Exploit the intellect of another organizationExploit the intellect of another organization Better predict future costsBetter predict future costs Acquire leading-edge technologyAcquire leading-edge technology Reduce costsReduce costs Improve performance accountabilityImprove performance accountability

DisadvantagesDisadvantages Reduces technical know-how for future innovationReduces technical know-how for future innovation Reduces degree of controlReduces degree of control Increases vulnerability of strategic informationIncreases vulnerability of strategic information Increases dependency on other organizationsIncreases dependency on other organizations

Page 29: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

PROTOTYPINGPROTOTYPING

PrototypingPrototyping

Prototype Prototype

Proof-of-concept prototype Proof-of-concept prototype

Selling prototype Selling prototype

Page 30: Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques

Prototyping Prototyping AdvantagesAdvantages

Encourages active knowledge worker participation Encourages active knowledge worker participation  Helps resolve discrepancies among knowledge workers Helps resolve discrepancies among knowledge workers  Gives users a feel for the final system Gives users a feel for the final system  Helps determine technical feasibilityHelps determine technical feasibility Helps sell the idea of a proposed system Helps sell the idea of a proposed system 

DisadvantagesDisadvantages Leads people to believe the final system will follow Leads people to believe the final system will follow

shortlyshortly Gives no indication of performance under operational Gives no indication of performance under operational

conditionsconditions Leads the project team to forgo proper testing and Leads the project team to forgo proper testing and

documentationdocumentation