Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

1www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Engenharia de Software - Conceitos Gerais
ENGENHARIA DE SOFTWARE
ENGENHARIA DE SOFTWARE - CONCEITOS GERAIS
CONCEITOS GERAIS DE ENGENHARIA DE SOFTWARE
Aborda-se conceitos gerais de engenharia de software, discutindo fontes, referên-
cias e questões clássicas para a preparação em concursos nesta área.
É fundamental compreender o conceito de software, segundo renomados engenhei-
ros como Sommerville e Pressman, cujas obras são utilizadas no curso. A definição de 
software, conforme Sommerville, é essencial para entender a engenharia de software. 
SOFTWARE
O software é composto por instruções, estrutura de dados e documentação. Ian 
Sommerville, autor clássico frequentemente citado em bancas, destaca a importância 
da documentação, ampliando o escopo para além do programa em si. A engenharia de 
software, alinhada ao caráter de engenharia, abrange diversas atividades, inspirada em 
disciplinas estabelecidas como a Engenharia Automotiva e de Produção.
Originada nos anos 70 em resposta à crise do software, essa disciplina surgiu devido 
ao descompasso entre a evolução dos computadores e o desenvolvimento de software 
amador e carente de processos estruturados. A necessidade de uma abordagem mais 
profissional levou à adoção de práticas organizadas na engenharia de software, afastan-
do-se da abordagem amadora e solitária.
Na busca por superar a crise, abandonou-se a abordagem linear inicial, semelhante 
a uma linha de produção, em prol de uma abordagem mais adaptável aos variados cená-
rios de desenvolvimento de software.
EVOLUÇÃO DOS CONCEITOS: FLUXO, PROCESSO E MODELOS
Os conceitos de fluxo, processo e modelos de processo serão explorados nas próxi-
mas aulas, evidenciando as limitações da abordagem linear.
ABORDAGEM DISCIPLINADA E INTEGRADA
A engenharia de software adota uma abordagem disciplinada e integrada, reconhe-
cendo a importância de evitar a dependência de um único programador. A ênfase na 
qualidade requer a implementação de processos, métodos e ferramentas, visando supe-
rar problemas decorrentes da dependência exclusiva de um profissional.
5m
2www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Engenharia de Software - Conceitos Gerais
ENGENHARIA DE SOFTWARE
É comum na área de Tecnologia da Informação (TI) observar uma preferência por fer-
ramentas, especialmente entre indivíduos sem formação específica na área. Este é um 
equívoco comum resultante da falta de familiaridade com a abordagem disciplinada e 
integrada necessária na engenharia de software. 
FERRAMENTAS NA ENGENHARIA DE SOFTWARE: 
ESTRATÉGIA E IMPLEMENTAÇÃO
As ferramentas ocupam uma posição estratégica, não sendo adequadas como a pri-
meira camada, pois, em caso de inadequação do processo, apenas automatizaram defi-
ciências existentes. A prioridade é aprimorar a forma de trabalho, conforme estudos 
da engenharia de software indicam. Após a implementação de processos e métodos, 
incluindo os ágeis, as ferramentas podem ser introduzidas.
A adoção de ferramentas sem processos estruturados e métodos estabelecidos 
resulta na automação de ambientes caóticos, sem resolver efetivamente o problema. 
Sommerville, em sua obra clássica, abordou problemas recorrentes na época da crise do 
software, como estouros de orçamento, descumprimento de prazos, software que não 
atende aos requisitos e código de difícil manutenção.
Esses desafios refletem situações comuns na área de TI, evidenciando a necessidade 
de uma gestão adequada do projeto e do código fonte. Hoje, a falta de aplicação dos prin-
cípios da engenharia de software é vista como a principal causa de problemas em projetos.
Ao longo dos anos, a engenharia de software desenvolveu processos, métodos e fer-
ramentas para solucionar esses problemas, como a análise estática de código, ante-
riormente complexa e hoje facilitada por ferramentas especializadas. O curso abordará 
exemplos práticos dessas ferramentas, destacando como o avanço tecnológico sim-
plificou tarefas desafiadoras e ressaltando que a não aplicação desses conhecimentos 
reflete uma abordagem obsoleta atualmente. 
10m
15m
3www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Engenharia de Software - Conceitos Gerais
ENGENHARIA DE SOFTWARE
DISCUSSÃO SOBRE A HISTÓRIA DA CRISE DO SOFTWARE
Ao discutir a história da crise do software e a necessidade de organização diante do caos, 
observa-se que em outras áreas para solucionar problemas semelhantes adotam processos 
estruturados. O contexto é comparado ao desenvolvimento de um carro, onde atividades 
são detalhadas e seguem um processo antes de chegar à produção. A engenharia de soft-
ware precisou se adaptar ao longo do tempo, e essa evolução será explorada posteriormente.
Dentre os autores relevantes, Pressman destaca o processo de software como a 
metodologia para atividades, ações e tarefas necessárias ao desenvolvimento de um 
software de alta qualidade. O foco na qualidade é considerado fundamental, e aulas 
específicas sobre qualidade de software, que envolvem verificações e validações do pro-
duto, serão abordadas posteriormente.
É enfatizado que não se deve adotar ferramentas de forma precipitada para resolver pro-
blemas, pois a ferramenta, mesmo útil, depende de um processo organizado, atividades bem 
delineadas e métodos apropriados para o contexto do software em construção. Sommerville 
complementa, descrevendo o processo de software como um conjunto de atividades rela-
cionadas que resultam na produção de um produto de software. Esse processo culmina na 
entrega de um produto, e futuramente serão discutidas as verificações e validações do pro-
cesso e do produto, temas abordados por outros autores clássicos da engenharia de software.
Observa-se que, ao longo do tempo, as práticas na área evoluíram. No passado, os 
processos eram mais prescritivos, seguindo a abordagem “dirigido a planos” proposta 
por Sommerville. Isso se assemelhava à engenharia civil, onde um plano é seguido à risca 
na construção de um prédio. No entanto, percebeu-se que, ao contrário de um edifício, 
o software está sujeito a muitas mudanças, incluindo alterações nos requisitos. Esse 
entendimento marca uma transição na abordagem da engenharia de software, desta-
cando a necessidade de flexibilidade e agilidade nos processos para melhor se adaptar 
às dinâmicas do desenvolvimento de software. 
PROCESSO ADAPTÁVEL NA ENGENHARIA DE SOFTWARE
O processo não deve ser excessivamente rígido; ele precisa ser ágil e adaptável. 
Essa flexibilidade é crucial, e posteriormente serão abordados modelos de processo, que 
podem transformar-se em modelos genéricos passíveis de adaptação. Teorias de apren-
dizagem, provenientes da formação em licenciatura em informática, contribuirão para a 
compreensão progressiva desses conceitos.
20m
4www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Engenharia de Software - Conceitos Gerais
ENGENHARIA DE SOFTWARE
COMPLEXIDADE E ADAPTAÇÃO NOS PROCESSOS
Os processos são complexos e dependem de fatores como o produto a ser desenvol-
vido, a equipe envolvida e os recursos disponíveis. Não há um processo universalmente 
ideal; sua adaptação ao contexto é não apenas possível, mas necessária. A flexibilidade 
pode variar entre uma abordagem mais formal e outra mais flexível. Essa discussão é 
essencial, pois os modelos de processo, destacados por Pressman e Sommerville, têm 
visões distintas sobre as atividades envolvidas, possibilitando adaptação.
ATIVIDADES (PRESSMAN)
Pressman categoriza as atividades em comunicação, planejamento, modelagem, 
programação, construção e entrega. Entender essas atividades é fundamental, visto 
que questões de concursos frequentemente exploramdetalhes específicos conforme 
apresentados no livro de Pressman. Em concursos, as bancas podem escolher questões 
de diferentes fontes, sendo relevante focar nas mais recorrentes.
5www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Engenharia de Software - Conceitos Gerais
ENGENHARIA DE SOFTWARE
ATIVIDADES DE APOIO (PRESSMAN)
Além disso, Pressman inclui atividades de apoio, que variam e não demandam uma aten-
ção especial, uma vez que sua compreensão ocorre naturalmente no decorrer do aprendizado.
Compreender o conjunto de atividades é essencial, sendo possível explorar as ati-
vidades de apoio conforme necessário dentro do processo global, adaptando-se con-
forme a abordagem específica de cada autor.
CONTROLE E ACOMPANHAMENTO DO PROJETO
Para qualquer processo de software, em determinado momento, haverá a necessi-
dade de controle e acompanhamento do projeto. Isso ocorre porque, ao implementar 
um processo, muitas vezes, há a criação de um projeto associado. Esse entendimento é 
derivado dos estudos em gerenciamento de projetos, nos quais a engenharia de soft-
ware incorporou elementos provenientes dessas análises. Dessa forma, ao lidar com um 
projeto de desenvolvimento de software, é imprescindível estabelecer mecanismos de 
controle e acompanhamento, envolvendo a avaliação contínua do progresso, o cum-
primento do cronograma e a administração de riscos, conforme orientações presentes 
em guias como o PMBOK e em normas como as ISOs. Vale destacar que, além de espe-
cialista em segurança da informação pelo IB, também possui a certificação ISO 27.002, 
focada nesse campo, reconhecendo a importância desses princípios atualmente. 
25m
6www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Engenharia de Software - Conceitos Gerais
ENGENHARIA DE SOFTWARE
NORMAS ISO E ADMINISTRAÇÃO DE RISCOS
As normas ISO, em destaque a ISO 27005 para riscos à segurança da informação e 
a ISO 31000 para riscos de forma genérica, são fundamentais na engenharia de soft-
ware. A administração de riscos é constante, sendo uma análise recorrente durante o 
desenvolvimento. Essa prática, mais estruturada na engenharia de software, difere-se 
da abordagem cotidiana. Outras atividades incluem garantia da qualidade, revisões téc-
nicas, medição, gerenciamento de configuração de software, gerenciamento da capaci-
dade de reuso e elaboração e produção de artefatos. A garantia de qualidade e revisões 
técnicas serão detalhadas em aulas específicas sobre qualidade. A medição é a área de 
estudo do professor, com doutorado e mestrado nesse campo. O gerenciamento de con-
figuração será amplamente discutido, destacando o controle e a diversificação.
ATIVIDADES FUNDAMENTAIS (SOMMERVILLE)
As atividades fundamentais, especificação do software, projeto, implementação 
e evolução, são essenciais para o desenvolvimento, compreendidas pelo modelo de pro-
cesso. A variedade de processos existe para atender à diversidade de tipos de software 
e adaptar-se ao produto em questão.
O processo, contudo, permanece constante. A dúvida surge quando todo projeto, indepen-
dente do produto, utiliza o mesmo processo. Isso pode não ser apropriado, especialmente ao 
desenvolver um sistema de prateleira, como um editor de texto. Já para um software custo-
mizado, comum em órgãos públicos, onde a evolução ocorre conforme as demandas do usuá-
rio, a abordagem é consideravelmente diferente. A ideia de que um único processo se aplica a 
todas as situações era um erro comum no desenvolvimento da engenharia de software. Agora, 
entende-se que os processos precisam ser adaptados conforme a necessidade.
7www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Engenharia de Software - Conceitos Gerais
ENGENHARIA DE SOFTWARE
Fica evidente que não há uma solução única para todos os problemas, e os processos 
precisam ser ajustados. Neste primeiro bloco, apresenta-se uma visão geral da enge-
nharia de software, uma disciplina que integra elementos de outras engenharias para 
estabelecer processos. A partir desses processos, são aplicados métodos nas atividades, 
inclusive nas de apoio, como medição, uma atividade de apoio, e gerenciamento de con-
figuração, amplamente utilizado na fase de construção. 
30m
� Este material foi elaborado pela equipe pedagógica do Gran Concursos, de acordo com a aula 
preparada e ministrada pelo professor Washington Henrique Almeida. 
A presente degravação tem como objetivo auxiliar no acompanhamento e na revisão do con-
teúdo ministrado na videoaula. Não recomendamos a substituição do estudo em vídeo pela lei-
tura exclusiva deste material.

Mais conteúdos dessa disciplina