Abstract
Emerging e-commerce systems are highly dynamic and require even more flexibility and reduced time to market than that traditionally provided by product-line development and component-based software engineering (CBSE). In this paper we describe our work on agent-based, product-line CBSE for flexible e-commerce systems. We are integrating several technologies for product-line analysis and component design, implementation, and customization to create a basis for systematic product-line development. Largely independent work on reuse (“domain analysis”) and object-oriented technology (“design and code”) has matured to the degree that integration of the techniques promises a coherent approach. We outline a practical development process that structures a set of common and variable features supporting a product line, to produce reusable elements (“aspects”). These aspects can be combined into customized components and frameworks to support the product line.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aksjt, M. (1996), Composition and Separation of Concerns in the Object-Oriented Model, in ACM Computing Surveys 28A(4), December.
Akşit, M. Bergmans, L. and Vural, S. (1992), An Object Oriented Language-Database Integration Model: the Composition-Filters Approach, in Proceedings of the 1992 ECOOP, pp. 372–395.
Arango, G. (1994), Domain Analysis Methods, in W. Schafer et al., Software Reusability, Ellis Horwood, Hemel Hempstead, UK.
Bassett, P.G. (1996), Framing Reuse: Lessons from the Real World, Prentice Hall.
Batory, D. (1996), Subjectivity and GenVoca Generators, in Proc. ICSR 96, Orlando, FLA, IEEE, April, pp.166–175.
Batory, D. and O’Malley, S. (1992), The design and implementation of hierarchical software systems with reusable components, ACM Transactions on Software Engineering and Methodology, 1(4):355–398.
Booch, G., Rumbaugh, J. and Jacobson, I. (1999), The Unified Modeling Language: User Guide, Addison-Wesley-Longman.
Bosch, J. (1999), Product-Line Architectures and Industry: A Case Study, in Proceedings of ICSE 99, 16–22 May, Los Angeles, California, USA, ACM press, pp. 544–554.
Bradshaw, J.M. (1997), Software Agents, MIT Press.
Buschmann, F., et. al. (1996), Pattern-Oriented Software Architecture—A System of Patterns. John Wiley and Sons, 1996.
Chen, Q., Hsu, M., Dayal, U., and Griss, M. (2000), Multi-Agent Cooperation, Dynamic Workflow and XML for E-Commerce Automation, in Proc. Autonomous Agents 2000, June, Barcelona.
Clarke, S., Harrison, W., Ossher, H. and Tarr, P. (1999), Towards Improved Alignment of Requirements, Design and Code, in Proceedings of OOPSLA 1999, ACM, pp. 325–339.
Czarnecki, K. and Eisenecker, U.W. (1999), Components and Generative Programming, in Proc. ACM SIGSOFT1999 (ESEC/FSE), LNCS 1687, Springer-Verlag. (See also Available at http://www.home.t-online.de/home/Ulrich.Eisenecker/meta.htm)
Dehnert, J. and Stepanov A. A. (1998), Fundamentals of Generic Programming, Proc. Dagstuhl Seminar on Generic Programming, April 27–May 1, Schloß Dagstuhl, Wadern, Germany.
Falchuk, B. and Karmouch, A. (1998), Visual Modeling for Agent-Based Applications, IEEE Computer, Vol. 31, No. 12, December. Pp. 31–37.
Gamma, E., Helm, R., Johnson, R. and Vlissides, J. (1994), Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley.
Garlan, D. and Shaw, M. (1996), Software Architecture, Perspectives on an Emerging Discipline, Prentice-Hall.
Glushko, R. J., Tenenbaum, J.M. and Meltzer, B. (1999), An XML framework for agent-based E-commerce. Communications of the ACM, Vol.42, March.
Goguen, J. A. (1984), Parameterized Programming, IEEE Trans. Software Eng., SE-10(5), September, pp. 528–543.
Griss, M. L. (2000), My Agent Will Call Your Agent, Software Development Magazine, February. (See also “My Agent Will Call Your Agent… But Will It Respond?” Hewlett-Packard Laboratories, Technical Report, TR-HPL-1999-159).
Griss, M. L. (2000a), Implementing Product-Line Features with Component Reuse, in Proceedings of 6th International Conference on Software Reuse, Springer-Verlag, Vienna, Austria, June.
Griss, M. L. and Kessler, R. R. (1996), Building Object-Oriented Instrument Kits, Object Magazine, April.
Griss, M. L., Favaro, J. and d’Alessandro, M. (1998), Integrating Feature Modeling with the RSEB, in Proceedings of 5th International Conference on Software Reuse, Victoria, Canada, June, IEEE, pp. 76–85.
Gschwind, T., Feridun, M. and Pleisch, S. (1999), ADK—Building Mobile Agents for Network and Systems Management from Reusable Components, in Proc. of ASA/MA 99, Oct, Palm Springs, CA, IEEE-CS, pp 13–21. (See http://www.infosys.tuwien.ac.at/ADK).
Harrison, W. and Ossher, H. (1993), Subject-Oriented Programming (a critique of pure objects), Proc. OOPSLA 95, Washington, DC, Sep 1993, 411–428, ACM.
Huhns, M. N. and Singh, M. P. (1998), Readings in Agents, Morgan-Kaufman.
Jacobson, I., Griss, M. L., and Jonsson, P. (1997), Software Reuse: Architecture, Process and Organization for Business Success, Addison-Wesley-Longman.
Jazayeri, M. (1998), Evaluating Generic Programming in Practice, Proc. Dagstuhl Seminar on Generic Programming, April 27–May 1 Schloß Dagstuhl, Wadern, Germany.
Jennings, N. R. and Wooldridge, M. R. (1998), Agent Technology, Springer.
Johnson, R. and Foote, B. (1988), Designing reusable classes, JOOP, pp. 22–30, 35, June.
Kang, K. C., (1998a), Feature-Oriented Development of Applications for a Domain, Proceedings of 5th International Conference on Software Reuse, June 2–5. Victoria, British Columbia, Canada. IEEE, pp. 354–355.
Kang, K. C., et al., (1990), Feature-Oriented Domain Analysis Feasibility Study, SEI Technical Report CMU/SEI-90-TR-21, November.
Kang, K. C., et al., (1998), FORM: A Feature-Oriented Reuse Method with Domain-Specific Architectures, Annals of Software Engineering, V5, pp. 143–168.
Kang, K. C., Kim, S., Lee, J. and Lee, K. (1999), Feature-oriented Engineering of PBX Software for Adaptability and Reusability, Software—Practice and Experience, Vol. 29, No. 10, pp. 875–896.
Kendall, E. A. (1999), Role Model Designs and Implementations with Aspect-oriented Programming, in Proc. of OOPSLA 99, Oct, Denver, Co., ACM SIGPLAN, 353–369.
Kiczales, G., des Rivieres, J. and Bobrow, D. G.(1991), The Art of the Metaobject Protocol, MIT Press.
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Loitinger, L. and Irwin, J. (1997), Aspect Oriented Programming, Proc. ECOOP 1997, Springer-Verlag, June, pp. 220–242.
Lieberherr, K. J. and Xiao, C. (1993), Object-oriented Software Evolution, IEEE Transactions on Software Engineering, v 19, No. 4, pp. 313–343, April.
Lopes, C.V. and Kiczales, G. (1998), Recent Developments in Aspect JTM, In ECOOP’98 Workshop Reader, Springer-Verlag LNCS 1543.
Machiraju, V., Dekhil, M., Wurster, K., Garg, P., Griss, M. and Holland, J. (1999), Towards Generic Application Auto-discovery, 2000 IEEE/IFIP Network and Operations Management Symposium, Honolulu, Hawaii, April 2000. (See also Hewlett-Packard Laboratories Technical Report HPL-1999-80).
Mezini, M. and Lieberherr, K. (1998), Adaptive Plug-and-Play Components for Evolutionary Software Development, Proceedings of OOP SLAVS, pp. 97–116.
Musser, D. R. and Saini, A. (1996), STL Tutorial and Reference Guide, Addison-Wesley.
Musser, D. R. and Stepanov, A. A. (1994), Algorithm-Oriented Generic Libraries. In Software Practice and Experience, Vol 24(7).
Nwana, H., Nduma, D., Lee, L., Collis, J. (1999), ZEUS: a toolkit for building distributed multi-agent systems, in Artificial Intelligence Journal, Vol. 13, No. 1, pp. 129–186.
Parnas, D. L. (1976), On the Design and Development Of Program Families, IEEE Transactions on Software Engineering, v 2,16, pp 1–9, March.
Parnas, D. L. (1979), Designing Software for Ease of Extension and Contraction, IEEE Transactions on Software Engineering, v 5, #6, pp 310–320, March.
Parnas, D. L., (1972), On the criteria to be used in decomposing systems into modules, CACM, 15(12):1053–1058, December.
Shahoumian, T. A. (2000), A Specialized Macro Language For Specifying the Communication Patterns Within an Agent, Hewlett-Packard Laboratories Technical Report, HPL-2000-07.
Sharma, T. (1999), E-Commerce Components, Software Development, Vol 7, August.
Smaragdakis, Y. (1999), Reusable Object-Oriented Components, Proceedings of Ninth Annual Workshop on Software Reuse, Jan. 7–9, 1999, Austin, Texas.
Smaragdakis, Y. and Batory, D. (1998a), Implementing Layered Designs with Mixin Layers, Proc. of ECOOP98.
Smaragdakis, Y. and D Batory, D. (1998), Implementing Reusable Object-Oriented Components, Proceedings of 5th International Conference on Software Reuse, Victoria, BC, June, pp. 36–45.
Tarr, P. Ossher, H., Harrison, W. and Sutton, Jr. S. M., (1999), N degrees of Separation: Multi-dimensional separation of concerns, Proc. ICSE 99, IEEE, Las Angeles, May, ACM press, pp. 107–119.
Van Hilst, M. and Notkin, D. (1996), Using C++ Templates to Implement Role-Based Designs, JSSST Symposium on Object technologies for Advanced Software, Springer-Verlag, 22–37.
Van Hilst, M. and Notkin, D. (1996a), Using Role Components to Implement Collaboration-Based Designs, Proc. OOPSLA96, 359–369.
Van Hilst, M. and Notkin, D. (1996b), Decoupling Change From Design, Proc. ACM SIGS OFT 1996.
Walker, R, J., Banniassad, E. L. A. and Murphy, G. C. (1999), An Initial Assessment of Aspect Oriented Programming, Proc. ICSE 99, IEEE, Las Angeles, May, pp. 120–130.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer Science+Business Media New York
About this chapter
Cite this chapter
Griss, M.L. (2000). Implementing Product-Line Features by Composing Aspects. In: Donohoe, P. (eds) Software Product Lines. The Springer International Series in Engineering and Computer Science, vol 576. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-4339-8_15
Download citation
DOI: https://doi.org/10.1007/978-1-4615-4339-8_15
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4613-6949-3
Online ISBN: 978-1-4615-4339-8
eBook Packages: Springer Book Archive