Questões de Concurso Público Petrobras 2012 para Analista de Sistemas Júnior - Engenharia de Software-2012

Foram encontradas 69 questões

Q249360 Engenharia de Software
O design baseado em responsabilidades é um método bastante difundido de design orientado a objetos.

Qual ferramenta é usada por essa abordagem para o registro informal de possíveis colaborações entre os objetos de uma aplicação?

Alternativas
Q249361 Arquitetura de Software
Um sistema está organizado segundo uma arquitetura em camadas, no qual cada camada corresponde a um pacote Java. A camada de serviços, ServiceLayer, possui dezenas de classes, que colaboram entre si para fornecer os serviços necessários. Para facilitar o acesso aos serviços disponíveis, o pacote em questão disponibiliza algumas interfaces, que agrupam operações de acordo com a natureza do serviço. As classes que implementam esses serviços, entretanto, não são visíveis fora do pacote. Dessa forma, o pacote fornece uma classe pública, Services, onde existem métodos estáticos que retornam objetos que implementam os serviços disponíveis. O código Java a seguir exemplifica o que foi descrito.

package ServiceLayer;
public interface ServiceA {
          int srvA1();
          int srvA2();
          int srvA3();
}
package ServiceLayer;
public interface ServiceB {
          int srvB1();
          int srvB2();
}
package ServiceLayer;
public class Services {
          private Services() {
          }
public static ServiceA serviceA() {
                    return new CL01();
          }
          public static ServiceB serviceB() {
                    return new CL01();
          }
}
package ServiceLayer;
class CL01 implements ServiceA, ServiceB{
          public int srvA1()
          { // código irrelevante }
          public int srvA2()
          { // código irrelevante }
          public int srvA3()
          { // código irrelevante }
          public int srvB1()
          { // código irrelevante }
          public int srvB2()
          { // código irrelevante }
}


O trecho de código a seguir mostra como os serviços disponíveis são executados.

{
          ServiceA s1=Services.serviceA();
          ServiceB s2=Services.serviceB();
          s1.srvA1();
          s2.srvB1();
          // código irrelevante
}



Essa arquitetura usou variações de dois padrões de projeto conhecidos, que são:
Alternativas
Q249362 Banco de Dados
Considere as informações a seguir para responder às questões de nos 31 a 33. As tabelas são utilizadas para descrever um banco de dados que armazena dados sobre linhas de ônibus, motoristas e viagens por eles realizadas.

CREATE TABLE MOTORISTA (     
     MATRICULA NUMBER(7,0) NOT NULL, 
    NOME VARCHAR2(50) NOT NULL,
    CPF NUMBER(11,0) NOT NULL,  
    CNH VARCHAR2(15) NOT NULL,
    CONSTRAINT MOTORISTA_PK PRIMARY KEY (MATRICULA),
    CONSTRAINT MOTORISTA_UK1 UNIQUE (CPF),
    CONSTRAINT MOTORISTA_UK2 UNIQUE (CNH))

CREATE TABLE LINHA (
    NUMERO CHAR(5) NOT NULL,
    ORIGEM VARCHAR2(50) NOT NULL,
    DESTINO VARCHAR2(50) NOT NULL,
    CONSTRAINT LINHA_PK PRIMARY KEY (NUMERO)
)

CREATE TABLE VIAGEM (
    MAT_MOT NUMBER (7,0) NOT NULL,
    NUM_LINHA CHAR(5) NOT NULL,
    INICIO DATE NOT NULL,
    FINAL DATE,
    CONSTRAINT VIAGEM_PK PRIMARY KEY (MAT_MOT,NUM_LINHA,INICIO),
    CONSTRAINT VIAGEM_FK1 FOREIGN KEY (MAT_MOT) REFERENCES MOTORISTA (MATRICULA),
    CONSTRAINT VIAGEM_FK2 FOREIGN KEY (NUM_LINHA) REFERENCES LINHA (NUMERO))
Considerando a possibilidade de que dois ou mais pares (ORIGEM,DESTINO) tenham o mesmo número de viagens, qual consulta permite exibir o par que possui o maior número de viagens (concluídas ou não) registradas no banco de dados?

Alternativas
Q249363 Banco de Dados
Considere as informações a seguir para responder às questões de nos 31 a 33. As tabelas são utilizadas para descrever um banco de dados que armazena dados sobre linhas de ônibus, motoristas e viagens por eles realizadas.

CREATE TABLE MOTORISTA (     
     MATRICULA NUMBER(7,0) NOT NULL, 
    NOME VARCHAR2(50) NOT NULL,
    CPF NUMBER(11,0) NOT NULL,  
    CNH VARCHAR2(15) NOT NULL,
    CONSTRAINT MOTORISTA_PK PRIMARY KEY (MATRICULA),
    CONSTRAINT MOTORISTA_UK1 UNIQUE (CPF),
    CONSTRAINT MOTORISTA_UK2 UNIQUE (CNH))

CREATE TABLE LINHA (
    NUMERO CHAR(5) NOT NULL,
    ORIGEM VARCHAR2(50) NOT NULL,
    DESTINO VARCHAR2(50) NOT NULL,
    CONSTRAINT LINHA_PK PRIMARY KEY (NUMERO)
)

CREATE TABLE VIAGEM (
    MAT_MOT NUMBER (7,0) NOT NULL,
    NUM_LINHA CHAR(5) NOT NULL,
    INICIO DATE NOT NULL,
    FINAL DATE,
    CONSTRAINT VIAGEM_PK PRIMARY KEY (MAT_MOT,NUM_LINHA,INICIO),
    CONSTRAINT VIAGEM_FK1 FOREIGN KEY (MAT_MOT) REFERENCES MOTORISTA (MATRICULA),
    CONSTRAINT VIAGEM_FK2 FOREIGN KEY (NUM_LINHA) REFERENCES LINHA (NUMERO))
Considere os parâmetros a seguir:

• Para o cálculo da média de viagens, devem ser levados em conta apenas os dias em que o motorista realizou pelo menos uma viagem, ao invés dos 31 dias do mês de março.

• As viagens não finalizadas não devem ser levadas em conta.

• Apenas o início da viagem precisa ocorrer no mês de março de 2012.

• A função TO_CHAR(INICIO,’DD’) retorna o dia do mês (ex: 15).

Qual consulta permite exibir o CPF do motorista e o número médio de viagens diárias que cada um deles realizou no mês de março de 2012?

Alternativas
Q249364 Banco de Dados
Considere as informações a seguir para responder às questões de nos 31 a 33. As tabelas são utilizadas para descrever um banco de dados que armazena dados sobre linhas de ônibus, motoristas e viagens por eles realizadas.

CREATE TABLE MOTORISTA (     
     MATRICULA NUMBER(7,0) NOT NULL, 
    NOME VARCHAR2(50) NOT NULL,
    CPF NUMBER(11,0) NOT NULL,  
    CNH VARCHAR2(15) NOT NULL,
    CONSTRAINT MOTORISTA_PK PRIMARY KEY (MATRICULA),
    CONSTRAINT MOTORISTA_UK1 UNIQUE (CPF),
    CONSTRAINT MOTORISTA_UK2 UNIQUE (CNH))

CREATE TABLE LINHA (
    NUMERO CHAR(5) NOT NULL,
    ORIGEM VARCHAR2(50) NOT NULL,
    DESTINO VARCHAR2(50) NOT NULL,
    CONSTRAINT LINHA_PK PRIMARY KEY (NUMERO)
)

CREATE TABLE VIAGEM (
    MAT_MOT NUMBER (7,0) NOT NULL,
    NUM_LINHA CHAR(5) NOT NULL,
    INICIO DATE NOT NULL,
    FINAL DATE,
    CONSTRAINT VIAGEM_PK PRIMARY KEY (MAT_MOT,NUM_LINHA,INICIO),
    CONSTRAINT VIAGEM_FK1 FOREIGN KEY (MAT_MOT) REFERENCES MOTORISTA (MATRICULA),
    CONSTRAINT VIAGEM_FK2 FOREIGN KEY (NUM_LINHA) REFERENCES LINHA (NUMERO))
As figuras a seguir exibem os estados das tabelas MOTORISTA, LINHA e VIAGEM.

Imagem associada para resolução da questão

Qual comando é capaz de alterar o estado do banco de dados com sucesso?
Alternativas
Respostas
26: A
27: D
28: A
29: E
30: E