Use Case Driven Modularization as a Basis for Test Driven Modularization

Michal Bystrický, Valentino Vranić
2017 Proceedings of the 2017 Federated Conference on Computer Science and Information Systems  
While in waterfall-like processes changes are expected to happen mostly after the main development has finished, agile approaches have incorporated response to changes into the main development itself, which raises the importance of the ability to respond to changes effectively to a sine qua non. Changes are specified from the perspective of how users actually use systems, i.e., usage scenarios, which does not correspond to a common object-oriented code modularization. In their complete form,
more » ... ir complete form, usage scenarios can be directly observed in user acceptance tests. Unit tests reveal parts of usage scenarios, too. Logically, tests follow the modularization of the code they are related to. Thus, in common object-oriented code, user acceptance tests, which play a very important role in any kind of software development process and which follow the procedural modularization, would be scattered and, consequently, hard to maintain. In this paper, we propose a new approach capable of achieving test driven modularization, i.e., organizing code according to tests. Besides pure test driven modularization, which can be based on user acceptance tests, unit tests, or both, the approach also enables combining use case and test driven modularization.
doi:10.15439/2017f343 dblp:conf/fedcsis/BystrickyV17 fatcat:7ee3fdapnrcorpjyndtco6myem