Agile process promotes the view that system design emerges and evolves throughout it's life. It is a result of continuos discussions and decisions by the teams.
On large projects with multiple teams, the ideal of involving everyone in design discussion becomes very cumbersome. Even if you can organise such sessions, the smallest discussion takes ages to conclude.
The idea of a design committee has been proposed by some team members in particular [Sandro Mancuso]. The committee is made up of representatives from each team who convene on a weekly basis. The format of the meeting is similar to an Open Space. However the ideas/discussions are posted and voted on a day prior to the meeting. This allows the proposer(s) to come prepared for the meeting. Each member is allowed a single vote before every meeting and they may vote on the same topic over several weeks.
The team representatives rotate over time, and are chosen by the team. It is the responsibility of these representatives to act as spokesmen for their team and to feedback the discussions/decision held in the meetings.
The committee may also arrange ad hoc sessions which an be called up by any member of the committee.
At the start of the meeting a facilitator is elected who is also responsible for recording the outcomes for that meeting.
Mash is a pragmatic software craftsman always looking to improve his software creation skills and helping others do the same. He firmly believes that a well-rounded software craftsman must have a keen interest in all aspects of software creation, including; process, people, technology, user experience, development, operation, maintenance, and social impact. He relishes the daily challenges that Codurance brings to him–stretching his existing knowledge and expertise allowing him to constantly grow as a professional.
Mash is an advisor and a leader. During his diverse career, he has succeeded in invigorating large ailing software projects as well as creating highly effective software teams and departments. His broad and deep technical knowledge, organisational skills, craft focus, and empathy to people involved have been integral to his success. He has worked in many roles for charities, investment banks, consultancies, government, media and cloud providers. He prides himself at being a hands-on software developer and believes that software development skills are very hard to learn and the best way to maintain them is to apply them.All author posts
Software is our passion.
We are software craftspeople. We build well-crafted software for our clients, we help developers to get better at their craft through training, coaching and mentoring, and we help companies get better at delivering software.