Title: Introduction to Systems Development
1Introduction to Systems Development
2Learning Objectives
- Understand the process of building and
implementing information systems - Understand alternatives to traditional
development approach - Understand alternatives to building systems
in-house
3The SDLC
- Systems Development Life Cycle
- Phased process for developing systems
- Intermediate products delivered before final
product - "Tried and True" process
- Most IS organizations use, in some form
4Phases of the SDLC
5Phases of the SDLC, cont
- 1. Systems Investigation
- Scope, organize project
- Activities
- Identify the business problem(s)
- Feasibility study
- Project team, project estimation, project plan
6How Do Development Projects Get Started?
- Planned Initiatives
- Information Systems Planning
- Unplanned Initiatives
- Screened by steering committee
- May be backlogged
7IS Plan
- Roadmap indicating direction of systems
development - Should support organization's strategic plans
- Systems development projects result
- Can be supported by Information Requirements
- Enterprise analysis
- Critical Success Factors
8(No Transcript)
9Feasibility Analysis
10Phases of the SDLC, cont
- 2. Analysis
- Understand current situation, problems
- Specify what the new 'solution' should do
- requirements
- Activities
- Interviews
- Process modeling
- Data modeling
- Network modeling
11Modeling Requirements
Data Flow Diagram (DFD)
Class Diagram
Focus?
Focus?
12Phases of the SDLC, cont
- 3. Design
- Determine how the new system will implement
requirements (specs) - Activities
- User interface (Screen) design
- Form/report (output) design
- Program design
- Database design
- Security and control specifications
13Phases of the SDLC, cont
- 4. Development
- Use design specs to develop or acquire system
- Activities
- Programming (Insource or Outsource)
- C, Java, VB,
- and/or
- Lease/Purchase (COTS, ASP,)
- Secure hardware, additional software
- Develop Training/Documentation
- Technical writers
14Phases of the SDLC, cont
- 5. Testing
- Will system produce desired results under known
conditions? - Activities
- Test plan
- Test, verify, identify problems, document
- Correct problem
- Testing Phases
Phases of Testing
Unit Test
Integration Test
System Test
Acceptance Test
15Phases of the SDLC, cont
- 6. Implementation
- Moving from old to new
- Activities
- Make system available for use
- Connect to databases, other applications
- Setup help desk
- Train users
- Types
- Direct cutover
- Parallel
- Pilot Study
- Phased
16Phases of the SDLC, cont
- 7. Operation
- New system installed, in use, monitored over time
- Activities
- System backups, etc.
- Performance monitoring
- Post Implementation Review(s)
- Assess system performance
- Identify/implement changes
17Phases of the SDLC, cont
- 8. Maintenance
- New system changed over time
- Activities
- Correcting errors
- Upgrade software, technology, data
- Support new requirements
18Advantages of the SDLC
- Eases complexity of systems development
- Facilitates project management
- General, not system dependent
- Widely used, proven
19Disadvantages of the SDLC
- Sequential flow of activities
- Slow delivery of concrete products
- Focus on quality late in process
- Low user involvement
- Inflexibility
- Typical focus on 'functions'
20Alternatives
- Alternative SDLC Approaches
- Prototyping
- RAD
- JAD
- User-centered Development
- OO Development
- XP
- Alternatives to In-House Development
- COTS
- ASPs
- Leasing
- Outsourcing
- Web Services
- End-User Development
21Alternatives
- Alternative SDLC Approaches
- Prototyping
- JAD
- RAD
- User-centered Development
- OO Development
- XP
22Prototyping
- Building experimental system rapidly and
inexpensively for users to evaluate - Uses iterative process to develop
- Steps
- Identify requirements
- Develop/use/revise prototype
- Build working system
- Advantages
- Disadvantages
23JAD
- Users and IS specialists together generate
requirements and designs - Can be formal, facilitated, tool-supported
meetings - Advantages
- Disadvantages
24Rapid Application Development
- Developing system in a very short time
- Uses
- Prototyping
- CASE tools
- JADs
25User-Centered Development
Requirements Analysis
Task Analysis
Design/Prototype
Program/Test
User Test/Evaluation
Implementation
User Survey
26Object-Oriented Development
- Structured/Traditional looks at
- Data
- Process
- OO looks at
- Objects
- Phases similar to SDLC with
- Iteration
- Incrementalism
- Facilitates reuse
- May be difficult to learn
27Extreme Programming (XP)
http//www.extremeprogramming.org/rules.html
28In-Sourced Development
- Advantages
- IS meets needs of organization
- Expertise in-house
- Control in-house
- Disadvantages
- Can be more expensive
- Backlog
- Can take longer to implement
- May not be state of the art, best practice
- Applications often not integrated
29Alternatives
- Alternatives to ISD (in-sourced) Development
- COTS
- ASPs
- Leasing
- Outsourcing
- Web Services
- End-User Development
30Web Services
A major application of Web services is systems
integration, one of the major activities
performed in systems development. The concept of
components is based on the idea of gluing them
together. Applications need to be integrated with
databases and with other applications, users need
to interface with data warehouses, business
partner applications and databases must
communicate, etc.
- Web services are based on a family of key
protocols - XML Language. Extensible Markup Language
- SOAP. Simple Object Access Protocol
- WSDL. The Web Services Description Language
- UDDI. Universal Description, Discovery and
Integration - Security protocols (SAML, XKMS, )
31End User Development
- Systems developed by end users
- Often driven by long application backlog
- Advantages
- Systems may be delivered sooner
- Systems may better meet user needs
- Max user involvement
- Disadvantages
- Systems may be limited in functionality
- Lack of process, standards, controls
- Proliferation of private, functional systems
32Summary
- SDLC
- What it is
- Phases
- Purpose of each phase
- Activities/concepts in each phase
- Advantages
- Limitations
- Alternatives
- Alternatives to Insourced Development