SóProvas



Prova CESGRANRIO - 2014 - FINEP - Analista - Desenvolvimento de Sistemas


ID
1117474
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Segurança da Informação
Assuntos

O acesso aos serviços bancários via Internet está sujeito a várias fases de controle. Um dos bancos que disponibiliza esses serviços solicita, inicialmente, o número da agência e o da conta corrente. Numa segunda etapa, exige uma senha. A partir daí, o cliente pode realizar apenas as transações às quais tem acesso. Os atributos de segurança que esse exemplo implementa, na sequência em que ocorrem são

Alternativas
Comentários
  • o número da agência e o da conta corrente: identificação

    Numa segunda etapa, exige uma senha: autenticação

    realizar apenas as transações às quais tem acesso: autorização

  • identificação, autenticação e autorização

  • Em primeiro momento, o serviço identifica o usuário do banco, solicitando que este forneça seus dados de número de agência e conta corrente.

    Em um segundo momento, o serviço autentica o usuário, confirmando que este é verdadeiramente o detentor da conta que foi identificada, sendo que para isso o serviço solicita a senha da conta.

    Em terceiro e último momento, o serviço autoriza o usuário, permitindo que este efetue as transações autorizadas pelo banco ao seu painel de usuário, de acordo com as características da sua conta no banco.


ID
1117477
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Engenharia de Software
Assuntos

McCall e Cavano definiram, há algumas décadas, um conjunto de fatores da qualidade que podem ser considerados como os primeiros passos na direção do desenvolvimento de métricas para a avaliação de qualidade de software. Hoje, há autores que preconizam o uso do controle estatístico de processos como um recurso importante para a evolução do processo de medição da qualidade de software. Nesse contexto, a utilização de gráficos de controle e métodos estatísticos provê engenheiros de software e gerentes de projeto da visão quantitativa dos processos de software.

Como exemplo, pode ser citado o diagrama de Pareto, que se presta à

Alternativas
Comentários
  • RESPOSTA LETRA "C"

    - DIAGRAMA DE PARETO

    É uma representação gráfica através do diagrama de barras para dirigir a atenção aos problemas mais importantes (que constituem 20% deles) e que se localizam nas barras mais altas (e que constituem 80% do tempo despedido).

  • Diagramas de Pareto são gráficos de barras verticais usados na identificação de algumas fontes críticas responsáveis pela maioria dos efeitos de um problema.[...]

     

    Fonte PMBOK - V5. Pag 237.

     

    Go ahead!!!

     


ID
1117480
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Raciocínio Lógico
Assuntos

No contexto do Cálculo Proposicional, é verdadeira a afirmação

Alternativas
Comentários
  • Lei de Morgan: ~ (p ^ q) = p v ~q

  • Lei de Morgan não seria: ~ (p ^ q) = ~p v ~q ????

    alguém poderia explicar?

  • Lei de Morgan:

    1) ~(P ^ Q) = ~P v ~Q 
    2) ~(P ^ Q) = P -> ~Q 
    3) ~(P v Q) = ~P ^ ~Q
  • essas interrogações ai? O.o

  • ~ ( p ^ q ) = ~ p v ~ q = p ---> ~ q 

    alternativa b.

  • Não entendi o objetivo dessas interrogações, alguém pode explicar?

  • No contexto do Cálculo Proposicional, é verdadeira a afirmação
    (A) (~p ˄ q) é equivalente a ~(p ˅ q)
    (B) ~(p ˄ q ) é equivalente a (p → ~q)
    (C) (p ˅ q) é equivalente a ~(p ˄ q)
    (D) (p → q) é equivalente a (p ˄ ~q)
    (E) ~(p → q) é equivalente a (~p ˅ q)

  • A maneira mais fácil que achei foi fazer por eliminação.

    a) Pela lei de Morgan verifica-se que é falsa, uma vez que "(¬p ^ ¬q) é equivalente a ¬(p v q)". 

    b) Verdadeira. Para comprovar é só fazer a tabela verdade das duas. 

    c) Da mesma forma que a letra A, pela lei de Morgan a alternativa é falsa. "(¬p v ¬q) é equivalente a ¬(p ^ q)".

    d) Falsa. Se refere a negação da condicional e essa equivalência diz que " ¬(p -> q) é equivalente a (p ^ ¬q)". 

    e) Falsa. Pela equivalência contra-positiva a alternativa é falsa. Essa equivalência diz que " (p -> q) é equivalente a (¬ p v q)". 

    A banca trocou as equivalências das alternativas d) e e) e as alterativas a) e c) estão incompletas, por isso são todas falsas.

  • ~(p^q) Equivale à  ~pv~q  que por sua vez também equivale a   p>~q

  • Realmente essa é matadora, e até agora, nem o professor quis comentar. kkk


    Vamos lá:

    --------------------------------------------------------------------------------------------------------------------


    Essa se faz de trás pra frente:


    b) ~(p ^ q ) é equivalente a (p → ~q)


    Perceba ao distribuir ~(p ^ q )  teremos o seguinte:   (~p V ~q)   que é equivalente a (p → ~q), pois uma das duas regras da equivalência diz que devemos (negar a primeira ou manter  a segunda). Sendo assim, é só verificar de trás para frente.


    -------------------------------------------------------------------------------------------------------------------


    Assim:  (p → ~q) é equivalente a (~p V ~q), esta pode ser representada por ~(p ^ q ) .


    Pegadinha malandra.


  • P     Q      ~P     ~Q       P->Q        P v Q      P-> ~Q         P ^ Q         ~ ( P ^ Q)

    V     V       F        F           V               V              F                  V                     F

    V     F       F        V           F               V              V                  F                     V

    F     V       V        F           V               V                              F                     V

    F     F       V        V           V               F              V                 F                      V


    Dessa forma, não precisa decorar equivalência nenhuma, se a tabela verdade for igual há equivalência. 

  • Resolvendo cada alternativa até encontrarmos a correta:

    A) (~p ^ q) = ~(p v ~q), portanto, alternativa errada.

    B) ~(p ^ q) = ~p v ~q = (p→ ~q), Alternativa correta, pois:

    A→B = ~A v B pela equivalência da condicional.


    Resposta: Alternativa B.
  • Resposta (B)

    b) ~(p^q)  equivalente a (p → ~q)

    O raciocínio é simples! Primeiro fazemos a negação de ~(p^q), (nega o primeiro, troca o E pelo o OU, e nega o segundo)= (~p v ~q), Apareceu o "OU",então podemos fazer a EQUIVALÊNCIA.

    Equivalência de (~p v ~q) = (Troca o “ou” pelo “Se.. Então”, nega o primeiro e repete o segundo) = (p → ~q).


  •  a)(~p ^ q) é equivalente a ~(p ˅ q)

    ERRADO. Lei de Morgan==> ~(p^q) =~(p˅q)

     

     b) ~(p ^ q ) é equivalente a (p → ~q)

    CORRETO

    1) Primeiro devemos saber que: p→ q = ~p ˅ q ou p ˅ q = ~p→ q (Nega primeira e mantém a segunda)

    2) Resolvemos a primeira parte com a lei de Morgan ~(p ^ q ) = ~p ˅ ~q

    3) Aplicando a regra de negar a primeira e manter a segunda termos : ~p ˅ ~q = p→ ~q

     

     c) (p ˅ q) é equivalente a ~(p ^ q)

    ERRADO. Idem letra a

     

     d) (p → q) é equivalente a (p ^ ~q)

    ERRADO .idem letra b (Nega a PRIMEIRA e mantém a SEGUNDA)

     

     e) ~(p → q) é equivalente a (~p ˅ q)

    ERRADO. Negação da condicional: ~(p → q) = p ^~ q (Mantém a primeira E nega a segunda)

  • ~ ( P ^ Q) = ~P v ~Q = P - > ~Q.

     

    gabarito ''B''

  • Youtube: Como decorar as equivalências lógicas - Professor Joselias.

  • Gabarito B:

    Desenvolvendo a proposição, temos:

    P --> ~Q, cuja equivalência é ~P v ~Q (Nega e Mantém) ou ~(P ^ Q) 


ID
1117483
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Programação
Assuntos

Considere as classes e interfaces Java abaixo, em que cada qual ocupa seu próprio arquivo.

public class ClsA {
       int x;
       int y;
       public final void opA1(int a) {
       }
       public static void opA2(float b) {
       }
       public void opA3(int a,String b) {
       }
}
public abstract class ClsB {
       String s1;
       int i;
       public void opB1(String s) {
       }
       public abstract void opB2(String s,String t);
       public void opB3(int a,int b) {
       }
}
public interface ItX {
       void op1(Object x);
       String op2(Object x,String y);
}

Qual classe NÃO produz erros de compilação?

Alternativas
Comentários
  • Pessoal, prestem atenção que na letra D a classe é abstrata então não precisa implementar todos os métodos da interface ltX, reparem que o método op2(String X,StringY) tem assinatura diferente do método da interface op2(Object X, String y).


ID
1117486
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Engenharia de Software
Assuntos

Um fragmento combinado é um elemento da UML frequentemente empregado na construção de diagramas de sequência. Dentre os diferentes tipos de operadores de fragmentos combinados encontra-se

Alternativas
Comentários
  • Paralelo (par)Um operador de interação paralelo indica que os fragmentos de interação são executados simultaneamente uns com os outros.
    http://www-01.ibm.com/support/knowledgecenter/SSRTLW_9.0.0/com.ibm.xtools.sequence.doc/topics/rinteracoperate.html?cp=SSRTLW_9.0.0%2F9-0-1-8-7-7&lang=pt-br

  • Paralelo (par)Um operador de interação paralelo indica que os fragmentos de interação são executados simultaneamente uns com os outros.

  • opt - opcional

    loop

    alt - condição

  • Os tipos de operadores de controle mais comuns são: opt, alt, par e loop

    Livro UML pg 256

  • Operadores mais utilizados:

     

    ● Alt – Alternativas:    Este operador define que o fragmento representa uma escolha entre dois ou mais comportamentos;

    ● Opt – Opção: Este operador define que o fragmento representa uma escolha de comportamento onde este comportamento será ou não executado;

    ● Par   –   Paralelo:    Este   operador   define   que   o   fragmento   representa   uma execução paralela de dois ou mais comportamentos;

    ● Loop – Laço: Este operador define que o fragmento representa um laço que poderá ser repetido diversas vezes;

    ● Break – Quebra: Este operador define que o fragmento indica uma “quebra” na execução normal do processo. É utilizado  para modelar tratamento de exceções;

    ● Critical  ­ Região Crítica: Este operador define que o fragmento indica uma operação atômica que não pode ser interrompida por outro processo até ser totalmente concluída.

     

    Operadores menos utilizados:  Neg  ­ Negativo, Assertion –  Afirmação, Ignore – Ignorar, Consider – Considerar,  Seq – Seqüência Fraca, Strict – Seqüência Estrita.

     

    file:///C:/Users/Leonardo/Downloads/guiaModelagemInteracoes.pdf

  • e-

    Par - paralelo: indica 2 processos simltaneos. A sintaxe da msg no diagrm seq:

    expressao-sequencia recorrencia: v := msg

    expressao-sequencia: 1: msg1, 2: msg2, 3: msg3, 4: msg4 etc

    recorrencia: envio condicional ou loop: *[clausula-iteracao] ou [guarda]


ID
1117489
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Engenharia de Software
Assuntos

O sistema de informação responsável pelo registro civil de um estado brasileiro possui uma função para registrar as informações necessárias sobre um cidadão que precisa obter uma carteira de identidade. Através dessa função, são registrados no sistema informações tais como: o nome, a data de nascimento, os nomes dos pais e o local de nascimento desse cidadão.
No ato do cadastramento descrito acima, o funcionário que opera o sistema pergunta ao cidadão se ele deseja registrar que ele é doador de órgãos para transplante. Caso a resposta seja afirmativa, o funcionário seleciona essa opção no formulário de registro, o que fará com que o sistema abra um formulário para que o funcionário registre informações fornecidas pelo cidadão, tais como: tipo sanguíneo, doenças preexistentes, etc.
Baseado apenas no que foi descrito acima, qual diagrama de casos de uso descreve adequadamente as funcionalidades disponibilizadas pelo sistema de informação em questão?

Alternativas
Comentários
  • O formulário de doador "carrega" no formulário original.

  • O Funcionário é o ator do Caso de Uso "Registra Cidadão" pois é o "que o opera o sistema" de registro. A ação de Registrar o doador ocorre "caso a resposta seja afirmativa", ou seja: é opcional. Por isso utiliza-se o estereótipo extends.

  • Entre casos de uso

    Include

    Um relacionamento include de um caso de uso A para um caso de usoB indica que B é essencial para o comportamento de A. Pode ser dito também que B is_part_of A.

    Extend

    Um relacionamento extend de um caso de uso B para um caso de usoA indica que o caso de uso B pode ser acrescentado para descrever o comportamento de A (não é essencial). A extensão é inserida em um ponto de extensão do caso de uso A.

    Ponto de extensão em um caso de uso é uma indicação de que outros casos de uso poderão ser adicionados a ele. Quando o caso de uso for invocado, ele verificará se suas extensões devem ou não serem invocadas.

  • Comentando sobre as letras: "A" e "E". Mas antes uma breve introdução sobre algo que julgo ser essencial para a explicação.

    >>>Introdução<<<

    • Ao meu ver, essa questão contém dois níveis de dificuldade: (1) caso você já saiba a diferença entre: inclusão (obrigatório), generalização/especialização (herda/faz mais coisas), e extensão (opcional), você chegará as letras "A" e "E"; (2) qual é a posição correta da seta?
    • A seta é usada para apontar uma direção, mas como é formada? R.: segmento de reta (pontilhada ou contínua - na questão o segmento de reta é pontilhado) com um triângulo fixado em um dos finais.

    >>>Vamos à questão<<<

    • O triângulo fixado na elipse é o objeto essencial e onde está a reta pontilhada mostra o objeto estendido (não essencial) que seu uso dependerá. Obs.: essa ideia da forma da seta pode-se aplicar a generalização/especialização: o triângulo sem ser preenchido imediatamente após a elipse aponta para o mais genérico.
    • Erro da letra E: dá a entender que toda pessoa que entra no departamento é um Doador, sendo que não é verdade. Toda a pessoa que entra no departamento é um cidadão e ser doador é opcional. Logo, o correto é o triângulo aberto da seta imediatamente após a elipse do cidadão (letra A).

    Em frente e enfrente.


ID
1117492
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Programação
Assuntos

Seja o seguinte programa Java:

import java.util.*;

public class Main {
       public static void main(String[ ] args) {
              Collection a=new TreeSet( );
              Set b=new TreeSet( );
              Set c=(new HashMap( )).values( );
              SortedSet d=new TreeSet( );
              Deque e=new LinkedList( );
       }
}

Qual comando produz um erro de compilação?

Alternativas
Comentários
  • Para resolver essa questão e similares tem que conhecer ( decorar ) as interfaces e implementações das collections.

    Não postarei nenhum link pois existem diversos na internet cada um com uma implementação.Quanto a questão, o HashMap deveria implementar a interface MAP. As demais implementações estão corretas.
  • A questão trata de uma Coleção que contém Interfaces e Implementações (das interfaces):

    São exemplo de Interfaces e Implementações:

    Deque = ArrayDeque | LinkedList

    Set = HashSet | TreeSet | LinkedHashSet

    List = ArrayList | LinkedList | Stack | Vector

    Map = HashMap | TreeMap | LinkedHashMap

    É só saber a lista e associar a cada um :

    Collection a=new TreeSet( ); // Se trata da coleção em si, que contém todas as implementações (OK)

    Set b=new TreeSet( ); // TreeSet está na lista de implementações de Set. (OK)

    Set c=(new HashMap( )).values( ); // HashMap está acossiado a Map, e não a Set! (ERRADO)

    SortedSet d=new TreeSet( ); // SortedSet é extensão de Set. TreeSet é implementação do Set. (OK)

    Deque e=new LinkedList( ); // LinkedList está nas implementações de Deque (OK)

    GABARITO (C)


ID
1117495
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Banco de Dados
Assuntos

As tabelas abaixo pertencem ao esquema de um banco de dados de um supermercado.

CREATE TABLE PRODUTO (
       COD NUMBER(5) NOT NULL,
       DESCRICAO VARCHAR2(100) NOT NULL,
       PRECO NUMBER(8,2) NOT NULL,
       QTD_ESTOQUE NUMBER(5) ,
       TIPO NUMBER(1) NOT NULL,
       CONSTRAINT PRODUTO_PK PRIMARY KEY (COD))

CREATE TABLE ITEM (
       NUM_SERIE NUMBER(7) NOT NULL,
       COR VARCHAR2(20) NOT NULL,
       VOLTAGEM NUMBER(5) NOT NULL,
       COD_PROD NUMBER(5) NOT NULL,
       CONSTRAINT ITEM_PK PRIMARY KEY (NUM_SERIE),
       CONSTRAINT ITEM_FK FOREIGN KEY (COD_PROD)
              REFERENCES PRODUTO (COD))

Observações:
• A empresa comercializa produtos controlados por quantidade (por exemplo, caixa de sabão em pó, pacote de biscoito e lata de extrato de tomate) e produtos controlados por unidade (por exemplo, televisor, máquina de lavar roupa e liquidificador).

• A quantidade em estoque de um produto controlado por quantidade (TIPO=1) é obtida diretamente da coluna QTD_ESTOQUE.

• A quantidade em estoque de um produto controlado por unidade (TIPO=2) NÃO pode ser obtida diretamente da coluna QTD_ESTOQUE, pois, para esse tipo de produto, esta coluna irá conter o valor NULL.

• Cada linha da tabela ITEM contém informações sobre um item existente no estoque da empresa relativo a um tipo de produto controlado por unidade.


Qual consulta SQL irá exibir o código, a descrição e a quantidade em estoque relativos a cada um dos produtos comercializados pelo supermercado?

Alternativas
Comentários
  • Questão bem interessante! Veja que temos produtos controlados por quantidade (tipo = 1) e produtos controlados por unidade (tipo = 2). Eles seguem lógicas distintas no registro de estoque - os produtos controlados por quantidade podem ter seu estoque extraído da própria tabela Produto, mas os produtos controlados por unidade requerem que se realize uma contagem de registros associados na tabela Item. Dada essa diferença, é interessante que usemos o UNION/UNION ALL e separemos as duas consultas. Vejamos:

    - Os produtos controlados por quantidade (tipo = 1) já têm a quantidade em estoque diretamente registrada em um atributo chamado QTD_ESTOQUE. Para estes, basta realizarmos a seguinte consulta:

    _SELECT COD, DESCRICAO, QTD_ESTOQUE

    _FROM PRODUTO

    _WHERE TIPO = 1

    - Já para os produtos controlados por quantidade (tipo = 2) requerem que associemos a tabela produto com a tabela item, através de uma junção à esquerda (pois pode haver produtos que não têm nenhuma unidade em estoque), e posteriormente realizemos o agrupamento por produto (GROUP BY) para realizar a contagem de registros associados na tabela item (função COUNT). Vai ficar assim:

    _SELECT P.COD, P.DESCRICAO, C OUNT(I.COD_PROD)

    _FROM PRODUTO P LEF JOIN ITEM I ON P.COD=I.COD_PROD

    _WHERE TIPO = 2

    _GROUP BY P.COD, P.DESCRICAO

    Para unirmos os resultados de ambas as consultas, obtendo assim o estoque de todos os produtos (tipos 1 e 2) da tabela, basta utilizarmos um UNION. Poderíamos também utilizar um UNION ALL e o resultado seria o mesmo, já que o atributo COD é chave primária de Produto, o que faz com que todas as tuplas do resultado sejam distintas entre si. Resposta letra B!


ID
1117498
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Banco de Dados
Assuntos

As tabelas abaixo pertencem ao esquema de um banco de dados de um supermercado.

CREATE TABLE PRODUTO (
       COD NUMBER(5) NOT NULL,
       DESCRICAO VARCHAR2(100) NOT NULL,
       PRECO NUMBER(8,2) NOT NULL,
       QTD_ESTOQUE NUMBER(5) ,
       TIPO NUMBER(1) NOT NULL,
       CONSTRAINT PRODUTO_PK PRIMARY KEY (COD))

CREATE TABLE ITEM (
       NUM_SERIE NUMBER(7) NOT NULL,
       COR VARCHAR2(20) NOT NULL,
       VOLTAGEM NUMBER(5) NOT NULL,
       COD_PROD NUMBER(5) NOT NULL,
       CONSTRAINT ITEM_PK PRIMARY KEY (NUM_SERIE),
       CONSTRAINT ITEM_FK FOREIGN KEY (COD_PROD)
              REFERENCES PRODUTO (COD))

Observações:
• A empresa comercializa produtos controlados por quantidade (por exemplo, caixa de sabão em pó, pacote de biscoito e lata de extrato de tomate) e produtos controlados por unidade (por exemplo, televisor, máquina de lavar roupa e liquidificador).

• A quantidade em estoque de um produto controlado por quantidade (TIPO=1) é obtida diretamente da coluna QTD_ESTOQUE.

• A quantidade em estoque de um produto controlado por unidade (TIPO=2) NÃO pode ser obtida diretamente da coluna QTD_ESTOQUE, pois, para esse tipo de produto, esta coluna irá conter o valor NULL.

• Cada linha da tabela ITEM contém informações sobre um item existente no estoque da empresa relativo a um tipo de produto controlado por unidade.


Qual comando SQL irá inserir corretamente uma nova linha na tabela de produtos, além de não violar restrições semânticas relativas ao banco de dados do supermercado?

Alternativas
Comentários
  • Resolvi da seguinte forma:

    a)Correta. COD,DESCRIÇÃO,PRECO,TIPO=> Todas são NOT NULL, por isso não viola as restrições.

    b,c)Errado. Não foi inserido os nomes da tabela(COD,DESCRIÇÃO,PRECO,TIPO)

    d,e)Errado. QTD_ESTOQUE viola as restrições.

  • a) Correta! É a nossa resposta.

    b) Quando não fornecemos a lista de campos na inserção, precisamos explicitar os valores de cada campo no VALUES. A tabela tem 5 colunas, mas o comando só passa 4 valores. ERRADA

    c) O comando insere um produto do tipo 2 e informa a quantidade em estoque (700). No entanto, note que o enunciado menciona que os produtos de tipo 2 devem ter o NULL no campo QTD_ESTOQUE, já que são produtos controlados por item, na tabela Item. ERRADA

    d) O comando tenta passar 5 valores (apesar de um estar em branco), mas só passa 4 na lista. ERRADA

    e) O comando passa 5 campos mas só fornece 4 valores. ERRADA


ID
1117501
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Banco de Dados
Assuntos

As tabelas abaixo pertencem ao esquema de um banco de dados de um supermercado.

CREATE TABLE PRODUTO (
       COD NUMBER(5) NOT NULL,
       DESCRICAO VARCHAR2(100) NOT NULL,
       PRECO NUMBER(8,2) NOT NULL,
       QTD_ESTOQUE NUMBER(5) ,
       TIPO NUMBER(1) NOT NULL,
       CONSTRAINT PRODUTO_PK PRIMARY KEY (COD))

CREATE TABLE ITEM (
       NUM_SERIE NUMBER(7) NOT NULL,
       COR VARCHAR2(20) NOT NULL,
       VOLTAGEM NUMBER(5) NOT NULL,
       COD_PROD NUMBER(5) NOT NULL,
       CONSTRAINT ITEM_PK PRIMARY KEY (NUM_SERIE),
       CONSTRAINT ITEM_FK FOREIGN KEY (COD_PROD)
              REFERENCES PRODUTO (COD))

Observações:
• A empresa comercializa produtos controlados por quantidade (por exemplo, caixa de sabão em pó, pacote de biscoito e lata de extrato de tomate) e produtos controlados por unidade (por exemplo, televisor, máquina de lavar roupa e liquidificador).

• A quantidade em estoque de um produto controlado por quantidade (TIPO=1) é obtida diretamente da coluna QTD_ESTOQUE.

• A quantidade em estoque de um produto controlado por unidade (TIPO=2) NÃO pode ser obtida diretamente da coluna QTD_ESTOQUE, pois, para esse tipo de produto, esta coluna irá conter o valor NULL.

• Cada linha da tabela ITEM contém informações sobre um item existente no estoque da empresa relativo a um tipo de produto controlado por unidade.


O analista de suporte de banco de dados do supermercado solicitou que a coluna QTD_ESTOQUE passasse a conter a quantidade de itens em estoque de produtos do tipo 2. Embora ele reconheça que isso resultará em redundância, os relatórios de performance mostram que existe um desperdício de recursos computacionais significativo com o cálculo recorrente do total de itens em estoque de produtos do tipo 2.
Qual comando SQL irá atualizar corretamente a coluna QTD_ESTOQUE com a quantidade de itens em estoque relativa a cada um dos produtos do tipo 2 comercializados pelo supermercado?

Alternativas
Comentários
  • A ideia é atualizarmos o campo QTD_ESTOQUE dos itens de Tipo 2 na tabela Produto, para conter a quantidade de registros de cada produto na tabela Item. Vamos começar criando o "esqueleto" do comando UPDATE. Ele vai ficar assim:

    UPDATE Produto P SET Qtd_Estoque = X WHERE Tipo = 2

    Em que X é a quantidade de itens do produto em questão na tabela item. Para obter esse valor, podemos utilizar uma subconsulta. Vamos começar criando a consulta que retorna a quantidade de itens em estoque na tabela Item:

    _SELECT COUNT(*) FROM ITEM

    Vamos ver como fica a atualização com a subconsulta no lugar do X:

    UPDATE Produto P SET Qtd_Estoque = (SEL ECT COUNT(*) FROM ITEM) WHERE Tipo = 2

    Note que essa consulta simplesmente atribui a quantidade total de linhas da tabela Item (de todos os produtos) ao atributo QTD_ESTOQUE de cada produto do tipo 2. Todos eles ficariam com o mesmo valor! Isso acontece porque não há nenhum associação entre Produto e Item. Precisamos, então, fazer essa associação, para que cada produto tenha a quantidade correspondente em esoque:

    UPDATE Produto P SET Qtd_Estoque = (SEL ECT COUNT(*) FROM ITEM WHERE COD_PROD = P.COD) WHERE Tipo = 2

    A resposta correta é a Letra D. Um detalhe é que COUNT(COD_PROD) retorna a quantidade de valores não nulos do atributo COD_PROD na subconsulta. Como COD_PROD é chave primária, todo registro terá um valor não nulo para esse atributo. Assim, tanto faz usar COUNT(COD_PROD) ou COUNT(*)!


ID
1117510
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Banco de Dados
Assuntos

Qual forma normal se baseia no conceito de dependência multivalorada?

Alternativas
Comentários
  • 4FN --> Dependência Multivalorada

  • Alternativa e.

    1FN- Atributos atômicos (Não possuí atributos Multivalorados)

    2FN- Dependência não Plena

    3FN- Atributos independentes entre Si. (Boyce-Codd)

    4FN- Dependência multivalorada​

    5FN- Dependência​ de Junção

    Bons Estudos!

  • Não confundir atributos Multivalorados com Dependência multivalorada​.

    1FN- Atributos atômicos (Não possuí atributos Multivalorados)

    4FN- Dependência multivalorada​

     


ID
1117516
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Banco de Dados
Assuntos

Um país irá leiloar blocos de exploração de petróleo e precisa de um sistema de informação para controlar o registro dos consórcios que participarão dos leilões, os lances que serão realizados e o vencedor de cada leilão. Todos os consórcios que irão disputar os leilões terão que ser previamente cadastrados no sistema. Um consórcio é formado por uma ou mais empresas.
O objeto de cada leilão é um bloco de exploração. Os consórcios poderão registrar vários lances para cada bloco disputado. Os lances, entretanto, terão de ser maiores ou iguais a um valor mínimo, que será fixado, para cada bloco, antes de cada leilão.
Além de atender aos requisitos acima, o sistema de informação em questão deve responder às seguintes questões:

• Qual é o nome do consórcio vencedor?
• Quais são as empresas que integram um determinado consórcio?
• Qual é o país de origem de uma determinada empresa?
• Qual é o nome de uma determinada área de exploração? Onde ela está localizada?
• Qual é o código de um determinado bloco de exploração? Onde ele está localizado? A que área de exploração ele pertence?

Qual diagrama E-R atende a todos os requisitos descritos acima?

Alternativas
Comentários
  • LETRA C

    Tecnicamente todas estão erradas, pois em nenhuma delas o atributo Código do Bloco é marcado como sendo Chave(Preenchido de preto)

    Porém dado o resultado é importante percebermos:
    1 - Os lances, entretanto, terão de ser maiores ou iguais a um valor mínimo, que será fixado, para cada bloco, antes de cada leilão.(Assim o valor mínimo pertence ao bloco, não ao Leilão)
    2 - •Quais são as empresas que integram um determinado consórcio? • Qual é o país de origem de uma determinada empresa?(Essas perguntas indicam que empresa é uma entidade e não um atributo do consórsio)
    2.1 - Um consórcio é formado por uma ou mais empresas. - Confirmação de uma CARDINALDIDADE de 1:N


ID
1117519
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Gerência de Projetos
Assuntos

A estimativa de custos de um projeto deve ser feita de forma a se obter a estimativa dos recursos monetários necessários para executar as atividades desse projeto.

A estimativa paramétrica, que é uma ferramenta e uma técnica, utiliza

Alternativas
Comentários
  • A estimativa paramétrica usa relações estatísticas para estimar custo e duração das atividades com base em dados históricos e paramêtros do projeto.

    Por exemplo: Historicamente, o pintor X pinta 10m2 de parede/dia, concluí-se que ele pintará 100m2 em 10 dias.

    http://escritoriodeprojetos.com.br/estimativa-parametrica.aspx

  • Alternativa A) Paramétrica. Usa um algoritmo para calcular.

    Alternativa E) Análoga.Compara com uma atividade ou projeto semelhante.


ID
1117522
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Gerência de Projetos
Assuntos

Independente de um projeto variar de tamanho e complexidade, é necessário mapeá-lo para a estrutura do ciclo de vida. Associe as etapas da estrutura do ciclo de vida do projeto com as suas características.

I – Início do Projeto
II – Execução do trabalho do projeto
III – Encerramento do projeto

P – Os níveis de custo e de pessoal atingem um valor máximo.
Q – Os níveis de custo e de pessoal são baixos.
R – Os níveis de custo e de pessoal caem.
S – Os níveis de custo e de pessoal permanecem constantes durante toda a etapa.

As associações corretas são:

Alternativas
Comentários
  • b) I: Início do Projeto  Q: Os níveis de custo e de pessoal são baixos
        II: Execução do trabalho do projeto    P: Os níveis de custo e de pessoal atingem um valor máximo    
       III: Encerramento do projeto    R – Os níveis de custo e de pessoal caem
  • Para resolver a questão basta recordar o gráfico que representa as fases do ciclo de vida do projeto, onde o trajetória do gráfico traduz o custo por unidade tempo em cada fase. Iniciação, planejamento, execução, controle e encerramento. Inicia-se baixo, assume o ápice na execução e cai nas fases consecutivas.

  • Bom, resolvi sem muitos problemas, porque na média os custos maiores incidem na execução e decaem no sentido do encerramento.
    Portanto II-P e III-R, nem me interessei pelas restantes.. GAB.B


ID
1117525
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Gerência de Projetos
Assuntos

Se em uma análise de controle de custos de uma atividade o valor planejado é de R$ 100.000,00 e o valor agregado é de R$ 90.000,00, o índice de desempenho de prazos é de

Alternativas
Comentários
  • Índice de desempenho de prazos ou SPI (Schedule Performance Index) mostra a taxa de conversão do valor previsto em valor agregado. Divisão entre o Valor Agregado (EV) e o Valor Planejado (PV). SPI= EV/PV, portanto,  EV= earned value = Valor agregado = R$90.000,00

    PV= Valor Planejado = R$100.000,00

    SPI= 90.000/100.000= 0,9 d)


ID
1117528
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Gerência de Projetos
Assuntos

De acordo com o PMBOK, o processo de verificar o escopo, que faz parte do grupo de processos de monitoramento e controle, tem o objetivo de

Alternativas
Comentários
  • No grupo de processo de Montiramento e Controle para a área de conhecimento Escopo, temos:

    Processos da gerência de escopo 

    Verificar o escopoFormalizar a aceitação das entregas do projeto terminadas. 

    Controlar o escopoControlar as mudanças feitas no escopo do projeto. 

    Tradicionalmente, e em outros frameworks, como em Eng. de Software, a Verificação é voltada para avaliar a qualidade e aderência do produto ou serviço com o requisitado. Assim, o PMBOK 5 já ajustou essa "inconsistência", nessa versão o processo que formaliza a aceitação das entregas terminadas do projeto chama-se: "Validar o escopo".

    Mas, para o PMBOK 4, a alternativa correta é a (D) mesmo!

    Bons estudos!



ID
1117531
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Modelagem de Processos de Negócio (BPM)
Assuntos

Um processo pode ser entendido como um conjunto de atividades inter-relacionadas ou interativas, que transformam entradas em saídas.

Observe as afirmações a seguir referentes ao Business Process Management (BMP).

I – O BMP busca definir um processo temporário, com início e fim definidos.
II – O BMP baseia o desenho e fluxo do processo no organograma da organização.
III – O BMP gera um método sistemático e confiável para análise do impacto de um processo de negócio.
IV – O BMP analisa riscos existentes no negócio atual e nas inovações.

Está correto APENAS o que se afirma em

Alternativas
Comentários
  • Primeiramente é BPM, e não BMP.


    O item I descreve um projeto e nao um processo.

    No item II, o BPM baseia o desenho e fluxo do processo no conjunto de atividades modeladas, indiferindo,portanto, o organograma da organizacão.

  • O que está errado na IV?

    As-is = contempla os riscos do negócio atual / To-be = estado desejado do processo

  • IV - Errado

    BPM analisa riscos do processo de negócio.

  • Fluxo de processo consiste na representação lógica de várias atividades organizadas numa sequência focado no desenvolvimento de um produto numa cooperação de áreas funcionais. Cada uma agindo como um fornecedor. Fluxo de trabalho consiste na representação física das atividades e está localizado em uma área funcional.
  • No fluxo de processo não há foco em área funcional, mas na execução do processo que transpõe barreiras funcionais, geralmente. O fluxo de trabalho é que tem um aspecto localizado. Sendo uma sequência de atividades de uma área funcional para fornecer algum resultado para a área demandante.
  • O que está errado na IV?


ID
1117534
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Programação
Assuntos

Uma linguagem de programação não exige que as variáveis tenham seu tipo definido. Porém, sempre detecta erros de tipo, determinando o tipo de todos os operandos em tempo de execução.

Isso a caracteriza como uma linguagem

Alternativas
Comentários
  • estático é em tempo de compilação

    dinâmico é em tempo de execução

  • por que é fortemente tipada?

  • Linguagens Fortemente Tipadas e Dinamicamente Tipadas: são aquelas linguagens em que o tipo das variáveis são importantes, porém, elas podem ser alteradas durante a execução do programa. Acontece que a linguagem não permite que uma variável numérica realize uma operação com uma variável do tipo string, mesmo que o conteúdo do texto seja composto por números causando um erro.

    Linguagem Dinâmica: não exige declaração do tipo de dados. São capazes de escolher o tipo de acordo com o conteúdo.

    Linguagem fortemente Tipada exemplo:

    var1 = 120

    var2 = "10"

    var3 = var1 * var2

    # Erro (houve erro pois o tipo não foi alterado dinamicamente durante execução em var2)

    --------------------------------------------

    var1 = 120

    var2 = "10"

    var2 = 10

    var3 = var1 * var2

    # resultado: 1200 (não houve erro pois o tipo foi alterado dinamicamente durante execução em var2)

    --------------------------------------------

    Em contrapartida, Fracamente Tipada faz a operação sem alterar o tipo:

    var1 = 120

    var2 = "10"

    var3 = var1 * var2

    // resultado: 1200

    --------------------------------------------

    Resumindo: FORTEMENTE TIPADA se receber um Tipo não poderá operar com outro até que seu Tipo seja alterado, mesmo que em tempo de execução. E ao receber um outro Tipo em tempo de execução, significa que são DINAMICAMENTE TIPADAS.

    *Fonte: https://pt.wikipedia.org/wiki/Linguagem_tipada#Linguagens_fortemente_tipadas


ID
1117537
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Engenharia de Software
Assuntos

Em um sistema de acompanhamento de empréstimos, um processo elementar tem como finalidade principal apresentar ao usuário um relatório, com cálculos on line, do valor presente e dos valores futuros de um empréstimo, para um período e uma taxa de juros fornecidos pelo usuário.
De acordo com a prática de contagem de pontos de funções, devemos caracterizar essa função como um(a)

Alternativas
Comentários
  • Uma saída externa(SE) é um processo elementar que envia dados ou informações de controle para fora da fronteira da aplicação. Seu objetivo é exibir informações recuperadas através de processamento lógico , isto é , processamento que envolva cálculos ou criação de dados derivados e não apenas uma simples recuperação de dados. Uma Saída Externa pode manter um ALI ou alterar o comportamento do sistema. Representam assim atividades do sistema que transformam dados dos ALI e geram resultados que são exibidos ao usuário.(VAZQUEZ,2005)

     

    O processamento lógico é definido como o conjunto de críticas, cálculos, algoritmos e referência/acesso a arquivos requisitados pelo usuário que visa completar um processo elementar. (IFPUG,1999)

     

    O processo elementar é a menor conjunto de atividades significativa para o usuário final em termos de função de negócio.

     

    Dados derivados são dados que exigem um processamento diferente de um acesso, recuperação ou edição de dados de um ALI e/ou AIE.

     

    A identificação de uma saída externa pode ser feita pela identificação de todos os processos e informações de controle que enviam dados para fora da fronteira da aplicação. Satisfeita esta condição pode-se considerar uma saída externa (IFPUG , 1999) :

     

    Dados transferidos para outra aplicação : dados de um ALI que são formatados (arrumados em uma ordem única) e processados para uso por uma aplicação externa.

     

    - Relatórios : Cada relatório produzido pela aplicação pode ser considerado uma SE. Para relatórios de formato idênticos mas que necessitam de lógicas de processamento ou cálculos distintos devem ser considerados duas saídas externas.

    - Relatórios on-line : Saída de dados on-line que não seja a parte de saída de uma consulta Externa.

    - Formatos Gráficos : Contados da mesma forma como saída em formato texto, isto é , cada formato gráfico diferente é contado como uma saída externa.

     

    Fonte: http://www.macoratti.net/apf_pcta.htm

     

  • Palavra chave da ' saída externa ' : exibir com processamento....


ID
1117540
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Banco de Dados
Assuntos

Ao implementar um sistema de gerência de fornecedores, o desenvolvedor percebeu que não existia no banco de dados relacional da empresa qualquer representação da entidade PRODUTO que aparecia em seu modelo de dados. Para corrigir essa falha, preparou um comando SQL que alteraria o esquema do banco de dados.
Tal comando SQL deve ser iniciado com

Alternativas
Comentários
  • O que o desenvolvedor precisa fazer é criar uma representação para a entidade Produto, que não existe no banco de dados relacional. Quando passamos um modelo conceitual para o modelo relacional, as entidades, em via de regra, se tornam tabelas no BD relacional. No caso acima, veja que não existia nenhuma representação prévia dessa tabela, então é necessário criá-la. Para criar uma tabela, utilizamos o comando CREATE TABLE produto. Letra E!


ID
1117543
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Banco de Dados
Assuntos

Uma empresa decidiu comprar um SGBD Oracle e precisa adaptar-se a alguns novos conceitos específicos desse produto. Entre eles está o conceito de esquema, que é um tipo de objeto de base de dados Oracle

Alternativas
Comentários
  • Alguém explica ou me passa um livro de referência?

  • Cara eu trabalho com Oracle e quando crio um usuário ele também cria um esquema para este usuário, não sou expert em oracle, se alguém mais poder contribuir. 

  • não tem referência, esse assunto é um inferno, as bancas não delimitam, ou vc estuda o infinito ou vc está fadado a errar algumas mesmo, outros no mesmo naipe: SQL SERVER e outros SGBDs, Windows, Linux, tecnologias em geral... sem delimitar complica


ID
1117546
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Algoritmos e Estrutura de Dados
Assuntos

Uma linguagem de programação permite que os parâmetros de uma função sejam passados por valor ou por referência. Suponha que nessa linguagem seja definida uma função F(A,B) onde A e B são os parâmetros formais, sendo que A é passado por valor, e B é passado por referência. Durante a execução de F, somamos 2 ao valor de A e subtraímos 2 do valor de B.
Caso F(X,Y) seja uma chamada da função, ao longo do programa, onde os parâmetros reais X e Y são variáveis cujos valores antes da chamada são, respectivamente, 10 e 20, esperamos que, ao terminar a função, os novos va- lores de X e Y sejam, respectivamente,

Alternativas
Comentários
  • Passagens por referência indicam que esses parâmetros PODEM ser modificados dentro da função, ou seja, alterações que esses parâmetros sofrerem serão sentidas FORA da função, que correspondem aos efeitos colaterais que NÃO OCORREM quando os parâmetros são passados por valor .


    Fonte: http://www.ime.usp.br/~elo/IntroducaoComputacao/Funcoes%20passagem%20de%20parametros.htm


    Ou seja, quando a passagem é por referência o resultado é sempre alterado, quando a passagem é por valor ele só é alterado dentro da função.

  • Força Guerreiro!!!!!!