Declaratively codifying software architectures using virtual software classifications | IEEE Conference Publication | IEEE Xplore