Questões de Concurso
Comentadas para analista de banco de dados
Foram encontradas 1.293 questões
Resolva questões gratuitamente!
Junte-se a mais de 4 milhões de concurseiros!
Os protocolos de comunicação podem ser organizados em hierarquias compostas por camadas, em que cada camada oferece serviços para a camada acima. A um conjunto de camadas, pode ser dado o nome de pilha de protocolos. Em uma pilha, tipicamente, a camada mais inferior é a física e uma camada intermediária é a de transporte, que fornece um serviço de comunicação entre pares de portas ligadas a processos.
Há sistemas operacionais em que, para uma partição se tornar disponível no espaço de nomes do sistema de arquivos, precisa ser montada (mount). Quando da montagem, tipicamente, são usados o nome do dispositivo e a localização na estrutura de arquivos onde deve ser atrelado o sistema de arquivos (mount point). Uma vez montado um sistema de arquivos, as informações necessárias podem ser armazenadas em uma tabela (mount table) na memória principal.
Em um sistema de gerência de memória virtual, pode ser empregado um algoritmo de substituição de páginas global ou local. Quando é empregado um algoritmo local, para um processo, pode ser selecionado um quadro (frame) de outro processo. Portanto, um processo não controla a sua taxa de falta de páginas, pois o seu conjunto de páginas na memória depende de outros processos. Um algoritmo de substituição local tipicamente apresenta maior throughput que um de substituição global
O algoritmo de escalonamento round-robin (RR) pode ser empregado nos sistemas operacionais com múltiplas filas de processos prontos. Nesse caso, pode ser usado tanto como algoritmo de escalonamento de determinadas filas, como também entre filas. Para o escalonamento entre filas, uma outra alternativa é utilizar um algoritmo preemptivo embasado em prioridades, nesse caso, cada fila pode ter uma prioridade.
Há sistemas operacionais nos quais os blocos de controle dos processos (PCBs) são mantidos em listas associadas aos estados dos processos. Além disso, quando o escalonador do processador precisa escolher um processo para por em execução, escolhe-se um processo em uma das listas de processos bloqueados.
Na modelagem orientada a objeto, o valor de um atributo de classe é comum aos objetos dessa classe; a multiplicidade de um atributo informa a quantidade de valores para o atributo; o domínio de um atributo define os possíveis valores do atributo. Nos modelos de análise, é relevante identificar quais classes são concretas e quais são abstratas; nos modelos de projeto, essa distinção não é feita por ser irrelevante.
Na modelagem orientada a objeto, os sistemas de software são compostos por objetos que interagem e podem manter estado durante tais interações. As operações públicas de um objeto podem fornecer serviços a outros objetos; em uma comunicação síncrona, o objeto que solicita o serviço pode continuar executando enquanto o serviço é prestado; cada associação entre classes descreve ligações entre objetos dessas classes, as ligações têm estrutura e semântica em comum.
No modelo entidade-relacionamento estendido, a especialização é o processo de definir um conjunto de subclasses de um tipo entidade chamado superclasse da especialização. O processo de especialização permite estabelecer atributos específicos adicionais para cada subclasse; uma entidade membro de uma subclasse herda atributos da superclasse e relacionamentos nos quais a superclasse participa.
Nos modelos entidade-relacionamento, o número de entidades que podem participar de um relacionamento é o grau desse tipo de relacionamento. A restrição de cardinalidade mínima é o número mínimo de instâncias de relacionamento em que cada entidade pode participar. Em um tipo relacionamento M:N, pode haver atributos que não são determinados por uma entidade única, mas pela combinação das entidades participantes de uma instância desse relacionamento.
Nos modelos entidade-relacionamento, para uma dada entidade, cada atributo multivalorado pode ter mais de um valor, enquanto cada atributo monovalorado tem um único valor; cada atributo composto pode ser dividido em partes menores; os atributos derivados podem ser calculados a partir de outros atributos; os tipos entidade fraca têm seus próprios atributos-chave.
As seguintes responsabilidades são típicas dos stubs usados nos testes dos softwares orientados a objeto: criar um objeto da classe em teste; interligar o objeto em teste a outros objetos necessários ao teste; levar o objeto em teste a um estado inicial; enviar seqüências de mensagens para o objeto em teste; coletar respostas do objeto em teste; avaliar as respostas providas pelo objeto em teste
Os testes de integração verificam se os componentes do sistema funcionam em conjunto, se os componentes são chamados corretamente e se os componentes transferem dados corretos via suas interfaces. Nesses testes, os componentes são testados interligados; podem ser necessários drivers e stubs para simular componentes ainda não implementados; e, em sistemas de software orientados a objeto, os stubs podem ser classes.
O teste de caminho é uma abordagem estrutural para o projeto de testes em que podem ser usados fluxogramas. Essa abordagem de projeto pode ser empregada quando do projeto de testes de unidade. Em sistemas de software orientados a objetos, os testes de classes podem ser estruturais.
No modelo de processo de desenvolvimento embasado em entrega incremental, tem-se que o sistema é desenvolvido como uma série de incrementos, sendo que cada incremento provê um conjunto de funcionalidades. É fácil identificar os recursos que são comuns aos incrementos, pois todos os requisitos precisam ser detalhados quando do início do desenvolvimento.
No modelo em cascata de processo de desenvolvimento, os clientes devem definir os requisitos apenas durante a fase de projeto; e os projetistas definem as estratégias de projeto apenas durante a fase de implementação. As fases do ciclo de vida envolvem definição de requisitos, projeto, implementação, teste, integração, operação e manutenção. Em cada fase do ciclo de vida, podem ser produzidos diversos artefatos.
A análise orientada a objetos, o projeto orientado a objetos e a programação orientada a objetos compreendem atividades de engenharia de software voltadas à construção de sistemas orientados a objetos. Nesses sistemas, objetos interagem para prover serviços. No nível de programação, as interações ocorrem via interfaces das classes das quais os objetos são instâncias. Essas interfaces contêm membros públicos das classes.
Há métodos ágeis de desenvolvimento que empregam as práticas de programação em pares e teste de unidade. A programação em pares apóia a idéia de que o código é propriedade da equipe como um todo, tipicamente dificulta a refatoração (refactoring) e atua como um processo informal de revisão de código. Em relação aos testes de unidade, há métodos ágeis nos quais testes de unidade são escritos antes do código a ser testado.
Entre as características de alguns métodos ágeis de desenvolvimento de software, inclui-se ênfase na construção de modelos e na especificação detalhada do sistema e desenvolvimento em incrementos, processo no qual os clientes têm reduzida participação.
Na engenharia de requisitos, a construção de protótipos pode ajudar na descoberta e na validação de requisitos não-funcionais. Os protótipos podem ser úteis durante o projeto das interfaces com os usuários e podem ser descartáveis, caso em que não são mantidos durante toda vida do sistema