Visão Geral
Identifique os desafios que você enfrentará ao implementar uma abordagem Agile para desenvolvimento de software e, em seguida, planeje uma transição bem-sucedida da cascata ou de outras abordagens tradicionais de desenvolvimento de software!
Objetivo
Após concluir o Curso Transitioning from Waterfall to Agile, você será capaz de:
- Entenda as principais diferenças entre uma abordagem em cascata e uma abordagem ágil para desenvolvimento de software e, em seguida, identifique as áreas das quais você mais se beneficiará
- Identifique e elimine as práticas tradicionais que prejudicam o sucesso do seu projeto
- Aprenda as 5 medidas de facilitadores ágeis e mapeie sua implementação para práticas ágeis para o sucesso do projeto
- Descubra os problemas organizacionais que a maioria das empresas nunca descobre que tem e aprenda as técnicas ágeis que abordam essas deficiências
- Descubra como a transição para o Agile fornece melhores técnicas para gerenciar o valor e a qualidade de seus esforços de desenvolvimento de projetos e produtos
- Crie uma abordagem híbrida e personalizada para o desenvolvimento de software que leve em consideração os desafios e restrições exclusivos de sua empresa
- Descubra as armadilhas que as equipes encontrarão em uma transição Agile e entenda como superar esses desafios
- Estabelecer a base sobre a qual você pode construir uma equipe e uma organização de aprendizado
Publico Alvo
- Gerente de Desenvolvimento de Software
- Gerente de Projetos de Software
- Líder de equipe de software
- Especialista em Garantia de Qualidade
- Engenheiro de Processo
- Desenvolvedor ou testador de software
- Cliente do Projeto de Software
- Diretor ou Gerente de TI
Informações Gerais
Carga Horária: 16h
- Se noturno este curso é
ministrado de Terça-feira à sexta-feira, das 19h às 23h
- Se aos sábados este curso é
ministrado das 9h às 18h
- Se in-company por favor
fazer contato para mais detalhes.
Formato de
entrega:
- 100% on-line ao vivo, via
Microsoft Teams na presença de um instrutor/consultor ativo no mercado.
- Nota: não é curso
gravado.
Lab:
- Laboratório + Exercícios
práticos
Materiais
Português | Inglês
Conteúdo Programatico
Introduction to Agility
- Agility is comprised of a unique set of principles and values that must be understood and embraced before the organization can employ Agile practices. In this section, we will survey the essence of Agility.
- Exercise
- Identify the problems that you are experiencing with software projects in your organization. You will use this list throughout the course to evaluate the benefits of Agility. Compare notes with other students.
- The Essence of Agility
- The Agile Lifecycle
- Learning and Adaptation
- Collaboration
- Customer Focus
- Self-Directed Teams
- Lean Principles
- Progressive Requirements Elaboration
- Incremental Delivery
- Iterative Planning and Adaptation
- Exercise
- Identify the Agile concepts that have already gained acceptance in your organization. Compare notes with other students.
Us vs. Them Teams
- The heart of every project is the team. Yet in traditional approaches, the team often operates as a collection of competing individuals, rather than as a unit. Even worse, many organizations have divided responsibilities in ways that pit different groups against each other, when the project desperately needs cooperation.
- Agility means establishing a single team for each project, and ensuring that it comprises all of the necessary people. Agile practices ensure that all team members are constantly collaborating and driving the project toward success.
- Traditional practices
- The project manager
- Shielding developers & customers from each other
- Building silos of responsibility
- Documents as the primary means of communication
- Lessons Learned at project end
- Contrast w/the Agile approach
- Product Owner
- The Agile coach
- One small co-located team
- Continuous collaboration
- Face-to-face communication
- Regular feedback
- Regular retrospectives
- Case Studies
- We will discuss the unique needs and situations of one of the three Case Study organizations, and determine how to make the transition from us-vs.-them teams to Agile Teams.
- Sell the benefits of Agile teams
- Defuse misconceptions about Agile teaming
- Address the challenges of adopting Agile teaming
- Define the Agile teaming process
- Train personnel to be Agile team members
- Exercise
- Determine how to introduce the Agile teaming on projects in your organization. Identify the benefits you would realize and the challenges you would face. Compare notes with other students.
My Project Plan, Right or Wrong
- Traditional approaches are often referred to as “plan-based” because of the importance they put on up-front planning and then controlling the project so it conforms to the plan. Of course, some organizations go to the other extreme, paying little attention to their plans after the project starts, or even foregoing planning altogether.
- Agility means planning just enough, doing that planning when it is needed, and accepting the fact that reality often works out differently from our plans. Agile projects value achieving the project goals; the plan is merely a tool to help them do that.
- Traditional practices
- Predictive planning
- Command and control management
- Corrective action (Conformance to plan)
- Periodic Status Reporting
- Document review/sign-off as milestones
- Contrast w/the Agile approach
- Time-boxed projects & iterations
- Incremental planning & estimation
- Self-directed teams
- Daily status checks & periodic review
- Adaptation to new information
- Information Radiators
- Delivered software as milestones
- Case Studies
- We will discuss the unique needs and situations of one of the three Case Study organizations, and determine how to make the transition from the plan-based approach to Agile planning.
- Sell the benefits of Agile planning
- Defuse misconceptions about Agile planning
- Address the challenges of adopting Agile planning
- Define the Agile planning process
- Train personnel to use Agile planning techniques
- Exercise
- Determine how to introduce the Agile planning on projects in your organization. Identify the benefits you would realize and the challenges you would face. Compare notes with other students.
The Insidious Creeping Scope
- Traditional approaches usually begin with an important (and sometimes long and drawn out) Requirements phase during which all of the product requirements are elicited, analyzed and documented. Everyone in the project commits to the resulting specification, and then significant effort is expended in Change Control. Conformance to the Requirements Specification becomes the measure of project success. (Until the customer complains!)
- Agility means documenting requirements just enough, eliciting more detailed information when it is needed, and accepting the fact that thing will change before the project is over. Agile projects value delivering what the customer needs; the requirements are merely a tool to help them do that.
- Traditional practices
- Big-bang, up-front requirements definition
- Requirements sign-off
- Little customer involvement after requirements
- Restrictive change control
- Conformance to specification
- Product delivered/accepted at project end
- Contrast w/the Agile approach
- Progressive requirements elaboration
- Prioritization by the customer
- Incremental product acceptance & feedback
- Welcome changing requirements
- Case Studies
- We will discuss the unique needs and situations of one of the three Case Study organizations, and determine how to make the transition from up-front requirements to Agile requirements.
- Sell the benefits of Agile requirements
- Defuse misconceptions about Agile requirements
- Address the challenges of adopting Agile requirements
- Define the Agile requirements process
- Train personnel to use Agile requirements techniques
- Exercise
- Determine how to introduce the Agile requirements on projects in your organization. Identify the benefits you would realize and the challenges you would face. Compare notes with other students.
Where's the Quality?
- Traditional projects are often quality-challenged. The testing phase at the end of the project seems to be never-ending, and in spite of all that time and effort, a defective product is delivered. This results in high support costs, unhappy customers and out of control costs.
- Agility means keeping the focus on quality from the very beginning of the project, testing continuously and ensuring that every piece of code is technically excellent. And because testing is not saved for the end, quality surprises are eliminated. Agility means producing production-ready software regularly throughout the project!
- Traditional practices
- Little focus on developer verification
- Separation of responsibilities (testers vs. developers)
- Testers responsible for quality
- Testing postponed to the project end
- Contrast w/the Agile approach
- Developers focused on technical excellence
- Developer/tester/customer collaboration/feedback
- Testers as members of the development team
- Early and regular "System" & "Acceptance" testing
- Each product increment production-quality
- Case Studies
- We will discuss the unique needs and situations of one of the three Case Study organizations, and determine how to make the transition from traditional quality practices to Agile quality practices.
- Sell the benefits of Agile quality practices
- Defuse misconceptions about Agile quality practices
- Address the challenges of adopting Agile quality practices
- Define the Agile quality process
- Train personnel to use Agile quality practices
- Exercise
- Determine how to introduce the Agile quality practices on projects in your organization. Identify the benefits you would realize and the challenges you would face. Compare notes with other students.
Course Wrap-Up
- There is too much to Agility for you to adopt all at once, so you will need an action plan. In this section, you will review what we have covered in the course and prepare a viable action plan for your organization to become more Agile.
- Exercise
- Review the Essence of Agility
- Prioritize the Agile concepts that you could introduce in your organization. For the three highest-priority concepts, create an action plan to make those things a reality on your projects. Compare notes with other students.
TENHO INTERESSE