The paper outlines an experiment conducted in two different academic environments, in which FIT tests were used as a functional requirements specification. Common challenges for functional requirements specifications are identified, and a comparison is made between how well prose and FIT user acceptance tests are suited to overcoming these challenges from… (More)
Executable acceptance testing allows both to specify customers' expectations in the form of the tests and to compare those to actual results that the software produces. The results of an observational study identifying patterns in the use of the FIT acceptance testing framework are presented and the data on acceptance-test driven design is discussed.
This report describes experiences of introducing executable acceptance testing in senior software engineering courses. Students in an agile environment completed a five-iteration project with significant portion of requirements specified as executable acceptance tests. Furthermore, students were required to write their test suites for an additional… (More)
Agile software development processes are best applied to small teams on small to medium sized projects. Scaling agile methodologies is desired in order to bring the benefits of agile to larger, more complex projects. One way to scale agile methods is via an architecture-centric approach, in which a project is divided into smaller modules on which sub teams… (More)
Agile methods are increasingly popular for small, co-located teams. However, large or distributed teams do not hit the sweet spot for the application of agile methods. A divide and conquer approach can be used to employ multiple teams on such a project, however there are several obstacles to employing agile methods with teams of teams. Issues of up-front… (More)