Você está na página 1de 3

Exercícios

1) Quando se fala em avaliação de uma solução, isso se refere a técnicas que


dirão se a solução proposta para um problema atende a alguns requisitos, entre
eles corretude, eficiência e usabilidade. Uma vez que essas medidas de
qualidade são avaliadas, a solução (ou soluções) pode, efetivamente, ser aceita
ou não.

Se, em uma das avaliações, 99% da solução proposta atende ao problema e


apenas 1% aponta falha, é possível dizer que:

Resposta: A solução não está correta.

Comentário:

É importante lembrar os conceitos de qualidade elencados para avaliação:

Corretude: se a solução atende plenamente ao seu problema. Se tiver um erro


que seja, é considerada incorreta.

Eficiência: a solução, além de atender ao problema, o faz de forma rápida,


otimizando espaço de memória e tempo conforme as possibilidades.

Usabilidade: aborda vários outros conceitos, como eficiência, facilidade,


recuperação de erros, satisfação quanto ao design e facilidade em relembrar o
uso.

No problema em questão, ainda que apenas 1% aponte alguma falha, a solução


não está correta.

2) A abordagem empírica em uma solução retrata a necessidade da


experimentação real, observando-se os resultados. Desse modo, é possível
analisar e construir modelos não meramente simulados, mas baseados em
dados da vida real. Esse tipo de abordagem é aplicado em qualquer área de
estudos. Imagine que uma vacina C-19 esteja sendo produzida, testada em
laboratório, mas necessita de testes empíricos para obter resultados mais
confiáveis.

A análise empírica é aplicada:

Resposta: Pela necessidade de avaliar o comportamento na vida real, para poder


liberar sua produção com dados mais concretos.

Comentário:

A análise empírica permite a utilização de testes na vida real, oferecendo


resultados mais precisos.
Não há, necessariamente, relação direta do uso empírico com custo de
projeto, e, em muitos casos, como a vacina, testes são realmente necessários
para comprovação da solução e certificação.
Assim, pode-se afirmar que existe valor científico ou matemático nos
testes.
A análise empírica é aplicada para qualquer situação, inclusive para
sistemas que envolvem humanos.
Ela não garante 100% de eficiência na solução, nem tem relação com
usabilidade, uma vez que pode ser eficiente sem ser usável.

3) A eficiência de um algoritmo, na maioria das vezes, está relacionada com sua


complexidade, tempo e espaço de execução. Quanto mais tempo levar a
execução, menos eficiente um algoritmo tende a ser.

Desse modo, o grau de complexidade que indica que a quantidade de passos


deverá ser, em seu pior caso, a quantidade de elementos é:

Resposta: O(N).

Comentário:

A complexidade O(1) leva um número fixo de unidades de tempo.


Um exemplo é determinar se um número é positivo ou negativo.
Em O(N), o número de etapas é diretamente proporcional à entrada, ou
seja, à quantidade de elementos.
O(N2) faz com que os passos aumentem em proporção ao quadrado do
tamanho da entrada.
Em O(log(N)), o algoritmo aumenta proporcionalmente ao log do tamanho
da entrada.
Por fim, O(N!), um dos piores casos, aumenta a complexidade de forma
fatorial.

4) A avaliação de interface é o processo em que se avalia a usabilidade de uma


interface e se verifica se ela atende aos requisitos de usuário.

Entre os atributos de usabilidade que devem ser considerados na avaliação de


uma interface, assinale a alternativa que apresenta o atributo que pode ser
descrito pela pergunta “Quão tolerante é o sistema em relação aos erros do
usuário?”.

Resposta: Facilidade de recuperação de erros.

Comentário:

A facilidade de memorização indica o quão fácil é o sistema para o usuário


memorizar procedimentos anteriormente realizados após algum tempo sem uso.
A facilidade de aprendizado revela o quão fácil é gravar os procedimentos
e realizar as operações devidas.
A facilidade de recuperação de erros está relacionada não só com falhas
do usuário, mas também com falhas do próprio sistema (tela azul do Windows,
por exemplo), permitindo que ele se recupere.
Quando se fala em eficiência, indica-se o quão ótimos são os recursos
computacionais utilizados pela solução.
A corretude indica se a solução proposta/desenvolvida é correta para
requisitos e funcionalidades originais do sistema.

5) Quando um algoritmo é executado em tempo logarítmico, ele aumenta


proporcionalmente ao logaritmo do tamanho da entrada. O algoritmo de pesquisa
binária, por exemplo, é executado em tempo logarítmico. Sobre esse algoritmo
e sua eficiência, analise as afirmações a seguir:

Resposta: Requer, no máximo, log2 n passos, sendo um dos algoritmos


considerado de boa eficiência.

Comentário:

A busca binária tem a complexidade do algoritmo.


Portanto, bastam, aproximadamente, log2 n passos para encontrar a
solução.
2n passos seriam duas vezes o tamanho da entrada, o que já seria
incoerente para a busca simples.
A análise de n itens é feita para a busca linear, diferentemente da busca
binária.

Você também pode gostar