1 Software Project Management Development Management.

Slides:



Advertisements
Similar presentations
Project Scope Management (Day 2)
Advertisements

Systems Development Environment
Systems Analysis and Design in a Changing World
Chapter 8: Evaluating Alternatives for Requirements, Environment, and Implementation.
Software Process Models
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 3.1.
CSCU 411 Software Engineering Chapter 2 Introduction to Software Engineering Management.
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Project Perfect Pty Ltd Project Administrator Overview of Software.
Q7503, Principles of Project Management, Fall Software Project Management Session 6: MS-Project Intro & Mid-term Exam.
Q7503, Fall Software Project Management Session 9: Project Control.
University of Southern California Enterprise Wide Information Systems Instructor: Richard W. Vawter.
CATEGORIES OF INFORMATION There are three main categories of business information,and these are related to the purpose for which the information is utilized.
SYSTEMS DEVELOPMENT Phases, Tools, and Techniques
Fundamentals of Information Systems, Second Edition
Team Models Two early philosophies –Decentralized/democratic –Centralized/autocratic Variation –Controlled Decentralized
Chapter 3: The Project Management Process Groups
Chapter 5: Project Scope Management
8 Systems Analysis and Design in a Changing World, Fifth Edition.
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Management Adrian Marshall.
Q7503, Fall Software Project Management Session 8: Development Management.
Project Scope Management
Project Management and Scheduling
Copyright © Software Process Group 1 Software Process Group Microsoft Project Tutorial Steve Meyers
Advanced Project Management Project Plan Templates
Q7503, Fall Software Project Management Session 9: Project Control MS Project.
Copyright Course Technology 1999
CC20O7N - Software Engineering 1 CC2007N Software Engineering 1 Requirements Engineering Practices with Techniques.
Roles and Responsibilities
Requirements Analysis
Project ManagementDay 1 in the pm Project Management (PM) Structures.
ITEC224 Database Programming
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
BUSINESS PLUG-IN B15 Project Management.
Final Exam Review June 2, 2011SE 477: Final Review1/19.
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
Recap from last week Understand organizations, including the four frames, organizational structures. Explain why stakeholder management and top management.
Scope Planning Chapter 6 Contemporary Project Management Kloppenborg © 2012 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated,
Becoming a Great Project Manager Gini Courter Annette Marquis TRIAD Consulting.
Basic of Project and Project Management Presentation.
Chapter 12: Systems Investigation and Analysis. Agenda  How to Develop a CBIS?  Systems Development Life Cycle (SDLC)  Prototyping  Join Application.
IT Requirements Management Balancing Needs and Expectations.
Software Requirements Engineering: What, Why, Who, When, and How
Chapter 6: Systems Development Steps, Tools, and Techniques Management Information Systems for the Information Age.
Strong9 Consulting Services, LLC 1 PMI - SVC I-80 Breakfast Roundtable Monthly Meeting Thursday, October 12, :00 am – 9:00 am.
INFO 637Lecture #51 Software Engineering Process II Defining Requirements INFO 637 Glenn Booker.
Ahmad Al-Ghoul. Learning Objectives Explain what a project is,, list various attributes of projects. Describe project management, discuss Who uses Project.
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
Dr. Nguyen Hai Quan Phone:
Develop Project Charter
Fundamentals of Information Systems, Second Edition 1 Systems Development.
CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard.
BSBPMG501A Manage Project Integrative Processes Manage Project Integrative Processes Project Integration Processes – Part 1 Diploma of Project Management.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
1 Software Project Management Session 6: MS-Project Intro & Mid-term Exam.
Introduction to Project Management.  Explain what a project is?  Describe project management.  Understand project management framework.  Discuss the.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Chapter 3 Managing the Information Systems Project 3.1.
Project Setup and Execution For PMPlan Enterprise Presented by AlNik Solutions Copyright ©
An Agile Requirements Approach 1. Step 1: Get Organized  Meet with your team and agree on the basic software processes you will employ.  Decide how.
Project Management Why do projects fail? Technical Reasons
1 Project Management C13PM Session 2 Project Initiation & Definition Russell Taylor Business Department Staff Workroom
Final Review Systems Analysis and Design in a Changing World, 4th Edition 1 Final Review u Chapters 1-6, 8-10, 13, 14, 15 u Multiple choice, short answer,
Information Technology Project Management, Seventh Edition.
Systems Analysis and Design in a Changing World, Fifth Edition
Microsoft Project 101: How to Build a Project Plan
Systems Analysis – ITEC 3155 Evaluating Alternatives for Requirements, Environment, and Implementation.
PROJECT MANAGEMENT Bill Biddle.
Project Management Process Groups
Project Management Chapter 11.
Software Project Management
Presentation transcript:

1 Software Project Management Development Management

2 Project Roles –Programmers (system engineers) Technical lead, architect, programmer, Sr. programmer –Quality Assurance (QA) engineers (testers) QA Manager, QA Lead, QA staff –DBAs DB Administrator, DB Programmer, DB Modeler –CM engineers (build engineers) –Network engineers, System Administrators –Analysts (business analysts) –UI Designers –Information Architects –Documentation writers (editors, documentation specialist) –Project manager –Other –Security specialist, consultants, trainer

3 Project Roles You need to decide which of these are necessary for your class project Depends on what you’re building How big is it? Is it UI intensive? Data intensive? Are you installing/managing hardware? Do you need to run an operations center? Is it in-house, contract, COTS (Commercial Off The Shelf), etc? Depends on your budget

4 Staffing Profile Projects do not typically have a ‘static team size’ Who and how many varies as needed Copyright: Rational Software 2002

5 Roll-on & Roll-off PM must have a plan as to how & when Roll-on –Hiring or ‘reserving’ resources –Ramp-up time Learning project or company Roll-off –Knowledge transfer –Documentation –Cleanup

6 Staffing Management Plan Part of Software Development Plan Includes –What roles needed, how many, when, who –Resource assignments –Timing: Start/stop dates –Cost/salary targets (if hiring) Project Directory –Simply a list of those involved with contact info. Team size: often dictated by budget as often as any other factor

7 Team Structure 1 st : What’s the team’s objective? –Problem resolution Complex, poorly-defined problem Focuses on 1-3 specific issues Ex: fixing a showstopper defect Sense of urgency –Creativity New product development –Tactical execution Carrying-out well-defined plan Focused tasks and clear roles

8 Team Models Two early philosophies –Decentralized/democratic –Centralized/autocratic Variation –Controlled Decentralized

9 Team Models Business Team –Most common model –Technical lead + team (rest team at equal status) –Hierarchical with one principal contact –Adaptable and general –Variation: Democratic Team All decisions made by whole team See Weinberg’s “egoless programming” model

10 Team Models Chief-Programmer Team From IBM in 70’s –See Brooks and Mythical Man-Month a.k.a. ‘surgical team’ Puts a superstar at the top –Others then specialize around him/her »Backup Programmer »Co-pilot or alter-ego »Administrator »Toolsmith »“Language lawyer” Issues »Difficult to achieve »Ego issues: superstar and/or team Can be appropriate for creative projects or tactical execution

11 Team Models Skunkworks Team –Put a bunch of talented, creative developers away from the mother ship Off-site literally or figuratively –Pro: Creates high ownership & buy-in –Con: Little visibility into team progress –Applicable: exploratory projects needing creativity Not on well-defined or narrow problem

12 Team Models SWAT Team Highly skilled team Skills tightly match goal Members often work together Ex: security swat team, Oracle performance team

13 Team Models Large teams –Communication increases multiplicatively Square of the number of people 50 programmers = 1200 possible paths Communication must be formalized –Always use a hierarchy –Reduce units to optimal team sizes Always less than 10

14 Team Size What is the optimal team size? 4-6 developers –Tech lead + developers Small projects inspire stronger identification Increases cohesiveness QA, ops, and design on top of this

15 Hiring “Hire for Trait, Train for Skill” Look for: “Smart, Gets Things Done” –For programmers, see joelonsoftare’s “Guerilla Guide to Interviewing”Guerilla Guide to Interviewing Balance the team

16 Responsibility Assignment Matrix A resource planning tool Who does What Can be for both planning and tracking Identify authority, accountability, responsibility Who: can be individual, team or department Can have totals/summary at end of row or column (ex: total Contributors on a task)

17 Simple RAM

18 Sample RAM With Stakeholders

19 Skills Matrix Another resource planning tool Resources on one axis, skills on other Skills can high level or very specific Cells can be X’s or numeric (ex: level, # yrs.)

20 Capability Maturity Model: CMM A software process framework “Process determines capability” 5 ‘maturity’ levels ‘Evolutionary plateaus’ to a mature software process Each level has its own goals Organizations can be ‘certified’certified’ –Later to be used as a marketing or validation tool Links: SEI, Diagram, Levels, DrexelSEIDiagramLevelsDrexel

21 CMM Levels 1. Initial –‘Ad hoc’ process, chaotic even –Few defined processes –Heroics often required here 2. Repeatable –Basic PM processes For cost, schedule, functionality –Earlier successes can be repeated 3. Defined –Software & Mgmt. process documented –All projects use a version of org. standard

22 CMM Levels 4. Managed –Detailed metrics of process & quality –Quantitative control 5. Optimizing –Continuous process improvement –Using quantitative feedback

23 CMM Key Process Areas (KPA) Identify related activities that achieve set of goals India has more CMM level 4 & 5 companies than any other country –Why is that? Distribution of organizations over CMM levels

24 Tools Requirements Tools Design Tools Construction Tools Test Tools Maintenance Tools CM Tools

25 Tools Tools could save 10-25% on some projects –But that’s optimistic at best Choose tools to meet your needs No can guarantee you anything –They *may* help –Tools don’t control people, especially customers

26 Programming Languages Your projects: do you choose a language? Typically not the PM’s choice, but does effect you –Staffing requirements –Methodology –Tools and infrastructure

27 Requirements Requirements are capabilities and condition to which the system – more broadly, the project – must conform

28 Requirements Perhaps most important & difficult phase Shortchanging it is a ‘classic mistake’ Can begin with a Project Kickoff Meeting Can end with a Software Requirements Review (SRR) –For Sponsor and/or customer(s) approval

29 Why are Requirements so Important?

30 Requirements Characteristics & Issues –Conflict of interest: developer vs. customer –Potential tug-of-war: Disagreement on Features & Estimates Especially in fixed-price contracts –Frequent requirements changes –Achieving sign-off Project planning occurs in parallel

31 2 Types of Requirements –Functional (behavioral) –Features and capabilities –Non-functional (a.k.a. “technical”) (everything else) –Usability »Human factors, help, documentation –Reliability »Failure rates, recoverability, availability –Performance »Response times, throughput, resource usage –Supportability »Maintainability, internationalization –Operations: systems management, installation –Interface: integration with other systems –Other: legal, packaging, hardware

32 Requirements Must be prioritized Must-have Should-have Could-have (Nice-to-have: NTH) Must be approved

33 Requirements Used by many people for many purposes Purposes –Management: Yes, that’s what I funded –Users: Yeah, that’s what I need –Developers: Yes, that’s I will build

34 Requirements The “What” phase Inputs: SOW, Proposal Outputs: –Requirements Document (RD) a.k.a.Requirements Specification Document (RSD) Software Requirements Specification (SRS) –1 st Project Baseline –Software Project Management Plan (SPMP) –Requirements Approval & Sign-Off Your most difficult task in this phase

35 Requirements “There’s no sense being exact about something if you don’t even know what you’re talking about” John von Neumann “When the map and the territory don’t agree, always believe the territory”, taught to all Swedish army recruits

36 Requirements Gathering Techniques Interviews Document Analysis Brainstorming Requirements Workshops Prototyping Use Cases Storyboards There are more…

37 Interview Techniques –Best practice: use ‘context free’ questions A question that does not suggest a response High-level, early questions to obtain ‘global’ properties of the problem and solution Applicable to any project/product Get the ball rolling

38 Context-free Questions Process, product and meta questions Process –“Who is the client for project X”? –“What is a very successful solution really worth to the client”? –“What is the reason for this project”? Product –“ What problems does this system solve”? –“What problems could this system create”? Meta-questions –“Are these questions relevant”? –“Is there anyone else who can give useful answers”? –“Is there anything you want to ask me”?

39 Document Analysis Review of existing documents Business plans Market studies Contracts Requests for proposals (RFP) Statements of work (SOW) Existing guidelines Analyses of existing systems and procedures

40 Brainstorming Idea generation & idea reduction Typically via group meetings Generation Best practices Minimize criticism and debate –Editing occurs at end of meeting or later Aim for quantity Mutate or combine ideas Reduction best practices Voting with a threshold (N votes/person) Blending ideas Applying criteria Scoring with a weighting formula

41 Requirements Workshops Typically 1-5 days Who? Varies. Users & stakeholders Pros –Good for consensus building –Builds participant commitment –Can cost less than numerous interviews –Provide structure to capture and analysis process –Can involve users across organizational boundaries –Can help identify priorities and contentious issues JAD –A type of requirements workshop using a facilitator

42 Prototyping Quick and rough implementation Good communications mechanism Can be combined with other techniques such as JAD Issues: creating the mis-appearance that development is more complete than it actually is –See joelonsoftware’s “The Iceberg Secret Revealed”The Iceberg Secret Revealed

43 Use Cases Picture plus description Often misunderstood: the text is more important Diagrams Text structure Use case name and number (ID) Goal Pre-conditions Primary & secondary actors Trigger Description Business rules Open issues For good examples, see usecases.orgusecases.org

44 Storyboards Set of drawings depicting user activities Paper prototyping Drawing screens or processes

45 Requirements: Who? Customers and users (note: often not the same) Customers can be users, but rarely opposite Sometimes user constituencies need to be ‘found’ Subject matter experts Other stakeholders –Marketing, sales –Product managers

46 Other Requirements Tips Meetings –Treat them like a tool: design them –Boy scout motto: “Be Prepared” –As small as possible – but no smaller –Make it safe not to attend Publish an agenda before Publish a summary after –Generate a ‘related issues’ list –Can formal/informal, scheduled/ad-hoc

47 Other Requirements Tips Manage expectations –Don’t forget to ask people theirs –Listen –Make explicit otherwise implicit decisions PDA: Possibility, Deferred, Absolutely impossible Technical reviews –Requirements can be wrong by: inadequate or inaccurate Quantity & quality –Reviews help with the latter

48 Requirements Tools Starbase: CaliberRM Telelogic: DOORS Databases of requirements Displayable in various formats Optional requirements control metrics: –Requirements Stability IndexRequirements Stability Index To help manage feature creep and ‘vibration’

49 The MS-Project Process Move WBS into a Project outline (in Task Sheet) Add resources (team members or roles) Add costs for resources Assign resources to tasks Establish dependencies Refine and optimize Create baseline Track progress (enter actuals, etc.)

50 Project Overview This is a ‘quickie’ overview We will return to all of these steps individually over the next few weeks Sample project from McConnellproject

51 Project UI Views –Default is Gant Chart View 2 panes Task Sheet on left (a table) Gantt Chart on right –View Bar on far left

52 Project UI

53 Create Your Project File/New Setup start date Setup calendar –Menu: Project/Project Information –Often left with default settings –Hours, holidays

54 Enter WBS Outlining Sub-tasks and summary tasks Do not enter start/end dates for each Just start with Task Name and Duration for each Use Indent/Outdent buttons to define summary tasks and subtasks You can enter specific Start/End dates but don’t most of the time

55 Establish Durations Know the abbreviations –h/d/w/m –D is default Can use partial –.5d is a half-day task Elapsed durations Estimated durations –Put a ‘?’ after duration

56 Add Resources Work Resources –People Material Resources –Things –Can be used to track costs Ex: amount of equipment purshased –Not used as often in typical software project

57 Resource Sheet Can add new resources here –Or directly in the task entry sheet Beware of mis-spellings (Project will create near-duplicates) Setup costs –Such as annual salary (put ‘yr’ after ‘Std. Rate’)

58 Effort-Driven Scheduling MS-Project default Duration * Units = Work Duration = Work / Units (D = W/U) Work = Duration * Units (W = D*U) Units = Work / Duration (U = W/D) Adding more resources to a task shortens duration Can be changed on a per-task basis In the advanced tab of Task Information dialog box Task Type setting Beware the Mythical Man-month Good for laying bricks, not always so for software development

59 Link Tasks On toolbar: Link & Unlink buttons –Good for many at once Or via Gantt chart –Drag from one task to another

60 Milestones Zero duration tasks Insert task ‘normally’ but put 0 in duration

61 Make Assignments Approach 1. Using Task Sheet –Using Resource Names column –You can create new ones by just typing-in here 2. Using Assign Resources dialog box –Good for multiple resources –Highlight task, Tools/Resources or toolbar button 3. Using Task Information dialog –Resources tab 4. Task Entry view –View/More Views/Task Entry –Or Task Entry view on Resource Mgmt. toolbar

62 Save Baseline Saves all current information about your project –Dates, resource assignments, durations, costs

63 Fine Tune Then is used later as basis for comparing against “actuals” Menu: Tools/Tracking/Save Baseline

64 Project Editions: Standard, Professional, Server MS Project Server 2002 Upgrade of old “Project Central” Includes “Project Web Access”, web-based UI (partial) Workgroup and resource notification features Requires SQL-Server and IIS “Portfolio Analyzer” –Drill-down into projects via pivot tables & charts “Portfolio Modeler” –Create models and “what-if” scenarios SharePoint Team Services integration

65 Project 2002 MS-Project Professional –“Build Team” feature Skills-based resource matching –Resource Pools: with skill set tracking –Resource Substitution Wizard “Project Guide” feature –Customizable “process component”

66 MS-Project Q&A Your WBS in Project How did it go? Any questions?

67 Homework Reading: McConnell: Chapters (very short ones) Schwalbe: 6 “Project Cost Management” ( ), 9 “Project Communication Management”, 15 “Controlling” URL on class site about Earned ValueEarned Value

68 Questions?