• Save
Big design up front (BDUF)
Upcoming SlideShare
Loading in...5
×
 

Big design up front (BDUF)

on

  • 1,736 views

Big design up front (BDUF).

Big design up front (BDUF).
Big requirements up front (BRUF).

Statistics

Views

Total Views
1,736
Views on SlideShare
1,669
Embed Views
67

Actions

Likes
0
Downloads
0
Comments
0

2 Embeds 67

http://gpupo.com 66
http://static.slidesharecdn.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Big design up front (BDUF) Big design up front (BDUF) Presentation Transcript

    • B D U FGilmar Pupo @gpupo
    • Big BDesign DUp UFront F Gilmar Pupo @gpupo
    • Sobre @gpupo• Desenvolvedor e consultor em GTI• Dependente de documentação, bookmarks e anotações• Doctrine ORM, Symfony, Perl, Bash, Linux, jQuery e o que funcionar...• Membro e co-fundador do #maisagil• Empreendedor no @hotellinux www.gilmar.eti.br www.gpupo.com Times ágeis. @gpupo
    • BDUF/BRUFBig design up front (BDUF).Big requirements up front (BRUF). Times ágeis. @gpupo
    • BDUF/BRUFAprendemos e acreditamos na metáfora daconstrução de prédios, suas plantas e seus operários Times ágeis. @gpupo
    • BDUF/BRUFAprendemos e acreditamos na metáfora daconstrução de prédios, suas plantas e seus operários Times ágeis. @gpupo
    • BDUF/BRUFAprendemos e acreditamos na metáfora daconstrução de prédios, suas plantas e seus operários Times ágeis. @gpupo
    • BDUF/BRUFE o sonho se realiza... Times ágeis. @gpupo
    • BDUF/BRUF “The Project Management Triangle” Ou “Iron triangle” Times ágeis. @gpupo
    • BDUF/BRUF “The Previsibilidade Project Management Triangle” Ou “Iron triangle”Risco reduzido Garantia de entrega Times ágeis. @gpupo
    • BDUF/BRUF Pontes normalmente são entregues noprazo, dentro do orçamento e “não caem” Times ágeis. @gpupo
    • BDUF/BRUF Pontes normalmente são entregues no prazo, dentro do orçamento e “não caem” X Softwares raramente são entregues no prazoou dentro do orçamento. E normalmente eles tem bugs Times ágeis. @gpupo
    • Pesquisa do The Standish Group Foco de identificar:● As falhas dos projetos de software● Os maiores fatores que influenciam estas falhas● Os pontos chave que podem reduzir estas falhas Times ágeis. @gpupo
    • BDUF/BRUF Times ágeis. @gpupo
    • BDUF/BRUFProjetos cancelados Projeto dentro do prazo,ou não utilizados dentro do orçamento e com boa parte do escopo Projeto funcionando, mas entregue sem atender ou custo, ou esforço ou com o escopo parcial The Standish Group Chaos Report Times ágeis. @gpupo
    • Standish Group EUA• > 250 bilhões de dólares cada ano no desenvolvimento de software• custo médio de um projeto em uma grande empresa é de 2.3 milhões de dólares Times ágeis. @gpupo
    • Standish Group EUA• custo médio de um projeto em uma empresa média é de 1.4 milhões de dólares• 434 mil dólares para uma empresa pequena Times ágeis. @gpupo
    • E a grande maioria destes projetos falha. Os projetos dedesenvolvimento de software estão no caos
    • E a grande maioria destes projetos falha. Os projetos dedesenvolvimento de software estão no caos
    • trocam-se processos e nomes
    • trocam-se processos e nomes E os os projetos dedesenvolvimento de software continuam no caos
    • BDUF – BRUF Uma década e os mesmos erros.Tem algo errado? Times ágeis. @gpupo
    • BDUF – BRUF Fatores de fracasso● Requisitos Incompletos: 13.1%● Falta de envolvimento do usuário: 12.4%● Falta de recursos: 10.6%● Expectativas não realistas 9.9%● Falta de apoio executivo: 9.3%● Mudanças de requisitos: 8.7%● Falta de planejamento: 8.1%● Não precisa mais daquilo: 7.5%● Falta de gestão da TI: 6.2%● Analfabetismo tecnológico: 4.3% Times ágeis. @gpupo
    • BDUF Fatores médio de fracasso●Falta de insumos do usuário: 12.8%●Requisitos & Especificações incompletas: 12.3%●Mudanças nos requisitos & especificações: 11.8%●Falta de apoio executivo: 7.5%●Ambiente tecnológico incompleto: 7.0%●Falta de recursos: 6.4%●Expectativas irrealistas: 5.9%●Objetivos nebulosos: 5.3%●Ciclos (tempo) irrealistas: 4.3%●Novas tecnologias: 3.7% Times ágeis. @gpupo
    • Evolutionary design“With evolutionary design, you expect the design to evolve slowly over the course of the programming exercise…”
    • Evolutionary design “Theres no design at thebeginning. You begin by coding a small amount of functionality, adding more functionality, and letting the design shift and shape!” Martin Fowler
    • “Gerenciando o desenvolvimento degrandes sistemas de software” -Winston W. Royce, em 1970.
    • BDUF/BRUF Times ágeis. @gpupo
    • BDUF – BRUF // motivos1)Mistakenly compare software development to civilengineering2)Get motivated to do so by the business3)Think comprehensive requirements documentationmeans something4)Dont know any better5)Are overly specialized6)Believe programmers dont have the skills to modelthemselves7)They got sidetracked by traditional dataprofessionals. Times ágeis. @gpupo
    • BDUF – BRUF // impacto1)It reduces your willingness to embraceevolving requirements2)It increases the chance of poor decisions3)It increases the chance your vision will beignored4)It decreases morale Times ágeis. @gpupo
    • BDUF – BRUF // impacto Times ágeis. @gpupo
    • Escopo fechado• A incompetência sempre é do desenvolvedor (?!) Times ágeis. @gpupo
    • Escopo fechado• Garantias geram desperdícios• Software não é igual• Software não é prédio• Você não sabe o tempo Times ágeis. @gpupo
    • BDUF Fatores Sucesso●Envolvimento do usuário: 15.9%●Apoio executivo: 13.9%●Declaração de requisitos clara e limpa: 13%●Planejamento apropriado: 9.6%●Expectativas realistas: 8.2%●Milestones pequenos: 7.7%●Equipe competente: 7.2%●Propriedade: 5.3%●Visão e objetivos claros: 2.9%●Trabalho duro e equipe focada: 2.4% Times ágeis. @gpupo
    • BDUF – BRUF // solução1)You still need to do some initial envisioning up front,including both requirements envisioning andarchitectural envisioning2)Youre still doing some initial up front modeling, itsjust that you are doing so in an effective and agilemanner.3)You should create very slim, high-level models earlyin the project which overview the scope of the effortand identify a likely architectural strategy. Times ágeis. @gpupo
    • “Gerenciando o desenvolvimento degrandes sistemas de software” -Winston W. Royce, em 1970.
    • Arte
    • Arte Possível fazer por blocos?
    • Funcionalidades não são commodities
    • Existe um ciclo deaprendizado
    • Lean● Levar a tomada de decisão para o chão da fábrica● Empowerment● Autonomia Times ágeis. @gpupo
    • Lean● Levar a tomada de decisão para o chão da fábrica● Empowerment● Autonomia Times ágeis. @gpupo
    • Escopo aberto• Princípio de Pareto• 20% entregue,• Menor frustação na quebra de espectativas Times ágeis. @gpupo
    • Some Design Up Front is GoodLike a horse with blinders on,avoiding some degree of BigDesign Up Front (BDUF) canforce your team and project intotunnel vision, because… If youdon’t look at what you’re buildingin its entirety, it is harder to seethe big picture, to have to that ah-hah moment that leads to a breakthrough, to maintain conceptualintegrity, or have a successfulproject. Times ágeis. @gpupo
    • Design● Faça o justo necessário:não faça aquém nem além doque deve ser feito na iteração● Refatoração : sempre quepuder melhore o código Times ágeis. @gpupo
    • Big problem“When youre up against a bigproblem its easy to get stuck— youll overthink the problem,spend days or weeks worrying about it and sketching out solution after solution.”
    • Big problem“Sketching is great, but at theend of the day weve found itsbetter to get something done. That means focusing on something small. “ Jonathan Smiley - ZURB
    • Comecealgopequeno
    • Evoluá-o Comece algo pequeno
    • Design● Foco nas tarefas queagregam valor na visão docliente● Fazer o simples e depoisevoluir o código de acordocom a necessidade Times ágeis. @gpupo
    • Estimativas building a plan you and your customer can work with and believe in Times ágeis. @gpupo
    • Estimativasparar de tentar obter algo que as estimativas iniciaisnão pode dar (precisão e exatidão) e focar no querealmente importa: a construção de um plano que vocêe seu cliente pode trabalhar eacreditar dentro Times ágeis. @gpupo