Upload
jaykrishnanc
View
79
Download
0
Tags:
Embed Size (px)
Citation preview
Systems Development
Planning
Lifecycle
2
Systems Development: Some Key Questions
• How does an organization ensure that its IT resources support its business plan?
• How do we ensure compatibility and interoperability across different system development efforts?
• How does a systems project get authorized?
• How is a project controlled and reviewed?
3
Systems Lifecycle
• Investigation• Design• Construction• Testing• Implementation
• Maintenance• Enhancement• Retirement
All of these activitiescomprise system developmentand form a lifecycle
4
Strategic Planning
• Based upon businesses multiyear strategic plan• Identify IT components or requirements within
the business plan
– Include IT inhibitors as well as IT-based breakthroughs
• Create rough plan of major IT initiatives• This should form a baseline IT plan as well as
human resources plan
5
Steps in IS Planning
Strategic PlanIdentify Projects
Prioritize and Select
Determine resources required (people, $, time)
Create planning document
6
Example
3-Year Business Plan
1. Accelerate product intro process to 4 months
2. Move manufacture of mature products to Mexico
3. Expand e-commerce capabilities to direct online selling and custom catalogs
3-Year IS Plan
1. Engineering automation: implement e-only design process
2. Extend corporate network to offshore manufacturing partners
3. Create internet sales site and custom catalog framework
7
Example
The objectives of this plan must be time sequenced and budgeted
Engineering AutomationTrue South
Flexible E-selling
Qtrly $ 225 225 400 125 150 150 200 1501H 2002 2H 2002 1H 2003 2H 2003
8
Architecture
• Many firms have developed “systems architectures”– A high-level roadmap which maps business
functions to present and future systems– And shows relationships between systems– Does not specific timeframe– Must be updated regularlyl
• Specific investment decisions and priorities can be made within this framework
9
Discussion: The benefits of an architecture
• Situation
10
Systems Development Model
• Traditional• Alternatives
– Prototyping– Rapid Application Development– CASE-based
– Time-boxing
11
Benefits of Methodology
• Various models are often called “methodology”– A system of methods
• Provide common language and expectation• Allow for standard management reviews• Create standards for documentation and testing
• Almost impossible to be credible without one
12
Traditional Software Development Lifecycle (SDLC)
• Often called Waterfall Model
Investigation
Design
Construction
Implement
13
Traditional SDLC
• From four to 12 phases• One phase completed before beginning next
phase
• Emphasis on documentation and checkpoints• Detailed planning and budgeting at each phase
14
Example of SDLC
Phase and Deliverable• Pre-investigation
– Project proposal and recommendation• Investigation
– Investigation Report– Analysis of alternatives– Cost and benefit analysis– Schedule– Recommendation
• Requirements Analysis– Detailed system requirements– Revised cost and benefits analysis– Revised schedule
15
Example of SDLCPhase and Deliverable• Design
– Logical design– Technical design– Test plans– Revised cost and benefits analysis– Revised schedule
• Construction & Testing– System elements– Implementation plans– Contingency plans– End user training materials– Maintenance plan– Operations plans
• Implementation– Cutover / Phase in
16
Pros and Cons of SDLC
• Advantages– Lends itself to good control– Phase deliverables well defined
• Facilitates contracting
– Clear checkpoints makes reviews easy– Creates detailed documentation which is
valuable for maintenance
17
Pros and Cons of SDLC
• Disadvantages– Time and cost estimation difficult– Can be very slow– Requires that requirements are defined
abstractly, without interaction with “system”– Overall ownership usually on “systems”
people
18
Improvements to Traditional SDLC
• Dedicated project teams– Full time end-user designers
• JAD workshops– Joint Application Design– Facilitated workshops
• 1 to 5 days
• Scribes
• Perhaps prototype tools
– Requirements definition or design
19
Time Box Approach
• Identify objectives• Create project team• Set time period (6 weeks)• Team cycles through all phases of lifecycle very quickly,
sometimes in parallel
• Fast development tools very useful
• Review takes place at end of time period– Continue project for another period?– Cancel all-together?– Implement current system?
20
Advantages of Time Box Approach
• Advantages– Eliminates gap between system on paper and
“real” system
– Immediate demonstration of technical feasibility
– Limits investment risks– Developers prefer it
21
Disadvantages of Time Box Approach
• Disadvantages– Longer commitment may be needed to get
results
– Danger of implementing unstable or poorly-maintainable product
– Without discipline to focus on objectives, can be wasteful
22
Prototyping
• Aim: Quickly create something that shows how the system (or a portion of it) will work
• Allow hands out interaction with system to test requirements and key design features
• Problem: How do you build something quickly?– Use 4GL (fast development, poor
performance), recode later – Reduce feature set (no editing of data)– Create key modules only
23
Prototyping
• Nonoperational prototypes– Mockups that don’t really work– Limited to input and output (reports, screens)
• Operational prototypes– Working systems or portions of systems
– Possibly 4GL based
24
CASE Tools
• Computer Aided Software Engineering– Toolsets to speed software development and
improve quality
• Upper CASE– Focus on investigation, analysis and design
• Lower CASE– Design, code generation and testing
• Integrated CASE include both
25
CASE Tools
• Repository– Database containing all development objectives
• Data elements and definitions• Requirements• Code modules
– Enables a team to work on the CASE project• Data model
– Dictionary and schema
• Code generation– Product 3GL or 4GL code
26
Rapid Application Development
• Trendy term for many of these alternative methods used is some combination– CASE
– JAD– Prototyping– Time Boxing
27
Project Management
• Project Management– Identification of tasks to be completed– Understanding of relationship between tasks– Tracking of task ownership and status– Adjustment of resources and plans in reaction
to events– Task tracking and accountability– Management reporting and escalation
28
Risk Assessment
• Many projects predictably fail do to risk profile• Major risk factors
– Scope– Timeline– Experience of team
– Organizational change– Geographic scope
29
End User Development
• Easy-to-use tools encourage end-user development
• So does IT department resource constraints• Advantages
– Good knowledge of business needs– Control of resources and priorities
• Disadvantages– Lack of technical expertise– Lack of planning
30
IT Organization vs. End-User Development
• Source of tension• Users: “It is too slow and don’t know our
business”
• IT: “Users produce poor systems and leave us with maintenance”
• How should IT respond to this?– Ignore– Outlaw and drive underground– Offer assistance and consultation