Subject-oriented programming: a critique of pure objects
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Selective specialization for object-oriented languages
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
The direct cost of virtual function calls in C++
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Scaling up partial evaluation for optimizing the Sun commercial RPC protocol
PEPM '97 Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
The Flux OSKit: a substrate for kernel and language research
Proceedings of the sixteenth ACM symposium on Operating systems principles
Tempo: specializing systems applications and beyond
ACM Computing Surveys (CSUR) - Special issue: electronic supplement to the September 1998 issue
Next century challenges: mobile networking for “Smart Dust”
MobiCom '99 Proceedings of the 5th annual ACM/IEEE international conference on Mobile computing and networking
Communications of the ACM
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
Implementing product line variabilities
SSR '01 Proceedings of the 2001 symposium on Software reusability: putting software reuse in context
Using multidimensional separation of concerns to (re)shape evolving software
Communications of the ACM
Using aspectC to improve the modularity of path-specific customization in operating system code
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Footprint and feature management using aspect-oriented programming techniques
Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Generic Implementation of Product Line Components
NODe '02 Revised Papers from the International Conference NetObjectDays on Objects, Components, Architectures, Services, and Applications for a Networked World
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
The nesC language: A holistic approach to networked embedded systems
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
Streamlining Object-Oriented Software for Deeply Embedded Applications
TOOLS '00 Proceedings of the Technology of Object-Oriented Languages and Systems (TOOLS 33)
The PURE Family of Object-Oriented Operating Systems for Deeply Embedded Systems
ISORC '99 Proceedings of the 2nd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
XML-Based Method and Tool for Handling Variant Requirements in Domain Models
RE '01 Proceedings of the Fifth IEEE International Symposium on Requirements Engineering
Eliminating Virtual Function Calls in C++ Programs
Eliminating Virtual Function Calls in C++ Programs
Using AspectJ for component integration in middleware
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Feature-Oriented Programming and the AHEAD Tool Suite
Proceedings of the 26th International Conference on Software Engineering
Measuring the dynamic behaviour of AspectJ programs
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Variability management with feature-oriented programming and aspects
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Static and Dynamic Weaving in System Software with AspectC++
HICSS '06 Proceedings of the 39th Annual Hawaii International Conference on System Sciences - Volume 09
A quantitative analysis of aspects in the eCos kernel
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
Knit: component composition for systems software
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Compiler optimization of C++ virtual function calls
COOTS'96 Proceedings of the 2nd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 2
Generic middleware substrate through modelware
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
Advances in AOP with AspectC++
Proceedings of the 2005 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the fourth SoMeT_W05
FeatureC++: on the symbiosis of feature-oriented and aspect-oriented programming
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
On typesafe aspect implementations in c++
SC'05 Proceedings of the 4th international conference on Software Composition
Refactoring middleware with aspects
IEEE Transactions on Parallel and Distributed Systems
Developing embedded software product lines with AspectC++
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
Can aspects model product lines?
Proceedings of the 2008 AOSD workshop on Early aspects
The aspect-oriented design of the PUMA C/C++ parser framework
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
Upcall dispatcher aspects: combining modularity with efficiency in the CiAO IP stack
Proceedings of the 1st workshop on Modularity in systems software
PUMA: an aspect-oriented code analysis and manipulation framework for C and C++
Transactions on aspect-oriented software development VIII
Hi-index | 0.00 |
Software development in the domain of embedded and deeply embedded systems is dominated by cost pressure and extremely limited hardware resources. As a result, modern concepts for separation of concerns and software reuse are widely ignored, as developers worry about the thereby induced memory and performance overhead. Especially object-oriented programming (OOP) is still little in demand. For the development of highly configurable fine-grained system software product lines, however, separation of concerns (SoC) is a crucial property. As the overhead of object-orientation is not acceptable in this domain, we propose aspect-oriented programming (AOP) as an alternative. Compared to OOP, AOP makes it possible to reach similar or even better separation of concerns with significantly smaller memory footprints. In a case study for an embedded system product line the memory costs for SoC could be reduced from 148–236% to 2–10% by using AOP instead of OOP.