1 Intro
-
Upload
tuomasniinimaki -
Category
Documents
-
view
890 -
download
1
description
Transcript of 1 Intro
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
T-76.5612 Software Project Management Spring 2010
1: Introduction
Tuomas Niinimäki
Department of Computer Science and Engineering Helsinki University of Technology
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Why software projects are interesting to you?
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course contents What is a software project? Constraints, goals and types of a software project Software processes in software project management Software project estimation Budgeting, scheduling and monitoring software project Software quality and risk management Leadership and management in software projects Distributed software development
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course goals After taking this course, one should be able to
apply different project types and frameworks to project goals create a budget and schedule for a small-scale software project apply sound software project monitoring practices in a small-scale
software project apply most common software process models to a small-scale
software project evaluate the applicability of software estimation practices in typical
software engineering contexts reflect the software quality requirements to project constraints understand the basics of risk management in software project
management find and critically assess additional material for supporting the
software project management work
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
“The one correct answer” does not exist!
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course overview (1/2) First part of the course is “theoretically” oriented
Lectures 1-8 provide basic insights into essential software project management issues
Assignments 1 and 2 help you to apply some of the practices presented on the lectures
Course exam is based on contents from the first part
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course overview (2/2) Second part of the course: “the Reality”
Lectures 9-14 are visiting lectures given by people from industry - contents vary, but reflect the true context of software engineering and software project management
Assignments 3 and 4 are based on real industrial case
Lecture summaries are written from lectures of the second part
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Important dates and times (1/3) Lectures:
Tuesdays 16-18 at lecture hall T5 Thursdays 16-18 at lecture hall T3
First part consists of lectures given by course personnel January 19th – February 11th Cover various aspects of software project management
Second part lectures are given by guest speakers from industry February 16th – March 4th Experience reports, useful insights, how things really work
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Important dates and times Exams:
March 8th 9-12 at lecture hall T1 (optionally, February 6th 10-13 at the main building)
Required material for exams: Lectures 1-8 (i.e. those given by course personnel) Reading material from Noppa
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course personnel Teacher: Tuomas Niinimäki Course assistant: Peitsa Hynninen
Website: https://noppa.tkk.fi/noppa/kurssi/t-76.5612/etusivu Any updates, changes to schedule or deadlines will be
announced at Noppa Email address: [email protected]
To ensure timely answer to your question, please use the course email address instead of personal email addresses
Twitter: #t765612 You’re encouraged to share interesting articles, links, other
material
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course prerequisites T-76.3601 Basics of Software Engineering
Basic software development methods, concepts, terminology and discourse
TU-22.1120 Introduction to Project Management Basic project management methods, concepts, terminology
and discourse
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course material Reading material
No coursebook Collection of articles from Noppa
Lectures Slides will be available in PDF form at Noppa Lecture recordings (slides+audio) will be available at Noppa
Exercises Noppa
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Course requirements To pass the course, you need to do ALL of the following
Pass the exercises (50% of max. points) Pass the exam (50%) based on 1st part of the course Pass the lecture summaries (50%) from 2nd part of the
course Give course feedback
You may earn extra points (max 10pt) by attending the lectures (1 pt / lecture)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Exercises Exercises 1 and 2 are individual work Lecture summaries are individual work Exercises 3 and 4 are made in groups of 1-4 people
You may use newsgroup opinnot.tik.tik76612 to find your group
Templates will be given to all exercises Exercises must be submitted in DOC or PDF format in Finnish, Swedish or
English
Deadlines are absolute and strict! Always Thursday at 12:15 Dates: 11.2.2010, 18.2.2010, 11.3.2010, 11.3.2010
More information about exercises is available at course web page
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Exam Exams:
March 8th 9-12 at lecture hall T1 (optionally, February 6th 10-13 at the main building)
Required material for exams: Lectures 1-8 (i.e. those given by course personnel) Reading material from Noppa
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Lecture summaries Purpose:
To teach you to find and briefly summarize the most important points presented during the lecture
To teach you to be critical, to analyse and evaluate different sources
0-5 points per lecture summary, points from 5 best lecture summaries summed -> max 25 points
5 points per summary requires A good summary of the main points from the lecture Discussion and comparison to reading material, other articles,
lectures, other visiting lecturers, your own opinions Critical thinking Proper referencing of the sources
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Lecture summaries from seminar Global Software Development: Towards an Agile and Lean
Future Wednesday February 17th at 12:30-17:30 @ Dipoli Congress Centre, Espoo http://www.soberit.hut.fi/mapit/seminar2010/
By participating this seminar and writing one larger summary about the whole seminar, you may earn max 10 points (= equals two guest lecture summaries)
To participate, please register via http://dy.fi/zq6 (URL also available at Noppa), DL February 11th @ 18:00!
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Grading Exercises: 50 points (to pass you need 25 points)
Exercise 1: 10 p (individual) Exercise 2: 10 p (individual) Exercise 3: 13 p (group) Exercise 4: 17 p (group)
Exam: 25 p (to pass you need 12 points) Lecture summaries: 25 p (to pass you need 12 points) Extra points (to pass you need 0 points)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Grading
Points Grade
0.00-47.99 0
48.00-54.99 1
55.00-64.99 2
65.00-74.99 3
75.00-84.99 4
85.00- 5
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
What must / should you do now? Register to the course in OODI Register to the exam in OODI Read through the course web pages
Information on exercises! Reading material!
Subscribe to course news (either email or RSS) Keep track of time you spend on this course
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
More information available at the course web page:
https://noppa.tkk.fi/noppa/kurssi/t-76.5612/etusivu
If you can’t find answer there, send email to
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Introduction to software project management
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
What is a project?
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
What is a project? A project is a temporary endeavor undertaken to create a unique
product or service A project has a definitive beginning and a definitive end Specific objectives are to be met or a specific product is to be
created
Work is carried out for someone else than yourself Resources available for use on the project are constrained A project has goals, schedule, resources and budget
(PMBOK 1996)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Why there is a course on software project management?
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Is software project management special?
Many techniques of general project management are applicable to software project management Software development projects are often very hard to
manage
Software differs from many other deliverables, because of its Invisibility Complexity Conformity Flexibility
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Software project management is special
Problem of specifying the exact requirements in the beginning Project planning and estimation is difficult
High productivity differences between individuals 1:10 differences typical, even 1:50 reported
A lot of changes – their effect on the system often unknown Software complexity still increases rapidly
Division of tasks - adding workforce in late phase can be harmful Software development is communication intensive activity
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
What is a software project?
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Project types Project target
One-of-kind customer specific systems Completely new software products New versions of software products New features or improvements to old systems
Project scope Requirements elicitation project Feasibility study project Pilot / prototyping project
Project organization Intra-organizationally distributed Using software subcontractors Using ready-made components Developing open-source software
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Project constraints Projects have constrains:
resources time scope
Often one or two are more important than the others, e.g. Time to market Basic functionality
Let everybody know which ones are the most important!
Time
Resources
Scope
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Who are involved in a software project?
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Project stakeholders Different parties have different interests in the software project
Motivations and objectives must be recognized, and taken into account when planning and executing the project
Project stakeholders can be Internal (the project team) External to the project team but within the same organization
E.g. marketing department External to both the project team and the organization
E.g. end users, customers, subcontractors
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Different viewpoints on a project
Project X Temporary organization
Collection of products
Sequence of work to be done
€ $£
Cost / Benefit
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
How software projects are performing?
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
28% (34%)
23% (15%)
49% (51%)
ChallengedSucceededFailed
Software project success rates 2000 (2003)
Successful: on time, on budget, all features
Challenged: Completed and operational, but over-budget, over time, fewer features
Failed: Cancelled
(Standish Group, based on US data)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Failure statistics – Improvements? Average cost overrun 189 % (1994)->45 % (2000)-> 43% (2003) Average time overrun 222% (1994)->63 % (2000)-> 82% (2003) On average 61 % (1994) of required features were delivered -> 67
% (2000) -> 52% (2003)
0
50
100
150
200
250
Average costoverrun
Average timeoverrun
Reguiredfeatures delivered
%
1994
2000
(Standish Group, based on US data)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Reasons for success and failure
Reasons for failure: “Most projects failed for lack
of skilled project management and executive support”
“Underestimating project complexity and ignoring changing requirements are basic reasons why projects fail”
“The problem – and the solution – lay in people and processes”
Recipe for success: Smaller project size and
shorter duration More manageable
“Growing”, instead of “developing”, software engages the users earlier and confers ownership. -> Iterative and
interactive process
(Standish Group, based on US data)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Classic mistakes - People
Undermined motivation Weak personnel Uncontrolled problem
employees Heroics Adding people to a late
project Noisy, crowded offices Friction between
developers and customers
Unrealistic expectations
Lack of effective project sponsorship
Lack of stakeholder buy-in Lack of user input Politics placed over substance Wishful thinking
(Steve McConnell 1996)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Classic mistakes - Process
Overly optimistic schedules
Insufficient risk management
Contractor failure Insufficient planning Abandonment of planning
under pressure Wasted time during the
fuzzy front end Shortchanged upstream
activities
Inadequate design Shortchanged quality
assurance Insufficient management
controls Premature or overly
frequent convergence Omitting necessary tasks
from estimates Planning to catch up later Code-like-hell
programming
(Steve McConnell 1996)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Classic mistakes - Product&Technology
Product Requirements gold-
plating Feature creep Developer gold-plating Push-me, pull-me
negotiation Research-oriented
development
Technology Silver-bullet syndrome Overestimated savings
from new tools or methods
Switching tools in the middle of a project
Lack of automated source-code control
(Steve McConnell 1996)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Advice and good practices Be aware of the classic mistakes Create lists of “worst practices” to avoid in the future projects Conduct postmortems to learn from your team’s mistakes and
add to the list Encourage other projects within your organization to conduct
postmortems so that you can learn from their mistakes Exchange war stories with your colleagues in other organizations
and learn from their experiences Display your list of mistakes prominently so that people will see
it and learn not to make the same mistakes yet another time
(Steve McConnell 1996)
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
What must / should you do now? Register to the course in OODI Register to the exam in OODI Read through the course web pages
Information on exercises! Reading material!
Subscribe to course news (either email or RSS) Keep track of time you spend on this course
SoberIT Software Business and Engineering Institute
HELSINKI UNIVERSITY OF TECHNOLOGY
Thank you.
Questions?
Tuomas Niinimäki