![Page 1: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/1.jpg)
[email protected]ção e motivação
![Page 2: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/2.jpg)
O que você está
fazendo aqui?
![Page 3: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/3.jpg)
http://c4.quickcachr.fotos.sapo.pt/i/o51010754/6042055_Jtk8U.jpeg
Eu deveria ter
a resposta!?
![Page 4: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/4.jpg)
Aqui diz que iremos
aprender Engenharia
de Software!!
http://i0.wp.com/www.nerdglaze.com/wp-
content/uploads/2013/08/nerdy-dude.jpg?resize=450%2C305
![Page 5: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/5.jpg)
[email protected] http://ideas.scup.com/pt/files/2013/06/conte%C3%BAdo.jpg
1. Engenharia
2. Crise do Software
3. Relevância do software
4. Engenharia de Software
5. Software e suas características
6. Qualidade e Qualidade de Software
7. Tipos e domínios de software
Conteúdo.
![Page 6: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/6.jpg)
criar, fabricar, construir,
fazer, compor, inventar, ...
Engenhar.
https://awordfromafriend.files.wordpress.com/2014/10/blocktower.jpg?w=500
![Page 9: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/9.jpg)
Engenharia.
Aplicar métodos científicos ou
empíricos para criar, melhorar e
implementar
![Page 10: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/10.jpg)
Engenharia.
Aplicar métodos científicos ou
empíricos para criar, melhorar e
implementar utilidades
![Page 12: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/12.jpg)
Como
desenvolver
algo útil?
![Page 13: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/13.jpg)
Estudar o problema
Planejar uma solução
Verificar a viabilidade
econômica e técnica
Coordenar a construção
![Page 14: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/14.jpg)
Mas o que é
Software?
![Page 15: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/15.jpg)
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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/16.jpg)
Conjunto de programas de
computador, procedimentos e possível
documentação associada, e dados
relacionados à operação de um
sistema de computador
Software.
(IEEE Std 610.12.1990)
![Page 17: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/17.jpg)
Documentação?!
Sim, documentação!
Mas, falaremos mais sobre
isso durante a disciplina
![Page 19: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/19.jpg)
Logo,
Engenharia de
Software...
![Page 20: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/20.jpg)
Engenharia de Software.
Aplicar métodos científicos ou
empíricos para criar, melhorar e
implementar software
![Page 21: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/21.jpg)
“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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/22.jpg)
Como surgiu a
Engenharia de
Software?
![Page 23: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/23.jpg)
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 25: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/25.jpg)
Late 1960s, early 1970s...
•Vários projetos de software estavam
falhando ou sendo abandonados
•Atrasos
•Acima do orçamento
•Software não confiável e de difícil
manutenção
•Dificuldade em atender aos
requisitos dos clientes
A crise...
https://kathleenkerridge.files.wordpress.com/2015/02/depre
ssion-week-image-300x300.jpg?w=300
![Page 26: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/26.jpg)
Late 1960s, early 1970s...
•Computadores mais potentes e linguagens
de programação mais robustas
• Crescimento da demanda
•Software mais complexos
•Mais pessoas envolvidas
A crise...
https://pamsblog666.files.wordpress.com/2011/06/computer20studies.jpg
![Page 27: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/27.jpg)
Late 1960s, early 1970s...
•Formação de profissionais
•Metodologias
• Comunicação com clientes
• Trabalho em equipe
A crise...
http://eolocomunicacion.com/wp-content/uploads/2015/05/fusionyadquisiciondempresas-e1431067600969.png
![Page 28: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/28.jpg)
E hoje?
![Page 29: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/29.jpg)
Software is everywhere...
![Page 30: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/30.jpg)
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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/31.jpg)
Computação ubíqua ou pervasiva?
As pessoas nem percebem mais como
a computação faz parte do dia a dia
delas
E qual o impacto
disso no software?
http://betanews.com/wp-
content/uploads/2014/09/Internet-of-things.jpg
![Page 32: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/32.jpg)
Você percebe a relevância do
software nos dias de hoje?
E qual é o seu papel nisso tudo?
https://portalbuzzuserfiles.s3.amazonaws.com/ou-
15436/userfiles/images/pointing%20finger.jpg
![Page 33: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/33.jpg)
Vamos definir
Engenharia de
Software
formalmente
![Page 34: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/34.jpg)
(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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/35.jpg)
(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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/36.jpg)
(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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/37.jpg)
(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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/38.jpg)
(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 41: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/41.jpg)
Systematic
Principles
Discipline
Knowledge
Maintenance
OperationDevelopment
Reliable
Application
Technique
Method
Approach
Quality
Software
Procedures
Methodology
Team
Scientific
PracticalDesign
Tool
Productivity
![Page 42: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/42.jpg)
E se você tivesse que explicar
a natureza do software agora?
Isso era
uma pergunta!
![Page 43: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/43.jpg)
Eu preciso
entender a
natureza do
software...
![Page 44: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/44.jpg)
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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/45.jpg)
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)
Não há uma técnica ou tecnologia única que pode
melhorar algum aspecto do desenvolvimento de
software 10x em 10 anos…
![Page 46: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/46.jpg)
Por que?
![Page 47: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/47.jpg)
Essência
Dificuldades
no
Desenvolvimento
de SoftwareAcidentes
Inerente à natureza do software
Mapear a especificação para o software e
Verificar se a solução realmente atende às
necessidades do negócio
Relacionados com a produção do software
e não são inerentes
Brooks, 1986
A maioria dos métodos e
técnicas atacam os acidentes
![Page 48: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/48.jpg)
Apenas um
lembrete:
Acidental Acontecer ao acaso
Incidente
Brooks “refired” his paper 10 years
later in the book
The Mythical Man-Month, 20th
Anniversary Edition, 1995
problemas que os engenheiros criam e podem
resolver
Relacionado com o processo de implementação
![Page 49: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/49.jpg)
Vamos iniciar
com a Essência…
![Page 52: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/52.jpg)
Não existem duas partes iguais
Se elas existem, deveríamos usar sub-rotinas
Diferença com elementos usados em outros domínios
Alta quantidade de estados
Impossível
enumerar todos
![Page 53: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/53.jpg)
Não há como abstrair completamente a
complexidade por que ela é essencial
Domínios complexos
Aviação
Telecomunicações
Sistema bancário
Área da saúde
…
Nós ainda precisaremos
modelar e implementar
estas complexidades
![Page 54: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/54.jpg)
Consequências técnicas
Dificuldades de comunicação
Falhas no produto, custos acima do planejado, atrasos, …
Dificuldade de enumerar, entender
e antecipar todos os estados possíveis
Baixa confiabilidade, quebras de segurança
Dificuldade de manutenção
Introdução de defeitos, difícil de entender, difícil de usar
![Page 55: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/55.jpg)
Consequências gerenciais
Visão geral do
projeto é difícil
Fraca gerência de
conhecimento
Rotatividade
é um grande
problema
![Page 57: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/57.jpg)
Software deve estar em conformidade
com limitações arbitrárias
Impostas por instituições humanas
e sistemas normas e regras
Sujeitas a alterações
arbitrárias
É difícil
planejar
Pode ocorrer mais
tarde no projeto
![Page 58: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/58.jpg)
Software precisa estar
em conformidade com
sistemas existentes
Software precisa estar em
conformidade com seu ambiente
http://www.ktckids.com/images/puzzlePieces.png
![Page 60: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/60.jpg)
Mudança contínua das
necessidades dos usuários
Ilusão de fácil
maleabilidade
http://pipllp.com/wp-content/uploads/2014/09/evolution-of-cars_CKO.jpg
Maior pressão
para modificar
o software
![Page 62: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/62.jpg)
Onde está o software?
Produto intangível
http://img.gfx.no/806/806035/original.628x353.jpg
Não há uma
representação
geométrica
![Page 63: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/63.jpg)
Nós precisamos usar diferentes
representações para modelar diferentes
aspectos do
software
Na UML 2.2
existem 14
tipos de
diagramas
http://i.stack.imgur.com/8tmN9.jpg
![Page 64: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/64.jpg)
Como atacar
a essência…
![Page 65: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/65.jpg)
Refinamento dos requisitos
Desenvolvimento incremental
Fazer o software crescer, não construi-lo
Grandes projetistas
Prototipação rápida
Identificá-los, desenvolvê-los e mantê-los
Reusar
Comprar ao invés de desenvolver
![Page 66: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/66.jpg)
E sobre os
acidentes…
![Page 67: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/67.jpg)
Alguns avanços ajudaram a
reduzir dificuldades acidentais…
Linguagens de alto-nível
Time-sharing
Ambientes e ferramentas de programação
Desenvolvimento orientado a objetos
Verificação
…
![Page 68: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/68.jpg)
http://www.infoq.com/articles/No-Silver-Bullet-Summary
Leitura interessante…
No Silver Bullet Reloaded Retrospective OOPSLA Panel Summary
http://cliparts.co/cliparts/dc9/6kL/dc96kLRc7.png
![Page 69: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/69.jpg)
Mas espere,
tem mais…
![Page 71: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/71.jpg)
O Software se
DESGASTA com o
tempo?
http://chrishowardbooks.com/img/easter-egg-graphics/car.png
![Page 72: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/72.jpg)
Claro que não!
Mas...
![Page 73: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/73.jpg)
Estava
funcionando
antes...... da
maldita
atualização!
https://www.careeraddict.com/Surprised_Businessman.jpg
![Page 74: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/74.jpg)
O Software se DETERIORA
quando...
introduzimos um defeito ao
modificá-lo
ocorrem mudanças no ambiente que
não puderam ser previstas pelo
projetista
![Page 75: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/75.jpg)
[email protected] Pressman, 2015
![Page 76: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/76.jpg)
Claro, estamos
considerando que o
software não veio “podre”
de fábrica!
http://spc.fotolog.com/photo/44/42/36/deselingue/1200006994_f.jpg
![Page 78: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/78.jpg)
Devemos nos
preocupar com
a qualidade do
que entregamos!
http://www.aw3i.com/images/posts/sid_zen_dressdown.jpg
![Page 80: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/80.jpg)
xConsidere estes dois produtos...
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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/81.jpg)
Qual tem mais
qualidade?
http://www.tvmost.com.hk/most/uploads/images/2015/Article/2015.07/2015.07.23/pigteammate/005.jpg
![Page 82: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/82.jpg)
Quais as características
esperadas de cada um?
Qualidade é o “grau no
qual um conjunto de
características inerentes
satisfaz a requisitos”
ISO 9000, 2015
![Page 83: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/83.jpg)
Problemas com
a qualidade
O carro esportivo não
alcançou a potência
estabelecida
O carro popular está com
um consumo superior ao
esperado
![Page 84: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/84.jpg)
Classe*é uma “categoria ou
classificação atribuída a diferentes
requisitos da qualidade para
produtos, processos ou sistemas
que têm o mesmo uso funcional”
Diferentes características técnicas
1 linha, 1 classe, ...
2 linha, 2 classe, ...
Em inglês: Grade. PMBOK (2013) adota o termo “grau”*
ISO 9000, 2015
![Page 85: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/85.jpg)
Pegou a ideia!?
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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/87.jpg)
Difícil definir
Difícil medir
Diferentes percepções
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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/88.jpg)
E Qualidade de
Software?
![Page 89: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/89.jpg)
http://images.clipartpanda.com/happy-computer-user-happy-computeruser.png
http://images.clipartpanda.com/stressor-clipart-computer-stress.jpg
![Page 90: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/90.jpg)
Capability of software product to satisfy
stated and implied needs when used under
specified conditions
(ISO/IEC 25000, 2014)
Software Quality.
![Page 91: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/91.jpg)
Capacidade de um produto de software de satisfazer às necessidades explícitas e
implícitas quando utilizado sob condições especificadas
(ISO/IEC 25000, 2014)
Qualidade de software.
![Page 93: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/93.jpg)
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: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/94.jpg)
O PMBOK diferencia os termos PRODUTO
(tangível) e SERVIÇO (intangível)
Um produto pode ser:
um componente de outro item
um aprimoramento de outro item
um item final
PMBOK - Um Guia do Conhecimento em Gerenciamento de Projetos
![Page 95: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/95.jpg)
Produto de software
Pronto para ser liberado
ao usuário
Precisa ser verificado
e validado
![Page 96: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/96.jpg)
Capacidade de um produto de software de
satisfazer às necessidades explícitas e
implícitas quando utilizado sob condições especificadas
(ISO/IEC 25000, 2014)
Qualidade de software.
![Page 97: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/97.jpg)
Capacidade de um produto de software de
satisfazer às necessidades explícitas e implícitas quando utilizado sob condições especificadas
(ISO/IEC 25000, 2014)
Qualidade de software.
![Page 98: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/98.jpg)
Especificação
do software
http://blog.axen.pro/wp-content/uploads/2013/06/Writing-Quality-Software-Requirements.png
![Page 99: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/99.jpg)
Capacidade de um produto de software de
satisfazer às necessidades explícitas e
implícitas quando utilizado sob condições especificadas
(ISO/IEC 25000, 2014)
Qualidade de software.
![Page 100: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/100.jpg)
E o que não
está escrito?
O que o
usuário
espera?http://www.handymanstartup.com/wp-
content/uploads/2013/02/IMG_Customer_rating_buttons.jpg
![Page 101: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/101.jpg)
Capacidade de um produto de software de
satisfazer às necessidades explícitas e
implícitas quando utilizado sob condições especificadas
(ISO/IEC 25000, 2014)
Qualidade de software.
![Page 102: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/102.jpg)
Does the
USE really
matters?
https://d3ui957tjb5bqd.cloudfront.net/images/screenshots/products/7/79/79359/hammer-o.jpg?1393432661
![Page 103: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/103.jpg)
Ok, entendi!
Mas todo
software
é igual?
![Page 104: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/104.jpg)
Nós podemos
classificar
produtos de
software?
http://blog.globalknowledge.com/wp-
content/uploads/2011/08/squarehole95615108.jpg
![Page 107: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/107.jpg)
Um produto de software pode ser:
De prateleira - COTS
http://tynmedia.com/tynmag/wp-content/uploads/sites/3/2015/07/comercio_electronico.jpg
![Page 108: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/108.jpg)
Definido por uma necessidade de mercado,
disponível comercialmente e cuja adequação
para uso foi demonstrada por um largo
espectro de usuários
Software de prateleira.COTS (commercial off-the-shelf)
(ISO/IEC 25030, 2007)
![Page 109: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/109.jpg)
Um produto de software pode ser:
De prateleira – COTS
Sob encomenda - FD
http://www.spd-haimhausen.de/wp-content/uploads/2010/02/bausteine.jpg
![Page 110: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/110.jpg)
Desenvolvido para uma aplicação
específica a partir de uma
especificação de requisitos do software
(ISO/IEC 25030, 2007)
Software sob encomenda.FD (fully developed) or custom software development
![Page 111: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/111.jpg)
Um produto de software pode ser:
De prateleira – COTS
Sob encomenda – FD
De prateleira
modificável – MOTS
http://www.sundlep.com/wp-content/uploads/2015/02/web12.jpg
![Page 112: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/112.jpg)
Similar ao COTS, mas permite algum grau
de adaptação (modificação de suas
funcionalidades) a partir de
necessidades específicas dos usuários
Software de prateleira modificável.MOTS (modified off-the-shelf)
![Page 114: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/114.jpg)
Software básico
Software aplicativo
Sw para engenharia e aplicações científicas
Software embarcado
Linhas de produto de software
Aplicações web e móveis
Inteligência Artificial
![Page 115: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/115.jpg)
E mais...
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 118: Engenharia de Software - Introdução e Motivação (Marcello Thiry)](https://reader031.vdocuments.site/reader031/viewer/2022022201/589f36ab1a28ab4d568b71e9/html5/thumbnails/118.jpg)
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.