A Engenharia de Software e Requisitos
Por: Társila Costalonga • 12/5/2016 • Seminário • 1.260 Palavras (6 Páginas) • 436 Visualizações
Instituto Federal de Educaçao, Ciência e Tecnologia
Ensaio Teórico:
Engenharia de Software
Társila Martins Costalonga
Albany, NY
2014
RESUMO
Este ensaio trata de conceitos gerais e aprofundados da Engenharia de Software e de Requisitos, sua importância para o desenvolvimento de um software adequado, a aplicabilidade das técnicas
PALAVRAS CHAVE: Engenharia de Software, Gerenciamento de projeto, sistemas de software, Engenharia de requisitos
Modelos de engenharia de software
- Introdução
Atualmente o uso de programas de computador para a gerência das informações é indispensável. Estes estão presentes do simples software instalado para controlar o caixa de uma padaria local até os robustos sistemas de um banco. A primeira pergunta que grande parte das pessoas se fazem é: como é feito um programa de computador? Abaixo explicarei as etapas para a produção de um software e o campo de estudo responsável por essa tarefa.
1.1 Engenharia de Software
O campo da Informática que cuida para o desenvolvimento de um software adequado ao pedido do cliente é chamado de Engenharia de Software. Segundo a definição do IEEE (Instituto de Engenheiros Eletricistas e Eletrônicos), conforme a Computer Society, seu subgrupo destinado a questões ligadas aos computadores, a Engenharia de Software baseia-se no estudo e aplicação de uma abordagem sistemática, disciplinada e quantificável para o desenvolvimento, operação e manutenção de software. Em outras palavras, poderíamos dizer que a Engenharia de Software é a área da computação voltada para a especificação e desenvolvimento de um software.
1.2 Etapas de produção do software
O processo de produção de um software demanda diversas etapas, cada uma com um perfil de profissional e habilidades diferentes e responsabilidades únicas. Apresentarei agora, rapidamente, as fases de desenvolvimento de um software. Lembrando que o foco deste ensaio é falar sobre a Engenharia de Requisitos. Esta última está contida no processo de desenvolvimento.
Especificação
- Engenharia de Sistema: estabelece uma solução geral para o problema.
- Análise de Requisitos: levantamento das necessidades do software que será implementado. A Análise tem como objetivo produzir uma especificação de requisitos, que na maioria das vezes é um documento.
- Especificação de Sistema: descrição funcional do sistema. Pode incluir um plano de testes para verificar adequação.
Projeto
- Projeto Arquitetural: é desenvolvido um modelo conceitual para o sistema. É composto de módulos independentes.
- Projeto de Interface: onde cada módulo tem sua interface de comunicação estudada e definida.
- Projeto Detalhado: onde os módulos em si são definidos, e traduzidos para pseudocódigo.
Implementação
- Codificação: a implementação do sistema que antes estava só no papel para uma linguagem de computador.
Validação
- Teste de Unidade e Módulo: a realização de testes para verificar a presença de erros e comportamento adequado a nível das funções e módulos básicos do sistema.
- Integração: a reunião dos diferentes módulos em um produto de software igual, homogêneo, e a verificação da interação entre estes módulos quando operando simultaneamente.
Manutenção e Evolução
- Nesta fase, o software entra em um ciclo iterativo (repetitivo) que abrange todas as fases anteriores.
2. Engenharia de Requisitos
A Engenharia de Requisitos pode ser definida como um processo que reúne todas as atividades que contribuem para a produção do documento de requisitos e de sua manutenção ao passar do tempo.
2.1 Sub-processos da Engenharia de Requisitos
O processo de engenharia de requisitos contém quatro grandes sub-processos:
- Em quais aspectos o sistema é útil ao negócio (estudo de viabilidade);
- Descoberta de requisitos (elicitação e análise);
- Conversão de tais requisitos em um formato padrão (especificação);
- Descoberta se tais requisitos realmente definem o sistema tal como o usuário deseja (validação).
2.2 O Documento de Especificação de Requisitos de Software – DERS
Segundo o IEEE o DERS deve ser completo e não ambíguo, ou seja, sem frases que possam conter duplas interpretações. A função desse documento é auxiliar os clientes a descreverem exatamente o que o software deve fazer e aos desenvolvedores a entenderem o que o cliente espera.
Abaixo listei alguns benefícios de um bom DERS:
• Estabelecer a base de acordo entre os clientes e a empresa fornecedora sobre o que o software irá fazer;
• Reduzir o esforço de desenvolvimento;
• Prover uma base para estimativas de custo e prazos;
• Prover uma base para validação e verificação do produto;
• Facilitar a manutenção do produto de software final.
- A importância da Engenharia de Requisitos
Após a apresentação de todos esses conceitos, percebemos que recolher requisitos do cliente e escrever um documento baseado nesses requisitos é um processo um tanto quanto trabalhoso, mas necessário. A seguir, apresento algumas razões para se usar a Engenharia de Requisitos.
Segundo Antonio Mendes da Silva Filho em seu artigo intitulado Engenharia de Software – Essencial para próximas décadas, adotar práticas de engenharia de requisitos é essencial para assegurar a confiabilidade dos produtos e serviços (de software)”.
...