A ENGENHARIA DE SOFTWARE
Por: Luan Moreira Silva • 30/3/2018 • Relatório de pesquisa • 1.593 Palavras (7 Páginas) • 259 Visualizações
1. O que é um requisito?
Requisito é aquilo que foi requisitado; ou ainda uma condição para se alcançar determinado fim. Ao aplicar sua definição ao contexto de engenharia de software, podemos perceber que um requisito nada mais é do que uma especificação de uma funcionalidade - ou ainda necessidade - que deverá estar presente no software solicitado pelo cliente ou usuário.
2. O que são requisitos de um domínio?
Considerando que requisitos são especificações de abrangentes tanto a funcionalidade quanto às propriedades do sistema, é possível enquadrar requisitos do domínio como sendo objetivos que abrangem a aplicação como um todo, englobando também as restrições que possam haver no software - ou seja, as regras de negócio.
3. O que é estudo da viabilidade?
O estudo da viabilidade trata-se da validação da criação do projeto, isto é, se existem motivos para que o software seja desenvolvido e aplicado em determinada área. É estudado a coleta de informações de forma breve, a fim de concretizar a necessidade do projeto.
4. Qual a função da validação dos requisitos?
Trata-se em avaliar os requisitos feitos para o projeto, como por exemplo: validar se existem conflitos entres os requisitos, como eles se complementam, ambiguidades entre eles e a validação com o cliente.
5. O que define a limitação da complexidade?
É definido à partir da análise de pontos de função (APF), que nada mais é que classificar as referências das funcionalidades existentes no sistema a ser desenvolvido. Possui três métricas que podem ser utilizadas: Linhas de código (LOC), Pontos por caso de uso (PCU) e Pontos de função (PF).
6. Como devem ser as histórias nos testes de aceitação?
O teste de aceitação é a última ação de teste antes da implantação do software. A meta do teste de aceitação é verificar se o software está pronto e pode ser usado pelos usuários finais para executar as funções e as tarefas para as quais foi criado. Existem três estratégias comuns para implementar um teste de aceitação. Aceitação formal / Aceitação informal ou teste alfa / Teste beta.
7. No que o XP é baseado?
Essa metodologia - a qual é voltada para o desenvolvimento - é fundamentada em 5 pilares, ou valores, que são: • Comunicação: é importante que haja troca de informações entre todos os envolvidos no projeto, isto é, é de extrema que haja contato entre o cliente e a equipe responsável pela execução do projeto. • Coragem: esse pilar está focado principalmente em aceitar as mudanças que podem vir à ocorrer ao longo do desenvolvimento - isso porque os requisitos feitos pelo cliente podem sofrer alteração. • Feedback: consiste em avaliar como ocorrem as etapas do projeto, e deve ser feito o mais cedo possível, a fim de corrigir falhas e realizar ajustes necessários que poderiam afetar a finalização do projeto. • Respeito: trata-se do respeito que deve existir entre os envolvidos no projeto, para que eles possam conviver em um ambiente satisfatório. • Simplicidade: evitar fazer o uso de soluções genéricas que não serão utilizadas e optar pela solução que possa ser a mais simples.
8. Quais os quatro tipos de manutenção?
Manutenção Corretiva: Correção de erros no software que não foram identificados na fase teste, caso exista uma fase teste no software, em determinadas situações esses erros podem não atrapalhar a execução do software e não acarretar maiores preocupações, já que este pode ser solucionado por meio de simples reparos, no entanto pode haver casos mais complexos que necessite de um reparo temporário, para apagar o incêndio com o objetivo de o software voltar a executar suas funções básicas e que haja tempo a seus mantenedores para conseguir solucionar o erro em sua totalidade e assim disponibilizá-lo em uma nova versão
Manutenção Adaptativa: Adaptação no software para acomodar as constantes mudanças ocorridas em seu ambiente externo, essas mudanças podem ser em regras de negócio, constituição e leis que tenha consequências a funções do sistema, assim como a criação de uma nova plataforma de hardware, podendo ser uma nova geração de processadores, ou periféricos na qual o software consiga aproveitar seus recursos, além de uma nova versão de um sistema operacional que possa não ser totalmente compatível ao software.
Manutenção Evolutiva (ou perfectiva): Modificações não previstas no
documento de requisitos original do software. Tem por intuito melhorar a qualidade do software, acrescentando novas funcionalidades, melhorando seu desempenho, ou até mesmo modificando seu código-fonte buscando obter melhor legibilidade ou adequação a alguns paradigmas de programação.
Manutenção Preventiva (reengenharia): Alterações no software buscando melhorar a confiabilidade ou oferecer uma estrutura melhor para futuras manutenções. A manutenção preventiva parte de uma observação reconhecida pelos mantenedores sobre o que poderá gerar algum tipo de erro no software, desta forma tal erro será tratado antes que um problema venha a ocorrer.
9. O que é abstração?
A abstração demonstrar as características essenciais de um objeto que diferencia de outros. Permite agrupar entidades associadas por propriedades comuns, representando as propriedades dos objetos sem referência detalhes de implementação. Utilizando a orientação a objetos, podemos ocultar implementações e propriedades privadas atrás de interfaces públicas. Isso está relacionado ao conceito de encapsulamento.
...