Abstract
Software architectures provide the gross-level design and as such impact the quality of the entire system. To support the quality factors such as robustness, adaptability and maintainability, a proper scoping of the architecture boundaries and likewise the identification of the relevant architectural abstractions is necessary. Several architecture design approaches have been introduced whereby the scoping of the architecture is merely based on the stakeholder’s perspective. This chapter introduces a novel software architecture design approach that aims to scope the architecture boundaries from a systematic problem-solving perspective instead. In this so-called synthesis-based architecture design approach (Synbad), the client’s perspective is abstracted to derive the technical problems. The technical problems define the scope of the solution domains from which the architectural abstractions are derived. The approach is illustrated for the design of an atomic transaction architecture for a real industrial project.
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
F. Ahsmann F and L. Bergmans. I-NEDIS: New European Dealer System, Project plan I-NEDIS, 1995.
M. Akşjt. Course Notes: Designing Software Architectures. Post-Academic Organization, 2000.
M. Akşit, B. Tekinerdoğan, F. Marcelloni & L. Bergmans. Deriving Object-Oriented Frameworks from Domain Knowledge. in: M. Fayad, D. Schmidt & R. Johnson (eds.), Building Application Frameworks: Object-Oriented Foundations of Framework Design, Wiley, 1999.
M. Akşjt, B. Tekinerdoğan and L. Bergmans. Achieving adaptability through separation and composition of concerns, in Max Muhlhauser (ed), Special issues in Object-Oriented Programming, Workshop Reader of the 10th European Conference on Object-Oriented Programming, ECOOP ′96, Linz, Austria, July, 1996.
E. Arend van der. Design of an Architecture for a Quality Management Push Framework. MSc thesis, Dept. of Computer Science, University of Twente, 1999.
G. Arrango. Domain Analysis Methods. In Software Reusability, Schäfer, R. Prieto-Díaz, and M. Matsumoto (Eds.), Ellis Horwood, New York, New York, pp. 17–49, 1994.
N.S. Barghouti and G.E. Kaiser. Concurrency Control in Advanced Database Applications, ACM Computing Surveys, Vol. 23, No. 3, September, 1991.
L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice, Addison-Wesley 1998.
A. Bernstein and N. Goodman. Concurrency Control in Distributed Database Systems, ACM Transactions on Database Systems, 8(4): 484–502, 1983.
P.A. Bernstein and E. Newcomer. Principles of Transaction Processing, Morgan Kaufman Publishers, 1997.
P.A. Bernstein, V. Hadzilacos and N. Goodman. Concurrency Control & Recovery in Database Systems, Addison Wesley, 1987.
B.K. Bhargava (ed.). Concurrency Control and Reliability in distributed Systems, Van Nostrand Reinhold, 1987.
G. Booch, I. Jacobson and J. Rumbaugh. The Unified Modeling Language User Guide, Addison-Wesley, 1999.
P. Bourque, R. Dupuis, A. Abran, J.W. Moore and L. Tripp. abc The Guide to the Software Engineering Body of Knowledge, Vol. 16, No. 6, pp. 35–45, November/December, 1999.
F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad and M. Stal. Pattern-Oriented Software Architecture: A System of Patterns, John Wiley & Sons, 1999.
W. Cellary, E. Gelenbe and T. Morzy, T. Concurrency Control in Distributed Database Systems, North-Holland Press, 1989.
R.D. Coyne, M.A. Rosenman, A.D. Radford, M. Balachandran and J.S. Gero. Knowledge-Based Design Systems, Addison-Wesley, 1990.
C.J. Date. An Introduction to Database Systems, Vol. 3, Addison Wesley, 1990.
D. Diaper (ed.). Knowledge Elicitation, Ellis Horwood, Chichester, 1989.
A.K. Elmagarmid (ed.). Database Transaction Models for AdvancedApplications Transaction Management in Database Systems, Morgan Kaufmann Publishers, 1992.
M. Firlej and D. Hellens. Knowledge elicitation: a practical handbook, New York, Prentice Hall, 1991.
H. Foerster Von. Cybernetics of Cybernetics, in: Klaus Krippendorff (ed.), Communication and Control in Society, New York: Gordon and Breach, 1979.
D.D. Gajski, N.D. Dutt, A. Wu, and S. Lin. High-level synthesis: introduction to chip and system design, Boston: Kluwer Academic Publishers, 1992.
R.L. Glass and I. Vessey. Contemporary Application-Domain Taxonomies, IEEE Software, Vol. 12, No. 4, July 1995.
A.J. Gonzalez and D.D. Dankel. The Engineering of Knowledge-Based Systems, Prentice Hall, Englewood Cliffs, NJ, 1993.
J. Gray and A. Reuter. Transaction processing: concepts and techniques, San Mateo, Morgan Kaufmann Publishers 1993.
V. Hadzilacos. A theory of reliability in Database Systems, Journal of the ACM, 35(1): 121–145, January 1988.
T. Haerder and A. Reuter. Principles of Transaction-Oriented Database Recovery. ACM Computing Surveys, Vol. 15. No. 4. pp. 287–317, 1983.
R.W. Howard. Concepts and Schemata: An Introduction, Cassel Education, 1987.
I. Jacobson, G. Booch and J. Rumbaugh. The Unified Software Development Process, Addison-Wesley, 1999.
S. Jajodia and L. Kerschberg. Advanced Transaction Models and Architectures, Boston: Kluwer Academic Publishers, 1997.
P.B. Kruchten. The 4+1 View Model of Architecture. IEEE Software, Vol 12, No 6, pp. 42–50, November 1995.
G. Lakoff. Women, Fire, and Dangerous Things: What Categories Reveal about the Mind, The University of Chicago Press, 1987.
K. J. Lieberherr, Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns, PWS Publishing Company, Boston, 1996.
P. Loucopoulos and V. Karakostas. System requirements engineering, London [etc.], McGraw-Hill, 1995.
N. Lynch, M. Merrit, W. Weihl and A. Fekete. Atomic Transactions. Morgan Kaufmann Publishers, 1994.
M.L. Maher. Process Models for Design Synthesis, AI-Magazine, pp. 49–58, Winter 1990.
O. Maimon and D. Braha. On the Complexity of the Design Synthesis Problem, IEEE Transactions on Systems, Man, And Cybernetics-Part A: Systems and Humans, Vol. 26, No. 1, January 1996.
M. Meyer and J. Booker. Eliciting and Analyzing Expert Judgment: A practical Guide, Volume 5 of Knowledge-Based Systems, London: Academic Press, 1991.
A. Newell and. H.A. Simon. Human Problem Solving, Prentice-Hall, Englewood Clifss, NJ, 1976.
CH. Papadimitriou. The theory of Database Concurrency Control. Computer Science Press, 1986.
J. Parsons and Y. Wand. Choosing Classes in Conceptual Modeling, Communications of the ACM, Vol 40. No. 6., pp. 63–69, 1997
D. Partridge and K.M. Hussain. Knowledge-Based Information Systems, McGraw-Hill, 1995.
G. Polya. How to Solve It: a New Aspect of Mathematical Method, New York, Doubleday, 1957.
R. Prieto-Diaz and G. Arrango (Eds.). Domain Analysis and Software Systems Modeling. IEEE Computer Society Press, Los Alamitos, California, 1991.
Y. Reich and S.J. Fenves. The formation and use of abstract concepts in design, in: Concept Formation: Knowledge and Experience in Unsupervised Learning, D.H.J. Fisher, M.J. Pazzani, & P. Langley (eds.), Los Altos, CA, pp. 323–353, Morgan Kaufmann, 1991.
E.O. Roxin. Control theory and its applications. Amsterdam, Gordon and Breach Science Publishers, 1997.
R. Rubin. Foundations of library and information science. New York, Neal-Schuman, 1998.
M. Shaw and D. Garlan. Software Architectures: Perspectives on an Emerging Discipline, Englewood Cliffs, NJ: Prentice-Hall, 1996.
M. Shaw. Moving from Qualities to Architectures: Architectural Styles, in: L. Bass, P. Clements, & R. Kazman (eds.), Software Architecture in Practice, Addison-Wesley, 1998.
I. Sommerville and P. Sawyer. Requirements engineering: a good practice guide, Chichester, Wiley, 1997.
N.A. Stillings, S.E. Weisler, C.H. Chase, M.H. Feinstein, J.L. Garfield and E.L. Rissland. Cognitive Science: An Introduction. Second Edition, The MIT Press, Cambridge, Massachusetts, 1995.
B. Tekinerdoğan. Synthesis-Based Software Architecture Design, PhD Thesis, Dept. Of Computer Science, University of Twente, March 23, 2000.
B. Tekinerdoğan. Overall Requirements Analysis for INEDIS, Siemens-Nixdorf/University of Twente, INEDIS project, 1995.
B. Tekinerdoğan. Requirements for Transaction Processing in INEDIS, Siemens-Nixdorf/University of Twente, INEDIS project, 1995.
B. Tekinerdoğan. Reliability problems and issues in a distributed car dealer information system, INEDIS project, 1996.
B. Tekinerdoğan and M. Akşjt. Adaptability in object-oriented software development, Workshop report, in M. Muhlhauser (ed), Special issues in Object-Oriented Programming, Dpunkt, Heidelberg, 1997.
B. Tekinerdoğan and M. Akşit. Deriving design aspects from conceptual models. In: Demeyer, S., & Bosch, J. (eds.), Object-Oriented Technology, ECOOP ′98 Workshop Reader, LNCS 1543, Springer-Verlag, pp. 410–414, 1999.
R.H. Thayer, M. Dorfman and S.C. Bailin. Software requirements engineering, Los Alamitos, IEEE Computer Society Press, 1997.
W. Tracz and L. Coglianese. DSSA Engineering Process Guidelines. Technical Report, ADAGE-IBM-9202, IBM Federal Systems Company, December, 1992.
I.L. Traiger, J. Gray, C.A. Caltiere and B.G. Lindsay. Transactions and Consistency in Distributed Database Systems, ACM Transactions on Database Systems, Vol. 7, No. 3, pp 323–342, September, 1982,
S.A. Umplebey.abc The Science of Cybernetics and the Cybernetics of Science, Cybernetics and Systems, Vol. 21, No. 1, 1990, pp. 109–121, 1990.
C. Vuijst. Design of an Object-Oriented Framework for Image Algebra. MSc thesis, Dept. of Computer Science, University of Twente, 1994.
J.B. Warmer and A.G. Kleppe. The Object Constraint Language: Precise Modeling With Uml, Addison-Wesley, 1999.
W. Weihl. The impact of recovery on concurrency control. Proceedings of the eigth ACM SIGACT-SIGMOD-SIGART symposium on Principles of Database Systems March 29–31, Philadelphia, PA USA, 1989.
B.J. Wielinga, T. Schreiber and J.A. Breuker. KADS: a modeling approach to knowledge engineering, Academic Press, 1992.
R. Willems. Ontwikkelen van verzekeringsproducten, dutch, translation: Development of Insurance Products, MSc thesis, Dept. of Computer Science, University of Twente, 1999.
Z. Wu, R.J. Stroud, K. Moody and J. Bacon. The design and implementation of a distributed transaction system based on atomic data types, Distributed Syst, Engineering, 2, pp. 50–64, 1995.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer Science+Business Media New York
About this chapter
Cite this chapter
Tekinerdoğan, B., Akşit, M. (2002). Synthesis-Based Software Architecture Design. In: Akşit, M. (eds) Software Architectures and Component Technology. The Springer International Series in Engineering and Computer Science, vol 648. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-0883-0_5
Download citation
DOI: https://doi.org/10.1007/978-1-4615-0883-0_5
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4613-5286-0
Online ISBN: 978-1-4615-0883-0
eBook Packages: Springer Book Archive