Making architectural decisions based on requirements, analyzing cost-benefit trade-offs, and keeping design options open is a difficult task. Existing work on classification of ar...
Software design techniques emphasize the use of abstractions to help developers deal with the complexity of constructing large and complex systems. These abstractions can also be u...
Brian S. Mitchell, Spiros Mancoridis, Martin Trave...
Current trends suggest future software systems will comprise collections of components that combine and recombine dynamically in reaction to changing conditions. Service-discovery...
Christopher Dabrowski, Kevin L. Mills, Jesse Elder
This paper describes E-Slate (http://E-Slate.cti.gr), an exploratory learning environment that builds on a componentbased approach, to enable end-users to create educational softw...
George Birbilis, Manolis Koutlis, Kriton Kyrimis, ...
Abstract -- Software architectures enable large-scale software development. Component reuse and substitutability, two key aspects of large-scale development, must be planned for du...
Nenad Medvidovic, Peyman Oreizy, Jason E. Robbins,...