SDLC
Systems Development Life Cycle
The single most important criterion for a successful deployment is that the users take ownership of the system.
You are the Sponsor/Architect/PM and you know this is important. How do you make that happen?
You also know that somewhere around 50% of IT projects fail.
Others succeed functionally but overrun their budgets by 200 and 300 percent
How do you avoid being a statistic?
Why do they fail?
Why Do Projects Fail?
- Determing requirements may be difficult
- Changes in requirements throughout project life cycle
- Scheduling and Budgeting Conflicts
- Changing Technology
- Scale diseconomies
Holistic broader approach to developing systems –
- Technical – Software & Data = programming
- Technical – Hardware maybe or outsource?
- Vendor management
- Metered Cloud
- Business Process – modeling, mapping
- Data Model
- Project plan
- Testing
- User Roles
- Training
- Rollout Plan
- Communications Plan
System definition – What does it do?
- Goals, Objectives, Scope
- Problem to Solve
- Time Frame – Schedule feasibility
- Cost feasibility (what are we willing to spend)
Requirements Analysis – BRD – How does it do it?
- User/Stakeholder Interviews
- Reports, Queries, Web Pages needed
- Component Functionality
- How would competitors get started
- How do users sign in – match up
- Security, user forgets password
- Will requirements change over time?
SDLC
Design – System Design
- Architecture
- Data Model
- Security
- Interfaces
- Component Architecture
- Functional Design Document – FDD
- Prototype
- Test Specifications – Use Cases – Begin design
- Legacy Apps?
- Hardware
- Software
- Develop
- COTS
Implementation
- Develop Modules
- Test Plan
- For Each:
- Unit Test
- Developer
- User
- Assemble
- Integration Testing
- Developer
- User
- TAR Tracking
- Regression Testing
- QA
- Alpha
- Beta
- Legacy Data
- Prototype
- Conversion Plan
- Test
- Migration/Conversion
- QA
- Release
Maintenance
- Support/Change Requests
- Bug Fix
- Enhancements
- Upgrade Cycles
- Patch Management
Systems Development Life Cycle
Feasibility – Does this project make sense?
Eliminate obvious failures up front or remove obstacles to success.
- Cost assess project cost vs Margin improvement – does Porter think it’s a good investment?
- Are all projects evaluated on Rate of Return?
- Prototype?
- Schedule – How long will it take? Will need still be there?
- Can we develop faster than requirements will change.
- Technical – Can we make it work – buy vs build, integration strategies
- How to match up gamers and show against each other?
- Organizational – can organization accept the change?
- Culture, Charter, Legal
Form Team
How is development team structured?
- Airplane model? EA
- Integrations?
- How many?
- Diseconomies of scale
- Brooks Law: “Adding more people to a late project makes the project later”
- Schedules can only be compressed so far.
- Triple constraint
- Time
- Function
- Cost
Gather Requirements
- Interview users
- Create diagrams
- Socialize
- Users are notorious for being unable to describe what they do.
- Users focus on most recent tasks
- Tend to ignore Month End or Year end activities when mid month
Consider all 5 components
Hardware requirements
Separation of duties
Role definition
Requirements
Move From Requirements to Design
Implementation
Testing
- Test Plan
- Data
- Scenarios
- Testers
- Function
- Roles
- Unit Test
- System Test- integration
- TAR (test analysis release)
- Regression Test
Conversion
- Pilot
- Phased
- Parallel
- Plunge or Hot Cut
Data Mapping
- Work in progress
- Year End
- Mid Year
Maintenance
MVP – Minimum Viable Product
Title: From Minimum Viable Product to a More Complex Product
Author: Teemu
Creative Commons Attribution-Share Alike 4.0 International