Skip to main content

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 219.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. F. Ahsmann F  and L. Bergmans. I-NEDIS: New European Dealer System, Project plan I-NEDIS, 1995.

    Google Scholar 

  2. M. Akşjt. Course Notes: Designing Software Architectures. Post-Academic Organization, 2000.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. E. Arend van der. Design of an Architecture for a Quality Management Push Framework. MSc thesis, Dept. of Computer Science, University of Twente, 1999.

    Google Scholar 

  6. 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.

    Google Scholar 

  7. N.S. Barghouti and G.E. Kaiser. Concurrency Control in Advanced Database Applications, ACM Computing Surveys, Vol. 23, No. 3, September, 1991.

    Google Scholar 

    Google Scholar 

  8. L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice, Addison-Wesley 1998.

    Google Scholar 

  9. A. Bernstein and N. Goodman. Concurrency Control in Distributed Database Systems, ACM Transactions on Database Systems, 8(4): 484–502, 1983.

    Article  MathSciNet  Google Scholar 

  10. P.A. Bernstein and E. Newcomer. Principles of Transaction Processing, Morgan Kaufman Publishers, 1997.

    Google Scholar 

  11. P.A. Bernstein, V. Hadzilacos and N. Goodman. Concurrency Control & Recovery in Database Systems, Addison Wesley, 1987.

    Google Scholar 

  12. B.K. Bhargava (ed.). Concurrency Control and Reliability in distributed Systems, Van Nostrand Reinhold, 1987.

    Google Scholar 

  13. G. Booch, I. Jacobson and J. Rumbaugh. The Unified Modeling Language User Guide, Addison-Wesley, 1999.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad and M. Stal. Pattern-Oriented Software Architecture: A System of Patterns, John Wiley & Sons, 1999.

    Google Scholar 

  16. W. Cellary, E. Gelenbe and T. Morzy, T. Concurrency Control in Distributed Database Systems, North-Holland Press, 1989.

    Google Scholar 

  17. R.D. Coyne, M.A. Rosenman, A.D. Radford, M. Balachandran and J.S. Gero. Knowledge-Based Design Systems, Addison-Wesley, 1990.

    Google Scholar 

  18. C.J. Date. An Introduction to Database Systems, Vol. 3, Addison Wesley, 1990.

    Google Scholar 

  19. D. Diaper (ed.). Knowledge Elicitation, Ellis Horwood, Chichester, 1989.

    Google Scholar 

  20. A.K. Elmagarmid (ed.). Database Transaction Models for AdvancedApplications Transaction Management in Database Systems, Morgan Kaufmann Publishers, 1992.

    Google Scholar 

  21. M. Firlej and D. Hellens. Knowledge elicitation: a practical handbook, New York, Prentice Hall, 1991.

    Google Scholar 

  22. H. Foerster Von. Cybernetics of Cybernetics, in: Klaus Krippendorff (ed.), Communication and Control in Society, New York: Gordon and Breach, 1979.

    Google Scholar 

  23. 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.

    Google Scholar 

  24. R.L. Glass and I. Vessey. Contemporary Application-Domain Taxonomies, IEEE Software, Vol. 12, No. 4, July 1995.

    Google Scholar 

  25. A.J. Gonzalez and D.D. Dankel. The Engineering of Knowledge-Based Systems, Prentice Hall, Englewood Cliffs, NJ, 1993.

    MATH  Google Scholar 

  26. J. Gray and A. Reuter. Transaction processing: concepts and techniques, San Mateo, Morgan Kaufmann Publishers 1993.

    MATH  Google Scholar 

  27. V. Hadzilacos. A theory of reliability in Database Systems, Journal of the ACM, 35(1): 121–145, January 1988.

    Article  MathSciNet  MATH  Google Scholar 

  28. T. Haerder and A. Reuter. Principles of Transaction-Oriented Database Recovery. ACM Computing Surveys, Vol. 15. No. 4. pp. 287–317, 1983.

    Article  MathSciNet  Google Scholar 

  29. R.W. Howard. Concepts and Schemata: An Introduction, Cassel Education, 1987.

    Google Scholar 

  30. I. Jacobson, G. Booch and J. Rumbaugh. The Unified Software Development Process, Addison-Wesley, 1999.

    Google Scholar 

  31. S. Jajodia and L. Kerschberg. Advanced Transaction Models and Architectures, Boston: Kluwer Academic Publishers, 1997.

    Book  MATH  Google Scholar 

  32. P.B. Kruchten. The 4+1 View Model of Architecture. IEEE Software, Vol 12, No 6, pp. 42–50, November 1995.

    Article  Google Scholar 

  33. G. Lakoff. Women, Fire, and Dangerous Things: What Categories Reveal about the Mind, The University of Chicago Press, 1987.

    Google Scholar 

  34. K. J. Lieberherr, Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns, PWS Publishing Company, Boston, 1996.

    Google Scholar 

  35. P. Loucopoulos and V. Karakostas. System requirements engineering, London [etc.], McGraw-Hill, 1995.

    Google Scholar 

  36. N. Lynch, M. Merrit, W. Weihl and A. Fekete. Atomic Transactions. Morgan Kaufmann Publishers, 1994.

    Google Scholar 

  37. M.L. Maher. Process Models for Design Synthesis, AI-Magazine, pp. 49–58, Winter 1990.

    Google Scholar 

  38. 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.

    Google Scholar 

    Google Scholar 

  39. M. Meyer and J. Booker. Eliciting and Analyzing Expert Judgment: A practical Guide, Volume 5 of Knowledge-Based Systems, London: Academic Press, 1991.

    Google Scholar 

  40. A. Newell and. H.A. Simon. Human Problem Solving, Prentice-Hall, Englewood Clifss, NJ, 1976.

    Google Scholar 

  41. CH. Papadimitriou. The theory of Database Concurrency Control. Computer Science Press, 1986.

    Google Scholar 

  42. J. Parsons and Y. Wand. Choosing Classes in Conceptual Modeling, Communications of the ACM, Vol 40. No. 6., pp. 63–69, 1997

    Article  Google Scholar 

  43. D. Partridge and K.M. Hussain. Knowledge-Based Information Systems, McGraw-Hill, 1995.

    Google Scholar 

  44. G. Polya. How to Solve It: a New Aspect of Mathematical Method, New York, Doubleday, 1957.

    Google Scholar 

  45. R. Prieto-Diaz and G. Arrango (Eds.). Domain Analysis and Software Systems Modeling. IEEE Computer Society Press, Los Alamitos, California, 1991.

    Google Scholar 

  46. 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.

    Google Scholar 

  47. E.O. Roxin. Control theory and its applications. Amsterdam, Gordon and Breach Science Publishers, 1997.

    MATH  Google Scholar 

  48. R. Rubin. Foundations of library and information science. New York, Neal-Schuman, 1998.

    Google Scholar 

  49. M. Shaw and D. Garlan. Software Architectures: Perspectives on an Emerging Discipline, Englewood Cliffs, NJ: Prentice-Hall, 1996.

    MATH  Google Scholar 

  50. M. Shaw. Moving from Qualities to Architectures: Architectural Styles, in: L. Bass, P. Clements, & R. Kazman (eds.), Software Architecture in Practice, Addison-Wesley, 1998.

    Google Scholar 

  51. I. Sommerville and P. Sawyer. Requirements engineering: a good practice guide, Chichester, Wiley, 1997.

    MATH  Google Scholar 

  52. 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.

    Google Scholar 

  53. B. Tekinerdoğan. Synthesis-Based Software Architecture Design, PhD Thesis, Dept. Of Computer Science, University of Twente, March 23, 2000.

    Google Scholar 

  54. B. Tekinerdoğan. Overall Requirements Analysis for INEDIS, Siemens-Nixdorf/University of Twente, INEDIS project, 1995.

    Google Scholar 

  55. B. Tekinerdoğan. Requirements for Transaction Processing in INEDIS, Siemens-Nixdorf/University of Twente, INEDIS project, 1995.

    Google Scholar 

  56. B. Tekinerdoğan. Reliability problems and issues in a distributed car dealer information system, INEDIS project, 1996.

    Google Scholar 

  57. 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.

    Google Scholar 

  58. 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.

    Google Scholar 

  59. R.H. Thayer, M. Dorfman and S.C. Bailin. Software requirements engineering, Los Alamitos, IEEE Computer Society Press, 1997.

    MATH  Google Scholar 

  60. W. Tracz and L. Coglianese. DSSA Engineering Process Guidelines. Technical Report, ADAGE-IBM-9202, IBM Federal Systems Company, December, 1992.

    Google Scholar 

  61. 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,

    Article  MATH  Google Scholar 

  62. 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.

    Google Scholar 

  63. C. Vuijst. Design of an Object-Oriented Framework for Image Algebra. MSc thesis, Dept. of Computer Science, University of Twente, 1994.

    Google Scholar 

  64. J.B. Warmer and A.G. Kleppe. The Object Constraint Language: Precise Modeling With Uml, Addison-Wesley, 1999.

    Google Scholar 

  65. 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.

    Google Scholar 

  66. B.J. Wielinga, T. Schreiber and J.A. Breuker. KADS: a modeling approach to knowledge engineering, Academic Press, 1992.

    Google Scholar 

  67. R. Willems. Ontwikkelen van verzekeringsproducten, dutch, translation: Development of Insurance Products, MSc thesis, Dept. of Computer Science, University of Twente, 1999.

    Google Scholar 

  68. 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.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics