Concursos Públicos

Noções de Engenharia de Software

Aprenda neste artigo noções de Engenharia de Software, seu histórico e os principais conceitos associados a sua prática.

Fala, pessoal! Com o destaque cada vez maior das disciplinas de Tecnologia da Informação (TI) nas provas de concurso, é comum que os alunos se deparem com diversos termos totalmente desconhecidos para aqueles que não são da área.

Um deles é a Engenharia de Software. Afinal, do que se trata e quais são os conceitos relacionados mais importantes para quem não sabe nada sobre o assunto? É isso que veremos neste artigo! Vamos lá?

Engenharia de Software

O que é um Software?

De maneira bem básica e resumida, o termo software refere-se a toda informação processada por sistemas computacionais, incluindo os navegadores web, programas de computador, aplicações móveis e programas de mídia digital.

Atualmente, este é um mercado bilionário (segundo a ABES, apenas no Brasil, esse mercado movimentou US$19,2 bilhões em 2021). Os programas controlam uma grande variedade de dispositivos, desde celulares e eletrodomésticos inteligentes, até computadores pessoais e supercomputadores que operam em agências governamentais estratégicas.

De fato, é difícil imaginar uma área do conhecimento humano que não seja ao menos parcialmente impactada pelos softwares, incluindo as atividades profissionais, domésticas e de entretenimento.

Histórico – noções de Engenharia de Software

A Engenharia de Software surgiu no final da década de 1950, como uma solução para contornar a então emergente crise do software. Nessa época, muitos projetos de software estavam fracassando, seja por ultrapassar de forma descontrolada o orçamento previsto inicialmente, seja por resultar em programas não confiáveis e com manutenção muito cara.

Ademais, notava-se, à época, que os softwares entregues não conseguiam acompanhar os crescentes requerimentos de adaptação ou evolução que surgiam quando da interação dos usuários com os produtos.

O cenário de crise era formado ainda pelo aumento de complexidade dos softwares a cada evolução de hardware; ou seja, à medida que os equipamentos físicos avançavam com as novas tecnologias, o desenvolvimento e a manutenção dos softwares tornavam-se ainda mais custosos.

Por fim, destaca-se a dificuldade em fazer face à crescente demanda por novos softwares, já que a capacidade de gerar novos produtos não era compatível com as necessidades que emergiram no momento.

A solução – noções de Engenharia de Software

A solução encontrada para contornar o problema foi transformar o então desorganizado esforço empreendido na geração dos códigos computacionais em uma disciplina da engenharia dedicada ao processo de produção, manutenção e evolução de softwares, que preza pela aplicação de princípios científicos para projetá-los e desenvolvê-los.

Assim, nascia a Engenharia de Software, que enfatiza a adoção de uma abordagem sistemática e disciplinada para coletar os requerimentos de negócios, bem como para planejar, construir e testar aplicações de software que possam atendê-los.

O design de software é o processo de transformar os requisitos em uma estrutura que pode ser implementada pelos desenvolvedores, usando uma linguagem para escrever o código. Assim, ele transforma os requisitos em uma solução de software.

Além desse foco no atendimento das necessidades do negócio – ou do usuário –, almeja-se que o software seja confiável, eficiente e efetivo em termos de custo.

Tipicamente, os conceitos, princípios, teorias, técnicas e ferramentas da Engenharia de Software são utilizados para desenvolver softwares profissionais, complexos, relacionados a projetos que envolvem grandes equipes de engenheiros e desenvolvedores.

Benefícios – noções de Engenharia de Software

O atual cenário de transformação digital da sociedade, em que os requerimentos de usuário e o próprio ambiente mudam com grande velocidade, o ferramental associado à Engenharia de Software vem se tornando cada vez mais necessário.

Por exemplo, quanto maior e mais complexo for o software, mais importante é a utilização de uma abordagem científica, capaz de viabilizar a criação de pequenos trechos de código mais simples e compreensíveis, que, juntos, formam o todo complexo. Dessa forma, ganha-se eficiência tanto na construção quanto na manutenção do produto.

Essa abordagem disciplinada é crítica também para a escalabilidade do projeto. Com a priorização desse aspecto desde o início do projeto, sua evolução torna-se algo natural, previsto e até desejado.

Por outro lado, se essa visão não for adotada, é muitas vezes mais fácil reescrever um software inteiro do que aproveitar um já existente.

Em termos mais gerais, a melhoria do processo de desenvolvimento de software proporciona a entrega de produtos de melhor qualidade.

Atributos de softwaresnoções de Engenharia de Software

Os atributos mais relevantes de um software de qualidade não estão relacionados diretamente a suas funcionalidades, mas sim ao comportamento dinâmico do produto quando está em uso. Vejamos alguns deles:

  • Facilidade de manutenção: o software deve evoluir para atender às novas demandas dos clientes;
  • Nível de confiança: um software confiável não deve ocasionar danos, no caso de um defeito em seu sistema;
  • Eficiência: o software não deve desperdiçar recursos do sistema, como memória e ciclo do processador;
  • Facilidade de uso: o aplicativo de software deve ter interface amigável de usuário e documentação específica, de modo que possa ser utilizável sem esforços indevidos por aqueles para quem foi projetado.

E assim finalizamos mais um artigo, pessoal! Ótimos estudos e até a próxima!

Lara Dourado

Cursos e Assinaturas

Prepare-se com o melhor material e com quem mais aprova em Concursos Públicos em todo o país!

Concursos abertos

Concursos 2023

Lara Dourado Vasconcelos Nascimento

Posts recentes

Contrato com o Cebraspe traz detalhes do concurso TCE PR

Salário inicial de R$ 22,4 mil! Obtivemos acesso ao contrato com o Cebraspe, banca organizadora…

6 horas atrás

Concurso TCE PR: EDITAL iminente! Iniciais de R$ 22,4 mil

O tão aguardado edital do concurso Tribunal de Contas do Estado do Paraná (TCE PR)…

7 horas atrás

Porque é crime fabricar açúcar em casa?

            Olá caro (a) amigo (a) leitor (a), vai bem? É sempre ótimo ver você…

11 horas atrás

Concurso Câmara de Candeias: edital tem 59 vagas; confira!

Atenção, corujas! Mais uma oportunidade na área legislativa: saiu o edital do concurso Câmara de…

13 horas atrás

Requisitos Funcionais e Não Funcionais para CEF (TI)

Olá pessoal, tudo bem? Este artigo apresenta um resumo de Engenharia de Requisitos, focando em…

14 horas atrás

Concurso TJ CE: comissão formada; edital até julho!

O Tribunal de Justiça do Ceará (TJ CE) pode ter seus novos editais publicados em breve…

14 horas atrás