Title: Solving Business Problems with Information SystemsOverview of Systems Development
1Chapter 11
- Solving Business Problems with Information
Systems--Overview of Systems Development
2DEVELOPING SOFTWARE
- Software that is built correctly can transform 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
3DEVELOPING SOFTWARE
- As organizations reliance on software grows, so
do the business-related consequences of software
successes and failures including - Increase or decrease revenue
- Repair or damage to brand reputation
- Prevent or incur liabilities
- Increase or decrease productivity
4How does an organization assure that new system
will be successful?
- get top management support
- involve as many end users as possible so they
buy in - keep end users up to date on new system
- work with corporate culture
5Strategic Planning important part of new system
- Businesses need way to analyze the direction they
will take before they throw time, money, and
personnel at a problem. - You cant solve a problem until you know what the
problem is.
6Systems Approach
- problem solving process to define information
system problems and opportunities and develop
solutions - 7-step approach to analyze, design, and develop
information systems is the Systems Development
Life Cycle
7Why is this important for end users/knowledge
workers?
- Will define the future of IS in the organization
- Affects work productivity
- Affects morale
- Affects ability of organization to compete
- End users and knowledge workers are primary
source of input as to what IS systems are needed
8THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)
- Systems development life cycle (SDLC) the
overall process for developing information
systems from planning and analysis through
implementation and maintenance
9PHASE 1 PLANNING
- Planning phase involves establishing a
high-level plan of the intended project and
determining project goals - Primary planning activities include
- Identify and select the system for development
- Assess project feasibility
- Develop the project plan
10Identify 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 organizations success
11Feasibility--determines if the proposed solution
is feasible and achievable from a financial,
technical, and organizational standpoint
Organizational Feasibility
12PHASE 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
- Gather business requirements
- Create process diagrams
- Perform a buy vs. build analysis
13Gather 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
14Perform a Buy vs. Build Analysis
- An organization faces two primary choices when
deciding to develop an information system - 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
- Build the information system itself
15Perform 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?
16Step 3--Systems Design--Develop Specifications
- Purpose is to create a design that satisfies
requirements - User interfaces--screens, printed reports, forms,
graphics - Database specificationshow database needs to be
set up - Software specifications--software or programming
logic to turn inputs into outputs - Hardware and network specifications
- Personnel needed
17Design System Models
- Modeling the activity of drawing a graphical
representation of a design - Different modeling types include
- Graphical user interface (GUI)
- GUI screen design
- Data model
- Entity relationship diagram (ERD)
18Design System Models
- Sample entity relationship diagram (ERD)
19PHASE 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
- Develop the IT infrastructure
- Develop the database and programs
20PHASE 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
- Write the test conditions
- Perform the system testing
21Perform the System Testing
- Different types of testing
- Unit testing tests each unit of code upon
completion - Application (or system) testing verifies that
all units of code work together - Integration testing exposes faults in the
integration of software components or units - Backup and recovery testing tests the ability
of an application to be restarted after failure - Documentation testing verifies instruction
guides are helpful and accurate - User acceptance testing (UAT) tests if a system
satisfies its acceptance criteria
22PHASE 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
- Write detailed user documentation
- Determine implementation method
- Provide training for the system users
23Determine Implementation Method
- Four primary implementation methods
- Parallel implementation
- Plunge implementation
- Pilot implementation
- Phased implementation
24PHASE 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
- Build a help desk to support the system users
- Perform system maintenance
- Provide an environment to support system changes
25SOFTWARE PROBLEMS ARE BUSINESS PROBLEMS
- Primary reasons for project failure include
- Unclear or missing business requirements
- Skipping SDLC phases
- Failure to manage project scope
- Scope creep occurs when the scope increases
- Feature creep occurs when extra features are
added - Failure to manage project plan
- Changing technology
26SOFTWARE PROBLEMS ARE BUSINESS PROBLEMS
- Find errors early the later in the SDLC an error
is found - the more expensive it is to fix
27SOFTWARE DEVELOPMENT METHODOLOGIES
- There are a number of different software
development methodologies including - Waterfall
- Rapid application development (RAD)
- Extreme programming
- Agile
28Waterfall Methodology
- Waterfall methodology a sequential,
activity-based process in which each phase in the
SDLC is performed sequentially from planning
through implementation and maintenance
29Rapid 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
30Rapid Application Development Methodology (RAD)
31Extreme Programming Methodology
- Extreme programming (XP) methodology breaks a
project into tiny phases, and developers cannot
continue on to the next phase until the first
phase is complete
32Agile 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
33DEVELOPING SUCCESSFUL SOFTWARE
- Primary principles for successful agile software
development include - Slash the budget
- If it doesnt work, kill it
- Keep requirements to a minimum
- Test and deliver frequently
- Assign non-IT executives to software projects