To gain the benefits desired when implementing agile practices, an enterprise must embrace end-to-end business and development processes that focus fully on customers and the products that service them. To accomplish this, the needed conceptual shift is from a “project” orientation to a full “customer and product-driven” perspective.
This enterprise-wide change requires a new awareness as well as re-engineered governance, development, delivery, and operational practices. This is a complex and far-reaching change — organizational challenges and resistance can arise when “old” thinking impedes the implementation of best practices and achievement of new goals.
What is required is a well-defined view of how to integrate strategic planning with product planning and then flow that information seamlessly into agile development and deployment practices into the operational environment. This creates a product pipeline that efficiently anticipates and meets customer needs and wants and is supported by an end-to-end process.
The objective of courseware is to present key concepts and implementable practices that enable your organization to create an end-to-end strategy and a roadmap. Combined, these two courses provide a practical approach to understanding the changes that need to be made across product and development teams, and how to plan and implement those changes in a controlled manner.
Our focus is on assuring that practitioners have the knowledge and skills to achieve the following:
- Understanding what business agility and agile development are meant to accomplish, and the techniques and practices that support those goals,
- Define, embrace, and sustain a customer and product focus,
- Create end-to-end business agility and agile development processes that integrate business unit, development, and operational staffs with common practices and goals, and
- Gain efficiencies and reduce costs through improved processes and, most importantly, doing the right work at the right time with the right people and right tools.
Day 1: Agile Frameworks and Methods
‘Agile’ is a term which spans a multitude of approaches. Originally conceived as a lean alternative to the traditional waterfall life cycle; it has evolved over the past decades to mean many things to many people. This day of training presents a foundational overview of Scrum/Kanban, Scaled Agile Framework (SAFe), and the Hybrid approach that incorporates aspects of agile and waterfall. Most organizations use a complex arrangement of these techniques, and it is critical to understand how all of them fit within an Agile Framework.
Key roles (such as Scrum Master, Agile Project Manager, Product Owner, Developer, Quality Assurance Specialist/Tester, Deployment Specialist) will be defined. Accordingly, each role is responsible for certain activities and work products (the Product Owner produces requirements in the form of User Stories and Acceptance Criteria, for example) and these will be presented in the course.
Contained within this day will also be discussion of DevOps – what it is, what it means from an operational perspective, and what tools are helpful. Specifically, a Continuous Deployment Pipeline will be defined and discussed.
Relying on industry best practices, guidance from the Agile Alliance, and personal experience, this day of training presents key concepts of defining and implementing an Agile Framework and provides a foundational understanding of agile development and deployment.
Day 2: Implementing Agile Development and Delivery
Key to the use of Agile Frameworks and Methods is the ability of staff members to form into effective and efficient teams that understand the agile process and execute their work with quality and timeliness in mind.
In order for agile processes to be lean, the Product Roadmap must be organized into a Release Plan and a Product Backlog. The product backlog is then configured into Sprints with their corresponding Sprint Backlog. These agile artefacts provide the basis for self-organizing agile teams to perform development activities in an effective manner.
Although daily work is guided by the Scrum Master, many organizations still require the assignment of an Agile Project Manager to the team. While the Scrum Master instills vigor into the agile team and oversees the agile development and deployment process, the Agile Project Manager ensures alignment with established agile practices and removes roadblocks at an organizational level. This separate but equal participation in the agile method enables the team to remain focused on development.
Also presented will be the typical activities that must occur within the development team. This includes the daily project meeting, peer reviews, refactoring reviews, pair programming, and quality assurance reviews to name a few. Additional key DevOps environmental requirements will be discussed – Source Control, Code Reuse, Daily Builds, Unit/Component-Level Testing, Automated Deployment Testing, Group Consensus/Approvals and Collaborative Workspaces.
A key component of the agile method are two key reviews. The Sprint Review (part of the daily Scrum) and the Sprint Retrospective (team assessment of the overall sprint process) are key activities that will be presented in this course.
This course can be customized to your organizations training needs as a private session.