FORMAL AXIOMATIC APPROACH TO ASPECT-ORIENTED EXTENSION OF PROGRAMMING TECHNOLOGIES
The procedure of extending modular software systems design technologies by aspect-oriented techniques is considered. The extension is described as enrichment of formal module models by labeling their interfaces by concerns they handle which comprise aspect structure. A novel approach to separation of concerns based on the natural modularizing aspect structure is proposed. Partial modularization of the aspect structure is proposed to generalize this approach. In order to formalize these constructs at the general systems level independently of particular programming paradigms, the category theory is employed. Software engineering technologies are represented as categories with formal models of programs as objects and technological operations as morphisms. The aspect-oriented extension of the technology is axiomatically described as a functor between such categories that has appropriate right and left adjoints. The event-based approach to system modeling is employed as an illustrative case of the aspect-oriented extension.