On the Job Training Series: Agile Project Management
Trainer: Steve Caseley
Running Time: 15 Hours (30 Videos)
Agile Project management is an unconventional approach to successful project completion. It turns project planning upside down by showing you how to team successfully with your business partners and by breaking lots of traditional program-management rules.
Successful Project managers approach large-scale problems by building interactive teams, listening to business partners and creating just the requested solutions (nothing more; nothing less).
The key is understanding business needs and how to use those needs to drive projects and create success. Agile shows you how to make this happen and how to simultaneously add recognized value to your organization.
Steve Caseley’s wonderful on-the-job video series captures the essence (and the details) of Agile Project Management. He shows you why this dynamic tool — with its unique use of limited preplanning, efficient interactive development and judicious documentation — spells business success.
Here’s what you’ll learn from CBT Nuggets’ On-the-Job Agile Project Management Video Series:
Video 1: “What is Agile Development?” – This Nugget introduces Agile Development, defines what Agile Development is and provides many compelling reasons why Agile Development should be considered by everyone doing IT development in today’s demanding business environment
Video 2:. “Business Based Development” – This nugget focuses on the important role of business in a successful Agile project. Continuous involvement of knowledgeable, empowered and respected business representatives is critical to the overall success of an Agile project.
Video 3: “Agile Risk Management” – This nugget explores Risk Management in an Agile project. It explains how to take advantage of Agile project characteristics, such as evolutionary design and ongoing re-planning, to eliminate many risk items early in an Agile project.
Video 4: “What it takes to be an Agile Team Member” – Not every IT resource is suited for Agile projects. This nugget defines the characteristics required to be an Agile team member. Flexibility, highly refined communications skills, well defined technical skills and strong team players are just a few of the Agile skills explored here.
Video 5: “Planning for Agile Development” – Planning exists in an Agile project, but not in the traditional sense. Agile planning is often defined as “just-enough” or “just-in-time” planning. This Nugget defines what these terms really mean and defines the planning approaches necessary for successful Agile project delivery.
Video 6: “Agile Design” – Design exists in an Agile project, but not conventional design. Conventional design, often labeled “big-up-front design” by Agilists, attempts to design 100% of the system up front. In this Nugget we explore the Agile method of design: limited up front design to set the foundation or design principles and then evolutionary/continuous design throughout the project.
Video 7: “Writing User Stories” – User stories are a core principle of Agile development. A Business representative writes detailed user stories to define the overall system requirements. Each user story is self-contained and fully descriptive. While this may sound simple, it takes a great deal of skill (and practice) to write a good user story. This Nugget defines what a good user story is and explores some tips and hints for writing good stories.
Video 8: “What is an Iteration” – A second core principle of Agile development is Iterations or Iterative Development. Agile projects are delivered through a series of short, one-to-four week iterations. Each iteration develops a specific set of user stories and results in complete production-ready modules. Techniques for defining and managing iterations are explored in this Nugget.
Video 9: “Agile Database” – Databases that are well defined, fully normalized and managed in a database management system are very NON-AGILE, but they’re virtually pre-requisite for any business-focused application. This Nugget explores how to adopt non-Agile database characteristics and make them fit into an Agile project.
Video 10: “Planning an Iteration” – Each iteration begins with a definitive Iteration Plan that says exactly what functionality (stories) will be developed in that iteration. This definition of an Iteration plan seems non-Agile at first glance, but without an Iteration plan, Agile projects may become disorganized.
Video 11: “Iteration Zero” – Many Agile projects begin with Iteration Zero, even though Iteration Zero typically delivers NO business value and includes NO completed user stories. Project teams use Iteration Zero to set up their project’s technical environment. They can also use it when other preparation is needed to finish user stories in the first iteration.
Video 12: “Pair Programming and Other Agile Techniques” – This Nugget concerns available Agile project options during delivery. Techniques such as Pair Programming, Refactoring, Participatory Decision Making, Collective Code Ownership, Technology Debt and Test Driven Development are presented for consideration. Each project should determine which Agile techniques work and which are simply not appropriate.
Video 13: “Test Driven Development” – Test Driven Development is a key Agile principle. A complete and automated testbed must exist for each Agile project. The existence of this testbed allows the Agile team to tackle any piece of code with confidence. The testbed validates that changes made did not accidentally change any existing functionality. This Nugget explores the principles and defines the environment associated with developing support through Test Driven Development.
Video 14; “The Daily Build” – The Daily Build is a pre-requisite to Test Driven Development. The Daily Build is required to assemble the complete set of program modules that make up the final system and combine to make it an implementable/executable package. This package is then validated through the testing process to ensure that the code meets the business requirements. To support the high productivity requirements of an Agile project, this build must take place at least once a day. This Nugget explores the requirements for a Daily Build and provides some tips and hints on how to achieve this target.
Video 15: “Ongoing Refactoring” – Ongoing Refactoring, or constant, incremental improvement of the code base is the foundation of “being Agile.” It allows the developer to fix code flaws, shortcomings and inefficiencies as they are discovered. The Agile project builds time into the project to allow for refactoring. This ensures that the code base is improved each time code is checked back into the system.
Video 16: “Developing a Spike or Split” – Spikes and Splits allow Agile Projects to develop incrementally with confidence. Spikes let the team explore better methods, identify alternative ways to program and generally experiment to determine the best approach to completing a User Story — thus satisfying a business requirement. A Split allows the team to take a piece of code that is too large, too complex or that supports multiple delivery approaches and split it into two or more simpler modules.
Video 17: “Tracking and Velocity” – Agile development is very managed, but managed in an Agile way. Tracking and Velocity are key Agile management techniques. Tracking allows for the identification of work completed per iteration and focuses on completing each iteration on time. Velocity consists of identifying how much time was spent on each user story, which stories were developed in a given iteration and determining, with confidence, how much development time is available for story completion in the next iteration.
Video 18: “Daily Status Meetings” – Daily, standup status meetings are a key component of Agile development. Short, 10-minute-or-less, daily status meetings keep the team focused on its identified stories and ensures that work is progressing toward completing the iteration on-time. Due to the limited time frame of each iteration, two weeks for example, these daily status meetings are critical to keeping everyone focused and on track.
Video 19: “Release Management” – Each iteration only develops a small amount of incremental code, due to the short duration of each iteration. An Agile project typically does not fully implement “production code” at the end of each iteration. Instead, the completed code from several successive iterations is accumulated until the business sees sufficient incremental value to justify a release/implementation. The determination of now many iterations are accumulated into a release is determined solely by the business.
Video 20: “Implementation” – Implementation of a Release, which is the accumulated result of several iterations, happens when an Agile project becomes “non-Agile.” Unlike the development and management activities leading up to Implementation, an Agile project team typically implements, converts, trains and moves developed code into production using traditional methods and procedures. This Nugget examines what Implementation means and explores several considerations for being Agile, while still supporting traditional implementation procedures.
Video 21: “SCRUM” – This Nugget reviews the specific principles and processes for Agile development defined by the SCRUM approach as documented by Ken Schwaber and Jess Sutherland.
Video 22: “eXtreme Programming” – This Nugget reviews the specific principles and processes for Agile development defined by the eXtreme Programming approach documented by Kent Beck, Ward Cunningham and Ron Jefferies.
Video 23: “Rational Unified Process (RUP)” – This Nugget reviews the specific principles and processes for Agile development defined by the RUP approach documented by Rational Software (now IBM).
Video 24: “Crystal – This Nugget reviews the specific principles and processes for Agile development defined by the Crystal approaches documented by Alistair Cockburn.
Video 25: “Other Agile Methods” – This Nugget reviews the high level principles and processes of other documented Agile development processes, specifically Feature Driven Development (Peter Coad), Adaptive Software Development (Jim Highsmith) and Dynamic Software Development Method (Jennifer Stapleton).
Video 26: “Agile Documentation” – Agile projects produce documentation. However, Agile project teams ask critical questions before producing documentation:
- Is documentation really needed?
- Who uses it?
- Is there a better, more Agile way?
Agile documentation methods explored in this Nugget include Wikis (and related systems), business driven documentation and self-maintaining documentation.
Video 27: “Agile Life Cycle” – To ensure that an Agile project achieves its identified business objectives, the project must follow an Agile Life Cycle. Vision defines the overall direction for the project, while many iterations of Iteration Planning and Agile Development successively develop the final system. A larger repeating cycle, including Implementation, moves developed code into production based on defined business benefits. And finally, Close ensures that lessons learned, reusable materials and overall organizational process improvements are harvested from each Agile project.
Video 28: “Distributed Agile Development” – Agile projects — which consist of small, co-located teams with continuous business involvement — are non-distributed. But with a little hard work, a little imagination and a generous application of advanced technology tools, distributed projects can be successfully completed (or even internationally distributed to the other side of the world) in an Agile or near-Agile manner.
Video 29: “Large Scale Agile Development” – While some Agile Development methods are very specifically defined for small projects, many approaches exist to scale Agile development approaches to teams of hundreds and even thousands. This Nugget explores several methods for scaling your Agile projects to the size required.
Video 30: “Agile Development Summary” – This Nugget wraps up the Agile Development series with a detailed look at the Agile Manifesto and the thirteen Agile Principles.
Agile Project management Video Series includes:
– What is Agile Development/Project Management
– Business Based Development
– Agile Risk Management
– What it takes to be an Agile Team Member
– Planning for Agile Development
– Agile Design (free video)
– Writing User Stories
– What is an Iteration
– Agile Databases
– Planning an Iteration
– Iteration Zero
– Pair Programming and Other Agile Techniques
– Test Driven Development
– The Daily Build
– Ongoing Refactoring
– Developing a Spike or Split
– Tracking and Velocity
– Daily Status Meetings
– Release Management
– Implementation
– Scrum
– eXtreme Programming
– RUP
– Crystal
– Other Agile Methods (FDD, ASD, DSDM)
– Agile Documentation
– Agile Life Cycle
– Distributed Agile Development
– Large Scale Agile Development
– Agile Development Summary
Digital Download CBT Nugget, Steve Caseley – On the Job Training Series: Agile Project Management at Offimc.click Now!
Sales page:
Archive: https://web.archive.org/web/20080402232941/http://www.cbtnuggets.com/webapp/product?id=382
Delivery Information
- Upon ordering the product, a delivery email with download instructions will be sent immediately to you so that you may download your files. If you log in (or create an account) prior to purchase you will also be able to access your downloads from your account dashboard.
- It is a digital download, so please download the order items and save them to your hard drive. In case the link is broken for any reason, please contact us and we will resend the new download link to you.
- If you don't receive the download link, please don’t worry about that. We will update and notify you as soon as possible from 8:00 AM – 8:00 PM (UTC+8).
- Please Contact Us if there are any further questions or concerns you may have. We are always happy to assist!
10 reviews for On the Job Training Series: Agile Project Management – CBT Nugget, Steve Caseley
There are no reviews yet.