Buscar

Slides de Aula I

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 41 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 41 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 41 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Prof. Me. Edson Moreno
UNIDADE I
Fundamentos de 
Engenharia de Software
 O termo engenharia de software surgiu em meados de 1960, em resposta à crise do software
vivida na época.
 A crise do software foi gerada por um rápido aumento da demanda do produto software e 
que devido à inexistência de técnicas, padrões e normas, o desenvolvimento do software não 
tinha fôlego para atender a essa demanda. 
 Em uma tentativa de solucionar o problema. O desenvolvimento do software passou a ter 
características fundamentadas na engenharia.
 O software se estabeleceu como uma ferramenta importante na estratégia competitiva das 
empresas e corporações e ainda hoje as necessidades de software são altas.
 Nesse contexto, a Unidade I da disciplina Fundamentos de 
Engenharia de Software trata dos fundamentos da engenharia 
de software, suas características, princípios, problemas, 
projetos e avanços nessa área.
Introdução
 Fundamentos da Engenharia de Software identificam a dualidade entre a engenharia de 
software e a engenharia de sistemas, e apresenta o produto software de computador. 
 Nesse capítulo, serão abordados os seguintes itens:
 Engenharia de software
 Engenharia de sistemas
 O produto software
 Fábrica de software
 Características do software
1 Fundamentos da engenharia de software
ALECRIM, Emerson. IBM anuncia primeiro chip com tecnologia 
de 5 nanômetros. Disponível em: 
https://tecnoblog.net/216125/ibm-chip-5-nanometros/, 
05/06/2017. Acesso em: 13 dez. 2020.
 A Engenharia de Software projeta e constrói o produto software de computador. 
 Abrange programas que executam em computadores de qualquer tamanho, arquitetura ou 
volume de processamento.
 Combinam-se dados de vários tipos. As informações são apresentadas em diversas formas: 
impressas, virtuais ou convertidas em comandos de sensores da mecatrônica.
 A convergência de sistemas computacionais com diversas interfaces e meios de 
comunicação geram questões complexas para os engenheiros de software: hardware
diferente, diversos ambientes operacionais, regras do negócio que mudam constantemente, 
adaptações a novas tecnologias e interfaces, e a ligação de todos estes elementos. 
Engenharia de software
A engenharia de software usa o conhecimento e resultados de 
diversas áreas, fornece outros problemas de estudo e auxilia na 
resolução de problemas. “O mundo moderno não poderia existir sem o 
software. Infraestruturas e serviços nacionais são controlados por 
sistemas computacionais, e a maioria dos produtos elétricos inclui um 
computador e um software que o controla” (SOMMERVILLE, 2011).
 O software é desenvolvido ou passa por um processo de engenharia, não é um produto 
industrializado. Os problemas de qualidade de hardware podem ser corrigidos pela 
substituição de peças, o que não ocorre com o software. 
 O software é um produto produzido a partir de perguntas e respostas, que levam à 
modelagem de componentes que fornecem detalhes para codificação. 
O custo do software está concentrado no trabalho de 
engenharia, que, por sua vez, contempla os seguintes itens:
 Especificação, documentação e procedimentos; 
 Análise, projeto, codificação, implementação, testes, 
diagnósticos e implantação; 
 Suporte ao cliente/usuário.
Engenharia de software – Processo de engenharia e custo
Qual o preço do
software?
 A engenharia de sistemas trata da integração dos elementos que compõem os sistemas 
computacionais: software, hardware, pessoal, base de dados e redes de computadores. 
 A integração desses elementos dá suporte ao software. Cada elemento da engenharia de 
sistemas em estudo possui suas características próprias referentes: ao projeto, modelos, 
procedimentos e documentos específicos do elemento em desenvolvimento. 
Engenharia de sistema
Fonte: MORENO (2020).
Infraestrutura projetada pela 
engenharia de sistemas para atender 
a aplicação de controle de estoques.
Cliente – PC Computer
Fonte: MORENO (2020).
Cliente – SO Windows
Cliente – Browser
<<MySQL>>
Nó 2 – Server Computer 2
Server – SOR Linux
Web Server – Apache/Tomcat
<<JPS>>
Server – App-Controle de estoque
<<MySQL>>
Server-SGBD MySQL
Server – SOR Windows
Web – Server – Microsoft IIs
<<HTML>>
Server – Gerenciador de Telas
<<HTML>>
Server – Gerenciador de Contas
<<TCP/IP>>
<<HTTP>>
<<TCP/IP>>
<<DNS>>
<<JSP>>
<<HTML>>
Nó – Server Computer 1
 No teste de uma determinada funcionalidade, todas as funções estavam testadas e 
operacionais em ambiente restrito.
 Contudo, o software deve ser implantado em uma rede local de computadores.
 Para saber o desempenho, é necessário avaliar o software em ambiente de rede e acesso 
aos dados.
Ambiente operacional:
1. O processamento do software é feito na estação e a base de dados está no servidor.
2. Múltiplos acessos a funções podem ocorrer em múltiplas estações de computadores.
Questões a serem levantadas:
1. Existem outras funções do software que está sendo 
processado no servidor?
2. Como está o desempenho da CPU para o SGBD processar a 
chamada de dados?
3. A banda de rede está compatível com o tráfego de dados?
Engenharia de sistema: Análise de infraestrutura de TI para software
 O produto software tem sido responsável por grandes avanços da humanidade. 
 O uso inteligente da informação e ideias inovadoras passam a ser prioridades para o 
crescimento das empresas.
 O software muda o modo como as empresas são operadas, como as pessoas trabalham e 
como a tecnologia da informação apoia as operações empresariais e as atividades de 
trabalho do usuário final. 
 O software propiciou melhorias na tecnologia, na educação, no entretenimento, nos sistemas 
produtivos, na ciência e na engenharia.
O produto software I
Ferramentas digitais começaram a ser usadas nas atividades da sociedade 
e em uma espécie de aceitação global “a sociedade da informação 
reconfigura o modo de ser, agir, se relacionar e existir dos indivíduos” 
(KOHN, 2007). 
Software de computadores continua a ser a tecnologia única mais 
importante no cenário mundial” (PRESSMAN, 2011).
 O software continua sendo construído por encomenda. No mundo do software, novos 
componentes são criados dia a dia e criados com o princípio de ser reusado. 
 A reusabilidade do software é uma métrica que avalia o quanto um programa ou parte dele 
pode ser usado em outras aplicações. 
 Antes de idealizar o produto software, um escopo do sistema deve ser determinado. Só após 
dimensionar o tamanho, a complexidade e as exigências de processamento do sistema é 
que será possível projetar o software.
O produto software II
Caso de estudo: Implementação de interface e imagem 3D.
Um sistema para uma clínica médica com imagens em 2D vai 
passar a trabalhar com novas interfaces e imagens em 3D. 
Questões a serem resolvidas.
 As imagens 3D e informações associadas exigem um 
desempenho maior do que um sistema com imagens 2D.
 Que software dá para usar do antigo sistema?
 Quais as tecnologias e programas que deverão ser 
implementados no sistema?
Tecnologias modernas, avançadas e criativas não existiriam sem o software. O que faz do 
software o produto mais importante desta era. Das alternativas abaixo, qual delas expressa a 
definição do software?
a) É um conjunto de normas e padrões responsável pela inteligência empresarial e que bem 
elaborado permite a tomada de decisão.
b) É a organização de programas que formam um produto que reflete uma base de 
conhecimento pronta para ser utilizada. 
c) Especifica o próprio computador, ou seja, é formado pela infraestrutura da tecnologia da 
informação que dará apoio às operações do usuário.
d) Especifica o sistema de informação com base em padrões da 
qualidade, tais como a ISO 9126 ou ISO 25000.
e) São instruções intelectualmente organizadas.
Interatividade
Tecnologias modernas, avançadas e criativas não existiriam sem o software. O que faz do 
software o produto maisimportante desta era. Das alternativas abaixo, qual delas expressa a 
definição do software?
a) É um conjunto de normas e padrões responsável pela inteligência empresarial e que bem 
elaborado permite a tomada de decisão.
b) É a organização de programas que formam um produto que reflete uma base de 
conhecimento pronta para ser utilizada. 
c) Especifica o próprio computador, ou seja, é formado pela infraestrutura da tecnologia da 
informação que dará apoio às operações do usuário.
d) Especifica o sistema de informação com base em padrões da 
qualidade, tais como a ISO 9126 ou ISO 25000.
e) São instruções intelectualmente organizadas.
Resposta
O software possui um duplo papel na produção, pode 
constituir um produto completo ou pode também ser o 
veículo de melhora de outro produto:
 Software como produto completo
 Produtos genéricos.
 Produto sob encomenda (ou personalizados).
 Software como veículo de melhora de outro software
 Plug-ins e módulos de extensões.
 Software completo que pode ser adaptado a outro software.
 Software como veículo de melhora de um produto industrial
 Produtos industriais que passam a ser automatizados 
pela computação.
 Realidade aumentada.
 Internet das Coisas (IoT – Internet of Things)
O produto software – Tipos de produção de software I
Fonte: Acervo pessoal.
O produto software – Explore
Como o software vai mudar a interação e análise do ambiente e 
dos elementos que o compõem
COMPUTERWORLD. Realidade aumentada é vista como solução por empresários. 
Computerworld. Disponível em: 
https://computerworld.com.br/2020/04/07/realidade-aumentada-e-vista-comosolucao-
por-empresarios/, 07/04/2020. Acesso em 11 abr. 2020. 
Saiba automatizar as coisas pela internet
DIGICOMP. Internet das coisas: como ela otimiza os recursos na Indústria? Digicomp Engenharia e Tecnologia. 
Disponível em:
https://digicomp.com.br/internet-das-coisas-como-ela-otimiza-os-recursos-naindustria/. Acesso em 11 abr. 2020.
Atualmente, uma enorme indústria de software tornou-se fator 
dominante nas economias do mundo industrializado. Equipes 
de especialistas em software, cada qual se concentrando numa 
parte da tecnologia necessária para distribuir uma aplicação 
complexa, substituíram o programador solitário de antigamente 
(PRESSMAN, 2011).
Fábrica de software
Grandes fábricas de software
IBM. Home Page. IBM®. Disponível em: https://www.ibm.com/br-pt. Acesso em 11 abr. 2020. 
MICROSOFT. Microsoft ®. Home Page. Disponível em: https://www.microsoft.com/pt-br/. Acesso em: 11 abr. 2020. 
TOTVS. TOTVS ®. Home Page. Disponível em: https://www.totvs.com/. Acesso em: 11 abr. 2020. SAP. Home Page. 
SAP ®. Disponível em https://www.sap.com/brazil/index.html. Acesso em: 11 abr. 2020.
Não estamos 
sozinhos
 Aumento contínuo em quantidade e diversidade da demanda 
 Projetos de desenvolvimento de software são muitas vezes iniciados sem a clara 
especificação das necessidades do cliente e com uma avaliação imprecisa.
 Índice baixo de planejamento do software
 Dificuldades em integrar diversas soluções implicam em falhas ou omissões no planejamento 
do software, o que gera um aumento de custo na entrega do software construído.
 Inexperiência dos desenvolvedores 
 A experiência é adquirida ao longo do tempo e a cada projeto tende a constituir uma 
experiência única, que pouco contribui para assegurar o sucesso de projetos subsequentes. 
 Mantenabilidade do sistema 
 Mantenabilidade é a característica de um componente, 
produto, equipamento ou sistema de receber 
manutenção, dentro de um determinado período a 
um custo preestabelecido.
Fábrica de software: Problemas no desenvolvimento do software
 Os desenvolvedores enfrentam “três principais desafios da engenharia de software” 
(SOMMERVILLE, 2003 e 2011):
1. O desafio do legado – Sistemas antigos acumulam grande volume de eventos e quantidade 
de dados que não podem ser descartados. O desafio é fazer manutenção e atualização de 
sistemas antigos.
2. O desafio da heterogeneidade – A escalabilidade computacional se depara com diferentes 
tipos de arquiteturas e sistemas operacionais. O desafio é desenvolver software em 
diversas arquiteturas computacionais. 
3. O desafio do fornecimento – Entregar sistemas em curto espaço de tempo.
Fábrica de software – Problemas enfrentados pelos fabricantes de software
Fonte: 
https://www.portallos.com.br/2010/11/10/como
-funciona-a-internet/
Hierarquia e análise do produto software pela tecnologia da informação: 
Características do software
Fonte: MORENO (2020); PRESSMAN (2002). 
A hierarquia e análise do produto software leva 
a sua construção.
O objetivo da análise é verificar 
os requisitos de cada 
componente que 
dará suporte ao software.
Produto: SOFTWARE
Software Hardware Dados Rede 
Dados Função Comportamento
Característica
Engenharia de requisitos
(visão do mundo) 
Requisito de processamento
Engenharia de componentes
(visão de domínio) 
Modelagem da análise e projeto 
(visão do elemento) 
Programa
Engenharia
de
Software
Construção e integração
(visão detalhada)
 A dualidade do software com o hardware permite a construção de sistemas computacionais 
cada vez mais avançados, contudo o que realmente justifica a função do computador é o 
software.
O hardware é manufaturado e se desgasta. A manutenção se dá pela substituição de peças.
 “O software não se desgasta, mas se deteriora” (PRESSMAN, 2011), e é desenvolvido por 
processos de engenharia.
Características do software – Dualidade do software com o hardware
♣
“Mortalidade infantil”
“Desgaste”
“Estabilidade”
Fonte: PRESSMAN (2011). 
Índice de 
Falhas
Índice de 
Falhas
Curva de falhas do software
Aumento da taxa de falhas
devido a efeitos colaterais
Mudanças Curva Real
Tempo Tempo
Curva Idealizada
 Devido às mudanças causadas no software, no acompanhamento de sua evolução são 
registradas versões e releases. 
Versões – registros do software feitos sobre as mudanças que ocorrem quando o software 
está em desenvolvimento. 
Release (lançamento) – registro da versão que é liberada para o usuário.
Características do software – Acompanhamento das mudanças
Após várias mudanças causadas no software, o software 
deve ser reestruturado:
 Fazer limpeza dos dados.
 Fazer limpeza dos códigos redundantes.
 Atualizar hardware.
 Atualizar com novas versões o sistema operacional e as 
linguagens de programação.
 Gerar novos algoritmos. 
 Adaptar de forma correta as antigas e novas funcionalidades com 
base em uma nova arquitetura. 
Durante o desenvolvimento do software, várias mudanças ocorrem. O desenvolvedor deve 
manter o controle destas mudanças por meio da atividade de versionamento, das quais se 
destacam o controle das versões e releases. Assinale a alternativa que corresponde à 
definição de release de software.
a) É a versão revisada pelo cliente, pronta para adaptações de funcionalidades e/ou 
correções de falhas.
b) O release é constantemente gerado à medida que atualizações são feitas por parte do 
desenvolvedor ou on-line.
c) O release especifica a aplicação de patchs ou service packs na aplicação.
d) O registro da versão ocorre quando o software está em fase 
de desenvolvimento e testes, sendo que o release é o 
registro da versão que possui o menor número de falhas.
e) Várias versões são geradas no desenvolvimento do 
software, o release é o registro da versão que é distribuída 
para os clientes.
Interatividade
Durante o desenvolvimento do software, várias mudanças ocorrem. O desenvolvedor deve 
manter o controle destas mudanças por meio da atividade de versionamento, das quais se 
destacam o controle das versões e releases. Assinale a alternativa que corresponde à 
definição de release de software.
a) É a versão revisada pelo cliente, pronta para adaptações de funcionalidades e/ou 
correções de falhas.
b) O release é constantemente gerado à medida que atualizações sãofeitas por parte do 
desenvolvedor ou on-line.
c) O release especifica a aplicação de patchs ou service packs na aplicação.
d) O registro da versão ocorre quando o software está em fase 
de desenvolvimento e testes, sendo que o release é o 
registro da versão que possui o menor número de falhas.
e) Várias versões são geradas no desenvolvimento do 
software, o release é o registro da versão que é distribuída 
para os clientes.
Resposta
 Em princípios do desenvolvimento de sistemas, são mostradas as particularidades do 
software, o ambiente computacional de desenvolvimento, os perfis dos profissionais que 
atuam no desenvolvimento e os problemas que estes profissionais enfrentam dia a dia.
Neste capítulo, serão abordados os seguintes itens:
 Aplicações e desenvolvimento de sistemas computacionais
 Ambiente computacional
 Problemas de relacionamento entre a gerência, cliente e desenvolvedor
 Projeto e construção do software
2 Princípios do desenvolvimento de sistemas
Fonte: SBG. Sistema de Gestão 
ERP Completo. Disponível em:
http://www.sbg.com.br/, 2015. 
Acesso em: 13 dez. 2020.
 O objetivo e conteúdo de informação são fatores importantes na determinância da natureza 
de um aplicativo (REZENDE, 2005).
 Nessa perspectiva, é necessário avaliar cinco características essenciais referentes à 
capacidade e usabilidade do software: 
 Captação de dados 
 Processamento dos dados 
 Apresentação da informação 
 Segurança
 Desempenho
Aplicações e desenvolvimento de sistemas computacionais
WHITE, Sarah K. Os 10 profissionais de tecnologia mais 
desejados em 2020 (e como contratá-los). Disponível em:
https://cio.com.br/gestao/os-10-profissionais-de-tecnologia-
mais-desejados-em-2020-e-como-contrata-los/, 14/01/2020. 
Acesso em: 13 dez. 2020.
 No ERP, as avaliações das características 
de capacidade e usabilidade do software
são feitas por módulos. 
 Na análise do negócio, o princípio básico é 
dividir este sistema em módulos. Isto é 
chamado de modularidade.
 Na análise do sistema, um módulo surge a 
partir do momento em que cada 
componente que o constitui adquire sua 
independência funcional.
Aplicações – Método de Análise de um Sistema ERP
Visão do Analista de Negócios
Visão do Engenheiro de Software.
ADMINISTRAÇÃO CONTABILIDADE MARKETING
Aprovação de Pagamentos
Aprovação de Pedidos
Controle dos Negócios
Planejamento Empresarial
Análise de Custos
Caixa 
Controle de Pedidos
Contas a Pagar
Contas a Receber
Faturamento 
Análise dos Negócios
Especificação do Negócio
Exploração das Informações
Perfil do cliente
Propaganda e Publicidade
DOCUMENTOS GERADOS 
(Relatórios)
Balanços
Gráficos
Lista de Nomes
Estatísticas
Notas
Tabela de valores
BANCO DE 
DADOS
CLIENTE - BROWSER
SERVIDOR SOR
SOR
Conta do Usuário
Telas
SERVIDOR APP
Administração 
Contabilidade 
Marketing
Documentos Gerados
SERVIDOR SGBD
Fonte: MORENO (2020).
 Software aplicativo para microcomputador – continua a representar os mais inovadores 
projetos de interfaces com seres humanos de toda a indústria de software. 
 Software básico (firmware) – programas que dão apoio a outros programas e são usados 
para o controle de dispositivos computadorizados. Possuem forte interação com o hardware, 
normalmente chamado de driver. Uma das categorias de firmware é o software embarcado
que reside em memória ROM (software embutido (embedded software)).
 Software de tempo real (real time) – software que monitora, analisa e controla eventos do 
mundo real e que interage com ambiente externo. A IoT – Internet of Things (Internet das 
coisas) é uma das aplicações.
Aplicações – Áreas do conhecimento e a amplitude do desenvolvimento I
Fonte: Acervo pessoal.
 Software científico e de engenharia – voltado para processamento de números complexos. A
realidade aumentada é uma das aplicações.
 Software empresarial – e-business (ERP, CRM e SCM) é o de maior aplicação nos negócios. 
Tecnologias de destaque nessa área: é o Big Data e o BI (Business Intelligence).
 Software para web – é uma extensão do e-business, sendo que a maior parte do 
processamento é feito em servidores e abrange: WebApps, e-commerce (B2B, B2C e C2C) e 
Cloud Computing são as aplicações mais comuns.
 Software de inteligência artificial – Para resolver problemas complexos do conhecimento. 
Uma tecnologia inovadora que passa a ter grande aplicação são as redes neurais.
Aplicações – Áreas do conhecimento e a amplitude do desenvolvimento II
Fonte: https://www.aerotime.aero/26835-
How-crisis-reshuffled-biggest-airlines-in-
the-world
Algumas disciplinas têm similaridades com a engenharia de software e se confundem, como é 
o caso da engenharia de sistemas. Boa parte dos métodos e técnicas são semelhantes, 
contudo, são disciplinas distintas. Veja o exemplo:
Aplicações – Similaridade da Engenharia de software com a engenharia de 
sistemas I
 Na visão da engenharia de 
sistemas, a análise da bomba 
de insulina é apresentada em 
um diagrama de blocos, 
mostrando os componentes de 
hardware e o fluxo de controle 
da bomba de insulina. 
Fonte: SOMMERVILLE (2011).
Sensor
Display 1
BombaMódulo
de agulha
Relógio
Controlador Alarme
Display 2
Reservatório de insulina
Fonte de energia
 Na visão da engenharia de software, a análise da bomba de insulina é apresentada em um 
modelo de negócio com um diagrama de atividades. 
 O modelo representa algumas funções de interface com o usuário e com o hardware, que 
devem ser apresentadas pelo software.
Aplicações – Similaridade da Engenharia de software com a engenharia de 
sistemas II
Fonte: SOMMERVILLE (2011).
Sensor
de sangue
Açúcar
no sangue
Analisar a leitura
do sensor
Calcular
insulina
Registro
de insulina
Dose de
insulina
Registro de dose
Processar comandos
da bomba
Dados da
bomba
Controlar bomba
de insulina
Bomba de
insulina
Foi entregue ao departamento de TI uma lista de pedidos de software. Cada pedido pode ser 
obtido no comércio e/ou ser desenvolvido. O TI precisa separar as ordens de serviços por 
setor, de modo a associar o pedido a determinada área de software.
I – Adaptar um nobreak de resposta de 300 mseg ao servidor de um Data Center.
II – Adquirir software para o controle do almoxarifado.
III – Para o marketing é necessário um editor de fotos e imagens.
IV – Um novo escâner foi adquirido, mas não está funcionando nos computadores.
Alternativas:
a) Aplicativo para microcomputador, básico, científico e de 
engenharia, e inteligência artificial.
b) Básico, web, empresarial e tempo real.
c) Científico e de engenharia, aplicativo para microcomputador, 
tempo real e básico.
d) Inteligência artificial, básico web e tempo real.
e) Tempo real, empresarial, aplicativo para 
microcomputador, básico.
Interatividade
Foi entregue ao departamento de TI uma lista de pedidos de software. Cada pedido pode ser 
obtido no comércio e/ou ser desenvolvido. O TI precisa separar as ordens de serviços por 
setor, de modo a associar o pedido a determinada área de software.
I – Adaptar um nobreak de resposta de 300 mseg ao servidor de um Data Center.
II – Adquirir software para o controle do almoxarifado.
III – Para o marketing é necessário um editor de fotos e imagens.
IV – Um novo escâner foi adquirido, mas não está funcionando nos computadores.
Alternativas:
a) Aplicativo para microcomputador, básico, científico e de 
engenharia, e inteligência artificial.
b) Básico, web, empresarial e tempo real.
c) Científico e de engenharia, aplicativo para microcomputador, 
tempo real e básico.
d) Inteligência artificial, básico web e tempo real.
e) Tempo real, empresarial, aplicativo para 
microcomputador, básico. 
Resposta
 O desenvolvimento do software não se baseia apenas na construção de programas de 
computador.
 É necessário um controle rígido de procedimentos, padrões e normas que devem ser 
documentados para o acompanhamento e controle dos serviços. 
 Cada projeto de softwarepossui suas características próprias para um elenco de pessoas 
envolvidas, nomeadas de analistas do negócio, que representam o cliente e o usuário, 
interessados no software. 
Ambiente computacional
Fonte: MORENO (2020).
Requisitos
Especificação e
Modelo do Negócio
Analista do Sistema
Analistas de Negócio
 Quando os ideais dos stakeholders conflitam, o que é comum, surgem vários 
problemas de relacionamento das partes envolvidas no projeto, devido a áreas de 
conhecimentos diferentes. 
Caso: 
Cliente – Na construção do código estamos atrasados com o cronograma, podemos 
contratar mais programadores?
Fato: Atualmente os cronogramas para o desenvolvimento de software ainda são imprecisos, 
não é um processo manufaturado, é um trabalho de engenharia. 
 Outro programador deverá conhecer antes o projeto, estudar 
o ambiente de desenvolvimento para poder trabalhar. 
 E quando a codificação está atrasada, não há tempo 
para isso.
Problemas de relacionamento entre a gerência e o desenvolvedor
Problemas de relacionamento entre a gerência e o desenvolvedor
Caso: 
Cliente – Preciso que coloque um botão para extrair o relatório de fornecedores, o mais 
rápido possível.
Fato: Uma definição inicial ruim é a principal causa de fracasso 
dos esforços de desenvolvimentos de software. 
 Dominar a informação, função, desempenho, interfaces, 
restrições de projeto e critérios de validação é fundamental, 
mesmo para implementar um simples botão.
 Porque este botão estará vinculado a uma função do 
software, que pode ainda não existir ou não foi especificada 
nos requisitos funcionais.
 Pode ainda necessitar de acessar um dado que não existe ou 
não está implementado no SGBD.
Fonte: 
https://www.ordissinaute.fr/foru
m/2014-09-25-
humour?page=0%2C345
Problemas de relacionamento entre desenvolvedores
Caso:
Desenvolvedor – preciso entregar logo o programa funcionando para o cliente. Só assim 
termino o projeto.
Fato: Os dados de indústrias indicam que entre 50% e 70% de 
todo o esforço gasto num programa será despendido depois que 
ele for entregue pela primeira vez ao cliente.
Fonte: 
https://www.ordissinaute.fr/foru
m/2014-09-25-
humour?page=0%2C345
 A engenharia de software é uma tecnologia em camadas e que deve estar fundamentada 
em um comprometimento organizacional com a qualidade (PRESSMAN, 2011).
 A qualidade determina padrões e normas a serem aplicadas pela engenharia de software. A 
qualidade leva à cultura de melhoria contínua dos processos e abordagens cada vez mais 
efetivas para a engenharia de software.
Exemplo: 
 NBR ISO/IEC 25010: Requisitos e avaliação 
de qualidade de sistemas e software.
Projeto e construção do software I
Fonte: PRESSMAN (2002).
Projeto e construção do software II
 Processo – O processo define o controle do gerenciamento do projeto por meio de modelos 
de processos, tais como: cascata, incremental, prototipagem, espiral, RUP, PSP e TSP.
 Métodos – Incluem um amplo conjunto de tarefas que abrange gestão de equipes, análises 
de requisitos, projeto, construção de programas, teste, entrega, suporte e manutenção. É o 
caso da metodologia ágil SCRUM e a matriz de responsabilidades do PMBOK.
 Ferramentas – Fornecem apoio automatizado ou semiautomatizado aos métodos e 
processos. A ferramenta CASE (Computer Aided
Software Enginnering) é a mais completa. Os
frameworks e ferramentas de modelagem também
fazem parte desse conjunto.
Fonte: PRESSMAN (2002).
 Funciona no domínio da aplicação. Usa basicamente um conjunto de classes e interfaces 
decompostas em quadros com seus respectivos códigos.
Projeto e construção do software – Ferramenta framewok Netbeans
Fonte: MORENO (2020).
Ambiente de trabalho na 
codificação e modelagem de 
software com o framework 
NetBeans.
De acordo com Pressman (2011), a engenharia de software é uma tecnologia em camadas, e 
que deve estar fundamentada em um comprometimento organizacional com a qualidade. Uma 
destas camadas é o método. Assinale a alternativa com o conceito de método.
a) São responsáveis por manter integradas as camadas de tecnologia.
b) Incluem um amplo conjunto de tarefas que abrangem análises de requisitos, projeto, 
construção de programas, teste e manutenção.
c) Fornecem apoio automatizado ou semiautomatizado à construção de software eficiente.
d) Determinam o processo de software consistente baseado em 
metas, atividades e procedimentos de planejamento.
e) Representam a qualidade a ser implementada no 
produto software.
Interatividade
De acordo com Pressman (2011), a engenharia de software é uma tecnologia em camadas, e 
que deve estar fundamentada em um comprometimento organizacional com a qualidade. Uma 
destas camadas é o método. Assinale a alternativa com o conceito de método.
a) São responsáveis por manter integradas as camadas de tecnologia.
b) Incluem um amplo conjunto de tarefas que abrangem análises de requisitos, projeto, 
construção de programas, teste e manutenção.
c) Fornecem apoio automatizado ou semiautomatizado à construção de software eficiente.
d) Determinam o processo de software consistente baseado em 
metas, atividades e procedimentos de planejamento.
e) Representam a qualidade a ser implementada no 
produto software.
Resposta
Fonte: PRESSMAN (2002).
KOHN, Karen; MORAES, Cláudia Herte de. O impacto das novas tecnologias na sociedade: 
conceitos e características da Sociedade da Informação e da Sociedade Digital. INTERCOM, 
2007. Disponível em: https://www.intercom.org.br. Acesso em: 04 abr. 2020. 
PRESSMAN, Ph.D. Roger S. Engenharia de Software: uma abordagem profissional. 7. ed. Rio 
de Janeiro: McGraw-Hill, 2011.
REZENDE, Denis Alcides. Engenharia de software e sistemas de informação. 3. ed. Rio de 
Janeiro: Brasport, 2005.
SOMMERVILLE, Ian. Engenharia de Software. 9. ed. São Paulo: Pearson Prentice Hall, 2011.
Referências
ATÉ A PRÓXIMA!

Outros materiais