Você está na página 1de 7

Avaliao do 2 Bimestre V3

Responda s seguintes questes e reencaminhe via email at o dia


03/12, antes das 19h00.
Atividade individual
Cuidado com cpias de colegas.
NOME: FERNANDA PEREIRA FERNANDES
1) Descreva o que feito em cada etapa do processo de
desenvolvimento de software
a) Definio de requisitos:
Esta atividade tem como objetivo, compreender o problema, dando
aos desenvolvedores e usurios, a mesma viso do que deve ser
construdo para resoluo do problema. Desenvolvedores e clientes,
em conjunto, buscam levantar e priorizar as necessidades dos futuros
usurios do software. E como um sistema de informaes geralmente
utilizado para automatizar processos de negcio em uma
organizao, esses processos da organizao devem ser bem
compreendidos para que o restante das atividades do processo de
desenvolvimento flua de acordo com as reais necessidades do cliente.
b) Projeto de sistema
Nesta fase considerado, como o sistema funcionar internamente,
para que os requisitos do cliente possam ser atendidos. Alguns
aspectos devem ser considerados, como: arquitetura do sistema,
linguagem de programao utilizada, Sistema Gerenciador de Banco
de Dados (SGBD) utilizado, padro de interface grfica, entre outros.
No projeto gerada uma descrio computacional, mencionando o
que o software deve fazer, e deve ser coerente com a descrio
realizada na fase de anlise de requisitos. O projeto possui duas
atividades bsicas: projeto da arquitetura (ou projeto de alto nvel), e
projeto detalhado (ou projeto de baixo nvel).
Em um processo de desenvolvimento orientado a objetos, o projeto
da arquitetura normalmente realizado por um arquiteto de
softwares. O projeto da arquitetura visa distribuir as classes de
objetos relacionados do sistema em subsistemas e seus
componentes, distribuindo tambm esses componentes pelos
recursos de hardware disponveis.
J no projeto detalhado, so modeladas as relaes de cada mdulo
com o objetivo de realizar as funcionalidades do mdulo. Alm de
desenvolver o projeto de interface com o usurio e o projeto de banco
de dados.
c) Desenvolvimento de subsistema

Esta etapa agrupa as atividades relacionadas ao desenvolvimento de cada subsistema definido


no projeto. Cada subsistema ter suas funes bem definidas e suas especificidades quanto s
competncias necessrias ao seu desenvolvimento. No caso de um subsistema de software,
um processo de desenvolvimento caracterizado pelas etapas clssicas de desenvolvimento
ser iniciado.
Em raras situaes, o desenvolvimento de um sistema impe a construo, a partir do zero, de
todos os subsistemas que o compem. O mais comum que alguns subsistemas sejam
adquiridos e incorporados ao sistema. Embora seja o caso mais comum, nem sempre fcil
integrar subsistemas "de prateleira" a um sistema; em muitos casos, so necessrias
modificaes no sentido de adaptar o subsistema adquirido s necessidades do sistema a ser
desenvolvido. Alm disso, nem sempre possvel prever a disponibilidade de um subsistema
de prateleira no momento em que ele necessrio.

d) Integrao do sistema
O conjunto de atividades a ser desenvolvido nesta etapa o de conexo dos diferentes
subsistemas construdos ou adquiridos para compor o sistema. uma atividade bastante
complexa, devido principalmente, grande diversidade de tecnologias envolvidas na
concepo dos diferentes sistemas.
Um problema comumente encontrado nesta etapa o mal funcionamento de um subsistema
como conseqncia de uma definio imprecisa de funcionalidade de outro subsistema.
Uma forma de realizar a integrao de um sistema o processo "big-bang", onde todos os
seus subsistemas so conectados num passo nico. Entretanto, por razes tcnicas e
gerenciais, a forma mais adequada a integrao incremental dos diferentes subsistemas. As
principais razes para adoo desta estratgia so:

Na maior parte dos casos, impossvel sincronizar o fim do desenvolvimento de todos


os subsistemas;

A integrao incremental reduz os custos de identificao e correo de erros de


integrao. Quando um nmero muito grande de subsistemas so integrados
simultaneamente, uma falha no sistema pode ser conseqncia de um ou mais erros presentes
nos diferentes subsistemas. No caso da integrao incremental, a ocorrncia de uma falha
pode ser mais facilmente controlada, pois ela ser, muito provavelmente, conseqncia de um
erro no subsistema mais recentemente integrado.
No caso de sistemas em que os subsistemas foram construdos por diferentes fornecedores,
muito comum ocorrer desentendimentos quando um problema de integrao acontece. Os
fornecedores tendem a acusar um ao outro como o responsvel do problema detectado. Este
tipo de ocorrncia bastante prejudicial ao desenvolvimento do sistema, podendo tomar muito
tempo para que o problema seja resolvido.

e) Instalao do sistema
Implantao compreende a instalao do software no ambiente do
usurio. O que inclui os manuais do sistema, importao dos dados
para o novo sistema e treinamento dos usurios para o uso correto e
adequado do sistema. Em alguns casos quando da existncia de um
software anterior, tambm realizada a migrao de dados
anteriores desse software.
f) Desativao do sistema
Esta etapa consiste em retirar o sistema de operao, quando seu tempo previsto de
funcionamento esgota ou quando ele ser substitudo por um novo sistema. A desativao deve
ser feita de forma bastante rigorosa, principalmente no caso de sistemas cujos componentes
podem ser nocivos ao ambiente. Sistemas que utilizam componentes radioativos so os
exemplos mais comuns de sistemas cuja desativao deve ser feita com o maior cuidado
possvel.
Por outro lado, no caso dos sistemas de software, a desativao pode ser extremamente
simples. A maior parte dos sistemas de software construdos atualmente j vem dotada de um
utilitrio de desativao (ou "desinstalao") que retira automaticamente todos os componentes
do sistema e as referncias a estes componentes do sistema computacional.
Outro aspecto importante da desativao dos sistemas so as informaes que este
manipulava ou gerava. Esta, normalmente, devero ser armazenadas em mdia especfica para
posterior adaptao utilizao num novo sistema.

2) Descreva CINCO dos seguintes tipos de teste de software


a) Testes de desenvolvimento
O sistema testado durante seu desenvolvimento para descobrir
bugs e defeitos.
Nos Testes de desenvolvimento incluem todas as atividades de testes
que so realizas pela equipe de desenvolvimento do sistema.
b) Testes de release
Testes de release, em que uma equipe de testes separada testa uma
verso completa do sistema antes que ele seja liberado para os
usurios.
Teste de release o processo de testes de uma verso particular de
um sistema que se destina para uso fora da equipe de
desenvolvimento.
O principal objetivo do processo de teste de release convencer o
fornecedor de que o sistema bom o suficiente para o uso.

Portanto, os testes de release precisam mostrar que o sistema


oferece a funcionalidade, o desempenho e confiabilidade
especificados, e que no falha durante o uso normal.
Geralmente, os testes de release so um processo de teste caixapreta, em que os testes so derivados somente a partir da
especificao do sistema.
c) Testes de usurio
Testes de usurio, em que os usurios ou potenciais usurios de um
sistema testam o sistema em seu prprio ambiente.
d) Testes de unidade
Teste de unidade, em que so testadas as unidades de programa
individual ou classes de objetos. Os testes de unidade devem se
concentrar em testar a funcionalidade dos objetos ou mtodos.
Teste de unidade o processo de teste de componentes individuais
isoladamente.
um processo de teste de defeitos.
as unidades podem ser:
Funes individuais ou mtodos dentro de um objeto
Classes de objetos com vrios atributos e mtodos
Componentes compostos com interfaces definidas usados para
acessar suas funes.
e) Testes de componentes
Testes de componentes, em que vrias unidades individuais so
integradas para criar componentes compostos. Testes de
componentes devem se concentrar em testar as interfaces dos
componentes.
geralmente, os componentes de software so componentes
compostos de vrios objetos que interagem.
Por exemplo, no sistema da estao meteorolgica, o componente
reconfigurao inclui objetos que lidam com cada aspecto da
reconfigurao.
voc acessa a funcionalidade desses objetos atravs da interface do
componente definido.
portanto, os testes de componentes compostos devem focar em
mostrar que a interface do componente se comporta de acordo com
sua especificao.
Voc pode supor que j foram concludos os testes de unidade sobre
os objetos individuais dentro do componente.
f) Testes de regresso
Essa uma tcnica de teste aplicvel a uma nova verso de software
ou necessidade de se executar um novo ciclo de teste durante o
processo de desenvolvimento. Consiste em se aplicar, a cada nova

verso do software ou a cada ciclo, todos os testes que j foram


aplicados nas verses ou ciclos de teste anteriores do sistema. Incluise nesse contexto a observao de fases e tcnicas de teste de
acordo com o impacto de alteraes provocado pela nova verso ou
ciclo de teste. Para efeito de aumento de produtividade e de
viabilidade dos testes, recomendada a utilizao de ferramentas
de automao de teste, de forma que, sobre a nova verso ou ciclo
de teste, todos os testes anteriores possam ser executados
novamente com maior agilidade.
Testes de regresso testam o sistema para verificar se as mudanas
no "quebram" o cdigo previamente trabalhado.
em um processo de teste manual, os testes de regresso so caros,
mas, com testes automatizados, so simples e diretos.
Todos os testes so reexecutados toda vez que feita uma
alterao no programa.
Os testes devem ser executados com 'sucesso' antes da mudana
ser executada.
g) Teste de desempenho
Parte dos testes de release podem envolver ensaios sobre as
propriedades emergentes de um sistema, tais como desempenho e
confiabilidade.
os testes devem refletir o perfil de uso do sistema.
geralmente, os testes de desempenho envolvem o planejamento de
uma srie de testes, nos quais a carga aumentada continuamente
at que o desempenho do sistema se torne inaceitvel.
Testes de estresse so uma forma de testes de desempenho em que
o sistema deliberadamente sobrecarregado para testar seu
comportamento at falhar

h) Teste de aceitao

3) Marque com um X a etapa do processo de software onde


ocorre as respectivas atividades de teste de software
Atividade de teste

Etapa do processo de software

sistema Desativao do

Evoluo do sistema

sistema Instalao do

sistema Integrao do

subsistema Desenvolvimento de

Projeto de Sistema

requisitos Definio de

Testes
de
desenvolvimento
Testes de release
Testes de usurio
Testes de unidade
Testes de componentes
Testes de sistemas
Teste de interface
Testes de caso de uso
Testes de regresso
Teste de desempenho
Teste de aceitao
Especificao de testes

4) Descreva os fatores que afetam o custo da manuteno de um


software?
A manutenibilidade afetada por muitos fatores: (cont.)
disponibilidade de um computador prprio para a manuteno
disponibilidade da pessoa ou grupo que desenvolveu o software o
planejamento para manutenibilidade (fator mais importante que afeta
a manutenibilidade)
muito difcil entender programas "de outras pessoas". A dificuldade
aumenta conforme o nmero de elementos na configurao de
software diminui.
"As outras pessoas" frequentemente no esto presentes para
explicar
Outros Custos no Monetrios Adiamento de oportunidades de
desenvolvimento Reduo da qualidade global do software
Insatisfao do cliente Insatisfao do pessoal de manuteno

5) Quais so as alternativas para decidir sobre a continuidade de


sistemas legados, no caso de:
a) Baixa qualidade e baixo valor para o negcio:

b) Baixa qualidade e alto valor para o negcio:


c) Alta qualidade e baixo valor para o negcio:
d) Alta qualidade e alto valor para o negcio: