The main aim of Qi4CS is to provide better code maintenability and productivity by utilizing concepts from Aspect-Oriented Programming, Composite-Oriented Programming, Domain-Driven Development and Dependency Injection.