Abstract
True reusability of components assumes that they not only offer the functionality prescribed by their APIs, but also that they conform to a well-defined set of quality attributes so that we know if a component can be successfully reused in a new software product. One of the problems with quality attributes however is that it is hard to identify the characteristics of components that contribute to their emergence. End-user quality attributes are versatile and difficult to predict but their occurrence is not of an accidental nature. In this paper we propose a methodology for the exploration of candidate architectural tactics during component analysis and design for the achievement of desirable quality effects. Our approach is based on executable specifications of components that are augmented with the required tactic-related parameters to form a testbed for quality-driven experimentation. We believe that the proposed approach delivers both reusable components as well as reusable models.
This work has been partially funded by the project MISSION-SPM which is co-funded by the European Social Fund and Hellenic national resources (EPEAEK II/Archimedes II program).
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
ISO/IEC 9126-1: Software Engineering - Product Quality - Part 1: Quality Model. ISO/IEC Standard, ISO/IEC 9126-1:2001(E) (2001)
Crnkovic, I., et al.: Concerning Predicatbility in Dependable Component-Based Systems: Classification of Quality Attributes. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds.) Architecting Dependable Systems III. LNCS, vol. 3549, pp. 257–278. Springer, Heidelberg (2005)
Szyperski, C.: Component technology: What, Where, and How? In: Invited talk in ICSE 2003: Proceedings of the 25th International Conference on Software Engineering, pp. 684–693. IEEE Computer Society, Los Alamitos (2003)
Bachmann, F., et al.: Illuminating the Fundamental Contributors to Software Architecture Quality. Technical Report, CMU/SEI-2002-TR-025, Software Engineering Institute, Carnegie Mellon University (2002)
Veanes, M., et al.: Online testing with model programs. SIGSOFT Softw. Eng. Notes 30(5), 273–282 (2005)
Bachmann, F., et al.: Deriving Architectural Tactics: A Step Toward Methodical Architectural Design. Technical Report, CMU/SEI-2003-TR-004 (March 2003)
Gurevich, Y.: Evolving Algebras 1993: Lipari Guide. In: Borger, E. (ed.) Specification and Validation Methods, pp. 9–36. Oxford University Press, Oxford (1995)
AsmL Website (2005), http://research.microsoft.com/fse/asml
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)
Barnett, M., et al.: Validating Use-Cases with the AsmL Test Tool. In: Proc. of the Third International Conference On Quality Software (QSIC 2003), p. 238. IEEE, Los Alamitos (2003)
Glässer, U., Gurevich, Y., Veanes, M.: Abstract Communication Model for Distributed Systems. IEEE Transactions on Software Engineering 30(7), 458–472 (2004)
Liu, Y., Gordon, I.: Performance Prediction of J2EE Applications Using Messaging Protocols. In: Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C., Wallnau, K. (eds.) CBSE 2005. LNCS, vol. 3489, pp. 1–16. Springer, Heidelberg (2005)
Liu, Y., et al.: Predicting the Performance of Middleware-based Applications at the Design Level. In: Proc. of the 4th international workshop on Software and performance (WOSP 2004), pp. 166–170. ACM Press, New York (2004)
Wallnau, K.C.: Volume III: A Technology for Predictable Assembly from Certifiable Components. Carnegie Mellon University – Software Engineering Institute, Technical Report CMU/SEI-2003-TR-009 (April 2003)
Bass, L., et al.: Quality Attribute Design Primitives and the Attribute Driven Design Method. In: van der Linden, F.J. (ed.) PFE 2002. LNCS, vol. 2290, pp. 169–186. Springer, Heidelberg (2002)
Bass, L., John, B.E.: Linking usability to software architecture patterns through general scenarios. Journal of Systems and Software 66(3), 187–197 (2003)
ASM website (2005), http://www.eecs.umich.edu/gasm/
Barnett, M., Schulte, W.: Spying on Components: A Runtime Verification Technique. In: OOPSLA 2001 Workshop on Specification and Verification of ComponentBased Systems (2001)
Hillston, J.: A Compositional Approach to Performance Modelling. Cambridge University Press, Cambridge (1996)
Cavarra, A., Riccobene, E., Scandurra, P.: Integrating UML Static and Dynamic Views and Formalizing the Interaction Mechanism of UML State Machines. In: Börger, E., Gargantini, A., Riccobene, E. (eds.) ASM 2003. LNCS, vol. 2589, pp. 229–243. Springer, Heidelberg (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kakarontzas, G., Stamelos, I. (2006). A Tactic-Driven Process for Developing Reusable Components. In: Morisio, M. (eds) Reuse of Off-the-Shelf Components. ICSR 2006. Lecture Notes in Computer Science, vol 4039. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11763864_20
Download citation
DOI: https://doi.org/10.1007/11763864_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-34606-7
Online ISBN: 978-3-540-34607-4
eBook Packages: Computer ScienceComputer Science (R0)