software engineering - introduction and motivation (marcello thiry)

118
[email protected] Introduction and motivation

Upload: marcello-thiry

Post on 16-Apr-2017

1.672 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected] and motivation

Page 2: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

What are you

doing here?

Page 3: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]://c4.quickcachr.fotos.sapo.pt/i/o51010754/6042055_Jtk8U.jpeg

Should I know

the answer!?

Page 4: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

It says here

we will learn

about Software

Engineering!!

http://i0.wp.com/www.nerdglaze.com/wp-

content/uploads/2013/08/nerdy-dude.jpg?resize=450%2C305

Page 5: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected] http://ideas.scup.com/pt/files/2013/06/conte%C3%BAdo.jpg

1. Engineering

2. Software Crisis

3. Software relevance

4. Software Engineering

5. Nature of software

6. Quality and Software Quality

7. Software types and domains

Contents.

Page 6: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

create, design, construct,

build, devise, invent, ...

Engineer. (verb)

https://awordfromafriend.files.wordpress.com/2014/10/blocktower.jpg?w=500

Page 7: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

create, design, construct,

build, devise, invent, ...

Engineer. (verb)

Page 8: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Engineering.

The application of scientific

or empirical methods

Page 9: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

The application of scientific or

empirical methods to create,

improve and implement

Engineering.

Page 10: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

The application of scientific or

empirical methods to create,

improve and implement utilities

Engineering.

Page 11: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

An utility must

perform an specific

function or goal

Page 12: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

How to

develop something

useful?

Page 13: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Study the problem

Plan a solution

Verify economic and

technical feasibility

Coordinate the construction

Page 14: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

But what is

Software

anyway?

Page 15: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

John Tukey (1915-2000)https://en.wikipedia.org/?title=John_Tukey

“In 1958, John Tukey, the world-renowned statistician, coined the term software”

(SWEBOK, 2014)

Page 16: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Collection of computer programs,

procedures, and possibly associate

documentation and data pertaining

to the operation of a computer

system

Software.

(IEEE Std 610.12.1990)

Page 17: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Documentation?!

Yeah, documentation!

But we will talk more

about it during our course

Page 18: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Just a

reminder:

The difficult part is

to produce USEFUL

documentation!!!

Page 19: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Thence,

Software

Engineering...

Page 20: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Software Engineering.

The application of scientific or

empirical methods to create,

improve and implement software

Page 21: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

“The term software engineering wasused in the title ofa NATO conference held in Germany in 1968”

http://homepages.cs.ncl.ac.uk/brian.randell/NATO/

Page 22: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

The origins of

Software

Engineering

Page 23: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Back in the day...

Popular Science, Jan 1965, 107

Business Week,

Nov 5, 1966, 127.

http://thecomputerboys.com/?tag=crisishttp://thecomputerboys.com/?tag=crisis

Page 24: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

“Software Crisis”

or

“Software Gap”

Late 1960s, early 1970s...

Page 25: Software Engineering - Introduction and Motivation (Marcello Thiry)

Late 1960s, early 1970s...

•Many projects were failing or had been

abandoned

• Cost and budget overruns

•Software not reliable and

difficult to maintain

•Difficult to meet the user

requirements

The crisis...

https://kathleenkerridge.files.wordpress.com/2015/02/depre

ssion-week-image-300x300.jpg?w=300

Page 26: Software Engineering - Introduction and Motivation (Marcello Thiry)

Late 1960s, early 1970s...

•More powerful computers and

programming languages

•Demand growth

•More complex software

•More people involved

The crisis...

https://pamsblog666.files.wordpress.com/2011/06/computer20studies.jpg

Page 27: Software Engineering - Introduction and Motivation (Marcello Thiry)

Late 1960s, early 1970s...

•Improve professionals’ skills

•Methodologies

• Communication with users

• Team work

The crisis...

http://eolocomunicacion.com/wp-content/uploads/2015/05/fusionyadquisiciondempresas-e1431067600969.png

Page 28: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

And today?

Page 29: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Software is everywhere...

Page 30: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

The avionics system in the F-22 Raptor

consists of about 1.7 Million LOC

The Boeing’s 787 Dreamliner contains about 6.5

million LOC

A premium-class automobile contains close to

100 million LOC

http://spectrum.ieee.org/transportation/systems/this-car-runs-on-code

LOC = lines of software code

http://3.bp.blogspot.com/--

ae42w82PVo/VEU2EOJmQXI/AAAAAAAABoM/x5vv

azR_BQM/s1600/homer-screaming.gif

Page 31: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Ubiquitous or pervasive Computing

Most people don’t even realize

how computing is part of their

lives today

And what is the

impact of this

on software?

http://betanews.com/wp-

content/uploads/2014/09/Internet-of-things.jpg

Page 32: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Do you realize the relevance of

software nowadays?

And what is your role on this?

https://portalbuzzuserfiles.s3.amazonaws.com/ou-

15436/userfiles/images/pointing%20finger.jpg

Page 33: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Let’s define

software

engineering

properly!

Page 34: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

(1) The application of a systematic,

disciplined, quantifiable approach to the

development, operation, and maintenance of

software; that is, the application of

engineering to software.

(2) The study of approaches as in (1).

(IEEE Std 610.12.1990)

Page 35: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

(1) The application of a systematic, disciplined, quantifiable approach to the

development, operation, and maintenance of

software; that is, the application of

engineering to software.

(2) The study of approaches as in (1).

(IEEE Std 610.12.1990)

Page 36: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

(1) The application of a systematic,

disciplined, quantifiable approach to the development, operation, and maintenance

of software; that is, the application of

engineering to software.

(2) The study of approaches as in (1).

(IEEE Std 610.12.1990)

Page 37: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

(1) The application of a systematic,

disciplined, quantifiable approach to

the development, operation, and maintenance

of software; that is, the application of

engineering to software.

(2) The study of approaches as in (1).

(IEEE Std 610.12.1990)

Page 38: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

(1) The application of a systematic,

disciplined, quantifiable approach to the

development, operation, and

maintenance of software; that is, the

application of engineering to software.

(2) The study of approaches as in (1).

(IEEE Std 610.12.1990)

Page 40: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

http://mrbakersgrade6.weebly.com/uploads/

2/4/7/6/24767728/6979844.jpg?339

Page 41: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Systematic

Principles

Discipline

Knowledge

Maintenance

OperationDevelopment

Reliable

Application

Technique

Method

Approach

Quality

Software

Procedures

Methodology

Team

Scientific

PracticalDesign

Tool

Productivity

Page 42: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

And if you have to explain the

nature of software right now?

This was a

question!

Page 43: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

I need to

understand the

nature of

software…

Page 44: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Frederick Phillips Brooks, Jr.(1931-)

https://en.wikipedia.org/wiki/Fred_Brooks

“In 1986, Fred Brooks wrote the famous paper No Silver Bullet – Essence and Accident of Software Engineering”http://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf

American computer architect, softwareengineer, and computer scientist. He isalso the author of the seminal book“The Mythical Man-Month (1975)”.

Page 45: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

http://www.polyvore.com/cgi/img-

thing?.out=jpg&size=l&tid=32131103

“… building software will always be hard. There is no silver bullet.”

(Brooks, 1986)

There is no single technique or technology, which

by itself can improve some aspect of software

development 10x in 10 years…

Page 46: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Why?

Page 47: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Essence

Difficulties

in Software

Development

Accidents

Inherent in the nature of the software

mapping specification to software and

verifying that the design properly meets

business needs

Related to the production of software

and not inherent

Brooks, 1986

Most methods and techniques

attack the accidents

Page 48: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Just a

reminder:

Accidental occurring by chance

Incidental

Brooks “refired” his paper 10 years

later in the book

The Mythical Man-Month, 20th

Anniversary Edition, 1995

problems which engineers create and can fix

Related to the implementation process

Page 49: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Let’s start with

the Essence…

Page 51: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Simple huh!?

http://www.ideo.com/work/atm-interface

Page 52: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

No two parts are alike

If they are, we make them into subroutines

In contrast to elements used in other domains

Huge number of states

Impossible to

enumerate all

Page 53: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

There is no way to abstract away

the complexity because it is

essential

Complex domains

Aviation

Telecommunications

Banking

Health sector

We still need to

model and implement

their complexity

Page 54: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Technical consequences

Communication difficulties

Product flaws, cost overruns, schedule delays

Difficulty in enumerating, understanding and

anticipating all possible states

Unreliability, security trapdoors

Difficulty in maintaining

Introduction of defects, hard to understand, hard to use

Page 55: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Management consequences

Difficult project

overview

Poor knowledge

management

personnel

turnover

is a huge

problem

Page 57: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Software must conform to

arbitrary limitations

Imposed by human institutions and

systems regulations and rules

Subject to arbitrary

changes

Difficult

to plan

Can occur late in

the development

Page 58: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Software has to conform

to other existing systems

Software has to conform to its

environment

http://www.ktckids.com/images/puzzlePieces.png

Page 60: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Continuous change of

users’ needs

Illusion of

easy malleability

http://pipllp.com/wp-content/uploads/2014/09/evolution-of-cars_CKO.jpg

More pressure

to change the

software

Page 62: Software Engineering - Introduction and Motivation (Marcello Thiry)

Where is the software?

http://img.gfx.no/806/806035/original.628x353.jpg

Intangibility

No geometric

representation

Page 63: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

We need to use different representations

to model different aspects of the software

In UML 2.2

there are 14

types of

diagrams

http://i.stack.imgur.com/8tmN9.jpg

Page 64: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

How to attack on

the essence…

Page 65: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Requirements refinement

Incremental development

Grow, not build it

Great Designers

rapid prototyping

Identify, develop and keep them

Reuse

Buy, don’t build

Page 66: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

And about

the Accident…

Page 67: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Some breakthroughs helped to

reduce accidental difficulties…

High-level languages

Time-sharing

Programming environments, tools

Object-oriented development

Programming verification

Page 68: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

http://www.infoq.com/articles/No-Silver-Bullet-Summary

Interesting reading…

No Silver Bullet Reloaded Retrospective OOPSLA Panel Summary

http://cliparts.co/cliparts/dc9/6kL/dc96kLRc7.png

Page 69: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

But wait,

there’s more…

Page 71: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Does the software

wear out?

http://chrishowardbooks.com/img/easter-egg-graphics/car.png

Page 72: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Of course not!

But...

Page 73: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

It was

working

before...

... installing

the damn

update!

https://www.careeraddict.com/Surprised_Businessman.jpg

Page 74: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Software DETERIORATES

when...

we introduce a new defect when we

change it

there were environmental changes

that could not be foreseen by the

designer

Page 75: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected] Pressman, 2015

Page 76: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Of course, we are

considering that the

software first release

has not already been

delivered “rotten”!

http://spc.fotolog.com/photo/44/42/36/deselingue/1200006994_f.jpg

Page 77: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

And what is your

role on this?

Page 78: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

We should be

concerned about

the quality of

we deliver!

http://www.aw3i.com/images/posts/sid_zen_dressdown.jpg

Page 79: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Quality?

https://pbs.twimg.com/profile_images/434052607297191936/ZRHhp8Fx.jpeg

Page 80: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

xConsider this two products..

http://hobby-armada.com/images/item/tamiya/sportscar/292.jpg

http://cdn.inaxiom.net/web/wp-content/uploads/2011/08/Ford-Ka-2011-06.jpg

Page 81: Software Engineering - Introduction and Motivation (Marcello Thiry)

Which one

has a better

quality?

http://www.tvmost.com.hk/most/uploads/images/2015/Article/2015.07/2015.07.23/pigteammate/005.jpg

Page 82: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Which are the expected

features for each one?

Quality is the “degree to

which a set of inherent

characteristics fulfils

requirements”

ISO 9000, 2015

Page 83: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Problems

with quality

The sport car has not

reached the required horse

power

The compact car has been

consuming more fuel than

expected

Page 84: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Grade is the “category or rank

given to different quality

requirements for products,

processes or systems having the

same functional use”

Different technical characteristics

High grade brand, first class, ...

low grade brand, second class, ...

ISO 9000, 2015

Page 85: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Got it!?

http://www.clickgratis.com.br/fotos-imagens/saca-

rolha/aHR0cDovL2lzaG9wLnM4LmNvbS5ici9wcm9kdXRvcy8

wMS8wMS9pdGVtLzI4OC82LzI4ODY2N18zR0cuanBn.jpg

http://www.clickgratis.com.br/fotos-imagens/saca-

rolha/aHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi9lL

2U1L0tvcmtlbnppZWhlcl8wMV9LTUouanBnLzIwMHB4LUtvcmtlbnppZWhlcl8wMV9LTUouanBn.jpg

Page 87: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Difficult to define

Difficult to measure

Different perceptions

http://www.bms.co.in/wp-content/uploads/2014/11/Customer-Decision.jpg

http://businessanalytics.pt/wp-

content/uploads/2013/01/Lupa-

300x268.jpg

Page 88: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

And Software

quality?

Page 89: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

http://images.clipartpanda.com/happy-computer-user-happy-computeruser.png

http://images.clipartpanda.com/stressor-clipart-computer-stress.jpg

Page 90: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Capability of software product to satisfy

stated and implied needs when used under

specified conditions

(ISO/IEC 25000, 2014)

Software Quality.

Page 91: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Capability of software product to satisfy

stated and implied needs when used under

specified conditions

(ISO/IEC 25000, 2014)

Software Quality.

Page 92: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Product?

https://pixabay.com/pt/caixa-papel%C3%A3o-

pacote-parcela-brown-158523/

Page 93: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Artifact that is produced, is quantifiable,

and can be either an end item in itself or a

component item.

Additional words for products are material

and goods.

(PMBOK, 2013) also used by (ISO/IEC 25000, 2014)

Product.

Page 94: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

PMBOK uses different terms for PRODUCT

(tangible) e SERVICE (intangible)

A product can be:

a component item

an improvement of other item

a final item

PMBOK - Um Guia do Conhecimento em Gerenciamento de Projetos

Page 95: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Software Product

Ready to be released

to users

It needs to be verified

and validated

Page 96: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Capability of software product to satisfy

stated and implied needs when used under

specified conditions

(ISO/IEC 25000, 2014)

Software Quality.

Page 97: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Capability of software product to satisfy

stated and implied needs when used under

specified conditions

(ISO/IEC 25000, 2014)

Software Quality.

Page 98: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Software

specification

http://blog.axen.pro/wp-content/uploads/2013/06/Writing-Quality-Software-Requirements.png

Page 99: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Capability of software product to satisfy

stated and implied needs when used under

specified conditions

(ISO/IEC 25000, 2014)

Software Quality.

Page 100: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

But has

everything

been written?

What are

the users

expectations?http://www.handymanstartup.com/wp-

content/uploads/2013/02/IMG_Customer_rating_buttons.jpg

Page 101: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Capability of software product to satisfy

stated and implied needs when used under

specified conditions

(ISO/IEC 25000, 2014)

Software Quality.

Page 102: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Does the

USE really

matters?

https://d3ui957tjb5bqd.cloudfront.net/images/screenshots/products/7/79/79359/hammer-o.jpg?1393432661

Page 103: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Ok, I got it!

But all software

are the same?

Page 104: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Can we classify

software products?

http://blog.globalknowledge.com/wp-

content/uploads/2011/08/squarehole95615108.jpg

Page 107: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

A software product can be:

Commercial off-the-shelf - COTS

http://tynmedia.com/tynmag/wp-content/uploads/sites/3/2015/07/comercio_electronico.jpg

Page 108: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Defined by a market-driven need,

commercially available, and whose fitness

for use has been demonstrated by a broad

spectrum of commercial users

(ISO/IEC 25030, 2007)

COTS (commercial off-the-shelf).

Page 109: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Commercial off-the-shelf - COTS

Fully developed - FD

http://www.spd-haimhausen.de/wp-content/uploads/2010/02/bausteine.jpg

A software product can be:

Page 110: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Developed for a specific application

from a user requirements specification

FD (fully developed) or

Custom software development.

(ISO/IEC 25030, 2007)

Page 111: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Commercial off-the-shelf - COTS

Fully developed - FD

Modified off-the-

shelf - MOTS

http://www.sundlep.com/wp-content/uploads/2015/02/web12.jpg

A software product can be:

Page 112: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Similar to COTS, but it allows some

degree of customization (modification

of its features) from users specific

needs

MOTS (modified off-the-shelf).

Page 113: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

Pressman considers 7

broad categories

Challenges!

Pressman, 2015

Page 114: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

System software

Application software

Engineering/scientific software

Embedded software

Product-line software

Web/mobile applications

Artificial intelligence software

(Pressman, 2015)

Page 115: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

And more...

http://betanews.com/wp-content/uploads/2014/09/Internet-of-things.jpg

http://1.bp.blogspot.com/-7WLjdMquht4/VAANOVyBZSI/AAAAAAAAEZ8/JDIrrYWeJyc/s1600/Cloud-computing-concept_nobg.png

Page 116: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

And what is your

role on this?

Page 117: Software Engineering - Introduction and Motivation (Marcello Thiry)

[email protected]

http://mrbakersgrade6.weebly.com/uploads/

2/4/7/6/24767728/6979844.jpg?339

Page 118: Software Engineering - Introduction and Motivation (Marcello Thiry)

References.

(Brooks, 1986). No Silver Bullet: Essence and Accident in Software Engineering. Proceedings of the

IFIP Tenth World Computing Conference: 1069–1076.

(Brooks, 1995). The Mythical Man-Month. Anniversary Edition. Addison Wesley.

(IEEE Std 610.12.1990). IEEE Standard Glossary of Software Engineering Terminology.

(ISO 9000, 2015). Quality management systems — Fundamentals and vocabulary.

(ISO/IEC 25000, 2014). Systems and software engineering — Systems and software Quality Requirements

and Evaluation (SQuaRE) — Guide to SQuaRE.

(ISO/IEC 25030, 2007). Software engineering — Software product Quality Requirements and Evaluation

(SQuaRE) — Quality requirements.

(PMBOK, 2013). A Guide to the Project Management Body of Knowledge (PMBOK® Guide). 5th ed. Project

Management Institute (PMI).

(Pressman, 2015). Software Engineering: A Practitioner's Approach. 8th ed. McGraw-Hill Education.

(SWEBOK, 2014). SWEBOK - Guide to the Software Engineering Body of Knowledge. Version 3.0. IEEE.