Questões de Concurso
Para tecnologia da informação - desenvolvimento de sistemas
Foram encontradas 416 questões
Resolva questões gratuitamente!
Junte-se a mais de 4 milhões de concurseiros!
Considere as afirmações abaixo sobre polimorfismo na linguagem de programação JAVA.
I - A vinculação tardia ocorre se o compilador escolher um método dentre os possíveis candidatos.
II - O polimorfismo indica o princípio de que o tipo real do objeto determina o método a ser chamado.
III - A vinculação antecipada ocorre se a escolha do método é feita quando o programa está sendo executado.
Quais estão corretas?
Com base nesse código, é correto afirmar que as variáveis a e b
Observe o trecho de código abaixo, escrito na linguagem C.
Com base nesse código, é correto afirmar que
Duas transações T1 e T2 estão em estado de deadlock em um escalonamento parcial quando ______ está na fila de espera para ______, que está bloqueado por ______, enquanto ______ está na fila de espera para ______, que está bloqueado por ______. Nesse meio tempo, nem T1, nem T2, nem qualquer outra transação podem acessar os itens _______.
Assinale a alternativa que completa, correta e respectivamente, as lacunas do texto acima.
Considere o modelo conceitual Entidade-Relacionamento e as situações abaixo. Para cada situação, são fornecidos os nomes de um relacionamento e de três entidades (identificados em letras maiúsculas), junto com a descrição de uma situação a ser modelada.
I - Relacionamento CASAMENTORELIGIOSO, entidades HOMEM, MULHER e PADRE: deseja-se registrar sobre cada casamento, além de um código, data/hora, a mulher (noiva), o homem (noivo) e o padre que realizou a cerimonia.
II - Relacionamento CONSULTA, entidades MEDICO, PACIENTE e ENFERMEIRO: deseja-se registrar sobre cada consulta, além de um código, data/hora da consulta e forma de pagamento, o médico e o paciente. Eventualmente há um enfermeiro na consulta, cuja presença deseja-se igualmente registrar.
III - Relacionamento CONSULTA, entidades MEDICO, PACIENTE e EXAME: deseja-se registrar sobre cada consulta, além de um código, data/hora da consulta e forma de pagamento, o médico, o paciente e todos os exames que foram solicitados na consulta.
Quais das situações acima seriam adequadamente modeladas por um relacionamento ternário entre as três entidades participantes indicadas?
Considere a modelagem Entidade-Relacionamento (ER) abaixo (notação Heuser, 2009).
Como um relacionamento composição é identificado?
Considere os comandos SQL abaixo em um sistema de gerência de banco de dados relacional.
I - create table TAB1 (a integer not null primary key);
II - create table TAB2 (a integer check(a IS NOT NULL and a > 0));
III - alter table TAB1 add constraint c1 check(a > 10);
IV - create assertion C2 as CHECK (not exists (select * from TAB1 where a < 0));
Quais instruções resultarão na criação de uma ou mais restrições (constraints) no dicionário de dados (catálogo)?
Analise as afirmações abaixo sobre transações em sistemas de banco de dados relacionais.
I - Uma transação inicia-se com o comando BEGIN TRANSACTION.
II - COMMIT e ROLLBACK são dois comandos que podem ser utilizados para terminar uma transação.
III - Autocommit é um modo de operação em que todas as transações são automaticamente confirmadas (COMMIT) após sua execução.
IV - O comando ROLLBACK TO SAVEPOINT permite desfazer uma transação somente até um dado ponto.
Quais estão corretas?
Uma agência de intercâmbios deseja mapear os interesses de estudantes que pretendem residir em uma dada cidade no exterior, com as famílias disponíveis para acolhê-los. Para isso, definiu as tabelas ESTUDANTES e RESIDENCIAS, descritas abaixo em SQL, contendo respectivamente estudantes com a cidade pretendida e as famílias com cidades de residência.
create table ESTUDANTES
(nome varchar(120) not null primary key,
cidade varchar(30) not null);
create table RESIDENCIAS
(familia varchar(120) not null primary key,
cidade varchar(30) not null);
Considere que estas tabelas possuem como conteúdo as instâncias resultantes dos oito comandos INSERT definidos em SQL abaixo.
insert into ESTUDANTES values ('clara', 'londres');
insert into ESTUDANTES values ('joao', 'londres');
insert into ESTUDANTES values ('magda', 'sidney');
insert into ESTUDANTES values ('pedro', 'paris');
insert into RESIDENCIAS values ('f1', 'londres');
insert into RESIDENCIAS values ('f2', 'paris');
insert into RESIDENCIAS values ('f3', 'toronto');
insert into RESIDENCIAS values ('f4', 'toronto');
A agência decidiu cruzar as informações das duas tabelas para investigar as opções de alojamento disponíveis. Considere as quatro consultas SQL abaixo, que representam opções de cruzamento de dados entre tabelas.
I - select *
from ESTUDANTES left join RESIDENCIAS using(cidade);
II - select *
from ESTUDANTES right join RESIDENCIAS using(cidade);
III - select *
from ESTUDANTES cross join RESIDENCIAS;
IV - select *
from ESTUDANTES inner join RESIDENCIAS using (cidade);
Quantas instâncias são recuperadas por cada comando SELECT acima, na ordem em que os comandos aparecem?
Observe a tabela PRODUTOS abaixo.
create table PRODUTOS
(codp integer not null primary key,
nome varchar(120) not null,
preco numeric(5,2) not null,
desconto integer,
precoDoConcorrente numeric(5,2));
Considere as visões definidas abaixo usando SQL. Assuma que não existem gatilhos definidos sobre a tabela, nem para estas visões.
I - CREATE VIEW V1 AS
SELECT DISTINCT CODP, NOME, PRECO
FROM PRODUTOS
WHERE DESCONTO >0;
II - CREATE VIEW V2 AS
SELECT PRECO
FROM PRODUTOS
GROUP BY PRECO
HAVING COUNT(*) > 3;
III - CREATE VIEW V3 AS
SELECT CODP, NOME, PRECO
FROM PRODUTOS
WHERE PRECODOCONCORRENTE - PRECO >0;
Através de quais visões é possível inserir uma tupla na tabela PRODUTOS, usando um comando INSERT compatível com o respectivo esquema da visão?
Observe as tabelas abaixo definidas em SQL.
create table EMPREGADOS
(matr integer not null primary key,
nome varchar(120) not null,
salario numeric(7,2) not null,
funcao varchar(35) not null,
feriasAVencer date);
create table AFASTAMENTOS
(code integer not null primary key,
nome varchar(120) not null,
salario numeric,
funcao varchar(35) not null,
tempo integer);
Considere abaixo a atuação dos comandos SQL de inserção.
I - INSERT INTO AFASTAMENTOS VALUES (1, 'joao', 'gerente');
II - INSERT INTO AFASTAMENTOS (code, nome, tempo, funcao) VALUES (2, 'pedro', 4, 'contador');
III - INSERT INTO AFASTAMENTOS
SELECT matr, nome, salario, funcao
FROM EMPREGADOS
WHERE funcao = 'indefinido';
IV - INSERT INTO AFASTAMENTOS VALUES (3, 'maria',
3000, 'gerente', 1), (4, 'carla', 1500, 'auxiliar', 2).
Quais comandos executam sem falhas?
Observe a tabela PRODUTOS definida em SQL. Considere que existe uma tabela PARTES e que a tabela PRODUTOS possui 50 instâncias.
CREATE TABLE PRODUTOS
(CODP INTEGER NOT NULL,
NOMEP VARCHAR(60) NOT NULL,
PRECO NUMERIC(5,2),
TIPO INTEGER NOT NULL,
PROD_PK PRIMARY KEY(CODP),
FOREIGN KEY (TIPO) REFERENCES PARTES);
Considere que o projetista deseja fazer as seguintes modificações nesta tabela.
I - Remover a chave estrangeira definida sobre o atributo TIPO.
II - Adicionar um novo atributo QT_MIN INTEGER com valor obrigatório (NOT NULL).
III - Remover a chave primária.
IV - Adicionar uma restrição de nome VERIFICA_PRECO, que verifica se o preço é nulo ou maior que 0.
Quais destas alterações podem ser realizadas através de um comando ALTER TABLE aplicado sobre a tabela PRODUTOS?
Considere as afirmações abaixo sobre as vantagens de procedimentos armazenados (stored procedures) em Sistemas de Gerência de Banco de Dados (SGBDs).
I - Desempenho: a maioria dos SGBDs compilam os procedimentos armazenados, gerando uma representação interna que pode ser executada de forma bastante eficiente no SGBD, com desempenho bem melhor do que o de comandos equivalentes invocados a partir de um programa de aplicação, por exemplo, através de uma API (Application Programing Interface).
II - Reusabilidade: um procedimento armazenado definido para uma função específica pode ser invocado de múltiplas formas, por exemplo, por diferentes aplicações, procedimentos armazenados ou gatilhos.
III - Segurança: um procedimento armazenado precisa ser testado e homologado pelo DBA (administrador do banco de dados), garantindo assim que não irá gerar erros de execução.
IV - Redução do tráfego de rede: em uma configuração cliente/servidor, invocar um procedimento armazenado a partir de uma aplicação no cliente, recebendo os resultados, gera bem menos tráfego do que invocar um conjunto equivalente de comandos SQL a partir de uma lógica controlada em um programa de aplicação.
Quais estão corretas?
Observe as tabelas FUNCIONARIOS, PROJETOS e PARTICIPACOES definidas abaixo, usando SQL, que representam funcionários e a participação destes em projetos.
Create table PROJETOS
(codp char(2) not null primary key,
cliente varchar(100) not null,
orcamento numeric(15,2) not null,
pais char(2) not null);
create table FUNCIONARIOS
(matr char(2) not null primary key,
nomef varchar(100) not null,
salario numeric(8,2) not null,
pais char(2) not null);
create table PARTICIPACOES
(codp char(2) not null,
matr char(2) not null,
horas integer not null,
primary key (codp, matr),
foreign key (codp) references PROJETOS,
foreign key (matr) references FUNCIONARIOS);
Considere a consulta SQL abaixo.
O que essa consulta SQL recupera?
Observe as tabelas FUNCIONARIOS, PROJETOS e PARTICIPACOES definidas abaixo, usando SQL, que representam funcionários e a participação destes em projetos.
create table PROJETOS
(codp char(2) not null primary key,
cliente varchar(100) not null,
orcamento numeric(15,2) not null,
pais char(2) not null);
create table FUNCIONARIOS
(matr char(2) not null primary key,
nomef varchar(100) not null,
salario numeric(8,2) not null,
pais char(2) not null);
create table PARTICIPACOES
(codp char(2) not null,
matr char(2) not null,
horas integer not null,
primary key (codp, matr),
foreign key (codp) references PROJETOS,
foreign key (matr) references FUNCIONARIOS);
Observe as instâncias destas tabelas.
Considere a consulta SQL abaixo, que segue o padrão SQL2.
SELECT cliente
FROM projetos natural left join participacoes natural join funcionarios
GROUP BY codp, cliente
HAVING count(*) > 1;
A consulta SQL acima recuperará
As definições de atributos de qualidade abaixo representam uma meta para todo projeto de software.
_____________ é um atributo de qualidade avaliado levando-se em conta fatores humanos, estética, consistência e documentação como um todo.
_____________ é um atributo de qualidade avaliado medindo-se a frequência e a severidade das falhas, a precisão dos resultados gerados, o tempo médio entre defeitos, a capacidade de se recuperar de uma falha e a previsibilidade do programa.
_____________ é um atributo de qualidade medido considerando a velocidade de processamento, o tempo de resposta, o consumo de recursos, vazão (throughput) e eficiência.
Assinale a alternativa que completa correta e respectivamente as lacunas do texto acima.
Considere as seguintes afirmações sobre Manutenção de Software.
I - Manutenção de software é o processo geral de mudança em um sistema depois de liberado para uso.
II - As pesquisas concordam que a manutenção de software ocupa uma proporção menor dos orçamentos de TI do que o desenvolvimento e, portanto, os esforços durante o desenvolvimento do sistema para produção de um sistema manutenível não reduzem os custos gerais durante a vida útil do sistema.
III - Existem três diferentes tipos de manutenção de software: (1) correção de defeitos; (2) adaptação ambiental (quando algum aspecto do ambiente – tal como hardware, plataforma do sistema operacional ou outro software de apoio – sofre uma mudança); e (3) adição de funcionalidade.
Quais estão corretas?
_____________ são declarações de serviços que o sistema deve fornecer, ou seja, como o sistema deve reagir a entradas específicas e como o sistema deve se comportar em determinadas situações. Em alguns casos, também podem explicitar o que o sistema não deve fazer.
Assinale a alternativa que completa corretamente a lacuna do texto acima.