1) O que motivou o aparecimento da engenharia de software?
No início, o desenvolvimento de software era realizado quase como uma arte que dependia diretamente da habilidade do desenvolvedor para obtenção de um software de melhor qualidade. Apesar da habilidade ainda ser algo importante, é necessário utilizar abordagens mais formais para o desenvolvimento dos sistemas de software que permitam controle e garantia da qualidade final do produto de software, que antes não eram conseguidos. Além do mais, é importante que o software seja documentado de forma adequada para que modificações futuras possam ser realizadas sem maiores problemas. Essas abordagens são apresentadas pela Engenharia de Software. Nesta edição do Faz o Quê?, Adriana Silveira, que é engenheira de software, explica a atuação do profissional. O também engenheiro de software, Thiago Oliveira fala um pouco sobre a atuação dele no mercado de trabalho. Este vídeo está disponível no canal .
2) Quais são as principais atividades do desenvolvimento de software, independente do modelo utilizado?
Especificação do software (indicar “o que” o software realizará), Desenvolvimento do software (que compreende o projeto e a codificação), validação do software (testes) e manutenção do software (corrigir, adaptar, aperfeiçoar ou prever problemas com o software). Neste vídeo explicativo, feito pelo aluno Lucas dos Santos Pacheco, por meio desse trabalho, e disponibilizado em seu canal
3) Quais as principais diferenças entre o método estruturado e o método orientado a objeto para desenvolvimento de software?
O Modelo Estruturado desenvolve um sistema de software a partir de uma abordagem funcional (foco nas funções que o sistema deverá executar), ou seja, compreende o sistema de software como um conjunto de programas que executam funções utilizando dados. O Modelo Orientado a Objeto desenvolve o sistema a partir de uma abordagem de objetos, ou seja, ele vê o sistema de software como uma coleção de objetos que interagem entre si e apresentam características próprias, representadas pelos processos (conhecidos como Operações) e dados (conhecidos como Atributos). Nesta vídeo-aula, feito por Manuel Jaiton, explica as diferenças entre estes dois métodos de progra-mação e desenvolvimento de software.
4) Que vantagens apresenta a característica da herança na orientação a objeto?
A partir de uma classe existente (superclasse) é possível criar novas classes (subclasses) que possuam as mesmas características dessa classe, mas com algumas outras que sejam específicas dela. A vantagem disso é que mudando qualquer característica da superclasse, as subclasses herdarão essa característica automaticamente, sem levar a nenhum trabalho do programador. Nesta vídeo-aula, disponível no canal , vai explicar as vantagens do uso da herança na Orientação a Objeto e como funciona.
5) Que diferenças existem entre os modelos incremental e em espiral?
O Modelo Incremental desenvolve o software por meio de aprimoramentos incrementais. Primeiramente é desenvolvida uma versão inicial do software com as funcionalidades básicas e a partir dela são criadas novas versões que vão se encaixar na versão anterior. O Modelo em Espiral também desenvolve através de aprimoramentos incrementais, mas a primeira versão realizada já pode ser a versão final do software, deixando para os próximos incrementos, atualizações, correções, etc.
6) O que são ferramentas CASE?
São ferramentas que auxiliam no processo de desenvolvimento de software, permitindo a documentação de todo o processo. Nesta vídeo-aula, dada pelo professor Douglas Almendro, e explicado sobre essa ferramenta para o uso de modelagem de dados e como é usada esse tipo de ferramenta no dia-a-dia. Esse vídeo foi disponibilizado por
7) Como a técnica RAD diminui o tempo de desenvolvimento do software?
O sistema a ser desenvolvido por essa técnica deve ter abrangência restrita e os requisitos devem ser compreendidos muito bem. Com isso, ele utiliza um modelo incremental com ciclos de desenvolvimento muito pequenos.
8) Para que serve a UML?
Unified Modeling Language (UML) não é uma técnica de desenvolvimento, mas, uma linguagem de modelagem para os métodos orientados a objeto. Essa linguagem pode ser utilizada para especificar, visualizar, construir e documentar o projeto. Nesta vídeo-aula apresentada por Daniel e Paulo na Uneb - Universidade do Estado da Bahia em um Seminário Integralizador .
9) Quais são os princípios ligados ao PSP?
Permitir que o desenvolvedor gerencie, ele mesmo, a qualidade de seus projetos, comprometer-se somente com atividades que possam cumprir, melhorar as estimativas de recursos e o planejamento do projeto e reduzir os defeitos apresentados no software criado.
10) Qual o objetivo do CMM?
Permitir a avaliação e melhoria incremental da capacitação das empresas em produzir softwares de qualidade, de uma forma consistente e previsível. As empresas devem buscar uma melhoria contínua do seu processo de desenvolvimento de software por meio de uma filosofia baseada em níveis de maturidade. O CMM determina "o quê" deve ser feito pela empresa e não "como" deve ser feito. Neste vídeo animado sobre Qualidade de Software e feito por Ana Cláudia Santana Moreira, Raul Barca e Thaís Cardoso, da Turma do Curso de Engenharia de Software do ano de 2010, exibe com perguntas e respostas sobre o assunto.
Comentários