MTAT.03.243 Software Engineering Management

Preview:

Citation preview

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

MTAT.03.243

Software Engineering Management

Lecture 01:

Course Introduction

Dietmar Pfahl

email: dietmar.pfahl@ut.ee Spring 2015

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Structure of Lecture 01

• Clarification of Course Focus

• Exercise 1

• Homework 1

• General Course Information/Overview

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Software Engineering Management

Consistent application of engineering principles and methods to the development of software (intensive) systems

Engineering Principles: Application of systematic (i.e., predictable, repeatable, scalable) procedures - with well-defined goals (e.g., quality, functionality/scope, cost, time) - with well-defined/structured products, processes, and organization Adherence to existing body of knowledge Observation of constraints (standards, time/cost/quality requirements, etc.) Development and use of models

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Software Engineering Management

Consistent application of engineering principles and methods to the development of software (intensive) systems

Engineering Principles: Application of systematic (i.e., predictable, repeatable, scalable) procedures - with well-defined goals (e.g., quality, functionality/scope, cost, time) - with well-defined/structured products, processes, and organization Adherence to existing body of knowledge Observation of constraints (standards, time/cost/quality requirements, etc.) Development and use of models

Planning – deciding what is to be done Organizing – making arrangements Staffing – selecting the right people for the job Directing – giving instructions Monitoring – checking on progress Controlling – taking action to remedy hold-ups Innovating – finding solutions when problems emerge Representing – liaising with clients, users, developers and other stakeholders

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

The Three Ps in Software Projects

• Software

development

happens in

projects

Project

P ?

P ?

P ?

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

The Three Ps in Software Projects

• Products

• People

• Processes

Project

Products

People Processes

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

The Three Ps in Software Projects

• Processes

help manage

products and

people

Project

Products

People Processes

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Process Taxonomy

H. Dieter Rombach, Martin Verlage, Directions in Software Process Research, Advances in Computers, Volume 41, Marvin V. Zelkowitz (Ed.), Pages 1-63, Academic Press, Boston, MA, 1995.

A Process … … defines Who does What, When

and How to reach a specific goal. In software engineering the goal is

to build a software product or to enhance an existing one

Processes

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Plan-Do-Check-Act (PDCA): A systematic approach

to Software Process Improvement (SPI)

• PLAN what you want to accomplish

over a period of time and what you

might do, or need to do, to get there

• DO what you planned to do

• CHECK the results of what you did

to see if the objective was achieved

• ACT on the information –

standardize or plan for further

improvement

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Structure of Lecture 01

• Clarification of Course Focus

• Exercise 1

• Homework 1

• General Course Information/Overview

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Tasks:

• Form groups of two (or three) students

• Read the text below under headline ‘Case

Information’ (5-10 minutes)

• AFTER you have read the text below, put yourself

in the shoes of SI’s process engineer in charge of

planning the intended process change. Recall the

Plan-Do-Check-Act cycle presented in the lecture

and discuss within your group the following

question:

• What activities have to be planned?

• What information/data has to be

gathered/collected?

• In answering these questions, try to be as

detailed as possible. Write down your answers.

Work about 20 minutes on this.

• After 20-25 minutes, we will discuss all groups’

answers jointly in class.

Note: This exercise is a preparation for

Homework 1.

Exercise 1:

Introduction to SPI

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Plan-Do-Check-Act – “Plan”

Where are we today?

How do we get there?

Where do we want to be?

How do we monitor?

How do we check whether we got to where we wanted to get to?

What have we learnt and how do we follow-up?

characterize context identify/list issues (and prioritize)

set goals and measurable targets

define what must be changed and how it must be changed

measure performance get feedback

analyse data compare data with targets

record lessons learnt, best practices update processes, models

Act

Check

Do

Do

Check

Act

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Structure of Lecture 01

• Clarification of Course Focus

• Exercise 1

• Homework 1

• General Course Information/Overview

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Homework 1: Introduction to SPI

Administrative information:

• This homework has to be done individually. Maximum

number of marks: 3

• Submission deadline is Monday, 16-Feb-2015, at 20:00

sharp. If you don’t submit in time, you receive a penalty as

follows:

– Late delivery until Tuesday, 17-Feb-2015, at 20:00 1 mark

penalty (-33% of maximum)

– Late delivery after Tuesday, 17-Feb-2015, 20:00 3 marks

penalty (-100% of maximum)

• No exceptions from the penalty-rules will be made!

• Submit your homework using the ‘Submission’ function

provided on the course web-page:

https://courses.cs.ut.ee/2015/SE_Man/spring/Main/Submiss

ion

• IMPORTANT:

– Only files in PDF format will be accepted! I won’t look at files

that are not PDF.

– Write your name and student id in the report (ideally, also put

a date and give the report a proper heading)

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Structure of Lecture 01

• Clarification of Course Focus

• Exercise 1

• Homework 1

• General Course Information/Overview

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Course Information/Overview

• Level: Advanced course at master's level (in English)

• Credits: 6 ECTS, 4 CP

• Prerequisite: MTAT.03.094 Software Engineering (6 ECTS, 4 CP)

• Work load:

– Lectures (incl. practical work): 56 hours

– Independent work: 100 hours

• Assessment:

– 4 Homework Assignment (individual and pairs) – 25% of grade

– Project (in groups): Report(s) and presentation – 35% of grade

– Exam (written) – 40% of grade

– Thresholds: HW – 10% / Project – 10% / Exam – 10%

• Grade scale: A (90%+), B(80%+), C(70%+), D(60%+), E(50%+), F

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Letter Grades • A - An excellent performance, clearly outstanding. The candidate demonstrates

excellent judgement and a high degree of independent thinking.

• B - A very good performance. The candidate demonstrates sound judgement

and a very good degree of independent thinking.

• C - A good performance in most areas. The candidate demonstrates a

reasonable degree of judgement and independent thinking in the most important

areas.

• D - A satisfactory performance, but with significant shortcomings. The

candidate demonstrates a limited degree of judgement and independent

thinking.

• E - A performance that meets the minimum criteria, but no more. The candidate

demonstrates a very limited degree of judgement and independent thinking.

• F - A performance that does not meet the minimum academic criteria. The

candidate demonstrates an absence of both judgement and independent

thinking.

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Learning Outcomes

At the end of the course you will ...

• have gained a good understanding of modern software

development processes, including Lean and Agile methods

• know the characteristics and effects of different development

processes

• be able to contribute to efficient organization, conduct and

improvement of software development processes

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Basic Literature

PROFES

Manual

• PROFES - User Manual, 1999. Profes Consortium.

• Software Process Definition and Management by Jürgen

Münch, Ove Armbrust, Martin Kowalczyk and Martín

Soto, Springer: the Fraunhofer Series on Software and

Systems Engineering, ISBN 978-3-642-24291-5 (eBook),

DOI: 10.1007/978-3-642-24291-5

– Chapter 1 (Introduction)

• The Goal/Question/Metric method: A practical guide for

quality improvement of software development by Rini van

Solingen and Egon Berghout, McGraw-Hill, ISBN 0-07-

709553-7, December 1999.

• Electronic copies of the basic literature are available to

students through the course web.

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Further Information

https://courses.cs.ut.ee/2015/SE_Man2015/spring/Main/HomePage

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Further Information

https://courses.cs.ut.ee/2015/SE_Man2015/spring/Main/HomePage

Please register for the message board

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Do you know about agile and/or lean

methods?

A. YES

B. NO

YESNO

40%

60%

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Do you know about SCRUM?

A. YES

B. NO

YESNO

47%53%

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Do you know about Extreme Programming

(XP)?

A. YES

B. NO

YESNO

70%

30%

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Do you know about KANBAN?

A. YES

B. NO

YESNO

89%

11%

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Do you know about ‘Software Process

Modeling’?

A. YES

B. NO

YESNO

47%53%

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Do you know about ‘Software

Measurement’?

A. YES

B. NO

YESNO

11%

89%

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Do you know about ‘Process Assessment’?

A. YES

B. NO

YESNO

89%

11%

MTAT.03.243 / Lecture 01 / © Dietmar Pfahl 2015

Next Lecture

• Date/Time:

– Monday, 16-Feb, 12:15-14:00 (room 404)

• Topic:

– Introduction to Software Process Improvement (SPI)

• For you to do:

– Start working on Homework 1

– Read chapter 1 of “Software Process Definition and

Management” by J. Münch et al., Springer 2012

Recommended