Chapter 3, Project Organization and Communication, Part 1

Slides:



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

Chapter 2 The Analyst As Project Manager In Managing Information Systems 2.3.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 3.1.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
Project Management.
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project 3.1 Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
CSCU 411 Software Engineering Chapter 2 Introduction to Software Engineering Management.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Project Management and Communication Represented by: Latifa Jaber Al-Ghafran.
What is a project? Project Management Institute definition
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java Project Management Introduction Using UML, Patterns,
Development and Quality Plans
Development plan and quality plan for your Project
Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering November 21, 2001 Project.
Copyright 2002 Prentice-Hall, Inc. Managing the Information Systems Project 3.1 Chapter 3.
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
Computer System Analysis
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 3, Project Organization and Communication.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 3, Project Organization and Communication, Part 1.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Art for Chapter 11, Project Management.
Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 3, Project Communication.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Software Planning Guidelines.
Systems Analysis and Design in a Changing World, Fourth Edition
Software Life Cycle The software life cycle is the sequence of activities that occur during software development and maintenance.
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project 3.1 Modern Systems Analysis and Design.
Information Systems System Analysis 421 Chapter 3 Managing the Information Systems Project.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Chapter 3 Managing the Information Systems Project 3.1.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Chapter 2 Managing the Information Systems Project 2.1.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Fall 2010 Software Planning Guidelines.
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
Process 4 Hours.
Chapter 3 Managing the Information Systems Project
Module nine PMP® Mastery 2016 APMG Create WBS
Project Management BBA & MBA
Chapter 1: Introduction to Systems Analysis and Design
Systems Analysis and Design in a Changing World, 4th Edition
Business System Development
Chapter 11: Software Configuration Management
Project Management Processes
Software Planning Guidelines
Software Project Management
IEEE Std 1074: Standard for Software Lifecycle
Information Technology Project Management – Fifth Edition
Introduction to Tech Communication & Project Management Arthur C.M. Chen , Rm
Chapter 3 Managing the Information Systems Project
Chapter 3 Managing the Information Systems Project
Software Project Management
Project Management.
Teaching slides Chapter 1.
Engineering Processes
Guidance notes for Project Manager
Software Project Management
Chapter 3 Managing the Information Systems Project
Risk Analysis & Success Driven Project Management
Project Management Process Groups
Chapter 11: Software Configuration Management
Welcome W 15 Introduction to Engineering Design II (IE 202)
Project Management Processes
Chapter 1: Introduction to Systems Analysis and Design
Portfolio, Programme and Project
Executive Project Kickoff
Chapter 1: Introduction to Systems Analysis and Design
Chapter 3 Managing the Information Systems Project
Chapter 2 Managing the Information Systems Project
Definition of Project “An organized endeavor aimed at accomplishing a specific non-routine or low-volume task.” Definition of Project Management “The.
Chapter 3 Managing the Information Systems Project
Presentation transcript:

Chapter 3, Project Organization and Communication, Part 1

How it should go Requirements Analysis Design Implementation System Testing Delivery and Installation

How it often goes Requirements Analysis Bananaware ripes with the Customer D E L A Y Vaporware

Laws of Project Management Projects progress quickly until they are 90% complete Then they remain at 90% complete forever If project content is allowed to change freely, the rate of change will exceed the rate of progress Project teams detest progress reporting because it manifests their lack of progress Murphy’s law: “When things are going well, something will go wrong” “When things just can’t get worse, they will” “When things appear to be going better, you have overlooked something.” The 90% syndrom is a problem that is particularly symptomatic for the linear waterfall lifecycle Another variant of Murphy's law Free change problem must be dealt with even in an iterative and incremental software lifecycle: time-boxed prototyping Introducing new bugs: This is a significant problem in old systems that did not use encapsulation: Global variables, etc Problem with hierarchical project management

Lecture Outline Project Definition Project Organization Roles Tasks & Activities Work Product & Deliverables Focus of this lecture Understand project management concepts from the developer’s perspective

Project Definition A project is an undertaking, limited in time, to achieve a set of goals that require a concerted effort A project includes A set of deliverables to a client A schedule Technical and managerial activities required to produce and deliver the deliverables Resources consumed by the activities (people, budget) Focus of project management Administer the resources Maintain accountability React to change Make sure, the goals are met.

Simple Object Model of a Project Deliverables Schedule Activity Resource

Refinement of the Model Equipment Project * Facility Resource Fund * Organi- Work zation Breakdown des- Work Structure Schedule cribes Package con- * * * sumes * produces Organizational Outcome respon- Work Unit * * sible * for plays depends Role Set of Work Work Activity Task Participant Staff Products Product Internal Project Project Function Department Team Work Product Deliverable

Dynamic Model of a Project Scope Defined Start do/Assign Tasks Definition do/Define Scope Tasks Assigned System Done A project here is modeled as an object with interesting dynamic behavior, namely a set of different states that are very important for a project manager. Termination do/Deliver System Steady State do/Develop System

Project Organization A project organization defines the relationships among resources, in particular the participants, in a project A project organization should define Who decides (decision structure) Who reports their status to whom (reporting structure) Who communicates with whom (communication structure) Team Participant Organization *

Example of a Communication Structure Management :Team communicateDecision() communicateStatus() communicateStatus() UserInterface Control :Team Database :Team :Team

Reporting vs. Communication Reporting supports project management in tracking project status What work has been completed? What work is behind schedule? What issues threaten project progress? Reporting along the hierarchy is not sufficient when two teams need to communicate A communication structure is needed A participant from each team is responsible for facilitating communication between both teams Such participants are called liaison

Example of a Communication Structure Interface with other team Role UserInterface :Team Editor Documentation: Team Mary :Developer communicates Sam :Developer Implementor Chris :Developer Implementor Testing: Team communicates Architecture: Team John :Developer API engineer communicates Alice :Developer Management: Team Team leader communicates

Hierarchical Project Organization Chief Executive First Level Manager (“Front-Line Manager”) Project Members A B A wants to talk to B: Information Flow A wants to make sure B does a certain change: Controlflow Basis of organization: Complicated information and control flow across hierarchical boundaries

Peer-To-Peer Communication Project Leader Coaches Subsystem Team Subsystem Team Subsystem Team A B Team Members A wants to make sure B does a certain change: Simple Controlflow A wants to talk to B: Simple Information Flow Project-based organizations create bridges within organizations and bridge boundaries outside with customers, suppliers, and competitors. Teams are the foundation unit of these new patterns of interconnection and interdependence. Telecommunications technology is the nervous system that holds these networks together. Groupware is the collaboration support technology that shapes and holds the activity of teams within those networks." Project-based organizations are based on the fct that ever-shifting networks of teams that cross traditional, formerly forbidden boundaries, linking once-competing organizations into ecosystems of cooperation Basis of organization: Nonlinear information flow across dynamically formed units

Role A role defines a set responsibilities (“to-dos”) Examples Role: Tester Write tests Report failures Check if bug fixes address a specific failure Role: System architect Ensure consistency in design decisions and define subsystem interfaces Formulate system integration strategy Role: Liaison Facilitate communication between two teams.

Types of Roles in Software Organizations Liaison Consultant Manager Developer Configuration Manager Document Editor Tester API Engineer Role Team Leader Project Manager Application Domain Expert Solution Domain Expert End User Client

Responsibilities are assigned to Roles, Roles are assigned to People Team A . “To Do” List for the Project • Item 1 • Item 2 • Item 3 • Item 4 • Item 5 • Item 6 • Item 7 • Item 8 • Item 9 Item 1 Item 2 Item 9 Role 1 Person A Role 1 Role 2 Item 4 Item 5 Item 7 Role 2 Person B Role 3 Item 3 Item 6 Item 8 Role 3

Possible Mappings of Roles to Participants One-to-One Ideal but rare Many-to-Few Each project member assumes several "hats" Danger of over-commitment Need for load balancing Many-to-"Too-Many" Some people don't have significant roles Lack of accountability Loosing touch with project

Task A task describes the smallest amount of work tracked by management Typically 3-10 working days effort Tasks descriptions Role Work product Start date Planned duration Required resources.

Example: Tasks for building a House FINISH Install Interior Plumbing Install Interior Electrical Install Wallboard Paint Interior Install Flooring Install Exterior Plumbing Install Exterior Electrical Install Exterior Siding Paint Exterior Install Roofing Install Exterior Doors Install Interior Doors Build Outside Wall Buy Material Lay Foundation Survey Excavate Build Outside Wall Buy Material Lay Foundation Survey Excavate Request Permits Request Permits

Example: Tasks for building a house Install Interior Plumbing Install Interior Electrical Install Wallboard Paint Interior Install Flooring Install Interior Doors Build Outside Wall Buy Material Lay Foundation START Survey Excavate FINISH FINISH Install Roofing Install Exterior Doors Request Permits Paint Exterior Install Exterior Plumbing Install Exterior Electrical Install Exterior Siding

Tasks and Work Packages A task is specified by a work package Description of work to be done Preconditions for starting, duration, required resources Work products to be produced, acceptance criteria for it Risks involved A task must have completion criteria Includes the acceptance criteria for the work products (deliverables) produced by the task.

Work Products A work product is a visible outcome of a task Examples A document A review of a document A presentation A piece of code A test report Work products delivered to the customer are called deliverables

Task Sizes Tasks are decomposed into sizes that allow monitoring You may not know how to decompose the problem into tasks at first Depends on the nature of work and how well task is understood. Finding the appropriate size is crucial To-do lists from previous projects Each software development activity identifies more tasks and modifies existing ones. Example for one day tasks: The smallest unit in the SCRUM management methodology are 1 day tasks

Activities Major unit of work Culminates in a major project milestone: Scheduled event used to measure progress Internal checkpoints should not be externally visible A project milestone usually produces a baseline Activities are often grouped again into higher-level activities with different names: Phase 1, Phase 2 … Step 1, Step 2 … Allows separation of concerns Precedence relations can exist among activities Example: “A1 must be executed before A2” Definition Baseline: A formally reviewed work product which is placed under change control Any change to a baseline requires the execution of a formally agreed upon procedure Activitites are often grouped again into higher-level activities: This Establishes hierarchical structure for project Phases Step... PERT Charts are use to visualize precedence relations

Example: Activities for Building a House START Request Permits Survey Excavate Buy Material Lay Foundation Build Outside Wall FINISH Install Interior Plumbing Install Interior Electrical Install Wallboard Paint Interior Install Flooring Install Exterior Plumbing Install Exterior Electrical Install Exterior Siding Paint Exterior Install Roofing Install Exterior Doors Install Interior Doors

Example: Activities for Building a House Build Outside Wall Finish Exterior Finish Interior Establish Foundation START FINISH START Request Permits Survey Excavate Buy Material Lay Foundation Build Outside Wall FINISH Install Interior Plumbing Install Interior Electrical Install Wallboard Paint Interior Install Flooring Install Exterior Plumbing Install Exterior Electrical Install Exterior Siding Paint Exterior Install Roofing Install Exterior Doors Install Interior Doors

Examples of Software Engineering Activities Planning Requirements Elicitation Analysis System Design Object Design Implementation Testing Delivery

Associations between Tasks, Activities, Roles, Work Products, and Work Packages describes results in Work Package Work Product * Unit Of Work 1 Activity Task * 1 Role assigned to

Summary Projects are concerted efforts towards a goal that take place within a limited time Project participants are organized in terms of teams, roles, control relationships, and communication relationships. An individual can fill more than one role. Work is organized in terms of tasks assigned to roles and producing work products.

Backup Slides