Agile has caught the attention of market as a methodology of managing change, lessening time to market, eliminating waste and attracting and retaining customers. On the basis of parameters such as requirements gathering, delivery of the solution, scope, workload we can get an idea about the journey from waterfall to first generation of agile (XP, Scrum) and second generation of agile (Lean, Kanban).
In waterfall methodology , requirements should be collected in advance before implementation begins and delivery is usually a full solution in chunk. The agile base itself is “customers don’t understand their requirement clearly at start of the project”; so the incremental discovery of requirements is adopted in both agile generations. In both agile generations, incremental delivery is a major parameter. In waterfall, all developments plans, task plans are already assigned to respective teams while in XP or scrum (1st generation), no such plan is assigned ; people learn the things by doing and continuously improving (trial and error method). Lean and Kanban (2nd generation) people learn from theory and practice both. Both agile generations mainly focus on “self organized “teams.
First generation agile scope is limited to project team however second generation agile focus on team and entire value stream. XP and Scrum (first generation) is based on principles and values and believes on people over the process. Second generation agile (Lean and kanban) considers people and processes both, in short focuses on human behavior, product development and process flow, principles and values.
In first generation, requirements are customer focused and gathered in the form of user stories and then put together into releases. On the hand, second generation focus on customer requirements within the value proposition of the business. It is believed that just focusing on customer value leads to continuous generation of new requirements; so second generation creates release plan considering business capability using minimum viable products and user stories are developed within such plan. Xp, Scrum considers fixed cross functional teams and workload is managed via time boxes which is called as iterations while in Lean, Kanban cross functional teams are effective, not mandatory and workload is managed via work in progress limits called as cadences.