CHAP-III.pptx

51
CHAP-III Project Management Tools and Techniques 1

Transcript of CHAP-III.pptx

PowerPoint Presentation

CHAP-III

Project Management Tools and Techniques11OutlineWhy is management needed?What are the main tasks of managers?What is special in the case of software?How can productivity be measured?Which tools may be used for planning and monitoring?How can teams be organized?How can organizations' capabilities be defined and measured?22ManagementSE projects involve many software engineersManagement is needed to coordinate the activities and resources involved in projects

3"The creation and maintenance of an internal environment in an enterprise where individuals, working together in groups, can perform efficiently and effectively toward the achievement of group goals" (Koontz et al, 1980)3Management tasksPlanningOrganizingStaffingDirectingControlling and dealing with deviations from the plan

4Plan the work and work the plan4Management challengesBalance conflicting goalsDeliver a high-quality product with limited resourcesOrganize an activity that is fundamentally intellectualthis complicates the traditional techniques for productivity measurement, project planning, cost and schedule estimation 55Gantt chartsA project control technique Defined by Henry L. GanttUsed for several purposes, including scheduling, budgeting, and resource planning 66Gantt chartsSteps to draw Gantt Charts

List all activities in the PlanHead up graph with the days or weeks through to task completion.Plot the tasks onto the graph paper. Schedule ActivitiesPresenting the Analysis778Example: scheduling activities

89Example: scheduling activities

910Example: scheduling activities

1011Example: scheduling activities

1112Example: scheduling activities

12PERT ChartsPERT (Program Evaluation and Review Technique) chartIs a project management tool used to schedule, organize and coordinate tasks within a project. It is basically a method to analyze the tasks involved in competing a given project.

1313PERT ChartsPERT (Program Evaluation and Review Technique) chartSpecially the time needed to complete each task, and to identify the minimum time needed to complete the total project.

1414PERT ChartsPERT- MAIN OBJECTIVE

To facilitate decision making and to Reduce both the time and cost Required to complete a project.

1515PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

1616PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

17Activities: Tasks required to complete the projectMilestones: Events marking the beginning & end of one or more activities. Listing out the activities sequence and duration17PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

18Activity Identification step. Determination of exact order in which they must be performed. 18PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram (of activities) Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

19Activity sequence information, a network diagram can be drawn showing sequence of the serial and parallel activities. 19PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

20WEEKS are commonly used unit for activity completion. 20PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

212. Distinguishing feature of PERT is its ability to deal with uncertainty in activity completion time. 3. For each activity 3 Types of Time Estimates. 21PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

223 Types of Time Estimates: - Optimistic Time: - Shortest time Most Likely Time: - Highest Probability Pessimistic Time: - Longest time might require 22PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

23Expected Time = (Optimistic + 4* Most likely + Pessimistic) / 623PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

24Is determined by adding the times for the activities in each sequence and determining the longest part in the project. 24PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the Critical PathUpdate the PERT chart as the project progresses.

25CP is determine the following four quantities: ES Earliest Start TimeEF Earliest Finish TimeLS Latest Start TimeLF Latest Finish Time

25PERT ChartsPERT planning involves the following steps.Identify the specific activities and milestones.Determine the proper sequence of the activities.Construct a network diagram.Estimate the time required for each activity.Determine the critical pathUpdate the PERT chart as the project progresses.

26Estimated time is replaced with actual times.Where there are delays, additional resources may be needed to stay on schedule And so that PERT chart may required to modify according to new situation.

26PERT Charts - BENIFITSIt provides Expected project completion timeProbability of completion before a specified dateCP activities that directly impact the completion timeActivities that have slack time & that can be lend resources to CP activitiesActivity start and end date.

272728Example

2829Example

2930Example

3031

Example: a compiler project31Analysis of PERT chartsCritical path for the project (shown in bold)any delay in any activity in the path causes a delay in the entire project activities on the critical path must be monitored more closely than other activities 3232Gantt & PERT chartsForce the manager to planShow interrelationships among tasksPERT clearly identifies the critical path PERT exposes parallelism in the activitieshelps in allocating resourcesAllow scheduling and simulation of alternative schedulesEnable the manager to monitor and control project progress and detect deviations 3333OrganizationAn organization structure is used to structure the communication patterns among members of a teamTraditional team organization is hierarchical with a manager supervising a group or groups of groupsOther organizations have been tried in software engineering with some success3434Chief-programmer teamsA way to centralize the control of a software development team chief programmer (CF) responsible for design + reports to peer manager responsible for administration other members are a software librarian and programmers report to CF and are added to team when needed Best when the solution may be understood and controlled by one chief architect353536

Team structure36Decentralized team organizationDecisions are made by consensus, and all work is considered group workMembers review each others work and are responsible as a group for what every member produces Best when the problem or solution is not well-understood and requires the contribution of several people to clarify it

373738

Team structuremanagement structurecommunication pattern38Mixed-control team organizationAttempts to combine the benefits of centralized and decentralized control Differentiates engineers into senior and juniorSenior engineer leads a group of juniors and reports to a project managerControl vested in the project manager and senior programmersCommunication decentralized among each set of individuals, peers, and their immediate supervisors 393940

management structurecommunication patternTeam structure40Case study: open source developmentReliance on volunteer developers and the lack of organized schedule Team organization is a mixed mode each module has a responsible person , who is the ultimate arbiter of what goes into the eventual release of the moduleanyone may review the module and send in corrections and other contributions to the responsible person4141An assessmentTeam organization depends on the goalsNo team organization is appropriate for all tasks Decentralized control best when communication is necessary to achieve a good solutionCentralized control best when development speed is key and problem is well understood An appropriate organization limits the amount of communication to what is necessary to achieve the goalsno more and no less4242Case study: Nokia software factories4343Foundational principlesGeographically distributed environmenttypical project: 100 developers working in three to four sitessynchronous work not possible (differences in time zones)Product family architecturearchitecture developed for an entire family, and components developed to be used in all family members Concurrent engineeringcomponents developed concurrently at different sites, retrieved from the various sites and combined in a central locationUse of tools process is tool supported (for requirements engineering, design, coding, version management, configuration management, and testing)4444Risk managementA topic of management theoryIdentifies project risks, assesses their impact, and monitors and controls them 454546RISK RISK MANAGEMENT TECHNIQUE 1. Personnel shortfalls - Staffing with top talent; job matching; team building; key-personnel agreements; cross-training; pre-scheduling key people 2. Unrealistic schedules and budgets - Detailed multisource cost & schedule estimation; design to cost; incremental development; software reuse; requirements scrubbing 3. Developing the wrong software functions - Organization analysis; mission analysis; ops-concept formulation; user surveys; prototyping; early users manuals 4. Developing the wrong user interface - Prototyping; scenarios; task analysis; user characterization (functionality, style, workload) Typical SE risks (Boehm 1989)46478. Shortfalls in externally performed tasks - Reference checking; pre-award audits; award-fee contracts; competitive design or prototyping; team building 9. Real-time performance shortfalls - Simulation; benchmarking; modeling; prototyping; instrumentation; tuning 10. Straining computer science capabilities - Technical analysis; costbenefit analysis; prototyping; reference checking 5. Gold plating - Requirements scrubbing; prototyping; costbenefit analysis; design to cost 6. Continuing stream of requirements - High change threshold; information hiding; incremental development (defer changes to later increments) 7. Shortfalls in externally furnished components - Benchmarking; inspections; reference checking; compatibility analysis 47Capability Maturity ModelCMM developed by the Software Engineering Institute to helporganizations which develop software to improve their software processesorganizations which acquire software to assess the quality of their contractors 4848MaturityImmature organizationprocesses are improvised during the course of a project to resolve unanticipated crisesproducts often delivered late and their quality is questionableMature organizationorganization-wide standard approach to software processes, known and accepted by all engineersfocus on continuous improvement both in performance and product quality494950

CMM maturity levels50Key process areas51

51