Chapter 3, Project Organization and Communication

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

Configuration management
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 3, Project Organization and Communication, Part 2.
The “Lifecycle” of Software. Chapter 5. Alternatives to the Waterfall Model The “Waterfall” model can mislead: boundaries between phases are not always.
IS4799 Information Systems and Cybersecurity Capstone Project
CSE 308 Project Management. SWE Communication Skills Management: Run a team meeting Presentation: Present aspects of your project during its development.
Pair of Wires Box 1Box 2 A Communication Example "Two missile electrical boxes manufactured by different contractors were joined together by a pair of.
Software Configuration Management
Project Management and Communication Represented by: Latifa Jaber Al-Ghafran.
Feb. 2, 2004CS WPI1 CS 509 Design of Software Systems Lecture #3 Monday, Feb. 2, 2004.
IS 421 Information Systems Management James Nowotarski 16 September 2002.
SE 555 Software Requirements & Specification Requirements Validation.
Oct. 30, 2003CS WPI1 CS 509 Design of Software Systems Lecture #9 Thursday, Oct. 30, 2003.
Chapter 3: The Project Management Process Groups
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 3, Project Organization and Communication.
Configuration Management
CEN Fourth Lecture Introduction to Software Engineering (CEN-4010) Instructor: Masoud Sadjadi Project Organization.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Reminders  First project report due today 14:00.
LSU 07/07/2004Communication1 Communication & Documentation Project Management Unit – Lecture 8.
Chapter 6– Artifacts of the process
This chapter is extracted from Sommerville’s slides. Text book chapter
What is Business Analysis Planning & Monitoring?
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 3, Project Organization and Communication.
Project Management Process Overview
S/W Project Management
Project Management Chapter 5, PG 92. Introduction Why is software management particularly difficult?  The product is intangible Cannot be seen or touched.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 3, Project Communication.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
1 Technical & Business Writing (ENG-315) Muhammad Bilal Bashir UIIT, Rawalpindi.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Gathering Network Requirements Designing and Supporting Computer Networks – Chapter.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 3, Project Organization and Communication.
UNB CS3013 Software Engineering II lectures adapted from Bernd Bruegge & Allen Dutoit, Object-Oriented Software Engineering: Conquering Complex and Changing.
SacProNet An Overview of Project Management Techniques.
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.
1 Instructor: S. Masoud Sadjadi sadjadi At cs Dot fiu Dot edu Software Engineering and Project Communications.
Develop Project Charter
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.
SYSC Software Project Management - Communication1 Project Organization & Communication Books: 1. B. Bruegge and A. H. Dutoit, Object-Oriented Software.
Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering November 7, 2001 Project.
BSBPMG507A Apply Communication Management Techniques 10.3 Distribute Information The process of making relevant information available to project stakeholders.
Requirements Engineering Requirements Management Lecture-25.
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
~ pertemuan 4 ~ Oleh: Ir. Abdul Hayat, MTI 20-Mar-2009 [Abdul Hayat, [4]Project Integration Management, Semester Genap 2008/2009] 1 PROJECT INTEGRATION.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
NEM201 Week 4 Project Plan Create and complete outstanding items. 01. Front Cover 02. Document details 03. Scope Document 04. Technical Design 05. Creative.
Overview of Software Project Management Review – Class 5 UML diagrams cont Overview of Software Project Management - Communication CEN 4010 Class 6 – 09/15.
Software Engineering Lecture 9: Configuration Management.
Configuration & Build Management. Why Software Configuration Management ? The problem: Multiple people have to work on software that is changing More.
Overview of Software Project Management cont Review – Class 6 Scheduling Tasks Project Management Activities CEN 4010 Class 8 – 09/22.
Software Configuration Management (SCM)
Project Organization and Communication Roadmap for today’s class Project organization organization roles tasks and work products schedule – Gantt chart,
A comment from a student who took SE in Fall, 2004 I dont think the final result of any groups project directly relates to what we all learned in this.
Chapter 3, Project Organization and Communication
Chapter 3, Project Organization and Communication
Project Organization and Communication
Project Organization and Communication
Software Configuration Management
Software Project Configuration Management
Project Management PTM721S
Project Organization & Communication
Chapter 11: Software Configuration Management
Software Configuration Management
Project Organization and Communication
Chapter 3, Project Organization and Communication, Part 2
Chapter 11: Software Configuration Management
Introduction to Software Engineering (CEN-4010)
QA Reviews Lecture # 6.
Joint Application Development (JAD)
Presentation transcript:

Chapter 3, Project Organization and Communication

A Communication Example "Two missile electrical boxes manufactured by different contractors were joined together by a pair of wires. Box 1 Pair of Wires Box 2

A Communication Example (continued) Thanks to a particular thorough preflight check, it was discovered that the wires had been reversed." Box 1 Box 2

After the Crash... ... "The postflight analysis revealed that the contractors had indeed corrected the reversed wires as instructed."

“In fact, both of them had.” Box 1 Box 2

Communication is important In large system development efforts, you will spend more time communicating than coding A software engineer needs to learn the so-called soft skills: technical writing, reading documentation, communication, collaboration, management, presentations. Skills to learn Management Presentation Collaboration Technical writing

1. What the user asked for. 3. How the system was designed. 5. What the user really wanted. 2. How the analyst saw it. 4. As the programmer wrote it. 6. How it actually works.

Definitions Communication event Type of information exchange that has defined objectives and scope Scheduled: Planned communication (e.g., review, meeting) Unscheduled:Event-driven communication (e.g., request for change, issue clarification, problem report) Communication mechanism Tool or procedure that can be used to transmit information Synchronous: Sender and receiver are available at the same time Asynchronous: Sender and Receiver are not communicating at the same time.

Classification of Communication Event is supported by Communication Mechanism * * Planned Event Unplanned Event Synchronous Mechanism Asynchronous Mechanism

Planned Communication Events Problem Definition Objective: Present goals, requirements and constraints Example: Client Presentation Usually scheduled at the beginning of a project. Project Review: Focus on system model Objective: Assess status and review system model, system decomposition, and subsystem interfaces Examples: Analysis Review, System Design Review Scheduled around project milestones and deliverables Client Review: Focus on requirements Objective: Brief client, agree on requirements changes Client Review Usually scheduled after analysis phase

Planned Communication Events (continued) Walkthrough (Informal) Objective: Increase quality of subsystem Example: Developer presents subsystem to team members, informal, peer-to-peer To be scheduled by each team Inspection (Formal) Objective: Compliance with requirements Example: Client acceptance test (Demonstration of final system to customer) To be scheduled by project management

Planned Communication Events (continued) Status Review Objective: Find deviations from schedule and correct them or identify new issues Example: Status section in regular weekly team meeting Scheduled every week Brainstorming Objective: Generate and evaluate large number of solutions for a problem Example: Discussion section in regular weekly team meeting

Planned Communication Events (continued) Release Objective: Baseline the result of each software development activity Software Project Management Plan (SPMP) Requirements Analysis Document (RAD) System Design Document (SDD) Object Design Document (ODD) Test Manual (TM) User Manual (UM) Usually scheduled after each phase Postmortem Review Objective: Describe Lessons Learned Scheduled at the end of the project

Unplanned Communication Events Request for clarification The bulk of communication among developers, clients and users. Example: A developer may request a clarification about an ambiguous sentence in the problem statement. Request for change A participant reports a problem and proposes a solution Change requests are often formalized when the project size is substantial. Example: A participant reports of a problem the air conditioner in the lecture room and suggests a change. Issue resolution Selects a single solution to a problem for which several solutions have been proposed. Uses issue base to collect problems and proposals

Example of Request for Clarification From: Alice Newsgroups: cs413.architecture.discuss Subject: SDD Date: Thu, 10 Oct 23:12:48 -0400 Message-ID: <325DBB30.4380@andrew.cmu.edu> MimeVersion: 1.0 Content-Type: text/plain; charset=us-ascii When exactly would you like the System Design Document? There is some confusion over the actual deadline: the schedule claims it to be October 22, while the template says we have until November 7. Thanks, Alice

Example of a Change Request Report number: 1291 Date: 5/3 Author: Dave Synopsis: The STARS client crashes when empty forms are submitted. Subsystem: User interface Version: 3.4.1 Classification: missing/incorrect functionality, convention violation, bug, documentation error Severity: severe, moderate, annoying Description: <<Description of the problem>> Rationale: <<Why the change should be done>> Proposed solution: <<Description of desired change>>

Example of Issue Base

Synchronous Communication Mechanisms Smoke signals Supports: ?, Pros: ?, Cons: ? Hallway conversation (face-to-face) Supports: Unplanned conversations, Request for clarification, request for change Pro: Cheap and effective for resolving simple problems Con: Important information can be lost, misunderstandings can occur when conversation is relayed to others. Meeting (face-to-face, telephone, video conference) Supports: Planned conversations, client review, project review, status review, brainstorming, issue resolution Pro: Effective mechanism for resolution of isssues, and building consensus Con: High cost (people, resources); difficulty of managing them and getting effective results

Meeting Roles Primary facilitator Minute taker Time keeper Responsible for organizing the meeting and guiding the execution. Writes the agenda describing objective and scope of meeting. Distribute the agenda to the meeting participants Minute taker Responsible for recording the meeting. Identifies action items and issues Release them to the participants Time keeper Responsible for keeping track of time

Structure of a Meeting Agenda

Asynchronous Communication Mechanisms E-Mail Supports: Release, change request, brainstorming Pro: Ideal for planned communication events and announcements. Con: E-mail taken out of context can be easily misunderstood, sent to the wrong person, lost or not read by the receiver. Newsgroups Pro: Suited for notification and discussion among people who share a common interest; cheap (shareware available) Con: Primitive access control (often, you are either in or out) World Wide Web Supports: Release, change request, inspections Pro: Provide the user with a hypertext metaphor: Documents contain links to other documents. Con: Does not easily support rapidly evolving documents

Asynchronous Communication Mechanisms Lotus Notes Each user sees the information space as a set of databases, containing documents composed of a set of fields. Users collaborate by crating, sharing and modifying documents Supports: Release, change request, brainstorming Pro: Provides excellent access control mechanisms and replication of databases. Con: Proprietary format, expensive

Example: Document Review with Lotus Notes Use cases: Fill out a review form Attach document to be reviewed Distribute the review form to reviewers Wait for comments from reviewers Review comments Create action items from selected comments Revise document and post the revised version Iterate the review cycle The following example demonstrates a document review database from JAMES project.

Review of Documents Database

Fill out the Review Form Select reviewers Select the document to be reviewed Add comments to reviewers Determine deadline

Reviewer Notification Selected reviewers get e-mail

Reviewers add their Comments

Originator Notification

Final Recipient Notification

Review Tasks Editor reviews comments Editor selects reviewed comments Web Master posts reviewed document and action items Team members complete their action items Editor integrates changes Editor posts changed document on the review database for the next review cycle

Accepted Document w/ Action Items

SPMP Action Items

Summary Communication Events Communication Mechanisms Planned (stipulated by the schedule) Unplanned (driven by unexpected events) Communication Mechanisms Asynchronous communication mechanisms Synchronous communication mechanisms Important events and mechanisms Weekly meeting Project reviews Online communication (discussion forum, email, web)