• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Software Project Management - Introduction and fundamentals
 

Software Project Management - Introduction and fundamentals

on

  • 1,800 views

The introductory lesson to my Planning and Managing Software Projects (http://emanueledellavalle.org/Teaching/PMSP-2011-12.html) course at Politecnico di Milano

The introductory lesson to my Planning and Managing Software Projects (http://emanueledellavalle.org/Teaching/PMSP-2011-12.html) course at Politecnico di Milano

Statistics

Views

Total Views
1,800
Views on SlideShare
1,710
Embed Views
90

Actions

Likes
0
Downloads
40
Comments
0

1 Embed 90

http://emanueledellavalle.org 90

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Software Project Management - Introduction and fundamentals Software Project Management - Introduction and fundamentals Presentation Transcript

    • Planning and Managing Software Projects 2011-12Session 1Course OverviewIntroduction, and FundamentalsEmanuele Della Vallehttp://emanueledellavalle.org
    • Credits 2§  This slides are largely based on Prof. John Musser class notes on Principles of Software Project Management§  Original slides are available at http://www.projectreference.com/§  Reuse and republish permission was granted Planning and Managing Software Projects – Emanuele Della Valle
    • Today 3§  Course basics, administrative items§  Introductions§  Fundamentals Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsSyllabus Review 4§  URL •  http://emanueledellavalle.org/Teaching/PMSP-2011-12.html§  Schedule •  Monday 10.15 - 12.15 (13.15 when explicitly stated) –  If you agree, I would do 10.30-12.00 when we use 2 hours and 10.30-11.45 + 12.00–13.00 when we use 3 hours •  Wednesday 13.15 – 15.15 –  If you agree, I would do 13.30-15.00§  Content •  See next slide§  Homework assignments •  We will simulate the early phases of a software project •  See slide after the next one§  Optional Readings •  They illustrate the content of the upcoming lesson, useful for discussion Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsSyllabus Review 5§  URL •  http://emanueledellavalle.org/Teaching/PMSP-2011-12.html§  Schedule •  Follows project phases •  Goal: –  walk away from this course with skills applicable to all forms of projects –  but software and IT projects in particular, because they have special characteristics -  I will bring in show & tell from my past/current projects -  It would be nice if you bring in discussions in relation to your projects Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsSyllabus Review – Homework Assignments 6§  Why •  Apply, in a simplified context, some of the points presented in class •  Develop project related capabilities •  Develop teamwork ability§  What •  Homework 1 (7 points) –  Statement of Work for your project •  Homework 2 (7 points) –  Initial Work Breakdown Structure (WBS) for your project •  Homework 3 (4 points) –  Software Factory set-up for your project •  Homework 4 (15 points) –  Develop a final project plan in MS Project (including durations, resources, links, successors & predecessors) for your project Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsSyllabus Review – Homework Assignments 7§  How •  work in team (up to 3 people) •  Working alone is possible, but you should believe in –  “If you want something done, do it yourself” –  “Chi fa da se, fa per tre”§  When •  Homework 1 – class 5 – 26.3.2012 •  Homework 2 – class 9 – 16.4.2012 •  Homework 3 – class 20 – 18.6.2012 •  Homework 4 – Final review – 20.6.2012 Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsSyllabus Review – Textbooks 8§  Recommended texts (not mandatory) •  These provide two very different viewpoints –  In-the-trenches vs. PMI textbook perspective –  Rapid Development , Steve McConnell -  http://www.stevemcconnell.com/rd.htm –  Information Technology Project Management , Kathy Schwalbe -  http://www.kathyschwalbe.com/§  More reading •  Quality Software Project Management , D. Shafer –  http://books.google.com/books?id=YYFEqNz7oKcC&printsec=frontcover •  Software Project Survival Guide , Steve McConnell –  http://www.stevemcconnell.com/sg.htm •  Peopleware , T. DeMarco and T. Lister –  http://en.wikipedia.org/wiki/ Peopleware:_Productive_Projects_and_Teams Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsSyllabus Review – Exams 9§  For those that follow the classes •  Mid-term review: 2.5.2012 •  Final review: –  tentatively scheduled for 20.6.2012 –  1st exam session in the summer§  For those that do not follow the classes •  Any session will do •  The exam consists of a mid-term and a final review •  Homework assignments must be delivered one week head the exam session Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsBasics 10§  Essential elements of software project management§  Practical, rapid development focus§  Real-world case studies •  And other examples like job interviews§  Highly interactive§  Small class == large input§  Dry as toast? Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsMy Background 11§  10+ years, +50 projects §  Engineer, team lead, project manager, program manager§  Projects of all shapes and sizes •  90% in research 10% for industries •  20% lasting 2-3 years 80% lasting 2-6 weeks •  I’ve seen the spectrum of types and sizes of IT projects§  Areas of expertise •  Web –  Semantic Web –  Web Services –  Web 2.0 –  Search Engines •  Information System Integration –  Service Oriented Architecture –  Business Process Management •  Knowledge Management Systems –  Information Portals –  Semantic Search§  Application sectors: mobile, social media, open data, healthcare, government, b2b Planning and Managing Software Projects – Emanuele Della Valle
    • Course basics, administrative itemsMy Background – My Last Project 12 http://www.youtube.com/watch?v=XGOKe_lhSks Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionThe Field 13§  Jobs: where are they? •  http://www.linkedin.com PM vs. Developers§  Professional Organizations •  Project Management Institute (PMI) (pmi.org) •  Software Engineering Institute (SEI) •  IEEE Software Engineering Group§  Certifications •  PMI PMP –  http://en.wikipedia.org/wiki/Project_Management_Professional§  The PMBOK – PMI Body of Knowledge§  Tools •  MS Project –  Available in A3.3 where we will go for class 6 –  http://office.microsoft.com/project •  Other similar tools –  http://en.wikipedia.org/wiki/List_of_project_management_software Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionThe Field Part 2 14§  Average PM salary $81,000 (in USA)§  Contract rates for PM s can match techies§  PMI certification adds avg. 14% to salary§  PMI certs •  1993: 1,000 •  2002: 40,000 •  2011: 300,000§  Other cert: CompTIA Project+§  Links: http://www.projectreference.com/#Certification Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionJob Fundamentals 15§  Skills required§  PM Positions and roles§  The process Planning and Managing Software Projects – Emanuele Della Valle
    • Introduction - Job FundamentalsProject Management Skills 16§  Leadership§  Communications§  Problem Solving§  Negotiating§  Influencing the Organization§  Mentoring§  Process and technical expertise Planning and Managing Software Projects – Emanuele Della Valle
    • Introduction - Job FundamentalsProject Manager Positions and Roles 17§  Project Administrator / Coordinator§  Assistant Project Manager§  Project Manager / Program Manager§  Executive Program Manager§  V.P. Program Development Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionLet’s Do a Pico-Project in the Next 30 minutes 18§  What •  Make a paper airplane including instruction to throw it •  Maximizes: –  The range: -  the farther I can throw it (reading the instruction), the better it is –  The aesthetics: -  You will vote§  How •  Work in team of 3-4 people •  Use an A4 paper and (optionally) a clip •  You can draw whatever you like on the surface Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionSoftware Project Management 19 Management Project Management Software Project Management Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionPM History in a Nutshell 20§  Birth of modern PM: Manhattan Project (the bomb) •  See http://en.wikipedia.org/wiki/Manhattan_Project –  employed more than 130,000 people and cost nearly $2 billion ($24 billion in 2008 dollars)§  1970 s: military, defense, construction industry were using PM software§  1990 s: large shift to PM-based models •  1985: Total quality management •  1990-93: Re-engineering, self-directed teams •  1996-99: Risk mgmt, project offices •  2000: Merge & Acquisition, global projects Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionProject Management 21§  What s a project?§  PMI definition •  A project is a temporary endeavor undertaken to create a unique product or service –  Temporary -  Can be years -  Result can be lasting -  Team can be temporary –  Unique -  Ex: thousands of buildings, but each is unique§  Progressively elaborated •  With repetitive elements •  Scope should be constant even as elaboration happens§  A project manager •  Analogy: conductor, coach, captain Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionProject vs. Program Management 22§  What s a program ?§  Mostly differences of scale§  Often a number of related projects§  Longer than projects§  Definitions vary§  Ex: Program Manager for OpenOffice Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionInteractions / Stakeholders 23§  As a PM, who do you interact with?§  Project Stakeholders •  Project sponsor •  Executives •  Team •  Customers •  Contractors •  Functional managers§  Managing all stakeholder Expectations is challenging •  conflict Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionPM Tools: Software 24§  Low-end •  Basic features, tasks management, charting •  A spreadsheet can do, Milestones Simplicity§  Mid-market •  Handle larger projects, multiple projects, analysis tools •  MS Project (approx. 50% of market) •  OpenProj (valid opensource alternative)§  High-end •  Very large projects, specialized needs, enterprise •  AMS Realtime http://www.amsrealtime.com/ •  Primavera Project Manager http://www.primavera.com/ (acquired by Oracle in 2009) Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionTools: Gantt Chart 25 Planning and Managing Software Projects – Emanuele Della Valle
    • IntroductionTools: Network Diagram 26 Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsPMI s 9 Knowledge Areas 27§  Project integration management§  Scope§  Time§  Cost§  Quality§  Human resource§  Communications§  Risk§  Procurement§  NOTE: more in next class Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsFirst Principles 28§  One size does not fit all!§  Patterns and Anti-Patterns (see Classic Mistakes in class 2)§  Spectrums •  Project types •  Sizes •  Formality and rigor§  Project are like families, each dysfunctional in it s own special way Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsOur Pattern: Rapid Development 29§  Faster delivery§  Reduced risk§  Increased visibility to customer§  Don t forsake quality Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsRapid Development Strategy 30McConnell refers to four Pillars§  Classic Mistake Avoidance§  Development Fundamentals§  Risk Management§  Schedule-Oriented Practices Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsFour Project Dimensions 31§  People§  Process§  Product§  Technology Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsTrade-off Triangle 32§  Fast, cheap, good. Choose two. Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsTrade-off Triangle 33 §  Know which of these are fixed & variable for every project Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsComics 34Source: http://geekandpoke.typepad.com/geekandpoke/2009/11/thats-why-we-love-this-job.html Planning and Managing Software Projects – Emanuele Della Valle
    • Fundamentals – Four DimensionsPeople 35§  It s always a people problem - Gerald Weinberg, The Secrets of Consulting§  Developer productivity: 10-to-1 range •  Read more: http://forums.construx.com/blogs/stevemcc/archive/ 2008/03/27/productivity-variations-among-software- developers-and-teams-the-origin-of-quot-10x-quot.aspx§  Improvements: •  Team selection •  Team organization •  Motivation Planning and Managing Software Projects – Emanuele Della Valle
    • Fundamentals – Four DimensionsPeople 2 36Other success factors§  Matching people to tasks§  Career development§  Balance: individual and team§  Clear communication Planning and Managing Software Projects – Emanuele Della Valle
    • Fundamentals – Four DimensionsProcess 37§  Is process stifling?§  2 Types: •  Management •  Technical§  Why processes? •  cut time-to-market •  Improve quality§  How? •  Development fundamentals •  Quality assurance •  Risk management •  Lifecycle planning§  Avoid abuse by neglect Planning and Managing Software Projects – Emanuele Della Valle
    • Fundamentals – Four DimensionsThe Most Important Process 38§  Customer orientation§  Foster maturity improvement§  Rework avoidance Planning and Managing Software Projects – Emanuele Della Valle
    • Fundamentals – Four DimensionsProduct 39§  The tangible dimension§  Product size management§  Product characteristics and requirements§  Feature creep management Planning and Managing Software Projects – Emanuele Della Valle
    • Fundamentals – Four DimensionsA Word on Technology 40§  Often the least important dimension§  Language and tool selection§  Value and cost of reuse Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsPlanning 41§  Determine requirements§  Determine resources§  Select lifecycle model§  Determine product features strategy Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsTracking 42§  Cost, effort, schedule§  Planned vs. Actual§  How to handle when things go off plan? Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsMeasurements 43§  To date and projected •  Cost •  Schedule •  Effort •  Product features§  Alternatives •  Earned value analysis •  Defect rates •  Productivity, e.g., Source Line of Code (SLOC) •  Complexity, e.g., function points Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsTechnical Fundamentals 44§  Requirements§  Analysis§  Design§  Construction§  Quality Assurance§  Deployment Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsProject Phases 45§  All projects are divided into phases§  All phases together are known as the Project Life Cycle§  Each phase is marked by completion of Deliverables§  Identify the primary software project phases Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsLifecycle Relationships 46 Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsSeven Core Project Phases 47 Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsProject Phases A.K.A. 48 Planning and Managing Software Projects – Emanuele Della Valle
    • FundamentalsPhases Variation 49 Concept Exploration System Exploration Requirements Design Implementation Installation Operations and Support Maintenance Retirement Planning and Managing Software Projects – Emanuele Della Valle