Using UML Patterns and Java ObjectOriented Software Engineering

Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management

Figure 14 -1, Phases of a Software Project Scope. Defined Conception do/Formulate. Idea do/Cost-Benefit. Analysis do/Feasibility. Study do/Review Go. Ahead Definition do/Problem Statement do/Software Architecture do/Software Plan New Need New Technology Termination do/Client Acceptance do/Delivery do/Post Mortem Bernd Bruegge & Allen H. Dutoit Start do/Infrastructure Setup do/Skill Identification do/Team Formation do/Project Kickoff Steady State do/Develop System do/Controlling do/Risk Management do/Replanning Infrastructure Setup Completed && Teams Assembled System Done Object-Oriented Software Engineering: Using UML, Patterns, and Java 2

Figure 14 -2, Management activities in a software project (continued on next slide). Conception Feasibility Study Formulate Idea Cost-Benefit Analysis Definition Initial Software Architecture Problem Statement Definition Initial Software Project Management Plan Project Agreement Start Skill Identification Team assembly Infrastructure setup Project Kick-off Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 3

Figure 14 -2, Management activities in a software project (continued). Steady state Controlling Risk management Project replanning Scope agreement Termination Installation Bernd Bruegge & Allen H. Dutoit Client acceptance test Postmortem Object-Oriented Software Engineering: Using UML, Patterns, and Java 4

Figure 14 -3, Tasks, Activities and Project Functions. Work Task * Activity Project Function Bernd Bruegge & Allen H. Dutoit «invariant» duration = project. duration Object-Oriented Software Engineering: Using UML, Patterns, and Java 5

Figure 14 -4, Relationship between Outcome, Work, and Work Packages. Work Package * Outcome * produced-by Set of Work Products Work Product Internal Work Product Project Deliverable Bernd Bruegge & Allen H. Dutoit describes Work Task Object-Oriented Software Engineering: Using UML, Patterns, and Java * Activity Project Function 6

Figure 14 -5, The Work Breakdown Structure is the aggregation of all the work to be performed in a project. Work Breakdown Structure * Work Task Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java * Activity 7

Figure 14 -6, Partial work breakdown structure for a house. Build Foundation Build Structure Build Walls Build Roof Install Sewer Pipes Build House: WBS Install Plumbing Install Cold & Hot Water Pipes Install Heating Install Tubs & Sinks Install Electric Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 8

Database subsystem req. elicitation Database subsystem design Database subsystem implementation Database subsystem test plan Database subsystem inspection Database subsystem test Figure 14 -7. An example of a task model with precedence dependencies Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 9

Figure 14 -8, An organization consists of organizational units, which consists of participants or groups of participants. Organization Project * Company Organizational Unit Participant Team Bernd Bruegge & Allen H. Dutoit * Staff Department Object-Oriented Software Engineering: Using UML, Patterns, and Java Division 10

Figure 14 -9, Types of organizations. Line (Functional) Organization Project-Based Organization Matrix Organization Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 11

Figure 14 -10, Example of a organization chart for a team-based organization with three subsystem teams and two cross-functional teams. Management : Team reports to reports to User. Interface : Subsystem. Team communicates with Database : Subsystem. Team communicates with Architecture: Cross. Functional. Team Bernd Bruegge & Allen H. Dutoit communicates with Control : Subsystem. Team communicates with Documentation: Cross. Functional. Team Object-Oriented Software Engineering: Using UML, Patterns, and Java 12

Figure 14 -11, Visualization of the organization structure from Figure 14 -10 with an organization chart. The reporting and communication structure are not shown explicitly. Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 13

Figure 14 -12, Model of a Project from a project manager’s point of view. This is a refinement of the model used in Chapter 3. Equipment Project * Facility Resource Schedule * * Outcome Set of Work Products * Work Product Internal Work Product Bernd Bruegge & Allen H. Dutoit describes Work Package * consumes responsible depends for Role Work Activity Project Deliverable * Work Breakdown Structure * produces Fund Task Object-Oriented Software Engineering: Using UML, Patterns, and Java * Organizational Unit plays Participant Project Function Organization Department * Staff Team 14

Figure 14 -14, Work products generated during project planning and their relationship with typical project deliverables. Deliverables Project Planning Products Project Agreement Problem Statement Requirements Analysis Document (RAD) System Design Document (SDD) Top-level Design Organization Task Model Software Project Management Plan (SPMP) Schedule Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 15

Figure 14 -17, An example of an object-oriented work breakdown structure where the subsystem decomposition is used to identify high-level activities/tasks. Subsystem decomposition Work Breakdown Structure Develop System User. Interface Control Database Bernd Bruegge & Allen H. Dutoit Develop Control Subsystem Develop User. Interface Develop Database Subsystem Object-Oriented Software Engineering: Using UML, Patterns, and Java 16

Figure 14 -18, Assessing the financial status of a project using earned value. Planned cost Earned value Actual cost Current time Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java Time 17
- Slides: 17