Download presentation
Presentation is loading. Please wait.
1
SE 470 Software Development Processes James Nowotarski 05 May 2003
2
Course Map Overview. Introduction. History Content. Rational Unified Process. Extreme Programming Implementation. Tools, Training, Roles. CMM, Metrics. Selection & Evaluation Briefings (Term Papers) 1234678910115 Assignments Quizzes Week Memorial Day
3
Understand who uses methodology and why Understand key strategies and issues affecting methodology deployment, adoption, and usage Be able to outline a methodology deployment plan Today’s Objectives
4
Topic Duration Recap15 minutes Who reads methodology and why30 minutes Deployment, adoption, use45 minutes *** Break10 minutes Deployment, adoption, use (cont.)45 minutes Term Project10 minutes Quiz40 minutes Today’s agenda
5
Topic Duration Recap15 minutes Who reads methodology and why30 minutes Deployment, adoption, use45 minutes *** Break10 minutes Deployment, adoption, use (cont.)45 minutes Term Project10 minutes Quiz40 minutes Today’s agenda
6
ApproachReferences XPwww.extremeprogramming.org www.xprogramming.com CrystalA. Cockburn, Agile Software Development, Addison-Wesley, 2001 SCRUMK. Schwaber and M. Beedle, Agile Software Development with Scrum, Prentice Hall, 2001. Adaptive Software Development J. Highsmith, Adaptive Software Development, Dorset House, 2000. FDDS. Palmer, A Practical Guide to Feature-Driven Development, Prentice Hall, 2002. Agile - Generalhttp://www.agilealliance.org/home Lightweight Methods
7
What is XP Rapid feedback Assume simplicity Incremental change Embrace change Quality work First Principles
8
What is XP Pair programming Test all the time –unit testing –functional testing –continuous integration Short iterations, small releases –2 month releases, 2 week iterations Incremental planning (learning to drive) Customer on-site as integral part of team Do simplest thing that could possibly work Key Features
9
What is XP 40-hour week Coding standards Refactoring and evolutionary design Metaphor to aid in understanding the architecture Only highest priority tasks are worked Collective ownership Key Features
10
What is XP Life cycle phase Cost of change Req Anal.Des. Impl.Test Prod y = ax p
11
What is XP Time Cost of change XP purports to change the curve so that the cost to find and repair software problems does not rise dramatically over time
12
When to Use XP Small to medium sized teams Vague or rapidly changing requirements 2-10 programmers Responsible and motivated developers Not sharply constrained by existing computing environment A reasonable job of executing tests can be done in a fraction of a day Customer who understands and will get involved
13
When Not to Use XP Culture –Pointing the car –Big specification –Long hours 20 or more programmers –though projects are emerging with up to 50 developers More than 15 months’ duration More than 50K source lines of code (SLOC) Fixed price contracts Technology barriers –Exponential cost curve –Long time needed to get feedback Geographic separation Architecture not well established Developers are low quality and motivation
14
RUP vs. XP AttributeRUP (“Heavyweight”)XP (“Lightweight”) Time and Effort Allocation 2 weeks-6 months2 weeks - 2 months ArchitectureStabilized during Elaboration phase Just enough to support functionality Scope of Activities and Artifacts BroadNarrow Omits: Business modeling Deployment Project sizeSmall to Very LargeSmall to Medium Artifacts25-30 in small project roadmap roughly 30 Roles~ 30 (5 in small project roadmap) 7
15
Topic Duration Recap15 minutes Who reads methodology and why30 minutes Deployment, adoption, use45 minutes *** Break10 minutes Deployment, adoption, use (cont.)45 minutes Term Project10 minutes Quiz40 minutes Today’s agenda
16
Who Reads Methodology and Why Study of 1000 practitioners by Prof. Gezinus Hidding, Loyola University (mid-1990’s) Practitioners seldom “read” the methodology But when they do, it is to: –learn about something new (training) –look something up that they once knew or want to confirm (reference) Different needs depending on role
17
Who Reads Methodology and Why TrainingReference Planning8%36% Selling6%20% Doing6%13% Managing2%9% Methodology is used mostly by planners and mostly for reference purposes Source: Gezinus Hidding, Loyola University Roles How Used
18
Who Reads Methodology and Why ProcessArtifactGuidelineConcept Planning43%37%14%7%7% Selling48%35%12%5% Doing40%34%16%10% Managing42%34%18%6% Process descriptions and artifacts are the most valuable types of information Source: Gezinus Hidding, Loyola University Reference
19
Who Reads Methodology and Why Information needs of planners (“crucial target”) –need for speed –summary overviews of processes and artifacts Information needs of doers –artifact samples –guidelines
20
Topic Duration Recap15 minutes Who reads methodology and why30 minutes Deployment, adoption, use45 minutes *** Break10 minutes Deployment, adoption, use (cont.)45 minutes Term Project10 minutes Quiz40 minutes Today’s agenda
21
Overview Configuration Implementation Kruchten, Chapter 17 Hardest Part
22
Configuration Configure for organization/organizational unit Configure for project
23
Why is Implementation so hard? Process change affects behavior Target audience lacks time Not a “sexy” topic
24
Kruchten’s Implementation Steps 1.Assess the current state 2.Set (or revise) goals 3. Identify risks 4.Plan the process implementation 5.Execute the process implementation Current process New process Completely Implemented 6.Evaluate the process implementation
25
Kruchten’s Implementation Steps Current process New process Completely Implemented 1.Assess the current state 2.Set (or revise) goals 3. Identify risks 4.Plan the process implementation 5.Execute the process implementation 6.Evaluate the process implementation
26
1. Assess the current state AssetsDeploymentUsage Bus. Modeling Requirements Analysis & Design etc. One approach to assessment: Look at assets, deployment of assets, and usage of assets Scorecard/Gap Analysis
27
1. Assess the current state Assets: Do we have good stuff? Deployment: Do people know about the assets? Do people know what to do with the assets? Usage: Are people using the assets on projects?
28
Technology Process People 1. Assess the current state The focus of SE 470 is the process component of software engineering SE 470
29
Technology Process People 1. Assess the current state Methodology introduces new capability into targeted units
30
Technology Process People 1. Assess the current state People and Technology elements must be addressed also Ownership/Sponsorship Motivation Rewards/Incentives Training Physical work environment Roles, reporting relationships Performance measurement
31
Technology Process People 1. Assess the current state People and Technology elements must be addressed also Tools Standards Reusable components Alignment with other frameworks
32
Kruchten’s Implementation Steps Current process New process Completely Implemented 1.Assess the current state 2.Set (or revise) goals 3. Identify risks 4.Plan the process implementation 5.Execute the process implementation 6.Evaluate the process implementation
33
Kruchten’s Implementation Steps Current process New process Completely Implemented 1.Assess the current state 2.Set (or revise) goals 3. Identify risks 4.Plan the process implementation 5.Execute the process implementation 6.Evaluate the process implementation
34
Elements of an Implementation Plan Sponsorship Marketing & Communication Education & Training Coordination with other initiatives Rollout schedule Support Metrics
35
Elements of an Implementation Plan Sponsorship – Executive level – Visibility – Accountability
36
Elements of an Implementation Plan Marketing & Communication – Need to be aware of where target audience is: -- Misinformed -- Unaware -- Aware -- Understand -- Believe -- Action – Err on side over-communication – Relate to business performance objectives – Types of materials? (discuss)
37
Elements of an Implementation Plan Education & Training – Train-the-Trainer – Rollout training (one-time event) -- For the unwashed masses -- “Retread” training – Ongoing training curriculum – Levels to target -- User -- Developer -- Manager -- Executive
38
Elements of an Implementation Plan Coordination with other initiatives – Align vocabulary, practices – Examples: -- Performance evaluations -- IT strategy – Allow others to “invoke” methodology -- Analogous to Microsoft publishing API’s in a Software Developer Kit (SDK)
39
Elements of an Implementation Plan Rollout schedule –Incremental approach recommended –Pilot is usually a good idea -- Shake out -- Success story will help with takeup by others -- Especially critical if risks are great -- “the most effective way to introduce process and tools”
40
Elements of an Implementation Plan Support – Local experts – Central help desk – Need to capture feedback (“experience factory”) -- Fixes -- Enhancements -- Innovations
41
Elements of an Implementation Plan Metrics – Training – Awareness – Usage – Local experts time allocation – Help desk requests – Errors/Enhancements
42
Technology Process People 4. Plan the process implementation Methodology introduces new capability into targeted units
43
Kruchten’s Implementation Steps Current process New process Completely Implemented 1.Assess the current state 2.Set (or revise) goals 3. Identify risks 4.Plan the process implementation 5.Execute the process implementation 6.Evaluate the process implementation
44
Kruchten’s Implementation Steps Current process New process Completely Implemented 1.Assess the current state 2.Set (or revise) goals 3. Identify risks 4.Plan the process implementation 5.Execute the process implementation 6.Evaluate the process implementation
45
Kruchten’s Implementation Steps Phase 1 Phase 2Phase 3Phase 4 Implementing a process is a project The group of people working on implementing the process should be dedicated
46
Implementation Key Success Factors Involve systems developers in assessing current process Implement appropriate tools –Software development tools –Methodology related tools configuration/customization browsing estimating project planning/management workflow management Communicate, communicate, communicate Executive support Positive track record Incremental/Iterative implementation of methodology –For XP, start with testing or planning
47
Usual Causes of Implementation Failure Lack of visible leadership/sponsorship Lack of adequate training Lack of effective communication Death by 1000 initiatives New/Changed roles not implemented Fail to account for different information needs of “planners” and “doers” – Too detailed for planners – Not enough detail for doers
48
Topic Duration Recap15 minutes Who reads methodology and why30 minutes Deployment, adoption, use45 minutes *** Break10 minutes Deployment, adoption, use (cont.)45 minutes Term Project10 minutes Quiz40 minutes Today’s agenda
49
Term Paper Summary: A briefing on a significant, currently relevant software development methodology or process-related framework not covered in class Deliverables: Paper Presentation and Discussion (30 minutes) Topic Ideas: SCRUM Feature Driven Development Adaptive Software Development Crystal SEI Team Software Process SEI Personal Software Process
50
Term Paper Paper Outline: 1.Abstract 2.Historical Background 3.Description Philosophy/Principles Components Benefits 4.Usage Guidelines When to use/avoid Success factors/Challenges 5.Marketplace Analysis Key Players/Products/Gurus Market data/forecasts 6.References Books, articles, web sites Need to interview a practitioner and/or faculty member
51
Topic Duration Recap15 minutes Who reads methodology and why30 minutes Deployment, adoption, use45 minutes *** Break10 minutes Deployment, adoption, use (cont.)45 minutes Term Project10 minutes Quiz40 minutes Today’s agenda
52
CMM Assignment 3 Topics for May 12
53
Extra Slides
54
Rational Unified Process
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.