Aula 01
Curso: Tecnologia da Informao p/ Caixa Econmica Federal (tpicos 8,9, 10, 11, 12 e
14)
SUMRIO PGINA
Apresentao 01
Informaes sobre o concurso 02
Informaes sobre o curso 03
Cronograma do concurso 04
Sobre as aulas... 05
Ciclo de Vida e Metodologias de Desenvolvimento de Software 07
Processo Unificado: Disciplinas, Fases, Papis e Atividades 27
Metodologias geis 36
Modelagem de Processos 47
Exerccios Comentados (48) 53
Lista de Exerccios Comentados 64
Gabarito 68
APRESENTAO
Ol, pessoal. Sejam bem-vindos! O Edital da Caixa Econmica Federal (CEF) saiu, trazendo
vagas para os candidatos da rea de Tecnologia da Informao e por essa razo que eu
estou aqui. As provas sero aplicadas no dia 2 03/2014, portanto vocs tm cerca de dois
meses at a prova. Meu objetivo fazer vocs acertarem a maior quantidade de itens! =)
No se enganem 01176992910
Edital: http://www.cespe.unb.br/concursos/CAIXA_14_NM
Vagas: Cadastro-Reserva.
01176992910
8 Engenharia de Software. Noes sobre: Modelagem de processos, Ciclo de vida do software. Metodologias de desenvolvimento
de software. Processo unificado: disciplinas, fases, papis e atividades. Metodologias geis. Anlise e projeto orientados a objetos.
UML: viso geral, modelos e diagramas. Padres de projeto. Arquitetura em trs camadas. Arquitetura orientada a servios. Mtricas
e estimativas de software. Anlise por pontos de funo. Conceitos bsicos e aplicaes. 9 Engenharia de requisitos. Conceitos
bsicos. Noes sobre: tcnicas de elicitao de requisitos, especificao de requisitos e tcnicas de validao de requisitos.
Prototipao. 11 Testes de software: conceitos e aplicaes. 11.1 Testes unitrios, de integrao e de aceitao: conceitos e aplicaes.
11.2 Desenvolvimento orientado a testes: conceitos e aplicaes. 12 Gerncia de configurao: conceitos e prticas. 12.1 Uso de
ferramentas de gerncia de configurao. 12.2 Controle de defeitos: conceitos e prticas. 14 Portais corporativos: arquitetura da
informao, portlets e RSS. Ferramentas de Gesto de Contedos. Modelo de Acessibilidade do Governo Eletrnico.
Alm disso, o cronograma ser seguido com a maior fidelidade possvel, entretanto no
esttico e poder haver alteraes no decorrer do curso principalmente inverses de
aulas. Eventualmente, posso tirar o contedo de uma aula e colocar em outro de forma
que o estudo de vocs fique mais lgico e fcil de acompanhar.
No mais, buscarei utilizar questes das principais bancas, exceto quando no existirem.
Nesse caso, posso eventualmente inventar questes. Por fim, caso haja alguma dvida,
reclamao, sugesto, comentrios, erros de digitao, etc, podem enviar para o frum ou
para diego@estrategiaconcursos.com.br. Agora vamos ao cronograma! :-)
01176992910
CRONOGRAMA DO CURSO
SOBRE AS AULAS
Pessoal, algumas informaes sobre as aulas intercaladas com dicas sobre concursos que
eu acumulei aps diversas provas de concursos.
Pargrafos pequenos: observem que os pargrafos tm, no mximo, quatro linhas. Isso
serve para que a leitura no fique cansativa e para que vocs no desanimem! Para tal,
tento dividir as disciplinas de maneira que as aulas fiquem objetivas e pequenas (exceto
quando h muitos exerccios).
Viso Geral: no se atenham a detalhes antes de entender o bsico. Por que? Ora, no
h nada mais irritante do que ir para uma prova que vai cair, por exemplo, RUP, saber
vrios detalhes, mas no saber as fases e disciplinas. Portanto, caso estejam iniciando os
estudos sobre uma matria, foquem em saber o bsico para depois se especializarem.
Linguagem natural: essa uma aula para ser lida, o que por si s j pode ser cansativo.
Tentarei colocar a linguagem mais coloquial possvel, simulando uma conversa. Portanto,
caso virem frases ou palavras em itlico, ou uma palavra estrangeira ou a simulao de
uma conversa com vocs. Pode dar um exemplo, professor? Acabei de dar! :-)
01176992910
6 Faam resumos: essa dica somente serve caso vocs tenham disponibilidade. Caso haja
pouco tempo para estudar ou pouco tempo at a prova, no compensa! Se no, faam
resumos organizados, pois eles economizaro um bom tempo de estudo em suas prximas
provas e sempre que descobrirem novas informaes, insiram-nas no resumo.
Bem, pessoal! isso... sejam bem vindos! Espero que vocs curtam e que tenham uma
leitura leve e despojada da aula, mas com muito foco e ateno. Qualquer dvida, podem
entrar em contato comigo; ficarei feliz em ajud-los. Bons estudos, estou torcendo por
vocs! :)
01176992910
Modelo de Ciclo de Vida definido como uma representao abstrata e simplificada do Processo
de Desenvolvimento de Software, apresentada a partir de uma perspectiva especfica. E o que
esse Processo de Desenvolvimento de Software? Um conjunto de atividades, cuja meta o
desenvolvimento ou a evoluo de um software.
01176992910
Pessoal, coloquei na Figura 1 os principais grupos de modelos de ciclo de vida. Essa classificao
no um consenso entre os autores e nem so mutuamente exclusivas, podendo haver
combinao entre elas. Mas fiquem tranquilos, foquem nos modelos em si e, no, em seus grupos.
Isso apenas para orientao! :-)
01176992910
MODELO EM CASCATA
No Modelo em Cascata, uma fase s se inicia aps o trmino e aprovao da fase anterior, isto ,
h uma sequncia de desenvolvimento do projeto. Por exemplo, a Fase 4 s iniciada aps o
trmino e aprovao da Fase 3. A Fase 5 s iniciada aps o trmino e aprovao da Fase 4. Mas
que fases so essas? Bem, agora que complica, porque cada autor resolve criar suas fases! Vejamos:
01176992910
Percebam que h diferenas gritantes entre os autores! Inclusive, h divergncias at entre autor e
ele mesmo, dependendo da verso do livro (Exemplo: Pressman mudou as fases na ltima edio
de seu livro). Professor, voc j viu isso cair em prova? Sim, j vi! E o que aconteceu? Bem, polmica,
recursos, etc!
Projeto: durante essa fase, incorpora-se requisitos tecnolgicos aos requisitos essenciais do
sistema e projeta-se a arquitetura do sistema.
Teste: o programa testado como um sistema completo para garantir que os requisitos de
software foram atendidos.
Vantagens Desvantagens
simples e fcil de aplicar, facilitando o planejamento. Diviso inflexvel do projeto em estgios distintos.
Fixa pontos especficos para a entrega de artefatos. Dificuldade em incorporar mudanas de requisitos.
Funciona bem para equipes tecnicamente fracas. Clientes s visualizam resultados prximos ao final do
01176992910
projeto.
Pressupe que os requisitos ficaro estveis ao longo do Atrasa a reduo de riscos.
tempo.
Realiza documentao extensa por cada fase ou estgio. Apenas a fase final produz um artefato entregvel.
Possibilita boa aderncia a outros modelos de processo. Cliente deve saber todos os requisitos no incio do
projeto.
No fornece feedback entre as fases.
Professor, o que quer dizer atrasar a reduo de riscos? Bem, essa uma desvantagem recorrente
em provas. Como uma fase s se inicia aps o trmino da fase anterior, s possvel verificar se
houve erros nas ltimas fases como pode ser visto na Figura 3. Em outros modelos, os riscos so
reduzidos desde as primeiras fases.
Percebam que os riscos deveriam ser descobertos no incio, porm eles so descobertos somente
aps a integrao. Voc podem notar que, nesse instante (parte vermelha), o progresso do projeto
avana e retrai diversas vezes, porque os requisitos esto sendo modificados ou porque erros esto
sendo corrigidos.
Notem, tambm, que o projeto no terminou em seu deadline original. Como a reduo dos riscos
atrasou, todo andamento do projeto tambm atrasou. Dessa forma, no se cumpriu nem o prazo
do projeto e, provavelmente, nem o oramento tendo em vista que, quanto mais ao fim do
projeto, mais caras as modificaes.
A grande vantagem do Modelo em Cascata que, antes o software era feito artesanalmente e
agora dividido em fases distintas, padronizadas, etc. possvel colocar pessoas com perfis
especficos para cada fase, i.e., quem tem facilidade de se comunicar vai ser analista de requisitos,
programadores vo fazer a codificao, etc.
A grande desvantagem que - em projetos complexos demora-se muito para chegar at a fase
de testes, sendo que o cliente no v nada rodando at a implantao. Ento, pode acontecer de,
nas fases finais, os requisitos da organizao no serem mais os mesmos e o software no ter mais
01176992910
Professor, ento o Modelo em Cascata no deve ser usado em nenhuma hiptese? No, ele pode
ser usado! No entanto, preferencialmente quando os requisitos forem bem compreendidos e
houver pouca probabilidade de mudanas radicais durante o desenvolvimento do sistema. Vocs
entenderam?
MTODOS FORMAIS
Agora vamos falar sobre os modelos especficos! Professor, por que esse nome? Bem, s para
agrupar modelos que no se encaixam diretamente em outros grupos. Comecemos pelos Mtodos
Formais, termo usado para indicar atividades que contem com representaes matemticas de
software, especificao formal, prova de especificao, desenvolvimento transformacional, etc.
Contudo, a especificao formal uma excelente maneira para descobrir erros de especificao e
apresentar a especificao do sistema de modo no ambguo. As poucas organizaes que tm
feito investimentos em mtodos formais tm constatado menos erros no software entregue, sem
aumento de custos.
Os mtodos formais podem ser adequados em termos de custo caso seu uso seja limitado a partes
do ncleo do sistema e caso as empresas desejem fazer alto investimento inicial nessa tecnologia.
Professor, pode dar um exemplo de mtodo formal? Sim, o Mtodo Cleanroom, que trata o
desenvolvimento semelhante a uma sala limpa de cirurgia.
01176992910
ORIENTADO A ASPECTOS
No! POA no veio substituir a POO, mas complement-la (utiliz-la isoladamente no traz
benefcios para o projeto). Para tal, ela mantm o foco na separao de interesses (Separation of
Concerns), que so requisitos especficos que devem ser atendidos para satisfazer o objetivo de
um sistema, mas que no pertencem ao domnio do negcio. H dois tipos:
Por que separar interesses? Porque gera cdigo de melhor qualidade; maior modularidade; facilita
atribuio de responsabilidade entre mdulos; promove a reusabilidade; facilita a evoluo de
software; viabiliza a anlise do problema dentro de domnios especficos; entre outras tantas
vantagens.
01176992910
BASEADO EM COMPONENTES
Pessoal, vocs j pararam para pensar por que a disciplina Engenharia de Software se chama
Engenharia de Software? Bem, esse conceito surgiu em 1968, em uma conferncia
organizada para discutir a Crise do Software. Essa crise foi o resultado da introduo de
circuitos integrados em computadores. E isso era ruim, professor?
Porque foi uma tentativa de contornar a crise ao utilizar slidos princpios de engenharia a fim de
obter software de maneira econmica, que seja confivel e que trabalhe em mquinas reais, dando
um tratamento mais sistemtico e controlado (comum Engenharia) ao desenvolvimento de
sistemas de software complexos.
Pessoal, pensem comigo: a engenharia evolui seus mtodos h centenas de anos, enquanto o
desenvolvimento de software bastante recente! Logo, faz sentido utilizar os conceitos
consolidados de engenharia para melhorar seus processos de desenvolvimento de software. No
acham?
Ok, professor. Mas o que isso tem a ver com reso de componentes? Ora, a Engenharia
especializada em produzir componentes reusveis. Engenheiros raramente fabricam um
01176992910
Nos ltimos anos, uma abordagem para desenvolvimento de software denominada Component-
Based Software Engineering (CBSE) tem utilizado o reso como fundamento principal. Essa
abordagem dependente de uma grande base de componentes reusveis e algum framework de
integrao desses componentes.
Anlise de Componentes: nesta fase, feita uma busca pelos componentes para implementar
essa especificao. Geralmente, no existe uma correspondncia exata entre o componente
encontrado e o procurado. Muitas vezes, os componentes que podem ser usados fornecem
apenas parte da funcionalidade necessria.
MODELOS EVOLUCIONRIOS
Antes de comear, acho oportuno explicar porque a Figura 1 apresenta o modelo evolucionrio
como um tipo de modelo iterativo. Pressman diz: modelos evolucionrios so iterativos,
apresentando caractersticas que possibilitam desenvolver verses cada vez mais completas do
software.
Ok, o tema agora Modelos Evolucionrios! Esse modelo baseia-se na ideia de desenvolvimento
de uma implementao inicial, expondo o resultado aos comentrios do usurio e refinando esse
resultado por meio de vrias verses at que seja desenvolvido um sistema adequado. Existem dois
tipos fundamentais de desenvolvimento evolucionrio:
Em geral, a abordagem evolucionria mais eficaz que abordagem em cascata. Por que? Porque
a especificao pode ser desenvolvida de forma incremental. medida que os usurios
compreendem melhor seu problema, isso pode ser refletido no sistema de software. Essa
abordagem possui dois problemas (inclusive, j caram no Senado Federal):
(at 500 mil linhas de cdigo). J para sistemas maiores e mais complexos, esses problemas
supracitados tornam-se mais graves. difcil estabelecer uma arquitetura estvel, tornando difcil
integrar as contribuies das equipes.
Vamos resumir? um modelo que apresenta uma verso inicial aos usurios, com os requisitos
mais bem compreendidos, para refinamento do resultado verso a verso. Pode ser Evolucionrio
(quando evolui at o sistema final) ou Throwaway (quando descartado). Ademais, recomendado
para sistemas de pequeno e mdio porte.
01176992910
MODELOS DE PROTOTIPAGEM
Um prottipo uma verso inicial de um sistema de software usado para demonstrar conceitos,
experimentar opes de projeto e, geralmente, conhecer mais sobre o problema e suas possveis
solues. Assim, os custos so controlados e os stakeholders do sistema podem experimentar o
prottipo mais cedo no processo.
b) Processo de projeto do sistema, um prottipo pode ser usado para explorar solues
especficas de software e apoiar o projeto de interface com o usurio.
c) No processo de teste, um prottipo pode ser usado para realizar testes completos com o
sistema que ser entregue para o cliente.
Prottipos permitem que os usurios introduzam novas ideias para os requisitos e encontrem
01176992910
pontos fortes e fracos no software. Ademais, prottipos podem revelar erros e omisses nos
requisitos propostos, alm de reduzirem o tempo de desenvolvimento, treinamento e
documentao o sistema.
01176992910
MODELO EM ESPIRAL
Agora vamos analisar o Modelo em Espiral. Ele foi proposto originalmente, em 1988, por Boehm.
Sua ideia era, em vez de representar o processo de software como uma sequncia de atividades
com algum retorno entre uma atividade e outra, o processo deveria ser representado como uma
espiral.
IMPORTANTE
Cada loop na espiral representa uma fase no processo, entretanto essas fases no so fixas, i.e., escolhem-se quais
fases se deseja realizar.
Vocs entenderam isso? O Pressman explica isso por meio da Figura 8! Percebam que o loop mais
interno trata do projeto de desenvolvimento de conceito, o segundo loop trata do projeto de
desenvolvimento de produto, o terceiro trata do projeto de melhoria e o ltimo, mais claro, trata
do projeto de manuteno.
Quero enfatizar isso! Cada loop uma fase e a fase escolhida de acordo com as necessidades
do negcio! J as atividades do processo so fixas para todos os loops. No entanto, Boehm utiliza
uma diviso de atividades diferente do Pressman. No caso de dvida, considerem a verso original
do Modelo de Boehm.
Alm disso, ao final de cada loop, h uma tomada de deciso a respeito do projeto. Vocs
perceberam, pela Figura 8, que existem prottipos que so utilizados para verificar a viabilidade do
01176992910
projeto. Ao final de cada loop na espiral, deve-se decidir se o projeto continuar ou se ser
interrompido.
Pessoal, por que esse modelo se destaca em relao aos outros? Porque ele enfatiza bastante um
aspecto: gerenciamento de riscos. Este um modelo complexo que precisa ser gerenciado por
pessoas que tenham grande experincia na avaliao de riscos. Geralmente, o modelo utilizado
em sistemas crticos e grandes!
Vantagens Desvantagens
Suporta mecanismos de reduo de riscos. Exige analistas de risco bastante experientes.
Obtm-se verses do sistema a cada iterao. Exige uma equipe de desenvolvimento extremamente
qualificada.
01176992910
Como foi dito anteriormente, o modelo em cascata acumulava riscos e vrios projetos comearam
a fracassar ao utiliz-lo. Ento surgiu o modelo iterativo como uma tentativa de resolver esse
problema. Vejamos a diferena entre o modelo em cascata e o modelo iterativo:
No Modelo em Cascata, caso haja cem requisitos, analisa-se os cem requisitos, projeta-se
os cem requisitos, codifica-se os cem requisitos, testa-se os cem requisitos, e assim, por
diante, sequencialmente.
No Modelo Incremental, caso haja cem requisitos no projeto, divide-se os cem requisitos
em vinte miniprojetos de cinco requisitos e utiliza-se o modelo em cascata para cada
miniprojeto.
Pode-se combinar a abordagem incremental com uma abordagem iterativa para desenvolver os
miniprojetos em paralelo e entregar partes diferentes do projeto. A Figura 9 apresenta os
miniprojetos de cinco requisitos sendo feitos iterativa e paralelamente em um modelo iterativo e
incremental.
01176992910
Assim, os resultados so mais rpidos, h maior interao com o usurio e h um feedback mais
intenso. Essa abordagem permite gerenciamento e mitigao de riscos. Professor, mas eu fiquei
com uma dvida: qual a diferena entre Modelo Iterativo e Modelo Incremental? Ou eles so
exatamente a mesma coisa?
IMPORTANTE
Galera, j vi essas palavras serem trocadas dezenas de vezes. No entanto, muitas vezes a prpria banca erra e, s
vezes, no volta atrs! Infelizmente isso acontece =(
Bem, galera... muito muito muito raro cobrarem a diferena entre modelo iterativo e modelo
incremental! Na verdade, quando se fala em modelo iterativo, presume-se que incremental e
quando se fala em modelo incremental, presume-se que iterativo. Eles frequentemente andam
lado a lado, mas h pequenas diferenas.
Professor, mas e se cair em prova? Ora, caso caia em prova, a diferena que, no modelo iterativo,
h vrias equipes desenvolvendo uma parte do software a serem integradas e, no modelo
incremental, lana-se a verso 1.0, adiciona funcionalidades, lana uma verso 2.0, adiciona mais
funcionalidades e assim por diante.
Modelo Incremental: observem que a imagem mostra um artista com uma ideia completa sobre o
quadro, mas ele desenvolve cada parte separadamente at integrar as partes em uma imagem
completa. como se fosse um quebra-cabeas em que cada parte entregue funcionando e
depois integrada. Produz builds, i.e., partes do software.
01176992910
Modelo Iterativo: observem que a imagem mostra um artista com um esboo do quadro, sendo
que ele desenvolve vrias verses do quadro at chegar ao resultado final. como se fosse uma
viso abstrata da imagem, que em seguida Produz releases, i.e., verses constantemente
melhoradas da imagem.
Uma das vantagens do modelo iterativo e incremental que o cliente pode receber e avaliar as
entregas do produto mais cedo, j no incio do projeto. Alm disso, h maior tolerncia a mudanas
com consequncia direta de reduo do risco de falha do projeto, i.e., ele acomoda melhor
mudanas. Ele aumenta o reso e a qualidade.
O RAD um modelo iterativo e incremental, que enfatiza o ciclo de desenvolvimento curto (60 a
90 dias). Esse desenvolvimento ocorre to rpido, porque utilizada o reso de componentes a
exausto. Como muitos componentes j esto testados, pode-se reduzir o tempo total de
desenvolvimento. As fases so:
01176992910
Neste modelo, h uma interao direta e intensa com o usurio e uso frequente de programao
de banco de dados e ferramentas de apoio ao desenvolvimento, como geradores de telas e
relatrios. Um modelo como este no pode ser utilizado em qualquer situao. Recomenda-se
us-lo quando:
Vantagens Desvantagens
Permite o desenvolvimento rpido e/ou a prototipagem Exige recursos humanos caros e experientes.
de aplicaes.
Criao e reutilizao de componentes. O envolvimento com o usurio tem que ser ativo.
Grande reduo de codificao manual com wizards. Custo alto do conjunto de ferramentas e hardware para
rodar a aplicao;
Cada funo pode ser direcionada para a uma equipe Mais difcil de acompanhar o projeto.
separada.
Maior flexibilidade (desenvolvedores podem reprojetar Perda de preciso cientfica (pela falta de mtodos
vontade). formais).
Provvel custo reduzido (tempo dinheiro e tambm Pode levar ao retorno das prticas caticas no
devido ao reuso). desenvolvimento.
Tempo de desenvolvimento curto. Pode construir funes desnecessrias.
Prottipos permitem uma visualizao mais cedo. Requisitos podem no se encaixar (conflitos entre
desenvolvedores e clientes).
Envolvimento maior do usurio. Padronizao (aparncia diferente entre os mdulos e
componentes)
Qualidade ou experincia pobre dos usurios: a validao dos requisitos era feita por
usurios dispensveis da organizao, geralmente inexperientes.
Performance de carga sofrvel: a aplicao satisfaz todos os requisitos, no entanto tem uma
performance sofrvel.
IMPORTANTE
Galera, se cair em algum edital ou provas apenas Processo Unificado, podem considerar que se trata do RUP!
O RUP oferece uma abordagem baseada em disciplinas para atribuir tarefas e responsabilidades
dentro de uma organizao de desenvolvimento. Sua meta garantir a produo de software de
alta qualidade que atenda s necessidades dos usurios dentro de um cronograma e de um
oramento previsveis.
Os modelos convencionais de processo apresentam uma viso nica de processo. Por outro lado,
o RUP geralmente descrito a partir de trs perspectivas:
A maior parte das descries do RUP tenta combinar as perspectivas esttica e dinmica em um
nico diagrama, como mostrado na Figura 11 (Grfico de Baleias):
O RUP constitudo por quatro fases discretas no processo de software. No entanto, ao contrrio
do modelo em cascata no qual as fases coincidem com as atividades do processo , as fases do
RUP esto relacionadas mais estritamente aos negcios do que a assuntos tcnicos. Podemos v-
las a seguir:
Iniciao: tem o objetivo de estabelecer um caso de negcio para o sistema. Deve-se identificar
as entidades externas, que iro interagir com o sistema, e definir essas interaes. Depois voc
usa essas informaes para avaliar a contribuio do sistema com o negcio. Se a contribuio
01176992910
for de pouca importncia, o projeto pode ser cancelado depois dessa fase.
Falamos da perspectiva dinmica e agora vamos falar da perspectiva esttica. Ela enfoca as
atividades que ocorrem durante o processo de desenvolvimento. So seis disciplinas principais e
trs disciplinas de apoio ou infraestrutura cuidado para no confundi-las! Podemos v-las a
seguir:
Gerenciamento de Projetos: este workflow de apoio fornece diretrizes prticas para planejar,
montar equipes, executar e monitorar os projetos. Entretanto, no to amplo quanto o
PMBOK, por exemplo. Apesar de incluir gerenciamento de riscos, no contm gerenciamento
de pessoal, oramento e contrato.
Agora vamos falar da perspectiva prtica. Ela descreve boas prticas de engenharia de software
recomendadas para uso em desenvolvimento de sistemas. So elas:
01176992910
Fase Marco
Iniciao Escopo ou objetivos do projeto.
Elaborao Arquitetura estabilizada.
Construo Capacidade operacional inicial.
Transio Lanamento do produto.
Uma boa analogia o plano de urbanizao de Braslia feito em 1960. A cidade no estava
completamente povoada, mas ela poderia prever como seria o processo de urbanizao no
decorrer dos anos. No se sabia detalhes, mas se sabia os limites mnimos e mximos que a
arquitetura poderia suportar.
Quando se chega a fase de construo, devemos ter desenvolvimento de software a baixo custo e
alta qualidade. Para tanto, faz-se necessrio criar um certo paralelismo entre as equipes. O marco
da construo uma capacidade operacional inicial do nosso software com parte de suas
funcionalidades prontas.
como uma verso beta do software. A partir da construo, as iteraes comeam a gerar builds,
que so conjunto de casos de uso implementados. O marco da transio o lanamento do
produto, de fato. Observao importante: na implantao que se faz a elaborao de manuais
01176992910
do sistema.
O RUP recomenda alguns nmeros: cada iterao dura de 2 a 6 semanas. O nmero mdio de
iteraes entre 3 e 9 em um projeto de mdia complexidade. Ademais, a disciplina modelagem
de negcios no obrigatria. Alm disso, quando se utiliza o RUP for Small Projects, no h
Modelagem de Negcios nem Implantao.
O RUP apresenta tambm seis princpios chaves para orientar o desenvolvimento de software. So
estratgias altamente recomendadas! Para decorar esses seis princpios, eu lembrava do
mnemnico ABCDEF (i.e., essas so as letras iniciais de cada um dos princpios basta ficar ligado
nisso!). Percebam:
Balancear prioridades dos interessados: em uma organizao, pode haver vrias pessoas com
opinies distintas a respeito das necessidades da organizao. O RUP afirma que se deve
chegar a um consenso ou algo prximo, evitando personalizaes e customizaes e
apostando em uma padronizao geral.
Colaborao entre times: deve-se dividir as equipes de acordo com as habilidades, de modo
que aumente a produtividade e que haja maior interao entre as equipes por meio de trocas
de experincias e orientaes. A harmonia entre as pessoas essencial para o bom
desenvolvimento do projeto.
Elevar o nvel de abstrao: o perfil dos atores determina o nvel de abstrao que deve ser
utilizado. Adequar o nvel de abstrao aumenta a produtividade. Deve-se falar com o usurio
final em um abstrao maior para que ele entenda e com um programador em um abstrao
menor, porque ele entende.
Foco contnuo na qualidade: o processo unificado no possui uma disciplina exclusiva para
qualidade, justamente por ela estar contida em todas as disciplinas e em todas as fases. O RUP
afirma que se deve escolher processos de qualidade e que esse deve ser um foco constante
durante o desenvolvimento.
Por fim, gostaria de apresentar alguns conceitos importantes: papis, produto de trabalho e tarefas.
de um conjunto de indivduos que trabalham juntos como uma equipe, no contexto de uma
organizao.
Produto de Trabalho (Work Product): uma abstrao geral que representa algum resultado
de um processo. Pode ser um Artefato, Resultado ou Entrega.
IMPORTANTE
Normalmente, os papis so desempenhados por uma pessoa ou um grupo de pessoas que trabalham juntas. Um
membro da equipe geralmente desempenha muitos papis distintos. Lembrem-se: papis no so pessoas, eles
descrevem como pessoas se comportam no negcio e quais so suas responsabilidades.
Artefatos Descrio
01176992910
METODOLOGIAS GEIS
Por que valorizar mais indivduos e suas interaes do que processos e ferramentas? Porque
auto-organizao e motivao importante, assim como programadores trabalhando em
pares em um mesmo local.
Por que valorizar mais software em funcionamento do que documentao abrangente? Porque
apresentar software funcionando aos clientes em uma reunio mais til e desejado do que
apresentar documentos.
01176992910
Por que valorizar mais colaborao com o cliente do que negociao de contratos? Porque
no possvel coletar todos os requisitos no incio do ciclo de desenvolvimento, portanto
importante envolvimento contnuo do cliente.
Por que valorizar mais a resposta a mudanas do que seguir um planejamento especfico?
Porque necessrio obter respostas rpidas a mudanas e desenvolvimento contnuo do
software.
Por fim, o manifesto enfatiza que os itens direita tm seu valor, entretanto os itens esquerda
so mais valorizad ! A charge abaixo brinca com os mitos sobre desenvolvimento gil. Muitos
acreditam que um desenvolvimento catico, sem ordem, sem planejamento e sem
documentao, mas com foco em rapidez.
No XP, todos os requisitos so expressos como cenrios (tambm chamados histrias do usurio),
que so implementados diretamente como uma srie de tarefas. Os programadores trabalham em
pares e desenvolvem testes para cada tarefa antes da escrita do cdigo. Sempre que h integrao,
h novos testes.
01176992910
Respeito: aqui se inclui o respeito pelos outros, assim como o auto-respeito. Membros devem
respeitar seu prprio trabalho, sempre se esforando para oferecer alta qualidade e buscando
o melhor projeto para a soluo atravs de refatorao. Ningum na equipe deve se sentir
01176992910
No XP, as novas verses de software podem ser compiladas vrias vezes por dia e os incrementos
so entregues para os clientes aproximadamente a cada duas semanas. Quando um programador
compila o sistema para criar uma nova verso, ele deve executar todos os testes automatizados
existentes bem como os testes para a nova funcionalidade.
A nova compilao do software ser aceita somente se todos os testes foram executados com
sucesso. Um preceito fundamental da engenharia de software tradicional que voc deve projetar
para a mudana. Em outras palavras, voc deve antecipar mudanas futuras para o software e
projet-lo de tal maneira que essas mudanas possam ser implementadas facilmente.
Isso significa que a equipe de programao procura por possveis melhorias no software,
implementando-as imediatamente. Portanto, o software deve sempre ser fcil de compreender e
alterar quando novas histrias de usurio so implementadas. Essa agilidade muito importante
no desenvolvimento gil de software.
01176992910
SCRUM
Algum de vocs sabe de onde vem esse nome? Ento vou lhes contar! Esse nome vem do rugby e
utilizado como uma metfora para refletir o alto grau de cooperao necessrio para obter
sucesso. Imagino que poucos de vocs entendam as regras desse esporte, portanto vou explicar
de forma bastante objetiva porque essa metfora utilizada.
No rugby, um time pontua quando a bola cruza a linha de gol e toca o cho sendo carregada
ou por meio de um passe. Caso o jogador seja derrubado, ele deve soltar a bola, e a jogada se
reinicia! Deve haver intensa troca de passes entre os jogadores, de modo a deix-los menos
vulnerveis a serem derrubados por outros jogadores.
Bem... cada jogada se inicia quando um Scrum realizado, i.e., forma-se uma parede de fora entre
os jogadores, como mostra a Figura 18. Observem que os jogadores se renem de forma bem
prxima, unindo suas foras e habilidades para trabalhar em conjunto a fim de conseguir recuperar
a bola.
Percebam, portanto, que o time inteiro deve trabalhar para que a equipe possa pontuar.
Diferentemente do Futebol Americano, no h um quarterback ou uma estrela do time todos so
importantes! Pois , a histria fica mais interessante: vamos ver uma das recomendaes de ataque
do rugby.
Pensem continuamente em seu alinhamento em relao ao jogador que carrega a bola e aos
jogadores ao seu redor. Trabalhe duro para estar disponvel quando necessrio. Observem como
Acho que agora ficou mais fcil entender de onde vem esse nome vamos teoria? Antes de
comear, uma observao: o guia oficial do Scrum um documento to pequeno (18 pginas) que
eu recomendo fortemente que vocs leiam-no por inteiro, pois ser muito til! Bem... agora sim
vamos ao trabalho!
Scrum um framework (i.e., possui uma estrutura processual) leve, simples de entender e
extremamente difcil de dominar, para desenvolver e manter produtos complexos e adaptativos,
enquanto entrega produtiva e criativamente produtos com o mais alto valor possvel. Complicado
ou no?
Galera, percebam que ele no um processo ou uma tcnica para construir produtos, mas sim
um framework em que pode ser empregado vrios processos e tcnicas. O Framework pode ser
definido como um conjunto de papis, eventos, artefatos e regras associadas a uma equipe no
se esqueam disso.
Para tal, ele emprega uma abordagem iterativa e incremental para aperfeioar a previsibilidade e
controle de riscos, fundamentando-se em trs pilares fundamentais!
Adaptao: o processo ou material sendo produzido deve ser adaptado sempre que um
inspetor verificar desvios que tornem o resultado inaceitvel e, para tanto, ele tem quatros
oportunidades (as reunies).
O Scrum define o conceito de Time Scrum que um time auto-organizvel (escolhe qual a melhor
forma para realizar seu trabalho) e multifuncional (possui todas as competncias e no depende
de outros de fora da equipe). o responsvel por entregar produtos de forma iterativa e
incremental, maximizando as oportunidades de realimentao.
As entregas incrementais de produto pronto garantem que uma verso potencialmente funcional
do produto do trabalho esteja sempre disponvel. Agora o mais importante dessa parte do assunto:
Product Owner:
o responsvel por maximizar o valor do produto e do trabalho da equipe de desenvolvimento,
sendo o nico que pode gerenciar o Product Backlog. Ele pode at delegar as atividades de
gerenciamento, mas ainda ser considerado o responsvel pelos resultados. A Equipe de
Desenvolvimento s responde a ele!
Equipe de Desenvolvimento
A Equipe de Desenvolvimento no reconhece ttulos para seus integrantes, todos so considerados
desenvolvedores (no importa o que faam). A Equipe deve ter entre 3 e 9 integrantes, de modo
que no seja pequena demais que haja restries de habilidades nem grande demais que seja
complicado de gerenciar.
Scrum Master
o responsvel por garantir que o Scrum seja entendido e aplicado. Ademais, ele deve comunicar
claramente a viso, objetivo e itens do Product Backlog; ensinar a equipe a criar itens claros e
concisos; treinar a equipe de desenvolvimento em autogerenciamento e interdisciplinaridade;
remover impedimentos; entre outros.
Mudando de assunto, os Eventos Scrum so eventos time-boxed (i.e., com durao mxima) usados
para criar uma rotina e minimizar a necessidade de reunies no definidas pelo Scrum. Lembrem-
se de que a Sprint tem um ms ou menos e iniciada imediatamente aps a concluso da sprint
anterior.
As Sprints so compostas por uma Reunio de Planejamento da Sprint, Reunies Dirias, o Trabalho
de Desenvolvimento, uma Reviso da Sprint e a Retrospectiva da Sprint. Uma Sprint se inicia
imediatamente aps a concluso da sprint anterior e tem duraes coerentes em todo o esforo
de desenvolvimento.
Durante a sprint proibido realizar mudanas que afetem o seu objetivo. Alm disso, proibido
mudar a composio da equipe ou diminuir as metas de qualidade, apesar disso o escopo pode
ser sempre clarificado e renegociado. Essas proibies devem ser levadas muito a srio, vocs
01176992910
entenderam?
Uma sprint pode ser cancelada antes de seu time-box terminar e isso somente pode ser feito pelo
Product Owner (sob influncia de stakeholders, equipe de desenvolvimento, entre outros). Isso
pode ocorrer caso o seu objetivo se torne obsoleto, mas ocorrem tambm devido curta durao
e a cancelamentos, porm so raros os casos.
1
No confundir Equipe de Desenvolvimento com Time Scrum o primeiro est contido no segundo.
O Product Owner pode estar presente durante a segunda parte da reunio para clarificar
esclarecer itens do Backlog do Produto. A Reunio Diria (proporcional a 15 minutos) um evento
que busca criar um plano para as prximas 24 horas e inspecionar o trabalho desde a ltima
01176992910
Reunio Diria.
Ela ocorre sempre no mesmo horrio e no mesmo local e cada integrante deve responder as
seguintes perguntas:
Nesta reunio, discute-se: o que foi bem e o que no foi; problemas ocorridos e como foram
resolvidos; Procut Backlog; projees de datas. O resultado o Product Backlog revisado e ajustado.
A Retrospectiva da Sprint (Proporcional a 3 horas) uma chance para o Scrum Team inspecionar a
si prprio e criar um plano de melhorias para a prxima sprint.
Ela inspeciona como foi a ltima sprint em relao s pessoas, s relaes, aos processos e s
ferramentas. Alm disso, tem o poder de identificar e ordenar os principais itens que se tornaram
potenciais de melhorias, e cria um plano para implementar melhorias no modo de realizao do
trabalho.
01176992910
O Documento de Viso definido pelo Product Owner e representa como os clientes, usurios
finais, gerentes, stakeholders, executivos, entre outros, visualizam o resultado final do produto que
ser criado. Prticas como Burndown/Burnup tm sido utilizadas para prever o progresso, sem
substituir a importncia do empirismo, como mostra a Figura 20.
O Product Backlog uma lista ordenada (por valor, risco, prioridade etc) de tudo que deve ser
necessrio no produto, e uma origem nica dos requisitos para qualquer mudana a ser feita no
produto. Ele nunca (ateno: nunca, jamais) estar completo e existir enquanto o produto tambm
existir.
MODELAGEM DE PROCESSOS
Segundo, o que um processo de negcio? uma srie de atividades estruturadas para produzir
um produto ou servio para um cliente ou mercado em particular; so disparados por eventos
especficos, tem incio e fim definidos e solucionam questes especficas. E mais uma coisa: ocorre
dentro de uma empresa!
Este foco no negcio importante, pois comum encontrar diversos negcios de uma empresa
compartilhando os mesmos elementos estruturais e recursos, o que dificulta a definio do
Processo de Negcio (e em muitos casos a prpria operao da empresa) essa redundncia no
saudvel para organizao.
01176992910
Esse nvel de detalhamento definido de acordo com as metas e objetivos, numa anlise top-down,
partindo da viso geral da organizao e chegando at as atividades e tarefas que so
desenvolvidas para obter os resultados do processo de negcio analisado. A definio desse nvel
de detalhamento ir delimitar o processo de negcio.
Macroprocesso: processo que envolve mais de uma rea e gera impacto na organizao.
Esses processos formam a cadeia de valor onde cada passo agrega valor ao passo anterior
conforme medido por sua contribuio na criao ou entrega de um produto ou servio, em ltima
instncia, gerando valor aos clientes. Prestem bastante ateno nisso, pode-se medir a contribuio
por meio do valor agregado.
Michael Porter descreveu cadeias de valor como compostas de atividades primrias e de suporte.
A cadeia de valor do processo de negcio descreve a forma de contemplar a cadeia de atividades
que fornecem valor ao cliente. Cada uma dessas atividades tem seus objetivos de desempenho
vinculados a seu processo de negcio principal.
Esses processos so desenhados para prover suporte a processos primrios, frequentemente pelo
gerenciamento de recursos ou infraestrutura requerida. O principal diferenciador entre processos
primrios e de suporte que processos de suporte no geram valor direto aos clientes e processos
primrios, sim.
Qualquer processo, do mais simples ao mais complexo, tem que agregar valor, isto , sua sada
para o cliente tem que ser mais valorizada e gerar melhores atributos do que as suas entradas.
Qualquer processo que no agregue valor deve ser considerado como desnecessrio na
organizao e prontamente eliminado.
Ele mostra, tambm, como a interao entre os processos e como eles contribuem para a
agregao de valor. J a documentao dos processos de negcio descrevem as propriedades e
as caractersticas desse. O diagrama junto com a documentao formam o conjunto de
documentos resultantes da modelagem de processos de negcio.
Um dos seus principais benefcios a facilitao do entendimento do processo por todas as pessoas
envolvidas com o negcio. Em outras palavras, a modelagem de processos uma forma de
comunicao que facilita a visualizao dos processos de negcio e facilita a entender o que deve
ser feito e por quem deve ser feito.
E o que o Modelo AS-IS? um modelo de processos de negcio que mostra como os processos
so, de fato, executados pela organizao no momento do mapeamento. Em outras palavras, o
funcionamento atual da organizao. Ele identifica os papis de cada um, a sequncia dos
processos, as regras e indicadores.
01176992910
A Modelagem de Processos de Negcio possui seis princpios que regulam sua especificao:
aderncia, relevncia ou suficincia, custo-benefcio, clareza, comparabilidade e estrutura sistmica.
Todos so importantes para uma boa modelagem dos processos de negcio e para que uma
organizao alcance seus objetivos e metas.
(CESPE INMETRO Analista de Sistemas) Em uma empresa que tenha adotado um processo
de desenvolvimento de software em cascata, falhas no levantamento de requisitos tm maior
possibilidade de gerar grandes prejuzos do que naquelas que tenham adotado desenvolvimento
evolucionrio.
Comentrios:
Modelo em Cascata, de fato, no reage bem a mudanas. J Modelo evolucionrio mais adaptvel a
mudanas por se utilizar de iteraes.
Gabarito: C
(CESPE 2011 MEC Analista de Sistemas) O modelo Waterfall tem a vantagem de facilitar a realizao
de mudanas sem a necessidade de retrabalho em fases j completadas.
Comentrios:
Pelo contrrio, h dificuldade de lidar com requisitos volteis, tendo em vista que dependendo do erro,
necessrio refaz-lo desde seu incio.
Gabarito: E
Comentrios:
Na verdade, a fase levantamento de requisitos que gera erros de maior custo de correo. Ser
desenvolvido algo que no tem utilidade para o cliente e ter que ser modificado.
Gabarito: E
01176992910
Comentrios:
Gabarito: E
Vimos isso exaustivamente: uma fase s se inicia aps o trmino e aprovao da fase anterior.
Gabarito: C
Comentrios:
Gabarito: E
Comentrios:
Questo perfeita!
Gabarito: C
Comentrios:
01176992910
Gabarito: C
Comentrios:
Gabarito: C
10. (CESPE 2013 TRT/10 Analista Judicirio Tecnologia da Informao) No modelo prototipao, a
construo de software tem vrias atividades que so executadas de forma sistemtica e sequencial.
Comentrios:
Na verdade, quem constri software por meio de atividades executadas de forma sistemtica e sequencial
o modelo em cascata.
Gabarito: E
Comentrios:
Gabarito: E
12. (CESPE 2011 MEC Anlise de Sistemas) No modelo de prototipao, o processo de desenvolvimento
de software modelado como uma sequncia linear de fases, enfatizando um ciclo de desenvolvimento
de breve durao.
Comentrios:
Gabarito: E
13. (CESPE 2011 MEC Gerente de Projetos) O modelo de processo denominado em espiral combina as
atividades de desenvolvimento com o gerenciamento de riscos, de modo a minimiz-los e control-los.
Comentrios:
Gabarito: C
Comentrios:
Gabarito: C
15. (CESPE ANTAQ Analista Administrativo Informtica) O modelo em espiral, que descreve o
processo de desenvolvimento de um software, apresenta uma espiral em que cada loop representa uma
fase distinta desse processo. A ausncia de risco nesse modelo o diferencia dos demais modelos de
software.
Comentrios:
Gabarito: E
Comentrios:
Gabarito: C
17. (CESPE 2010 SERPRO Desenvolvimento de Sistemas) O modelo em espiral de ciclo de vida de
software iterativo e incremental, uma vez que a mesma sequncia de atividades relacionadas
produo de software realizada a cada ciclo da espiral.
Comentrios:
Gabarito: E
Comentrios:
Gabarito: C
19. (CESPE 2011 TJ/ES Analista Judicirio alista de Sistemas) O modelo de processo incremental de
desenvolvimento de software iterativo, assim como o processo de prototipagem. Contudo, no processo
incremental, diferentemente do que ocorre no de prototipagem, o objetivo consiste em apresentar um
01176992910
Comentrios:
Gabarito: C
Comentrios:
Gabarito: C
21. (CESPE TST Analista Judicirio Analista de Sistemas) O modelo RAD (Rapid Application
Development) consiste em uma forma de prototipao para esclarecer dvidas da especificao do
software.
Comentrios:
barito: E
22. (CESPE ANS Analista Administrativo Processamento de Dados) O modelo Rapid Application
Development (RAD) uma adaptao do modelo em espiral para atender a projetos de software
fundamentados em componentes.
Comentrios:
Gabarito: E
23. (CESPE MPE/AM Analista Judicirio Analista de Sistemas) O modelo RAD (Rapid Application
Development) especfico para projetos de software que empregam linguagens de programao de
terceira gerao.
Comentrios:
Gabarito: E
01176992910
Comentrios:
Na verdade, o ciclo de vida de software que dividido em quatro fases sequenciais. As disciplinas no
ocorrem, necessariamente, em sequncia.
Gabarito: E
mentrios:
Gabarito: C
26. (CESPE 2013 ANP Analista Administrativo rea 5) Na fase de iniciao do RUP (Rational Unified
Process), o projeto do sistema elaborado com foco na arquitetura do sistema a ser implantado.
Comentrios:
Na verdade, a fase de iniciao tem foco na definio do escopo e objetivos do projeto, apesar de j se
construir um esboo de arquitetura do sistema.
Gabarito: E
27. (CESPE 1 MEC Gerente de Projetos) No RUP (Rational Unified Process), a qualidade de software
um quesito contemplado somente nas seguintes fases do ciclo de desenvolvimento: implementao,
teste e entrega.
Comentrios:
Um dos princpios bsicos do processo unificado o Foco Contnuo na Qualidade e uma das prticas
recomendadas a Contnua Verificao da Qualidade. Portanto, a qualidade contemplada em todas as
fases do ciclo de desenvolvimento.
Gabarito: E
28. (CESPE 2011 EBC Analista de Sistemas) O RUP tem duas dimenses: o eixo horizontal e o eixo
vertical. A primeira dimenso representa o aspecto esttico do processo quando ele aprovado e
expressa em termos de fases, iteraes e marcos. A segunda dimenso representa o aspecto dinmico
do processo, como ele descrito em termos de componentes, disciplinas, atividades, fluxos de trabalho,
artefatos e papis do processo. 01176992910
Comentrios:
A questo inverteu os conceitos: eixo horizontal representa aspectos dinmicos e eixo vertical representa
aspectos estticos.
Gabarito: E
29. (CESPE 2012 TCE/ES Auditor de Controle Externo Tecnologia da Informao) Em virtude de as
metodologias geis gerarem excessiva documentao, a gesto do conhecimento depende diretamente
dos programadores envolvidos no projeto.
Comentrios:
Gabarito: E
30. (CESPE 2011 EBC Analista de Sistemas) O que os mtodos geis buscam como evitar as mudanas
desde o incio do projeto e no a melhor maneira de tratar essas mudanas.
Comentrios:
Gabarito: E
31. (CESPE 2010 BASA Tcnico Cientfico Arquitetura de Tecnologia) Desenvolvimento gil de software
(Agile Software Development) ou mtodo gil aplicado, principalmente, a grandes corporaes, uma
vez que permite produzir grandes sistemas de forma gil.
Comentrios:
Gabarito: E
32. (CESPE 2010 TCU Auditor Federal de Controle Externo Tecnologia da Informao) A agilidade
no pode ser aplicada a todo e qualquer processo de software.
Comentrios:
Claro que pode ser aplicado a todo e qualquer tipo de processo de software, mas indiscriminadamente? No.
H certas circunstncias.
Gabarito: C
aplicaes de negcios nas quais os requisitos de sistema mudam rapidamente durante o processo de
desenvolvimento. Entre esses mtodos est o extreme programming, que envolve um nmero de
prticas, como o planejamento incremental, a definio de um ritmo de trabalho sustentvel e a diviso
das equipes de trabalho por meio da especializao de seus membros.
Comentrios:
Esta questo est quase toda correta, exceto pela ltima parte. XP recomenda que no haja especializao
de membros, apresentando uma equipe coesa e multidisciplinar.
Gabarito: E
34. (CESPE 2012 MPE/PI Analista Ministerial Cargo 6) O XP (Extreme Programming) um mtodo
gil, que preconiza a criao de um caso de teste unitrio antes do incio da codificao.
Comentrios:
O XP, de fato, um mtodo gil que preconiza o test-first design como uma de suas prticas, isto , primeiro
cria-se o teste para depois codificar a funcionalidade.
Gabarito: C
35. (CESPE 2011 EBC Analista de Sistemas Engenharia de Software) O XP segue um conjunto de
valores, princpios e regras bsicas que visam alcanar eficincia e efetividade no processo de
desenvolvimento de software. Os valores so cinco: comunicao, simplicidade, feedback, coragem e
respeito.
Comentrios:
Gabarito: C
36. (CESPE 2010 TRE/BA Tcnico Judicirio Programao de Sistemas) Em XP, a prtica denominada
programao em pares (pair programming) realizada por um desenvolvedor em dois computadores,
com o objetivo de aumentar a produtividade.
Comentrios:
Gabarito: E
37. (CESPE 2011 STM Analista Judicirio Analista de Sistemas) O Extreme Programming (XP), que se
inclui entre os mtodos geis, apresenta, entre outras, as seguintes caractersticas: pequenos releases,
projeto simples, refactoring, programao em pares e propriedade coletiva.
Comentrios:
Gabarito: C
38. (CESPE 2010 ABIN Oficial Tcnico de Inteligncia Desenvolvimento e Manuteno de Sistemas)
Na Extreme Programming, os requisitos so expressos como cenrios e implementados diretamente
como uma srie de tarefas. O representante do cliente faz parte do desenvolvimento e responsvel
pela definio de testes de aceitao do sistema.
Comentrios:
Perfeito, os requisitos so expressos como cenrios (ou estrias de usurio) e implementados como tarefas.
Ademais, recomenda-se o Cliente on-site, isto , um representante do usurio final do sistema deve estar
disponvel em tempo integral para apoiar a equipe.
39. (CESPE 2013 ANP Analista Administrativo rea 5) De acordo com a metodologia Scrum, a
constituio ideal da equipe de desenvolvimento para que o trabalho se mantenha gil deve ser de
menos de trs pessoas.
Comentrios:
Na verdade, recomenda-se entre trs e nove participantes. Com menos de trs participantes, reduz-se a
interao que gera um menor ganho de produtividade.
Gabarito: E
40. (CESPE 2013 ANAC Analista Administrativo rea 4) O nico papel definido pelo Scrum com
autoridade para cancelar uma Sprint o do Product Owner.
Comentrios:
Gabarito: C
41. (CESPE 2013 ANAC Analista Administrativo rea 4) Uma sprint do Scrum tem durao prevista de
2 meses.
Comentrios:
Gabarito: E
42. (CESPE - 2012 - TRE-RJ - Tcnico Judicirio - Programao de Sistemas) A metodologia scrum prega que
a equipe complete e entregue partes do produto final constantemente ao final de cada interao. Essa
interao deve ser curta e possuir tempo de execuo definido previamente.
Comentrios:
01176992910
De fato, h entregas frequentes de partes do produto e h iteraes curtas com tempo de execuo definido.
Opa, percebam que eu disse que h iteraes curtas e, no, interaes curtas como disse a questo. Essa
questo deveria ter sido anulada, mas no foi!
Gabarito: C
43. (CESPE - 2010 - BASA - Tcnico Judicirio Arquitetura de Tecnologia) O Scrum utilizado, como funo
primria, para o gerenciamento de projetos de desenvolvimento de software, mas tambm tem sido
usado como Extreme Programming e outras metodologias de desenvolvimento. Teoricamente, o Scrum
pode ser aplicado em qualquer contexto no qual um grupo de pessoas necessite trabalhar juntas para
atingir um objetivo comum.
Comentrios:
Gabarito: C
44. (CESPE - 2011 - EBC - Analista - Engenharia de Software) No contexto do BPM, um processo um
conjunto definido de atividades ou comportamentos executados por humanos ou mquinas para
alcanar uma ou mais metas. Os processos possuem atributos e caractersticas que descrevem
propriedades, comportamento, propsito, ou outros elementos de processo.
Comentrios:
Essa a definio encontrada no BPM CBOK (Business Process Management Common Body of Knowledge).
Gabarito: C
45. (CESPE - 2011 - -ES - Tcnico de Informtica Especficos) Uma atividade composta por um conjunto
de processos necessrios para se atingir um objetivo organizacional bem definido, com entradas e sadas
especficas para cada processo.
Comentrios:
Opa, qual ?! H uma inverso de palavras. Na verdade, um processo composto por um conjunto de
atividades necessrias para se atingir um objetivo organizacional bem definido, com entradas e sadas
especficas para cada processo.
Gabarito: E
46. (CESPE - 2010 - TRE-BA - Analista Judicirio - Anlise de Sistemas) Atividades so conjuntos de tarefas,
com incio e fim identificveis, reunidas segundo critrios de similaridade e de complementaridade,
executadas continuamente, de forma cclica, simultnea ou sequencial para a consecuo dos objetivos
da funo a que pertencem.
Comentrios:
Gabarito: C
47. (CESPE - 2010 - TRE-BA - Analista Judicirio - Anlise de Sistemas) Macroprocessos so conjuntos de
atividades executadas de forma sequencial e contnua, necessrias e suficientes para a obteno de
solues integradas de produtos e servios capazes de satisfazer s necessidades dos clientes. Os
macroprocessos so autnomos, respondem por um resultado especfico e tm, perfeitamente definidos
e sob sua gesto, no somente os objetivos a serem atendidos, mas tambm os meios necessrios para
a obteno dos resultados pactuados.
Comentrios:
Questo perfeita!
Gabarito: C
Comentrios:
Gabarito: C
01176992910
(CESPE INMETRO Analista de Sistemas) Em uma empresa que tenha adotado um processo
de desenvolvimento de software em cascata, falhas no levantamento de requisitos tm maior
possibilidade de gerar grandes prejuzos do que naquelas que tenham adotado desenvolvimento
evolucionrio.
(CESPE 2011 MEC Analista de Sistemas) O modelo Waterfall tem a vantagem de facilitar a realizao
de mudanas sem a necessidade de retrabalho em fases j completadas.
10. (CESPE 2013 TRT/10 Analista Judicirio Tecnologia da Informao) No modelo prototipao, a
construo de software tem vrias atividades que so executadas de forma sistemtica e sequencial.
12. (CESPE 2011 MEC Anlise de Sistemas) No modelo de prototipao, o processo de desenvolvimento
de software modelado como uma sequncia linear de fases, enfatizando um ciclo de desenvolvimento
de breve durao.
13. (CESPE 2011 MEC Gerente de Projetos) O modelo de processo denominado em espiral combina as
atividades de desenvolvimento com o gerenciamento de riscos, de modo a minimiz-los e control-los.
15. (CESPE ANTAQ Analista Administrativo Informtica) O modelo em espiral, que descreve o
processo de desenvolvimento de um software, apresenta uma espiral em que cada loop representa uma
fase distinta desse processo. A ausncia de risco nesse modelo o diferencia dos demais modelos de
software.
17. (CESPE 2010 SERPRO Desenvolvimento de Sistemas) O modelo em espiral de ciclo de vida de
software iterativo e incremental, uma vez que a mesma sequncia de atividades relacionadas
produo de software realizada a cada ciclo da espiral.
19. (CESPE 2011 TJ/ES Analista Judicirio alista de Sistemas) O modelo de processo incremental de
desenvolvimento de software iterativo, assim como o processo de prototipagem. Contudo, no processo
incremental, diferentemente do que ocorre no de prototipagem, o objetivo consiste em apresentar um
produto operacional a cada incremento.
21. (CESPE TST Analista Judicirio Analista de Sistemas) O modelo RAD (Rapid Application
Development) consiste em uma forma de prototipao para esclarecer dvidas da especificao do
software.
22. (CESPE ANS Analista Administrativo Processamento de Dados) O modelo Rapid Application
Development (RAD) uma adaptao do modelo em espiral para atender a projetos de software
fundamentados em componentes.
01176992910
23. (CESPE MPE/AM Analista Judicirio Analista de Sistemas) O modelo RAD (Rapid Application
Development) especfico para projetos de software que empregam linguagens de programao de
terceira gerao.
27. (CESPE 1 MEC Gerente de Projetos) No RUP (Rational Unified Process), a qualidade de software
um quesito contemplado somente nas seguintes fases do ciclo de desenvolvimento: implementao,
teste e entrega.
28. (CESPE 2011 EBC Analista de Sistemas) O RUP tem duas dimenses: o eixo horizontal e o eixo
vertical. A primeira dimenso representa o aspecto esttico do processo quando ele aprovado e
expressa em termos de fases, iteraes e marcos. A segunda dimenso representa o aspecto dinmico
do processo, como ele descrito em termos de componentes, disciplinas, atividades, fluxos de trabalho,
artefatos e papis do processo.
29. (CESPE 2012 TCE/ES Auditor de Controle Externo Tecnologia da Informao) Em virtude de as
metodologias geis gerarem excessiva documentao, a gesto do conhecimento depende diretamente
dos programadores envolvidos no projeto.
30. (CESPE 2011 EBC Analista de Sistemas) O que os mtodos geis buscam como evitar as mudanas
desde o incio do projeto e no a melhor maneira de tratar essas mudanas.
31. (CESPE 2010 BASA Tcnico Cientfico Arquitetura de Tecnologia) Desenvolvimento gil de software
(Agile Software Development) ou mtodo gil aplicado, principalmente, a grandes corporaes, uma
vez que permite produzir grandes sistemas de forma gil.
32. (CESPE 2010 TCU Auditor Federal de Controle Externo Tecnologia da Informao) A agilidade
no pode ser aplicada a todo e qualquer processo de software.
34. (CESPE 2012 MPE/PI Analista Ministerial Cargo 6) O XP (Extreme Programming) um mtodo
gil, que preconiza a criao de um caso de teste unitrio antes do incio da codificao.
35. (CESPE 2011 EBC Analista de Sistemas Engenharia de Software) O XP segue um conjunto de
01176992910
valores, princpios e regras bsicas que visam alcanar eficincia e efetividade no processo de
desenvolvimento de software. Os valores so cinco: comunicao, simplicidade, feedback, coragem e
respeito.
36. (CESPE 2010 TRE/BA Tcnico Judicirio Programao de Sistemas) Em XP, a prtica denominada
programao em pares (pair programming) realizada por um desenvolvedor em dois computadores,
com o objetivo de aumentar a produtividade.
37. (CESPE 2011 STM Analista Judicirio Analista de Sistemas) O Extreme Programming (XP), que se
inclui entre os mtodos geis, apresenta, entre outras, as seguintes caractersticas: pequenos releases,
projeto simples, refactoring, programao em pares e propriedade coletiva.
38. (CESPE 2010 ABIN Oficial Tcnico de Inteligncia Desenvolvimento e Manuteno de Sistemas)
Na Extreme Programming, os requisitos so expressos como cenrios e implementados diretamente
39. (CESPE 2013 ANP Analista Administrativo rea 5) De acordo com a metodologia Scrum, a
constituio ideal da equipe de desenvolvimento para que o trabalho se mantenha gil deve ser de
menos de trs pessoas.
40. (CESPE 2013 ANAC Analista Administrativo rea 4) O nico papel definido pelo Scrum com
autoridade para cancelar uma Sprint o do Product Owner.
41. (CESPE 2013 ANAC Analista Administrativo rea 4) Uma sprint do Scrum tem durao prevista de
2 meses.
42. (CESPE - 2012 - TRE-RJ - Tcnico Judicirio - Programao de Sistemas) A metodologia scrum prega que
a equipe complete e entregue partes do produto final constantemente ao final de cada interao. Essa
interao deve ser curta e possuir tempo de execuo definido previamente.
43. (CESPE - 2010 - BASA - Tcnico Judicirio Arquitetura de Tecnologia) O Scrum utilizado, como funo
primria, para o gerenciamento de projetos de desenvolvimento de software, mas tambm tem sido
usado como Extreme Programming e outras metodologias de desenvolvimento. Teoricamente, o Scrum
pode ser aplicado em qualquer contexto no qual um grupo de pessoas necessite trabalhar juntas para
atingir um objetivo comum.
44. (CESPE - 2011 - EBC - Analista - Engenharia de Software) No contexto do BPM, um processo um
conjunto definido de atividades ou comportamentos executados por humanos ou mquinas para
alcanar uma ou mais metas. Os processos possuem atributos e caractersticas que descrevem
propriedades, comportamento, propsito, ou outros elementos de processo.
45. (CESPE - 2011 - -ES - Tcnico de Informtica Especficos) Uma atividade composta por um conjunto
de processos necessrios para se atingir um objetivo organizacional bem definido, com entradas e sadas
especficas para cada processo.
46. (CESPE - 2010 - TRE-BA - Analista Judicirio - Anlise de Sistemas) Atividades so conjuntos de tarefas,
com incio e fim identificveis, reunidas segundo critrios de similaridade e de complementaridade,
executadas continuamente, de forma cclica, simultnea ou sequencial para a consecuo dos objetivos
da funo a que pertencem.
47. (CESPE - 2010 - TRE-BA - Analista Judicirio - Anlise de Sistemas) Macroprocessos so conjuntos de
01176992910
1 2 3 4 5 6 7 8 9 10
C E E E C E C C C E
11 12 13 14 15 16 17 18 19 20
E E C C E C E C C C
21 22 23 24 25 26 27 28 29 30
E E E E C E E E E E
31 32 33 34 35 36 37 38 39 40
E C E C C E C C E C
41 42 43 44 45 46 47 48 49 50
E C C C E C C C
01176992910