TMP3413 Software Engineering Lab. Lecture 01: Team Software Process Overview

Similar documents
The Personal Software Process (PSP) Tutorial

Integrating CMMI, TSP and Change Management Principles to Accelerate Process Improvement

2012/2013 Programme Specification Data. Engineering

Implementing CMMI for High-Performance

The specific objectives of the MMIS program are as follows:

Employee Performance Review

South Texas College Division of Nursing/Allied Health Occupational Therapy Assistant Program Master Syllabus Fall 2006

Plan-Driven Methodologies

Criteria for Accrediting Computer Science Programs Effective for Evaluations during the Accreditation Cycle

Quantitative Project Management Framework via Integrating

British School of Commerce

English 2950: Scientific and Technical Report Writing Common Syllabus

Developing a new generation of business leaders

COURSE SYLLABUS INMT-1317 INDUSTRIAL AUTOMATION

Final Award. (exit route if applicable for Postgraduate Taught Programmes) D991 JACS Code

Personal Software Process (PSP)

Incorporating Lean Six Sigma into an Aviation Technology Program

Project Managing Microsoft Dynamics CRM Implementations

Programme Specification (Undergraduate) Date amended: 28 August 2015

Software Development & Education Center. Microsoft Office (Microsoft Project 2010)

The Team Software Process SM (TSP SM )

COURSE NUMBER AND TITLE: Management Information Systems Concepts

UKE MASTER OF ENGINEERING MANAGEMENT PROGRAM LOW-RESIDENCY DISTANCE OPTION FOR WORKING PROFESSIONALS

JOB DESCRIPTION. 4. DEPARTMENT: Faculty of Education and Children s Services - Department of Initial Teacher Education (ITE)

Staff Development and Performance Management Policy & Procedure

Mastering Microsoft Project B; 3 days, Instructor-led

Role Profile Part 1. Lecturer Hospitality and Tourism Management. Job Title: FBL137. Reference No: Team Leader Tourism, Hospitality and Events

Introducing Software Engineering to the Freshman Student

LONDON SCHOOL OF COMMERCE. Programme Specifications for the. Cardiff Metropolitan University. MSc in International Hospitality Management

Towards Active Team-Based Learning: An Online Instructional Strategy

The Accelerated Instructional Program Review Narrative Report

Leadership Development Best Practices. By Russel Horwitz

A Survey of Plan-Driven Development Methodologies

Application Details Manage Application: Textbook Transformation Grant

The Software Engineering. Today and in the Future. Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213

A Discipline for Software Engineering

Teaching Requirements through Interdisciplinary Projects

PROGRAMMME SPECIFICATION FOR MA in LEADERSHIP AND MANAGEMENT (HEALTH AND SOCIAL CARE SERVICES)

5 Programme Accredited by: Appling to be accredited by Chartered Institute of Personnel and Development

CTL Online Workshop Program Referral Resource Sheet

MIS 424 COURSE OUTLINE

Gogebic Community College Course Syllabus Spring, 2015 Online Course COURSE: Introduction to Entrepreneurship Bus 215

LONDON SCHOOL OF COMMERCE. Programme Specification for the. Cardiff Metropolitan University. BSc (Hons) in Computing

SYLLABUS EDU 395 INTERNSHIP IN TEACHER EDUCATION

Problem-Based Learning in Aerospace Engineering Education

University of Nevada, Reno, Mechanical Engineering Department ABET Program Outcome and Assessment

12 Step Checklist for Meeting Quality Matters Standard 2

Specific Course Objectives (includes SCANS): After studying all materials and resources presented in the course, the student will be able to:

Peer Observation for Teaching Assessment

Guide to the MSCS Program Sheet

Leadership capability

12 Step Checklist for Meeting Quality Matters Standard 1

Assessment Findings and Curricular Improvements Department of Psychology Undergraduate Program. Assessment Measures

Outcomes Assessment and Program Improvement Master of Business Administration

COURSE SYLLABUS ACNT 2302 (3:1:4) Accounting Capstone. Accounting Associate. Business Administration Department. Technical Education Division

o Ivy Tech CONT 101 Introduction to Construction CONT 106 Construction Blueprint Reading BCOT 104 Floor and Wall Layout

Programme name Engineering with Management and Entrepreneurship

Using the PSP. Using the PSP

Electrical and Computer Engineering Undergraduate Advising Manual

WASHBURN UNIVERSITY DUAL DEGREE PROGRAM School of Law (J.D.) & School of Business (M.B.A.)

Capability Maturity Model Integration (CMMI ) Version 1.2 Overview

POFT 2312 BUSINESS CORRESPONDENCE & COMMUNICATION

CALIFORNIA STATE UNIVERSITY DOMINGUEZ HILLS

HARPER ADAMS UNIVERSITY. Programme Specification

H103: General Engineering

WRITING INTENSIVE COURSES (definition, implementation, and resolution voted 1/23/2013)

U n i v e r s i t y o f S a n D i e g o. universit y of san diego / Engineering Programs Engineering

Computer Engineering Undergraduate Program (CpE) Assessment report

ADEPT Performance Standards. for. Classroom-Based Teachers

1. Programme title and designation Biochemistry. For undergraduate programmes only Single honours Joint Major/minor

RECOGNIZING ABILITIES, CREATING OPPORTUNITIES. Strategic Plan

Scrum QA Assessment. John Scarborough VP System Engineering STeP-IN Summit January 2006

SOFTWARE ENGINEERING TEAM STUDIOS. Jaime Niño Computer Science, University of New Orleans New Orleans, LA

Course Syllabus. GAME 1403 Introduction to Game Design and Development

Columbia University. PSYC W2630: Social Psychology. Fall 2015

College of Business Department of Accounting and Management Information Systems

School of Accountancy

Software Engineering: Analysis and Design - CSE3308

Transcription:

TMP3413 Software Engineering Lab Lecture 01: Team Software Process Overview

Topics Working in teams What is TSP? TSP objectives & principles TSP design Team member roles TSP launch TSP project tracking TSP practise

Planning??

What is the TSP? (cont ) The TSP is a framework and a process structure for building and guiding engineering teams that develop software. The TSP contains a team-building process that addresses the team goals, commitment, cohesion, and structure issues a team-working process that addresses engineering processes and practices used by the team A prerequisite for a team to use the TSP is an understanding of the software engineering and process skills taught in the Personal Software Process (PSP).

What is TSP? Defined framework for upper-level undergraduate course in team software engineering It capitalizes on the broad base of industrial experience in planning and managing software projects TSP Provides a balanced emphasis on process, product and teamwork Guides us through the steps of a team software project course Shows us on how to apply known software engineering and principles in a teamwork environment

TSP Objectives The TSP was developed to: help software engineering teams to build quality products within cost and schedule constraints build teams quickly and reliably optimize team performance throughout a project accelerate software process improvement make CMM level 5 behavior normal and expected

Why Engineering Teams Need a Process?

Every tasks need to be done followed by the sequences They need to figure out how to work together as a team They need to define the job they need to do They should know on how to devise a strategy for doing the work They must allocate the tasks among team members and coordinate each of these tasks They need to improve the productivity

TSP Principles Four basic principles of TSP: 1. Learning is most effective when students follow defined and repeatable steps and get rapid feedback on their work 3. When students are exposed to the problems of realistic development projects and then guided to effective solutions, they gain a better appreciation of the value of sound engineering 2. Productive teamwork requires a defined team goal, an effective working environment and capable coaching and leadership 4. Instruction is most effective when it builds on the available body of prior engineering, scientific and pedagogical experience

TSP Design (Seven Principles) 1.Provide a simple framework that builds on the foundation of the PSP 2. Develop products in several cycles 3. Establish standard measures for quality and performance 4. Provide precise measures for teams and students 5. Use role and team evaluations 6. Require process discipline 7. Provide guidance on teamwork problems

TSP Design (cont...) TSP Design notes Purpose 1. Provide a Simple Framework To help students in doing their task, such as developing a product or learning how to do a team project 2. Develop Products in Several Cycles 3. Establish Standard Measures for Quality and Performance In full TSP course, the students need to complete two or three development cycles. Each of these cycles include a full requirements, design, implementation and test development process. Measurements are an essential part of doing consistently highquality work TSP requires the students and their teammates set the personal as well as team goals To have a clear and convincing evidence of what works best for the team and the students will have the confidence to continue using these methods in practice To see the benefits of quality measurements and the value of project planning and tracking

TSP Design (cont...) TSP Design notes Purpose 4. Provide Precise Measures for Teams and Students 5. Use Role and Team Evaluations TSP provides a peer evaluation capability that can be used if the instructor so desires. The students are best informed about the team s and one another s performance, so that they can persuaded to make and honest evaluation, the instructor will be best informed and best able to give fair and equitable grades. To help students in doing their task, such as developing a product or learning how to do a team project To evaluate how each role was performed and not how the people behaved

TSP Design (cont...) TSP Design notes Purpose 6. Require Process Discipline Hard for the Software Engineers to consistently do disciplined personal work because software engineering has no tradition of disciplined personal performance and the software process does not impose a natural discipline on engineers. The instructor will require the students to follow the process and to gather the data. The students need to complete the forms and analyze and use the data. To help students in doing their task, such as developing a product or learning how to do a team project 7. Provide Guidance on Teamwork Problems In the best-run projects it is common to have teamwork problems The most powerful force for resolving team problems is peer pressure TSP provide the guidance for the teamwork problems. With the guidance and support, most engineers can be effective team members.

TSP Structure and Flow The Cyclic Development Strategy Each cycle should produce a testable version that is proper subset of the ultimate product. Each cycle should be small enough to be readily developed and tested in the available time. When combined, the cycle products should produce the desired final product.

Product Need Statement Cycle 1 Launch Strategy 1 Plan 1 Requirements 1 Design 1 Implementatio n 1 Test 1 Postmortem 1 Cycle 2 Launch Strategy 2 Plan 2 Requirements 2 Design 2 Implementatio n 2 Test 2 Postmortem 2 Cycle 3 Launch Strategy 3 Plan 3 Requirements 3 Design 3 Implementation 3 Test 3 Postmortem 3 Finished Product Final Evaluation

Team Member Roles The self-management responsibilities are shared among team members through eight defined team member roles: Customer Interface Manager Design Manager Implementation Manager Planning Manager Process Manager Quality Manager Support Manager Test Manager The team leader acts as team coach.

The TSP Launch (cont..) The TSP launch is a 3-4 day workshop used to kickoff each project phase. The team leader and all team members participate. The launch workshop accelerates team-building. The team establishes a common understanding of the work and the approach they will use. They make a plan that they can commit to and obtain management support for their plan. The most important launch outcome is a motivated team.

The Launch Process Meeting

The TSP Launch Products

TSP Project Tracking Project tracking in the TSP is based on the principles and measures used in the PSP. The detailed team and individual plans facilitate precise project tracking. Each team member is responsible for: gathering data on their work tracking status against their personal plan keeping the team informed Each team member is also responsible for the quality of the work they produce.

TSP Project Tracking

TSP A World-Class Development Practice [1] Software Engineering Best Practices, by Capers Jones, 2010. Development practices by size of application in function points (FP) [1] [2] [2] The Economics of Software Quality, by Capers Jones, 2011. (1FP 30 to 50 SLOC)

TSP applied on organizations Some of the best known organizations that have introduced the TSP are ABB AIS Bechtel-Bettis Boeing DFAS EDS-SDRC Ericsson Honeywell Intuit Kaiser Lockheed Microsoft NASA Langley NCR Teradata Northrop Grummon Teradyne USAF: Hill AFB USN: NAVAIR USN: NAVOCEANO Xerox

Allied Signal engineers PSP and TSP Experiences Provides a framework for coordinating and tracking team activities It s good project management techniques coupled with good personal data. The problem with most software development is, it s done with an ad hoc structure Dave Webb IEEE Software, Nov 2000, p. 125 may appear at first glance that PSP training will cause a slip in schedule, but you actually get your money back after 1,200 lines of code. Bob Musson IEEE Software, Nov 2000, p. 126