Scrum
In July 2016, Scrum also came up with its own set of values:
● Courage (not being afraid to do the right thing and work on tough problems)
● Focus (focusing on the Sprint goal and Product Vision)
● Commitment (personally committing to the Scrum Team goals)
● Respect (trusting and respecting all team members to be independent and capable)
● Openness (agreeing to stay open to work and its challenges)
Scrum can be used in any form of product development and is best used for emergent projects that can prioritize and deliver work in batches.
Feature-Driven Development
Initially designed for a banking client, Feature-Driven Development (FDD) is a framework that focuses on client needs as well as the architecture of the product. Teams who use FDD first come up with models of the product, then create a feature list – somewhat like a Product Backlog in Scrum – based on the models. Planning and designing are done per feature, and once a feature has passed inspections and unit tests, the FDD team will proceed to build it.
An FDD team is made up of the following roles: Project Manager, Chief Architect, Development Manager, Chief Programmer, Class Owner, and Domain Expert. Unlike in XP, classes are assigned to different individual developers, who will own that particular class and will collaborate with other Class Owners when a feature will be comprised of several classes. Other roles included in the team are testers, technical writers, language gurus, domain manager, build engineer, deployer, and release manager.
Feature-Driven Development
FDD delivers features every two weeks. If anything is deemed to take longer than that, then that feature must be further broken down into more features. Documentation, quality control, and employment of strict processes are heavily important in FDD, making it appropriate for projects that require process maturity.
Crystal Framework
The Crystal Framework that centers on people and their interactions as they go through software development together. It is also called “Crystal Family”, as it covers smaller agile frameworks: Crystal Clear, Crystal Yellow, Crystal Orange, Crystal Orange Web, Crystal Red, Crystal Maroon, Crystal Diamond and Crystal Sapphire.
The different Crystal frameworks are differed by the following characteristics: team size, system criticality, and project priorities. And depending on the system criticality, a project will be categorized into the following levels: Comfort (C), Discretionary Money (D), Essential Money (E), and Life (L). Team size and team roles will depend on the project size.
The following describes this agile framework as the following:
● Human-powered – Crystal works on the assumption that teams are capable of streamlining and optimizing processes, and that therefore, people are the most important aspects of a project.
● Adaptive – Crystal does not have a set of prescribed tools and techniques, and approaches will depend on the project nature and needs.
● Ultra-light – Crystal focuses on building a functioning product with business value more than documentation, reporting, and management.
Crystal is one of the most flexible agile frameworks and recognizes that each project is unique, and should have processes tailored to the people who are part of the project.
Recommended Further Reading
The following materials may assist you in order to get the most out of this course:
Course Contents
Section 1: Agile Project Management
Section 2: Using the Agile Manifesto to Deliver Change
Section 3: The 12 Agile Principles
Section 4: The Agile Fundamentals
Section 5: The Declaration of Interdependence
Section 6: Agile Development Frameworks
Section 7: Introduction to Scrum
Section 8: Scrum Projects
Section 9: Scrum Project Roles
Section 10: Meet the Scrum Team
Section 11: Building the Scrum Team
Section 12: Scrum in Projects, Programs & Portfolios
Section 13: How to Manage an Agile Project
Section 14: Leadership Styles
Section 15: The Agile Project Life-cycle
Section 16: Business Justification with Agile
Section 17: Calculating the Benefits With Agile
Section 18: Quality in Agile
Section 19: Acceptance Criteria and the Prioritised Product Backlog
Section 20: Quality Management in Scrum
Section 21: Change in Scrum
Section 22: Integrating Change in Scrum
Section 23: Managing Change in Scrum
Section 24: Risk in Scrum
Section 25: Risk Assessment Techniques
Section 26: Initiating an Agile Project
Section 27: Forming the Scrum Team
Section 28: Epics and Personas
Section 29: Creating the Prioritised Product Backlog
Section 30: Conduct Release Planning
Section 31: The Project Business Case
Section 32: Planning in Scrum
Section 33: Scrum Boards
Section 34: Sprint Planning
Section 35: User Stories
Section 36: User Stories and Tasks
Section 37: The Sprint Backlog
Section 38: Implementation of Scrum
Section 39: The Daily Scrum
Section 40: The Product Backlog
Section 41: Scrum Charts
Section 42: Review and Retrospective
Section 43: Scrum of Scrums
Section 44: Validating a Sprint
Section 45: Retrospective Sprint
Section 46: Releasing the Product
Section 47: Project Retrospective
Section 48: The Communication Plan
Section 49: Formal Business Sign-off
Section 50: Scaling Scrum
Section 51: Stakeholders
Section 52: Programs and Portfolios