Software Engineering with an Agile Development Framework/Iteration Two/Functional requirements/Worked example
< Software Engineering with an Agile Development Framework | Iteration Two | Functional requirements
|Case study Worked example for Sustainable Habitat Challenge|
Group: Software Engineering 2007
In 2007 Software Engineering worked on developing the information infrastructure for a nation wide sustainable house building challenge ("Shac").
In this variant on the planning game we collected together everything we had on the project (knowledge base, system metaphor, stories, data models etc). We photocopied everything and cut it up into little strips of paper ("cards"). We then arranged these on a whiteboard according to functional groupings.
After a while, it became apparent that our groupings were not conveying the whole of the Shac process, so we added a timeline, and used this to arrange the cards. This helped to make it clear that we were not doing the Shac process, but rather supporting other people who were doing it. This changed the focus to concentrating on what users were trying to achieve rather than what they were doing with our system.
This planning game formed the basis for the functional requirements. The first requirement applied to all others:
All functions must have an underlying approach of "encouraging sustainable behaviour". All functions must include the basis of facilitating public engagement in the process and sustainability.
The system shall provide an integrated (financial and environmental) budgeting and reporting system for teams
The system shall provide a means to generate integrated sustainable building calculators.
The system shall provide a dynamic timeline structure to support teams and Shac administration in project management.
The system shall provide an engaging and interactive game of sustainable building choices.
The system shall provide for progress reporting.
The system shall provide for a collaborative competition structure.
The system shall provide at least three calculators for determining the impact of design options.
The system shall incorporate interactive 3D representation of builds at all stages of process.
The system shall provide user and group management functions. The system shall provide content management functions, including: news; individual and group blogs and webpages; resource links; content approval; guest book; incorporating all media; file sharing; templates. The system shall provide communication between all users. - intra and inter-group communication - including formal and tracked conversations between teams and judges - closed discussions within particular groups