SóProvas


ID
1878757
Banca
IESES
Órgão
BAHIAGÁS
Ano
2016
Provas
Disciplina
Engenharia de Software
Assuntos

Para atender este mercado crescente de computadores criaram-se modelos de desenvolvimento de softwares que atendem as necessidades singulares de alguns setores e, ao mesmo tempo, podem ser utilizados na elaboração softwares triviais. Sobre os modelos de desenvolvimento, são feitas as seguintes afirmações: 


I. O modelo de desenvolvimento Cascata, também chamado de Clássico ou Linear, caracteriza-se por possuir uma tendência na progressão sequencial entre uma fase e a próxima. Pode ter retroalimentação de uma fase para a anterior, mas, em uma visão macro, as fases seguem sequencialmente.

II. No modelo de desenvolvimento iterativo e incremental, um software é desenvolvido em vários passos similares (iterativo) e, em cada passo, o sistema é estendido (incremental).

III. O modelo de desenvolvimento XP (Extreme Programming) é um processo de desenvolvimento de software que adota os valores de comunicação, simplicidade, feedback e coragem. É uma metodologia ágil para equipes médias ou grandes e que irão desenvolver software com requisitos bem especificados e com poucas mudanças.

IV. O modelo de desenvolvimento Scrum é um processo clássico de desenvolvimento software. É um modelo iterativo e incremental para gerenciamento de projetos e desenvolvimento de software. Muito utilizado para trabalhos de curta duração nos quais é impossível acompanhar o cliente. No Scrum, os projetos são divididos em ciclos chamados de Kanban.

V. O modelo de desenvolvimento BDD (Behavior Driven Development) é uma técnica de desenvolvimento de software que baseia em um ciclo curto de repetições. Primeiramente, o desenvolvedor escreve um caso de teste automatizado que define uma melhoria desejada ou uma nova funcionalidade. Então, é produzido código que possa ser validado pelo teste para posteriormente ser refatorado para um código sob padrões aceitáveis.


Em relação a estas afirmações, assinale a alternativa correta:

Alternativas
Comentários
  • III. O modelo de desenvolvimento XP (Extreme Programming) é um processo de desenvolvimento de software que adota os valores de comunicação, simplicidade, feedback e coragem. É uma metodologia ágil para equipes médias ou grandes e que irão desenvolver software com requisitos bem especificados e com poucas mudanças. ERRADO - xp serve para equipes pequenas ou médias.

    IV. O modelo de desenvolvimento Scrum é um processo clássico de desenvolvimento software. É um modelo iterativo e incremental para gerenciamento de projetos e desenvolvimento de software. Muito utilizado para trabalhos de curta duração nos quais é impossível acompanhar o cliente. No Scrum, os projetos são divididos em ciclos chamados de Kanban. ERRADO - SCRUM não é clássico (cascata)

    V. O modelo de desenvolvimento BDD (Behavior Driven Development) é uma técnica de desenvolvimento de software que baseia em um ciclo curto de repetições. Primeiramente, o desenvolvedor escreve um caso de teste automatizado que define uma melhoria desejada ou uma nova funcionalidade. Então, é produzido código que possa ser validado pelo teste para posteriormente ser refatorado para um código sob padrões aceitáveis. ERRADO Behavior Driven Development (BDD ou ainda uma tradução Desenvolvimento Guiado por Comportamento) é uma técnica de desenvolvimento Ágil que encoraja colaboração entre desenvolvedores, setores de qualidade e pessoas não-técnicas ou de negócios num projeto de software

  • I e II. CORRETO (Gabarito B)

     

    III. O modelo de desenvolvimento XP (Extreme Programming) é um processo de desenvolvimento de software que adota os valores de comunicação, simplicidade, feedback e coragem. É uma metodologia ágil para equipes médias ou grandes e que irão desenvolver software com requisitos bem especificados e com poucas mudanças. ERRADO - XP serve para equipes pequenas ou médias.

     

    IV. O modelo de desenvolvimento Scrum é um processo clássico de desenvolvimento software. É um modelo iterativo e incremental para gerenciamento de projetos e desenvolvimento de software. Muito utilizado para trabalhos de curta duração nos quais é impossível acompanhar o cliente. No Scrum, os projetos são divididos em ciclos chamados de Kanban. ERRADO - SCRUM não é clássico (cascata).

     

    V. O modelo de desenvolvimento BDD (Behavior Driven Development) é uma técnica de desenvolvimento de software que baseia em um ciclo curto de repetições. Primeiramente, o desenvolvedor escreve um caso de teste automatizado que define uma melhoria desejada ou uma nova funcionalidade. Então, é produzido código que possa ser validado pelo teste para posteriormente ser refatorado para um código sob padrões aceitáveis.

    ERRADO Behavior Driven Development (BDD ou ainda uma tradução Desenvolvimento Guiado por Comportamento) é uma técnica de desenvolvimento Ágil que encoraja colaboração entre desenvolvedores, setores de qualidade e pessoas não-técnicas ou de negócios num projeto de software

  • Outro erro do item III:  com requisitos bem especificados e com poucas mudanças. O XP é aberto a mudanças.

  • I e II - certos

     

    III - Os times podem ser pequenos ou médios; ideal para situações onde os requisitos geralmente são incertos e deverão ser desenvolvidos no decorrer do processo.

     

    IV - Scrum não é clássico (cascata); o cliente é peça importante no processo de desenvolvimento de software, ao indicar uma pessoa para assumir o papel de product owner; os ciclos do scrum são sprints.

     

    V - Descrição se parece muito com TDD.

  • até onde eu sei, o BDD também escreve o teste antes. Não entendi pq a V tá errada.

    "Principles of BDD

    Test-driven development is a software development methodology which essentially states that for each unit of software, a software developer must:

         - define a test set for the unit first;

         - make the tests fail;

         - ..."

    https://en.wikipedia.org/wiki/Behavior-driven_development

  • BDD é uma evolução do TDD, e embora possua algumas diferenças, como a mudança do foco para a linguagem de negócio, o ciclo manteve-se bastante parecido. Também não consegui visualizar erro na V. 

  • O erro da V está no fato que a afirmação omitiu/pulou estapa : "make the tests fail;"

  • Consegui chegar na resposta certa por eliminação, mas fiquei na dúvida neste item "...Pode ter retroalimentação de uma fase para a anterior...", pode isto Arnaldo?

  • Complementando o que o Ronniery falou, esse "retroalimentação de uma fase para a anterior" é de matar.

    Sei que existe uma variação nova do modelo Cascata, o tal do "Cascata com Retroalimentação", mas não encontrei fonte OFICIAL descrevendo esse "novo modelo".

  • O erro da V é que ele fala apenas do TDD "seco". O BDD, em tese, tem seus testes escritos em linguagem semi-formal (cláusulas GIVEN, WHEN e THEN), que são convertidos por uma ferramenta para o teste em código-fonte. Então, "o desenvolvedor escreve um caso de teste automatizado" estaria errado. O certo seria que o caso de teste seria descrito (nessa linguagem semi-formal), e então convertido. O BDD é uma espécie de especialização do TDD, ele vai mais a fundo.


    Pelo menos foi isso que eu entendi.