Proposal - education curriculum and operation
Revision as of 11:38, 15 October 2013 by Clarman (talk | contribs) (→LASD6: Workshop: Agile Architecture Documentation Workshop)
Contents
- 1 For Developers & all Technology Managers (including CTOs)
- 1.1 LASD1 (Lean & Agile Sw Dev 1): Readings
- 1.2 LASD2: Course: Agile Software Development: Hands-On Practices, Principles, Agile Modeling, And TDD
- 1.3 2+ week break
- 1.4 LASD3: Workshop: Core skills applied in a mini-Sprint with a work goal
- 1.5 2+ week break
- 1.6 LASD4: Clinic: Legacy-Code TDD
- 1.7 2+ week break
- 1.8 LASD5: Course: Agile Design And Modeling For Advanced Object Design With Patterns
- 1.9 no break (start next event on subsequent day)
- 1.10 LASD6: Workshop: Agile Architecture Documentation Workshop
- 1.11 Adoption & Operating Model
- 2 For Tech and Business Managers
- 3 For Future Product Owners
For Developers & all Technology Managers (including CTOs)
LASD1 (Lean & Agile Sw Dev 1): Readings
Summary: Readings (all free, online)
Person-hours: 5-10
Content:
Systems Thinking Lean Thinking The New Methodology Agile Values & Principles Scrum Guide Scrum Primer Unit TDD and Refactoring for Clean Code Acceptance TDD Continuous Integration
LASD2: Course: Agile Software Development: Hands-On Practices, Principles, Agile Modeling, And TDD
Content Summary: Core hands-on skills in agile sw development/engineering (unit TDD with refactoring, acceptance TDD, continuous integration, clean code, agile modeling for user experience, analysis, and design), and solid OO design
Experience Summary: In this extremely hands-on course, 2 teams (e.g., 14-16 people), each working together as a team, learn and apply in a structured environment with a carefully crafted education system and set of problems. The coach works intensively with the teams during group agile modeling, and intensively with the programming pairs, during development.
Duration: 5 days.
Detailed Description: Agile Software Development: Hands-On Practices, Principles, Agile Modeling, And TDD
Special Readings for Future LASD Teachers:
- Applying UML and Patterns 3E, Larman: Chapters 1-25
- Clean Code, Martin: Chapters 1-10
- User-Centered Design, Lowdermilk, All chapters (it's a short book - a solid overview of basics); though, ignore any "separate UX specialist" advice
2+ week break
LASD3: Workshop: Core skills applied in a mini-Sprint with a work goal
Context: It is helpful to learn & apply new complex skills in a structured classroom environment, but to go from "knowing to doing" in the workroom requires a critical extra step.
Content Summary: The skills of LASD2 are applied to a company goal, that the teams and company mgmt pick (vetted by the coach), in a 5-day mini-Sprint
Experience Summary: The 2 teams, each working together as a team, are led through a mini-Sprint. The coach works intensively with the teams during group agile modeling, and intensively with the programming pairs, during development, introducing new principles and practices and design patterns as situationally appropriate.
Duration: 5 days.
2+ week break
LASD4: Clinic: Legacy-Code TDD
Context: It's easy to create clean code and do TDD and refactoring in a green-field context (LASD2 and LASD3), but that's not the reality of the developers and the legacy code base. The craft of legacy-code TDD is a very different and challenging skill-set and requires distinct coaching, in the context of your real existing legacy code. Especially difficult is breaking dependencies in the existing code, to enable for TDD, and this requires very situational coaching.
Content Summary: Legacy-code TDD and refactoring, breaking dependencies.
Experience Summary: 1 team does a "coding dojo" style learning with the coach. The team and coach are surrounding a projector displaying the legacy code, and for a 10-minute cycle, one person does legacy-code TDD and refactoring and dependency breaking, guided by the coach. Then "driving" the keyboard rotates to the next team member, etc.
Duration: 2.5 days.
Note: The coach will complete team 1 and team 2 coaching over a 5-day period.
2+ week break
LASD5: Course: Agile Design And Modeling For Advanced Object Design With Patterns
Content Summary: Hands-on skill and mastery of excellent and flexible software design with design patterns; more agile modeling skill.
Experience Summary: As in LASD2, in this extremely hands-on course, 2 teams (e.g., 14-16 people), each working together as a team, learn and apply in a structured environment with a carefully crafted education system and set of problems. The coach works intensively with the teams during group agile modeling.
Duration: 4 days.
Detailed Description: Agile Design And Modeling For Advanced Object Design With Patterns
Special Readings for Future LASD Teachers:
- Applying UML and Patterns 3E, Larman, Chapters 26 and 36
no break (start next event on subsequent day)
LASD6: Workshop: Agile Architecture Documentation Workshop
Summary: There is a large system and the overarching existing design is not clear to many. This also inhibits evolving the design for the future. In this 1 day workshop, the coach facilitates the group to create architectural views and technical memos in a highly collaborative hands-on workshop using vast whiteboard spaces, to sketch out the existing product architecture, and also capturing Q&A sessions on video. The output is not only the many architectural view sketches (logical, process, data, deployment, security, ...) and technical memos, but a shared understandings amongst workshop participants in the existing design, using lightweight and fun methods that transform "documenting the architecture" from a boring low-value activity into an interesting high-learning high-value event. This workshop can also be combined with the definition and organization of a self-study plus Q&A mentoring system for new hires to your company, to speed and improve the architectural knowledge of your staff.
Duration: 1 day.
Detailed Description: Agile Architecture Documentation Workshop
Special Readings for Future LASD Teachers:
- Applying UML and Patterns 3E, Larman, Chapter 39
Adoption & Operating Model
To scale this, I recommend that an internal cadre of technical coaches (such as existing managers and architects) become certified to deliver this. The programme will start with some existing certified external coaches (e.g., craig, ...) that deliver this programme, with participants who will in the future deliver it separately.
Each potential coach must attend the cycle of education twice, before certification.
To aid in the coach-certification and learning process, the original deliveries by external expert coaches may be video-recorded (but only used for coach preparation).
I recommend that virtually all teams within the organization go thru this education process.
For Tech and Business Managers
LAM1 (Lean & Agile Mgmt 1): Readings
Summary: Readings (some free and online, some are digital or paper books)
Person-hours: 10-20 hours
Content:
Systems Thinking Lean Thinking The New Methodology Agile Values & Principles Scrum Guide Scrum Primer Other Readings for Managers ??? Possibly also selected chapters from "Out of the Crisis" [Deming]
LAM2: Course: Scrum and Lean Thinking
Summary: Essentially, the 2-day course i have delivered at the organization a few times now.
Duration: 2 days.
no break (start next event on subsequent day)
LAM3: Course: Special Topics: Large-Scale Scrum, Impact Management, ???
Details to be decided.
Duration: 1 day.
no break (start next event on subsequent day)
LAM4: Clinic: Deep-dive Q&A
Duration: 1 day.
Deep-Dive Question And Answer Management Workshop - Lean/Agile Product Development
For Future Product Owners
First, the education in the For Tech and Business Managers section above.
PO1 (Product Owner 1): Readings
Summary: Readings (some free and online, some are digital or paper books)
Person-hours: 5-10 hours
Content:
to be decided
PO2: Course: Certified Scrum Product Owner
Details: Certified Scrum Product Owner Course
Duration: 2 days.
no break (start next event on subsequent day)
PO3: Clinic: Deep-dive Q&A
Duration: 1 day.
Deep-Dive Question And Answer Management Workshop - Lean/Agile Product Development