Presentation is loading. Please wait.

Presentation is loading. Please wait.

Project Management and Scheduling

Similar presentations


Presentation on theme: "Project Management and Scheduling"— Presentation transcript:

1 Project Management and Scheduling
Software Engineering Process - II Unit 1: Project Management and Scheduling

2 Before You Begin… What are your expectations from this course?

3 Unit Objectives Define project management functions.
Describe management activities in a project. Define the project planning process. Identify the constituents of a project plan. Define and identify project milestones and deliverables. Define project scheduling. Define and create work breakdown structures. Create Critical Path Method (CPM), Program Evaluation and Review Technique (PERT), and Gantt charts. Identify project staffing and leading activities.

4 Project Management Project management consists of:
Planning: To determine future course of action Organizing: To partition work in tasks Staffing: To select and train personnel Leading: To lead the project Controlling: To monitor and evaluate the project Begin the class by asking the students what in their opinion does project management involve? Try to evolve points from the discussion and discuss the points on the slide.

5 Project Management Project management is a system of: Proposal writing
Project planning and scheduling Project costing Project monitoring and reviews Selecting and evaluating personnel Report writing and presentations

6 Project Management Activities
Project management activities include: Proposal writing: Describes the objectives of the project and the methodology. It includes cost estimates and schedules. Project planning and scheduling: Describes the activities, milestones, and deliverables of the project. Project costing: Estimates the resources required to accomplish the project plan.

7 Project Management Activities (cont.)
Project monitoring and reviews: Involves keeping track of the progress of the project and comparing the actual and estimated schedule and cost. Personnel selection and evaluation: Involves selection of people to work on the project. Report writing: Involves creating concise and clear progress and review reports for managers and clients.

8 Project Planning Planning is an iterative process. It consists of:
Identifying constraints such as required delivery date, available staff, and overall budget. Assessing project parameters such as project’s size, structure, and distribution of functions. Defining project milestones and deliverables. Drawing up a project schedule. Starting activities according to schedule. Reviewing project progress and revising project plan. Updating schedule and renegotiating project constraints and deliverable. Organizing technical reviews and required revisions. You can use the pseudocode shown on page 97 of Software Engineering to explain how project planning is an iterative process.

9 Project Plan The project plan should include the following sections:
Objectives and constraints Project organization Risk analysis Hardware and software resource requirements Work breakdown Project schedule Monitoring and reporting mechanisms You can explain what each section contains using the following information: Objectives and constraints: Identifies the objectives and constraints of the project. Project organization: Describes the project team organization, roles, and responsibilities. Risk analysis: Describes the possible risks, probability of occurrence, and risk mitigation strategies. Hardware and software resource requirements: Specifies the hardware and software support requirements, price estimates, and delivery schedules. Work breakdown: Includes breakdown of project into activities and identifies associated milestones and deliveries. Project schedule: Details the estimated time for each activity, associated resources, and dependencies. Monitoring and reporting mechanisms: Defines the schedule of management reports and project monitoring mechanisms.

10 Project Plan (cont.) The project plan may include several other plans or may have references to them: Quality plan Validation plan Configuration management plan Maintenance plan Training plan You can explain that : The quality plan includes the quality procedures and standards to be used in the project. The validation plan includes the approach, resources, and schedule for validation of the system. The configuration management plan details the configuration procedures and structures. The maintenance plan describes the maintenance requirements, costs, and effort required by the system. The training plan describes the training requirement for developing the skills of team members.

11 Team Organization Structure
This can be one possible team organization structure. Emphasize on the dual role of the team leaders; they have to manage the team as well as work as database designer, test leads, quality control personnel, and architects.

12 Class Activity - 1 Assume that you have been appointed as the PM of an expense approval and tracking system for ABC international. There are three independent modules in the system. Design a possible team organization structure for your project. Consider the following factors while designing: The database design is an important part of the project. The client has specially emphasized on quality control and testing. Management will review the project once a month.

13 Milestones and Deliverables
Project planning requires identification of milestones and deliverables. Milestone: Is an end-point of a software activity. Represent the end of a distinct logical stage of the project. Has a formal output. A deliverable is a project result at the end of a major project phase. Deliverables are milestones but milestones may not be deliverables. Explain that milestones can be for internal use of the project or management which can be used by management to understand and track the project activities or they could be inputs to the next stage. The outputs generated at such milestones need not be deliverables to the client.

14 Milestones and Deliverables (cont.)
You can explain that out of these milestones, requirement definition, and architectural design can be deliverables to the client.

15 Just a Minute! Define milestones and deliverables for the testing phase. The milestones can be function testing, integration testing, and user acceptance testing. The deliverable could be user acceptance plan.

16 Project Scheduling Project scheduling involves:
Breaking the total project work into separate activities – Work Breakdown Structure (WBS) Judging the required time for each activity Identifying parallel activities Estimating resources Assigning responsibilities You can use the diagram of scheduling process given on the next slide to explain the activities involved in project scheduling.

17 Project Scheduling (cont.)

18 Project Scheduling Techniques
Project schedules are represented as: WBS Activity networks PERT Gantt Explain that these four methods are used to represent project schedules. Software management tools such as Microsoft Project can be used to create these.

19 WBS A WBS partitions a large project into its component activities or products. It can be represented using either of the following: Hierarchical chart WBS: Displays relationships between higher level products or processes and lower level products/ processes. Example: An application flow diagram. Indented list WBS: Displays the degree of indentations showing the relationships between higher and lower level products/processes. Example: The table of contents of a requirement document. Use the next slides to show examples of both the types.

20 WBS (cont.) A Hierarchical Chart WBS

21 WBS (cont.) An Intended List WBS

22 Activity Networks An activity list shows the activities of a project, dependencies and the estimated duration. Activity networks represent this list in a graphical form with activities either on arrows or nodes. CPM and PERT are the two forms of activity networks.

23 Activity Networks (cont.)
CPM and PERT are most successful when the project activities: Are well defined Can be started, stopped, and performed separately in a sequence Have relation to other activities Once started must continue without interruption until completion Activity networks have been covered in the prerequisite courses also. Use details and examples given on page of The Project Manager’s Guide to Software Engineering’s Best Practices to explain CPM and PERT. You can explain that the difference between CPM and PERT is that of viewpoint. CPM stresses on activities whereas PERT emphasizes on events and permits probability in activity time estimates. PERT requires three estimates of duration for each activity: i) Most optimistic time ii) Most likely time iii) Most pessimistic time

24 Activity Networks (cont.)

25 Activity Networks (cont.)

26 Class Activity - 2 Draw a PERT chart for the activity list given in the following document. Activity networks have been covered in Software Engineering Process - I. Use details given on page of The Project Manager’s Guide to Software Engineering’s Best Practices to explain CPM and PERT. You can explain that the difference between CPM and PERT is that of viewpoint. CPM stresses on activities whereas PERT emphasizes on events and permits probability in activity time estimates. PERT requires three estimates of duration for each activity: i) Most optimistic time ii) Most likely time iii) Most pessimistic time

27 Gantt Charts Two dimensional representations that show tasks and corresponding start and end dates. The top level status of the project can be easily comprehended. Interrelationships are not easily represented in complex projects. You can add that Microsoft Project 2000 can be used to draw Gantt charts by defining the activities, start and end dates, milestones, and predecessors. Microsoft Project can also display the PERT diagram of the Gantt chart, which it refers to as Network diagram option. Microsoft Project 2000 also provides for resource allocation.

28 Sample Gantt Chart The following sample Gantt chart shows the tasks and corresponding start and end dates.

29 Staffing Staffing involves allocation of personnel to project activities. It can include following activities: Select personnel based on required technical and behavioral skills Orient people to organization and project tasks Provide class-room or on-the-job training and development Set performance goals and appraise personnel Compensate and terminate assignment You could use Table 13.4 on page 395 of The Project Manager’s Guide to Software Engineering’s Best Practices to explain this. This topic will also be covered in detail in Unit 6, Managing People.

30 Staffing (cont.) The parameters for personnel selection can be as follows: Years of experience: For example, 2-4 years for development team member and 8 years for project leader Educational background: Name of the degree and preferences of colleges Technical skills: Microsoft SQL server, Oracle, and Visual Basic Personal skills: Dynamic, self-motivated, and can work in a team

31 Responsibility Matrix
The responsibility matrix can contain the following: Allocation of staff to project activities Role of an individual staff member Assignment dates Name Role Responsibilities Dates Management Review project status Group Manager Ensure that adequate resources are provided for the project Liaison with client’s representative Project Manager Identify and plan for the management of risks in advance Team Leader Help fellow team members on technical issues Participate in reviews / walkthroughs of design/code Schedule and monitor tasks assigned to the team Team Members Study and understand the planning documents Design and coding

32 Class Activity - 3 Can you think of technical and behavioral skills that you should consider when selecting people for a real-time intelligent building system for an old people’s home? You could divide the class in groups of five students. Each group can decide on the technology they are going to use for developing the system. Consolidate the parameters identified by each group. Some of the parameters could be respect for individual, team worker, sympathy for elders, leadership, self-motivated, ability to learn quickly, and prior knowledge of platforms.

33 Leading Leading a project involves motivating and guiding personnel to achieve project goals. It can include the following activities: Provide a conceptual view of the project direction Provide day-to-day guidelines to help project members complete their assignments Coordinate all project activities Facilitate communication and resolve conflicts Allow project members to take decisions within their purview You can use the descriptions given on Pages of The Project Manager’s Guide to Software Engineering’s Best Practices to explain this. Project controlling and monitoring will be covered in the next unit, Project Cost Estimation.

34 Summary What was your key learning from the unit?


Download ppt "Project Management and Scheduling"

Similar presentations


Ads by Google