Transcript
Page 1: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights Reserved

CHAPTER 11CHAPTER 11

SYSTEMS DEVELOPMENT

SYSTEMS DEVELOPMENT

Page 2: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-2

DEVLOPING SOFTWARE

• Software that is built correctly can transform/be adapted as the organization and its business transforms

• Software that effectively meets employee needs will help an organization become more productive and enhance decision making

• Software that does not meet employee needs may have a damaging effect on productivity and can even cause a business to fail

Page 3: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-3

DEVELOPING SOFTWARE

• As organizations’ reliance on software grows, so do the business-related consequences of software successes and failures including:– Increase or decrease in revenue– Repair or damage to brand reputation– Prevent or incur liabilities– Increase or decrease productivity

Page 4: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-4

The Systems Development Life Cycle (SDLC)

• Large, complex IT systems take teams of architects, analysts, developers, testers, and users many years to create

• The systems development life cycle is the foundation for many systems development methodologies

– Systems development life cycle – the overall process for developing information systems from planning and analysis through implementation and maintenance

Page 5: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-5

SDLC

Page 6: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-6

PHASE 1: PLANNING

• Planning phase – involves establishing a high-level plan of the intended project and determining project goals

• Primary planning activities include1. Identify and select the system for

development2. Assess project feasibility3. Develop the project plan

Page 7: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-7

Planning 1: Identify and Select the System for Development

• Organizations use different forms of evaluation criteria to determine which

systems to develop – Critical success factor (CSF) – a factor that

is critical to an organization’s success

Page 8: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-8

Planning 1: Identify and Select the System for Development

Page 9: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-9

Planning 2: Assess Project Feasibility

• Feasibility study – determines if the proposed solution is feasible and achievable from a financial, technical, and organizational standpoint

• Different types of feasibility studies– Economic feasibility study– Operational feasibility study– Technical feasibility study– Schedule feasibility study– Legal and contractual feasibility study

Page 10: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-10

Planning 3:Develop the Project Plan

• Developing the project plan is a difficult and important activity

• The project plan is the guiding force behind on-time delivery of a complete and successful system

• Continuous updating of the project plan must be performed during every subsequent phase during the SDLC

Page 11: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-11

PHASE 2: ANALYSIS

• Analysis phase – involves analyzing end-user business requirements and refining project goals into defined functions and operations of the intended system

• Primary analysis activities include:1. Gather business requirements

2. Create process diagrams

3. Perform a buy vs. build analysis

Page 12: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-12

Analysis 1: Gather Business Requirements

• Business requirements – the detailed set of business requests that the system must meet in order to be successful

• Different ways to gather business requirements– Joint application development (JAD) session –

where employees meet to define or review the business requirements for the system

– Interviews– Questionnaires– Observations– Review business documents

Page 13: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-13

Analysis 1: Gather Business Requirements

• The system users review the requirements definition document and determine if they will sign-off on the business requirements

– Requirements definition document – contains the final set of business requirements, prioritized in order of business importance

– Sign-off – the system users’ actual signatures indicating they approve all of the business requirements

Page 14: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-14

Analysis 2: Create Process Diagrams

• Process modeling – graphically representing the processes that capture, manipulate, store, and distribute information between a system and its environment

• Common process modeling diagrams include– Data flow diagrams (DFD) – illustrate the

movement of information between external entities and the processes and data stores within the system

– Computer-aided software engineering (CASE) tools –automate systems analysis, design, and development

Page 15: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-15

Analysis 2: Create Process Diagrams

• Sample data flow diagram

Page 16: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-16

Analysis 3: Perform a Buy vs. Build Analysis

• An organization faces two primary choices when deciding to develop an information system

1. Buy the information system from a vendor– Commercial off-the shelf (COTS) – software

package or solution that is purchased to support one or more business functions and information systems

– SCM, CRM, and ERP solutions are typically COTS

2. Build the information system itself

Page 17: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-17

Analysis 3: Perform a Buy vs. Build Analysis

• Organizations must consider the following when making a buy vs. build decision:

– Are there any currently available products that fit the needs?

– Are there features that are not available and important enough to warrant the expense of in-house development?

– Can the organization customize or modify an existing COTS to fit its needs?

– Is there a justification to purchase or develop based on the acquisition cost?

Page 18: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-18

Analysis 3: Perform a Buy vs. Build Analysis

• Three key factors an organization should also consider when contemplating the buy vs. build decision

1. Time to market

2. Availability of corporate resources

3. Corporate core competencies

Page 19: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-19

PHASE 3: DESIGN

• Design phase – involves describing the desired features and operations of the system including screen layouts, business rules, process diagrams, pseudo code, and other documentation

• Primary design activities include:1. Design the IT infrastructure

2. Design system models

Page 20: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-20

Design 1: Design the IT Infrastructure

• Sample IT infrastructure

Page 21: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-21

Design 2: Design System Models

• Modeling – the activity of drawing a graphical representation of a design

• Different modeling types include:– Graphical user interface (GUI) screen

design– Data models

• Entity relationship diagram (ERD)

Page 22: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-22

Design 2: Design System Models

• Sample entity relationship diagram (ERD)

Page 23: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-23

PHASE 4: DEVELOPMENT

• Development phase – involves taking all of the detailed design documents from the design phase and transforming them into the actual system

• Primary development activities include:1. Develop the IT infrastructure

2. Develop the database and programs

Page 24: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-24

Development 1: Develop the IT Infrastructure based on the design

Page 25: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-25

Development 2: Develop the database & programs based on the Models from the

Design Phase

Page 26: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-26

PHASE 5: TESTING

• Testing phase – involves bringing all the project pieces together into a special testing environment to test for errors, bugs, and interoperability, in order to verify that the system meets all the business requirements defined in the analysis phase

• Primary testing activities include:1. Write the test conditions2. Perform the system testing

Page 27: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-27

Testing 1: Write the Test Conditions

• Test conditions – the detailed steps the system must perform along with the expected results of each step

Page 28: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-28

Testing 2: Perform the System Testing

• Types of testing:– Unit testing – tests each unit of code upon

completion to determine errors in that unit– Application (or system) testing – verifies

that all units of code work together and that the total system satisfies all functional and operational requirements

– Integration testing – exposes faults in the integration of software components or units with other systems

Page 29: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-29

Testing 2: Perform the System Testing

• Different types of testing, cont.– Regression testing – determines if a functional

improvement or repair to the system has affected the other functional aspects of the SW

– User acceptance testing (UAT) – determines whether a system satisfies its acceptance criteria, enabling the customer to decide whether or not to accept the system

– Documentation testing – verifies instruction guides are helpful and accurate

– Backup and recovery testing – tests the ability of an application to be restarted after failure

Page 30: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-30

PHASE 6: IMPLEMENTATION

• Implementation phase – involves placing the system into production so users can begin to perform actual business operations with the system

• Primary implementation activities include:1. Write detailed user documentation

2. Provide training for the system users

3. Determine implementation method

Page 31: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-31

Implementation 1: Write Detailed User Documentation

• System users require User documentation – highlights how to use the system

Page 32: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-32

Implementation 2: Provide Training for the System Users

• Organizations must provide training for system users

• Two popular types include:– Online training – conducted over the

Internet or from a CD-ROM– Workshop training – set in a classroom-

type environment and led by an instructor

Page 33: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-33

Implementation 3: Determine Implementation Method

• Four primary implementation methods 1. Parallel implementation

2. Plunge implementation

3. Pilot implementation

4. Phased implementation

Page 34: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-34

PHASE 7: MAINTENANCE

• Maintenance phase – involves performing changes, corrections, additions, and upgrades to ensure the system continues to meet the business goals

• Primary maintenance activities include:1. Provide a help desk to support the system users

2. Perform system maintenance

3. Provide an environment to support system changes

Page 35: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-35

Maintenance 1: Provide a Help Desk to Support System Users

• Internal system users have a phone number for the help desk they call whenever they have issues or questions about the system

– Help desk – a group of people who respond to internal system user questions

• Providing a help desk is an excellent way to provide comprehensive support for new system users

Page 36: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-36

Maintenance 2: Perform System Maintenance/Changes

• Maintenance – fixing or enhancing an information system

• Different types of maintenance include:– Corrective maintenance – Adaptive maintenance – Perfective maintenance – Preventative maintenance

Page 37: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-37

Maintenance 3: Support System Changes

• An organization must modify its systems to support the business environment

• It typically accomplishes this through change management systems and change control boards

– Change management system – a collection of procedures to document a change request and define the steps necessary to consider the change based on the expected impact of the change

– Change control board (CCB) – responsible for approving or rejecting all change requests

Page 38: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-38

Alternative Software Development Methodologies

• There are a number of different software development methodologies including:

– Waterfall– Rapid application development (RAD)– Extreme programming– Agile

Page 39: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-39

Waterfall Methodology

• Waterfall methodology – a sequential, activity-based process in which each phase in the SDLC is performed sequentially from planning through implementation and maintenance

Page 40: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-40

Page 41: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-41

Rapid Application Development Methodology (RAD)

• Rapid application development methodology (RAD) – emphasizes extensive user involvement in the rapid and evolutionary construction of working prototypes of a system to accelerate the systems development process

• The prototype is an essential part of the analysis phase when using a RAD methodology

– Prototype – a smaller-scale representation or working model of the users’ requirements or a proposed design for an information system

Page 42: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-42

Rapid Application Development Methodology (RAD)

Page 43: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-43

Extreme Programming Methodology (XP)

• Extreme programming (XP) methodology – breaks a project into tiny phases; developers cannot continue on to the next phase until the first phase is complete

Page 44: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-44

Agile Methodology

• Agile methodology – a form of XP, aims for customer satisfaction through early and continuous delivery of useful software components

– Agile is similar to XP but with less focus on team coding and more on limiting project scope

– An agile project sets a minimum number of requirements and turns them into a deliverable product

Page 45: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-45

DEVELOPING SUCCESSFUL SOFTWARE

• Primary principles for successful software development include:

– Slash the budget– If it doesn’t work, kill it– Keep requirements to a minimum – watch out for:

• Scope creep- the scope of the project increases• Feature creep – extra features are added

– Test and deliver frequently– Assign non-IT executives to software projects

Page 46: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-46

SOFTWARE PROBLEMS ARE BUSINESS PROBLEMS

• Primary reasons for project failure include

– Unclear or missing business requirements– Skipping SDLC phases– Failure to manage project scope –allowing:

• Scope creep – occurs when the scope increases

• Feature creep – occurs when extra features are added

– Failure to manage project plan– Changing technology

Page 47: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-47

SOFTWARE PROBLEMS ARE BUSINESS PROBLEMS

• Find errors early: the later in the SDLC an error is found - the more expensive it is to fix

Page 48: McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights

11-48

• http://www.updatexp.com/we-share-your-pain.html


Recommended