We chose AspectJ [23] to modularize DbC features with AO because it is the most consolidated AO language. Besides, our goal was to assess the suitability of core AO mechanisms for handling DbC modularization rather than other emerging AO mechanisms available in programming languages such as CaesarJ