🤖 AI Summary
Tight coupling between security logic and business code in web applications degrades maintainability and weakens security assurance.
Method: This paper proposes an aspect-oriented programming (AOP)-based modularization approach for security concerns, decoupling and encapsulating cross-cutting security mechanisms—including authentication, authorization, and input validation—into reusable aspects. We conduct a multi-scenario case study, complemented by ISO/IEC 25010–compliant code quality assessment, performance benchmarking (response time, throughput, memory consumption), and an empirical developer survey.
Contribution/Results: Results demonstrate that AOP significantly improves cohesion and reusability of security modules, reduces code coupling, and enhances maintainability. The incurred runtime overhead is negligible (<2% across all metrics). This work establishes a reproducible, quantifiable AOP practice paradigm for security-driven software architecture, grounded in rigorous empirical evidence.
📝 Abstract
Security remains a critical challenge in modern web applications, where threats such as unauthorized access, data breaches, and injection attacks continue to undermine trust and reliability. Traditional Object-Oriented Programming (OOP) often intertwines security logic with business functionality, leading to code tangling, scattering, and reduced maintainability. This study investigates the role of Aspect-Oriented Programming (AOP) in enhancing secure software development by modularizing cross-cutting security concerns. Using a case study approach, we compare AOP-based implementations of security features including authentication, authorization, input validation, encryption, logging, and session management with conventional OOP or middleware-based approaches. Data collection involves analyzing code quality metrics (e.g., lines of code, coupling, cohesion, modularity index, reusability), performance metrics (response time, throughput, memory usage), and maintainability indicators. Developer feedback is also incorporated to assess integration and debugging experiences. Statistical methods, guided by the ISO/IEC 25010 software quality model, are applied to evaluate differences across implementations. The findings demonstrate that AOP enhances modularity, reusability, and maintainability of security mechanisms, while introducing only minimal performance overhead. The study contributes practical insights for software engineers and researchers seeking to balance security with software quality in web application development.