Phases, Activities, and Work Products. Object-Oriented Software Development. Project Management. Requirements Gathering



Similar documents
Contents. Today Project Management. Project Management. Last Time - Software Development Processes. What is Project Management?

<name of project> Software Project Management Plan

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME >

How To Manage Project Management

Develop Project Charter. Develop Project Management Plan

Department of Administration Portfolio Management System 1.3 June 30, 2010

8. Master Test Plan (MTP)

Essentials of the Quality Assurance Practice Principles of Testing Test Documentation Techniques. Target Audience: Prerequisites:

This is the software system proposal document for the <name of the project> project sponsored by <name of sponsor>.

Introduction and Overview

Requirements Engineering for Web Applications

(Refer Slide Time: 01:52)

Software Project Management Plan. Team Synergy Version: 1.0 Date: 1/27/03

BAL2-1 Professional Skills for the Business Analyst

Partnering for Project Success: Project Manager and Business Analyst Collaboration

Time Monitoring Tool Software Development Plan. Version <1.1>

Information Technology Project Oversight Framework

A Case study based Software Engineering Education using Open Source Tools

SEVEN KEY TACTICS FOR ENSURING QUALITY

APICS INSIGHTS AND INNOVATIONS ENHANCING PROJECT MANAGEMENT

Project Management Plan for

Design Document Version 0.0

SOFTWARE REQUIREMENTS

SOFTWARE DEVELOPMENT PLAN

SOFT 423: Software Requirements

INFORMATION TECHNOLOGY GUIDELINE

Frank Tsui. Orlando Karam. Barbara Bernal. State. University. Polytechnic. Ail of Southern JONES & BARTLETT LEARNING

Software Engineering Reference Framework

PHASE 5: DESIGN PHASE

Request for Proposal for Application Development and Maintenance Services for XML Store platforms

Introduction to the ITS Project Management Methodology

What is a life cycle model?

Requirements Engineering

NUMBER: 12.PM-004 RESPONSIBILITY: Office of Project Support Services REVISION: 4 APPROVED BY: TITLE SUBJECT: Head, Office of Project Support Services

Software Project Management Plan (SPMP)

Capacity Plan. Template. Version X.x October 11, 2012

PROJECT RISK MANAGEMENT

4. Software Project Management

Business Analyst Work Plan. Presented by: Billie Johnson, CBAP CSM

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan

Software Engineering. An Introduction. Fakhar Lodhi

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

Information Technology Project Oversight Framework

Application of software product quality international standards through software development life cycle

Project Lifecycle Management (PLM)

Appendix V Risk Management Plan Template

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit

Project Management Guidelines

Communication Diagrams

Software Development Methodologies

Project Integration Management

Enterprise Test Management Standards

Project Plan for <project name>

Improve Your Process With Online Good Practices 1

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

The Project Management Plan will be used to guide, communicate and coordinate project efforts.

CREDENTIALS & CERTIFICATIONS 2015

Quick Reference Guide Interactive PDF Project Management Processes for a Project

Risk Mitigation, Monitoring and Management Plan

Minnesota Health Insurance Exchange (MNHIX)

Integration Mgmt / Initiating Process Group 4.1 Develop Project Charter

Software Project Audit Process

Noorul Islam College of Engineering M. Sc. Software Engineering (5 yrs) IX Semester XCS592- Software Project Management

11 Tips to make the requirements definition process more effective and results more usable

The 10 Knowledge Areas & ITTOs

Requirements engineering

PROJECT MANAGEMENT PLAN Outline VERSION 0.0 STATUS: OUTLINE DATE:

OE PROJECT CHARTER TEMPLATE

PROJECT PLAN TEMPLATE

3SL. Requirements Definition and Management Using Cradle

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT

Software Development Life Cycle (SDLC)

How to Write a Software Process Procedures and Policy Manual for YOUR COMPANY

Knowledge Area Inputs, Tools, and Outputs. Knowledge area Process group/process Inputs Tools Outputs

Practice Overview. REQUIREMENTS DEFINITION Issue Date: <mm/dd/yyyy> Revision Date: <mm/dd/yyyy>

CS4507 Advanced Software Engineering

ájoƒ ùdg á«hô dg áµلªÿg Yesser Overall SDLC Process Definition

Chapter 3 Managing the Information Systems (IS) Project

How To Write An Slcm Project Plan

Testing Metrics. Introduction

Fundamentals of Measurements

This alignment chart was designed specifically for the use of Red River College. These alignments have not been verified or endorsed by the IIBA.

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice

ITS Projects Systems Engineering Process Compliance Checklist

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Project Management Certificate (IT Professionals)

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

Course Outline. Foundation of Business Analysis Course BA30: 4 days Instructor Led

TEST PLAN OUTLINE (IEEE 829 FORMAT)

Introduction. Architecture Re-engineering. Systems Consolidation. Data Acquisition. Data Integration. Database Technology

Head, Office of Project Management Oversight

Software Engineering Question Bank

Custom Software Development Approach

COMP 354 Introduction to Software Engineering

System Development Life Cycle Guide

Certified Software Quality Engineer (CSQE) Body of Knowledge

D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013

Glossary. Release

Transcription:

Object-Oriented Software Development What is Object-Oriented Development Object-Oriented vs. Traditional Development An Object-Oriented Development Framework Phases, Activities, and Work Products Phases, Activities, and Work Products A development phase is a state of product development that focuses on making progress on a particular aspect or facet. A work product is a concrete result of a planned project-related activity such as analysis or project management. Work products include items delivered to the customer and items used purely internally within a project. [OOTC 97] OOSD--fall'04 Copyright by jubo@cs.umu.se 51 OOSD--fall'04 Copyright by jubo@cs.umu.se 52 Project Management Requirements Gathering Project Management After initial project planning, define development activities and allocate resources to the activities. Allocate requirements to releases and manage project schedule and issues. Project Workbook Outline Resource Plan Schedule Risk/Option Management Plan Test Plan Issues Metrics An organized list of work products that are expected to comprise the project workbook. Analysis of the resources required for the successful completion of the project. A task time line showing dates, milestones, critical path, etc. Lists development options and describes the plan for minimizing project risks. Outlines the project s plan for testing the application. A list of outstanding issues, questions, and concerns that are reviewed on a regular basis. The planned and actual measurements, and statistics. Requirements Gathering Group functional requirements (into use cases) and prioritize them. Problem Statement Use Cases (functional requirements) Nonfunctional Requirements Prioritized Requirements Description of the problem to be solved in non-technical terms. An OO formalization of functional requirements describing the usage of the system by external agents. Requirements that do not belong to user function, such as performance, platform, quality. Defines the relative priorities of functional and nonfunctional system requirements. OOSD--fall'04 Copyright by jubo@cs.umu.se 53 OOSD--fall'04 Copyright by jubo@cs.umu.se 54

UI Design OOA&D UI Design Document how users will interact with the application. Guidelines Screen Flows Screen Layouts UI Prototype Describes the user interface guidelines and standards. Documents user navigation through the application s user interface. Documents details of all screens. A prototype built to show users the look and feel. Object- Oriented Analysis & Design Guidelines System Architecture Analysis: Identify objects, their attributes, behaviors, and interrelationships. Develop solutions to system usage scenarios in terms of active objects that group related tasks and communicate with other objects in order to complete them. Design: Plan a solution to the problem examined during analysis in terms of interacting objects, within the constraints specified by the nonfunctional requirements. Object Model Scenarios OIDs (Object Interaction Diagrams) State Models Classes File Structure Traceability Matrix Records the details of the analysis and design approach being followed. Description of the high-level components/ structures of the system and the design principles guiding the implementation. A consolidated model describing the classes of a system together with their responsibilities and static interrelationships. Descriptions of required systems behaviour. Scenarios refine use cases and are formalized in OIDs. A working out of a scenario, showing the interactions between objects to accomplish (the implementation of) a task. Show the life cycle of an object, i.e. its possible states and state transitions. Detailed descriptions of all classes. The files and their structure as required by the system. A cross-reference table that relates design elements to requirements. OOSD--fall'04 Copyright by jubo@cs.umu.se 55 OOSD--fall'04 Copyright by jubo@cs.umu.se 56 Implementation & Testing Miscellaneous Work Products Implementation Testing Systematically code the classes as specified in the class descriptions so that they can be built and installed on the target platforms. Insure that the application meets the requirements set forth in the problem statement and requirements gathering work products. Coding Guidelines Source Code User Support Materials Prototypes Test Cases A description of the coding guidelines and standards. The actual implementation of the product. Documentation, delivered in various forms, which support the customer s use of the product. Intermediate products. The testing and quality assurance work products. Miscellaneous Document miscellaneous Glossary Definitions and terminology. activities in appendices and add them to the Historical Back-level work products. project workbook. Work Products Meeting Minutes Time Logs The minutes of all project meetings. The time logs of the people allocated to the project. OOSD--fall'04 Copyright by jubo@cs.umu.se 57 OOSD--fall'04 Copyright by jubo@cs.umu.se 58

Course Related Work Products Course organization Document course specific aspects and support course organization. Team Description Subcontract Prototype Evaluation Weekly Reports Presentations Final Report A presentation of your team and the members of the team. A contract with an external team to deliver a specified piece of software. An evaluation of another team s prototype. Progress reports with up-todate project information. Materials from the team presentations. A complete document set. OOSD--fall'04 Copyright by jubo@cs.umu.se 59 Work Product Definition Defined in detail in [OOTC 97]: Description Purpose Participants Timing Techniques Strengths Weaknesses Notation Traceability Advice & Guidance Verification Examples References Importance See http://<course homepage>/deliverables.html for a detailed description of the course s deliverables and http://forc.darkeye.net for an example from a previous course. OOSD--fall'04 Copyright by jubo@cs.umu.se 60 Contents Project Management Introduction Object-Oriented Software Development Project Management Requirements Gathering (G)UI Design Object-Oriented Analysis and Design Advanced Topics in OOA&D Implementation and Testing References Just do it. Think first and look what you did. Activity Planning Activity Evaluation produce to produce input to to improve Result Result OOSD--fall'04 Copyright by jubo@cs.umu.se 61 OOSD--fall'04 Copyright by jubo@cs.umu.se 62

Project Management Activities Project acquisition Initial project planning Resources assessment Risk and option analysis Cost estimation Project scheduling Project tracking and control Reporting Not required in this course Project Scheduling Define work breakdown structure Break down the project into manageable tasks Identify all activities/ tasks that a project must undertake Distribute effort Define duration and start/ end dates for all activities/ tasks Identify parallelism Assign tasks Assign resources to tasks Do not forget the project functions, lectures, meetings, etc. OOSD--fall'04 Copyright by jubo@cs.umu.se 63 OOSD--fall'04 Copyright by jubo@cs.umu.se 64 Example Effort Distribution Another Group 250 total time in h 200 150 100 50 0 400 350 300 250 200 150 100 50 0 actual plan week35 week36 week37 week38 week39 week40 week41 week42 week43 week44 Lectures Meetings Planning Requirements GUI design Analysis Design Testing Coding Presentations Subcontract Code subc. Evaluation of prototype Manual Final report weekly reports and meeting minutes Other OOSD--fall'04 Copyright by jubo@cs.umu.se 65 350 300 250 200 150 100 50 0 Lectures Administration Study assignments Documentation Implementation Integration Testing OOSD--fall'04 Copyright by jubo@cs.umu.se 66

Another Group (10 cr version) Another Group (10 cr version) OOSD--fall'04 Copyright by jubo@cs.umu.se 67 OOSD--fall'04 Copyright by jubo@cs.umu.se 68 A Project Schedule Time vs budget vs quality work overtime more time fix a problem higher costs reduce control/ documentation decreasing quality OOSD--fall'04 Copyright by jubo@cs.umu.se 69 OOSD--fall'04 Copyright by jubo@cs.umu.se 70

Project Tracking and Control Risk Management Task management Risk management Issue management Quality management Don t forget to schedule time for these activities Investigate potential risk factors Risk Likelihood of occurrence Impact Define mitigation strategies (i.e. be prepared) What can be done to avoid the problem(s) What can be done to solve the problem(s) Monitor risks Determine if predicted risk occurs Properly apply risk aversion steps Collect info for future risk analysis OOSD--fall'04 Copyright by jubo@cs.umu.se 71 OOSD--fall'04 Copyright by jubo@cs.umu.se 72 Example Assume Risk = High staff turnover Likelihood of occurrence = 70% Impact = Increase project time by 15%, project cost by 12% Mitigation strategy Identify high turnover causes Reduce causes before project starts Develop techniques to assure work continuity in light of turnover For example or Top Ten Project Risks Staff deficiencies Unrealistic schedules and budgets Developing the wrong functions Developing the wrong interface Over-engineering Requirements volatility Externally developed items Externally performed tasks Performance problems Assumptions on technology OOSD--fall'04 Copyright by jubo@cs.umu.se 73 See Jalote: An Integrated Approach to Software Engineering, Springer 1997. OOSD--fall'04 Copyright by jubo@cs.umu.se 74

Software s Ten Essentials A product specification A detailed user interface prototype A realistic schedule Explicit priorities Active risk management A quality assurance plan Detailed activity lists Software configuration management Software architecture An integration plan Significant Student Project Risks Personnel schortfalls Lack of Commitment Interpersonal incompatibility Lack of critical project skills (technical and management) Communication problems Unrealistic schedule, budget, and process External (COTS) components Requirements mismatch UI mismatch See IEEE Software 14(2), Mar/Apr 1997, 143-144. OOSD--fall'04 Copyright by jubo@cs.umu.se 75 See Proceedings CSEE&T 2004, 132-137. OOSD--fall'04 Copyright by jubo@cs.umu.se 76 16 Critical Software Practices TM OOSD--fall'04 Copyright by jubo@cs.umu.se 77 Weekly Reports Will help you and us to track project progress Provides information/ data to access project status Major events and/or decisions Major changes to schedule (and resources) Top-10 risk list Major changes to issues list Statistics/ data Is project on schedule? Resources spent (per person, per category, last week, accumulated) Productivity (LOC, LOD, ; last week, accumulated) Summary of issues change log (new issues, closed issues, ; last week, accumulated) (QA?) () OOSD--fall'04 Copyright by jubo@cs.umu.se 78

An Example Top-10 Risk List Risk Items COTS availability Weekly Ranking Current Previous # Weeks 1 1 5 Risk Resolution Progress Performed multilingual NLP COTS survey. Applied for academic discount. Personal shortfalls 2 4 4 Two members are not available for this week. Other team members will put extra effort this week. OOSD--fall'04 Copyright by jubo@cs.umu.se 79