1Systems Development Life Cycle (SDLC) Stages
Planning, Analysis, Design, Implementation
2Planning Phase
Project Initiation and Set Up
3Project Initiation
Prepare system request and perform preliminary feasibility analysis
4Project Set Up
Project plan, workplan, staffing plan
5Analysis Phase
Determine analysis strategy, collect and analyze requirements, and prep and present system proposal
6Determine analysis strategy
study the existing system and its problems
7collect and analyze requirements
develop new system concept and describe new system with analysis mode
8prepare and present system proposal
summarize results of the analysis phase; leads to a go/no go decision made by sponsor and steering commitee
9Design Phase
determine deisgn strategy, design system components, present to steering commitee
10Determine design strategy
build, buy, outsource
11Deisgn system components
architexture, interface, database, programs; assemble elemsnts into system specification
12present to steering committee
leads to go/no go decision
13Implementationn Phase
system construction, installation, and ongoing support
14when does system construction happen?
Implementation Phase
15System Construction
programming and testing
16System installation
Trainging and conversion to a new system
17where do IS projects come from?
to fulfill a business need
18Business need examples
enable a business initiative or strategy
support a merger/acquisition
fix a point of pain
utilize new technology
outgrowth of business process management (BPM)
19Point of pain
specific area or process in the system that causes significant frustration, inefficiency, or difficulty for users; impacts decision making and operational effectiveness
20Business Process Management (BPM)
methodology used by organizations to continuously improve internal and cross-organizational business processes
21What business processes does BPM focus on?
internal and cross-organizational
22BPM benefits
enhanced process agility
process alignment with industry best practices
increased process efficiencies
23How many steps are in the continuous cycle?
4
244-Step Continuous Cycle
1. define and map the steps in a business process
2. create ways to improve on steps in the process that add value
3. find ways to eliminate or consolidate steps in the process that don't add value
4. create or adjust electronic workflows to match the improved process maps
254-Step Continuous Cycle (simplified)
1. define/map steps in a process
2. improve steps that add value
3. eliminate/consolidate steps that don't add value
4. adjust/implement improved process map
26Business Process Automation
create/adjust electronic workflows to match improved process maps (STEP 4)
27Business Process Improvement
study the processes
create new, redesigned processes to improve the process workflows
utilize new tech enabling new process structures
28Business Process Reengineering
total overhaul of work processes
29Project Sponsor
The person who initiates the project and who serves as the primary point of contact for the project on the business side
30Project Sponsor Examples
finance department, VP marketing, CIO, CEO
31business need
business related reason for initiating the system
32business requirements
new or enhanced business capabilities that the system will provide
33business value
benefits the system will create for the organization
34special issues/constraints
issues that pertain to the approval committee
35System Request
describes business reasons for the project
defines the systems expected value
lists the project's key elements
36What does defining the system's expected value do?
forces the sponsor to formalize their ideas
provides a framework for collecting initial project info
standardizes info to be used by the steering committee
37Steering Committee
group of high level stakeholder that provide strategic direction and oversight to all IT projects; approval committee
38Feasibility Analysis
detailed business case for the project
compiled into a feasibility study
critically important to reassess feasibility throughout the project
39Types of Feasibility
technical
economic
organizational
40Technical Feasibility asks
can we build it?
41sources of technical risk
users' and analysts' lack of familiarity with the business application area
lack of familiarity with tech
project size
compatibility with existing systems
42Economic Feasibility asks
should we build it?
43Economic feasibility involves
identifying and assigning value to costs and benefits
determine CF
assess financial viability (ROI, break even, NPV)
44Organizational Feasibility asks
if we build it, will they come?
45organizational feasibility involves
strategic alignment with business strategy (closer alignment, likelier success)
effect on stakeholders
46feasibility assessment goal
know the risks we face and their significance; continuously review and revise
47project portfolio perspective
how does the project fit within the entire portfolio of projects
48trade offs needed
select projects to form a balanced project portfolio
49why may viable projects be rejected/deferred?
due to project portfolio issues
50Project Portfolio Management Software
collects and manages info about all projects
51what does PPM software do for companies
allows them to stay up to date on projects and adapt to changing conditions
52what does PPM software feature
project prioritization
employee allocation
real time project monitoring
flagging cost
time variances
monitoring economic feasibility
53ways to characterize projects
size
cost
purpose
length
risk
scope
economic value
54once a project is approved the project manager must
select the best project method
develop a workplan
establish a staffing plan
create ways to coordinate and control the project
55Methodology
formalized approach to implementing the SDLC
series of steps and deliverables to produce
56Methodology Sources include
internally developed by the firm
consulting firm
software vendor
government agency
57Factors influencing the best methodology choice
clarity of user requirements
familiarity with technology
system complexity
system reliability
time frame
schedule visibility
58Structured Systems Development
assumes a project phase is complete before moving to the next phase
59Types of Structured Systems Development
Waterfall, Parallel, V-Model
60Waterfall Development
Fully complete a phase before moving onto the next
emphasize deliverables flowing from one phase to the next
61Waterfall Development Strengths
requirements are identified long before construction begins, and frozen as project proceeds (will not change)
62Waterfall Development Weaknesses
have to wait a long time before there is visible evidence of the new system
long time from start to finish
if you find something wrong in a stage, you need to go all the way back to planning
cannot move on from one phase until EVERYTHING is finished
63Parallel Development
divides design and implementation into subprojects that can be worked on at the same time; reduces overall project length
64Parallel Dev. Strengths
reduces overall project time (compared to waterfall) and the need for rework (shorter time frame, smaller chance of requirements changing)
65Parallel Dev. Weaknesses
must make sub projects carefully
risk lack of consistency when integrating subprojects for the final implementation
66V-Model
emphasizes system quality by creating test design at analysis and design, to then be used after implementation
67V-model strength
simple and straightforward
quality improves through the emphasis on testing and including quality assurance early on
68V-model weakness
rigid and difficult to use in a dynamic business environment
69Rapid Application Development
get some portion of system developed quickly and in the user's hands
incorporates special techniques and tools (CASE, JAD, code generators)
70Types of Rapid Application Development
Iterative, System Prototyping, Throw Away Prototyping
71Iterative Dev.
series of versions developed sequentially (first version is done, immediately analyze and revamp)
72Iterative Dev. Strengths
users get system quickly and can identify additional needs for later versions based on real experiences with the current version
73Iterative Dev. Weakness
users get an incomplete system and must be patient for the fully functional version
cannot be used for clients who are already doubtful/looking for flaws (truck driver story)
74System Prototyping
create a prototype of a system and grow it into the final system with repetitive refinement
75System Prototyping Strengths
users get to work with the prototype quickly and feedback cycles let users identify changes and refine real requirements
76System Prototyping Weakness
superficial analysis may cause problems
initial design decisions may be poor
overlooked features may be hard to add later
77Throw Away Prototyping
Multiple groups work to make the same prototype and whichever ones aren't needed get thrown out. Whichever ones are acceptable are combined and go back to deisgn/implementation (class example)
78Throw Away Strengths
minimized uncertainty
important issues are understood before building the final system
79Throw Away Weakness
may take longer compared to system prototyping
80Agile Development Methodologies
focus on short cycles that produce a complete software products
highly adaptable in dynamic environments
81Agile Development Examples
Extreme Programming (XP) and Scrum
82Agile Dev. Strengths
fast result delivery
works well in projects with undefined or changing requirements
83Agile Dev. Weaknesses
require discipline
significant user involvement is essential
initial high learning curve
bad for big projects
84Project Managers must balance
size, cost, and time
85Project Estimation
assigning projected values for time and effort
86Project Estimation Sources
methodology in use
actual previous projects
experienced dveelopers
87How do estimations change over time with a project
Start as a range and become more specific as the project progresses
88Industry Standard Percentages
Planning 15%
Analysis 20%
Design 35%
Implementation 30%
89How can we identify tasks
use established guildelines/methodologies
model previous project's task lists
top-down approach
organize work into breakdown structure
90Top-Down Approach
break high level tasks into smaller detailed tasks (grade programming example)
91Staffing Considerations
match skills to project needs when possible
staffing levels will change over project lifetime
92What skills should be considered when staffing
technical and interpersonal skills
93What does adding staff do?
Adds overhead
94What are the best motivators
intrinsic rewards
95Intrinsic Reward Examples
recognition
achievement
the work itself
responsibility
advancement
chance to learn new skills
96How should you approach monetary rewards
cautiously
97Demotivator examples
unrealistic deadlines
ignore good efforts
accept low quality
give everyone the same raise
make an important decision without team input
poor working conditions
98Assure group performance by
making sure team understands project and goals
establish operating procedure (Project Charter)
ensure everyone gets to know each other
establish methods for dealing with problems
99Project Charter
establishes operating procedures concerning availability, status reporting, and meetings
100Project Estimates require
Refinement
101Scope Creep
deviation of the project from the original scope through the addition of new features
102How to minimize scope creep
Use JAD and prototyping
implement formal change approval process
defer additional requirements as future system enhancements
103Timeboxing
set a tight, realistic deadline
identifies and focuses on essential functions
stresses high quality
repeat to add refinements and enhancements
104When is timeboxing used
when a project requires more time than is available
105When can you make up time
the remainder of the project is simpler than the part you feel behind on, and simpler than you expected when original estimates were made
106Will adding people handle schedule slippages?
Not always