Don't miss an insight. Subscribe to Techopedia for free.


Aspect-Oriented Software Development

What Does Aspect-Oriented Software Development Mean?

Aspect-oriented software development (AOSD) is a software design solution that helps address the modularity issues that are not properly resolved by other software approaches, like procedural, structured and object-oriented programming (OOP). AOSD complements, rather than replaces, these other types of software approaches.


AOSD is also known as aspect-oriented programming (AOP).

Techopedia Explains Aspect-Oriented Software Development

AOSD features are as follows:

  • Considered a subset of post-object programming technologies
  • Better software design support through isolating application business logic from supporting and secondary functions
  • Provides complementary benefits and may be used with other agile processes and coding standards
  • Key focus – Identification, representation and specification of concerns, which also may be cross-cutting
  • Provides better modularization support of software designs, reducing software design, development and maintenance costs
  • Modularization principle based on involved functionalities and processes
  • Because concerns are encapsulated into different modules, localization of crosscutting concerns is better promoted and handled
  • Provides tools and software coding techniques to ensure modular content support at the source code level
  • Promotes reusability of code used for the modularization of cross-cutting concerns
  • Smaller code size, due to tackling cross cutting concerns
  • Reduced efficiency from increased overhead

Related Terms