Abstract
Service-oriented software systems rapidly gain importance across application domains: They emphasize functionality (services), rather structural entities (components), as the basic building block for system composition. More specifically, services coordinate the interplay of components to accomplish specific tasks. In this article, we establish a foundation of service orientation: Based on the Focus theory of distributed systems (see Broy and Stølen [2001]), we introduce a theory and formal model of services. In Focus, systems are composed of interacting components. A component is a total behavior. We introduce a formal model of services where, in contrast, a service is a partial behavior. For services and components, we work out foundational specification techniques and outline methodological development steps. We show how services can be structured and how software architectures can be composed of services and components. Although our emphasis is on a theoretical foundation of the notion of services, we demonstrate utility of the concepts we introduce by means of a running example from the automotive domain.
- de Alfaro, L., and Henzinger, T. A. 2001. Interface Automata. In Proceedings of the 9th Annual Symposium on Foundations of Software Engineering (FSE) (Helsinki). 109--120.]] Google ScholarDigital Library
- AspectJ. 2005. AspectJ Eclipse project. http://eclipse.org/aspectj/.]]Google Scholar
- Autosar. 2004. Automotive open system architecture. http://www.autosar.org.]]Google Scholar
- Batory, D., Sarvela, J. N., and Rauschmayer, A. 2003. Scaling stepwise refinement. In Proceedings of the 25th International Conference on Software Engineering (ICSE) (Portland, OR). 187--197.]] Google ScholarDigital Library
- Broy, M., Hofmann, C., Krüger, I., and Schmidt, M. 1997. A graphical description technique for communication in software architectures. Tech. Rep. TUM-I9705, Technische Universität München, Institut für Informatik, München.]]Google Scholar
- Broy, M. 1998. A functional rephrasing of the assumption/commitment specification style. Formal Methods Syst. Desi. 13, 1, 1411, 87--119.]] Google ScholarDigital Library
- Broy, M., and Krüger, I. 1998. Interaction interfaces, Towards a scientific foundation of a methodological usage of message sequence charts. In J. Staples et al., eds. Formal Engineering Methods. 2--15.]] Google ScholarDigital Library
- Broy, M. and Stølen, K. 2001. Specification and Development of Interactive Systems: Focus on Streams, Interfaces, and Refinement. Springer Verlag, New York.]] Google ScholarDigital Library
- Broy, M. 2003. Modeling services and layered architectures. In Formal Techniques for Networked and Distributed Systems, H. König et al., eds. Lecture Notes in Computer Science, vol. 2767. 48--61.]]Google Scholar
- Cockburn, A. 2000. Writing Effective Use Cases. Addison-Wesley, Boston.]] Google ScholarDigital Library
- Dijkstra, E. W. 1971. Notes on structured programming. In Structured Programming, O. Dahl et al., eds., No. 8 in A.P.I.C. Studies in Data Processing. Academic Press, London. 1--82.]] Google ScholarDigital Library
- Evans, E. 2003. Domain-Driven Design. Addison-Wesley, Boston.]]Google Scholar
- Fowler, M., Beck, K., Brant, J., Opdyke, W., and Roberts, D. 1999. Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston.]] Google ScholarDigital Library
- Gamma, E., Helm, R., Johnson, R., and Vlissides, J. 1995. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, MA.]] Google ScholarDigital Library
- Garlan, D. and Shaw, M. 1996. Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, Englewood Cliffs, NJ.]] Google ScholarDigital Library
- Gibson, P. and Méry, D. 2000. Formal modelling of services for getting a better understanding of the feature interaction problem. In Perspectives of System Informatics. Lecture Notes in Computer Science, vol. 1755. Springer Verlag. 155--179.]] Google ScholarDigital Library
- Harel, D. 1987. Statecharts: A visual formalism for complex systems. In Science of Computer Programming, vol. 8, Elsevier Science. 231--274.]] Google ScholarDigital Library
- Herzberg, D. and Broy, M. 2005. Modelling layered distributed communication systems. Formal Aspects Comput. 17, 1, 1--18.]] Google ScholarCross Ref
- Hoare, C. A. R. 1985. Communicating Sequential Processes. Prentice-Hall, New York.]] Google ScholarDigital Library
- IBM. 2003. Business Process Execution Language for Web Services (BPEL4WS) Version 1.1. IBM developerWorks.]]Google Scholar
- ISO. 1986. Information processing systems, open systems interconnection, basic reference model. ISO-7498. International Organization for Standardization, Geneva.]]Google Scholar
- ITU-T. 1993. Criteria for the use and applicability of formal description techniques. Recommendation Z. 120, Message Sequence Chart (MSC). ITU-T (previously CCITT), Geneva, March 1993.]]Google Scholar
- ITU-T. 1996. Recommendation Z.120 -- Message Sequence Chart (MSC 96). ITU-T, Geneva.]]Google Scholar
- Jacobson, I. 1992. Object-Oriented Software Engineering. Addison-Wesley, Redwood City, CA.]] Google Scholar
- Jacobson, I., Booch, G., and Rumbaugh, J. 1999. The Unified Software Development Process. Addison-Wesley, Boston.]] Google ScholarDigital Library
- JXTA. 2001. JXTA project homepage. http://jxme.jxta.org.]]Google Scholar
- Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., and Griswold, W. G. 2001. An overview of AspectJ. In Proceedings of the ECOOP 2001, Budapest, pp. 327--353, Springer Verlag.]] Google ScholarDigital Library
- Kosmas, N. and Turner, K. J. 1997. Requirements for service creation environments. In Proceedings of the 2nd International Workshop on Applied Formal Methods in System Design (Zagreb) 133--137.]]Google Scholar
- Kotonya, G. and Sommerville, I. 1995. Requirements engineering with viewpoints. Tech. Rep. CSEG/10/1995, Cooperative Systems Engineering Group Computer Department, Lancaster University.]]Google Scholar
- Krüger, I., Grosu, R., Scholz, P., and Broy, M. 1999. From MSCs to statecharts. In Distributed and Parallel Embedded Systems, Franz J. Rammig, ed. Kluwer Academic, 61--71.]] Google ScholarDigital Library
- Krüger, I. 2000. Distributed system design with message sequence charts. Dissertation, Technische Universität München, München.]]Google Scholar
- Krüger, I. 2002. Specifying services with UML and UML-RT. Electron. Notes Theor. Comput. Sci. 65, 7, 1--17.]]Google ScholarCross Ref
- Krüger, I. 2003. Capturing overlapping, triggered, and preemptive collaborations using MSCs. In Proceedings of the Fundamental Approaches to Software Engineering, 6th International Conference (FASE). Lecture Notes in Computer Science vol. 2621. Springer Verlag. 387--402.]]Google Scholar
- Krüger, I., Schätz, B., Broy, M., and Hussmann, H., eds. 2003. SBSE'03. Service-Based software engineering. In Proceedings of the FM2003 Workshop. Tech. Rep. TUM-I0315, Technische Universität München, München.]]Google Scholar
- Krüger, I. and Mathew, R. 2004. Systematic development and exploration of service-oriented software architectures. In Proceedings of the 4th Working IEEE/IFIP Conference on Software Architecture (WICSA) (Oslo). 177--187.]] Google ScholarDigital Library
- Manna, Z. and Pnueli, A. 1992. The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer Verlag, New York.]] Google ScholarDigital Library
- Milner, R. 1989. Communication and Concurrency. Prentice Hall, New York.]] Google ScholarDigital Library
- Nelson, E. C. and Prasad, K. V. 2003. Automotive Infotronics: An emerging domain for service-based architecture. In {Krüger et al. 2003}, pp. 3--14.]]Google Scholar
- OMG. 1999. Realtime CORBA joint revised submission. Object Management Group (OMG), document orbos/99-02-12 ed., March 1999.]]Google Scholar
- OMG. 2003. UML 2.0 infrastructure/superstructure final adopted specification. Object Management Group (OMG), documents ptc/03-09-15 and ptc/03-08-02.]]Google Scholar
- Parlay Group. 2001. Parlay 3.0 specification - Call control, framework, content-based charging. http://www.parlay.org/specs/index.asp.]]Google Scholar
- Parnas, D. 1972. On the criteria to be used to decompose systems into modules. Commun. ACM 15, 12, 1053--1058.]] Google ScholarDigital Library
- Peltz, C. 2003. Web services orchestration and choreography. IEEE Comput. 36, 10, 46--52.]]Google ScholarDigital Library
- Platt, D. S. and Ballinger, K. 2001. Introducing Microsoft .NET. Microsoft Press, Redmond, WA.]] Google ScholarDigital Library
- Prehofer, C. 1997. Feature oriented programming: A fresh look at objects. In Proceedings of the ECOOP, (Jyväskylä, Finland) Lecture Notes in Computer Science, vol. 1241, Springer Verlag, 419--443.]]Google ScholarCross Ref
- Prehofer, C. 2003. Plug-and-Play composition of features and feature interactions with statechart diagrams. In Proceedings of the 7th International Workshop on Feature Interactions in Telecommunications and Software Systems (Ottawa). 43--58.]]Google Scholar
- SANCHO. 2003. Definition for the term “(software) service,” Sector Abbreviations and definitions for a telecommunications thesaurus oriented database, ITU-T. http://www.itu.int/sancho.]]Google Scholar
- Selic, B., Gullekson, G., and Ward, P. T. 1994. Real-Time Object-Oriented Modeling. Wiley, New York.]] Google ScholarDigital Library
- Snell, J., Tidwell, D., and Kulchenko, P. 2002. Programming Web Services with SOAP. O'Reilly, Sebastopol, CA.]] Google ScholarDigital Library
- Sun. 2000. Jini architecture specification, version 1.1. Sun Microsystems, http://wwwwswest.sun.com/jini/specs/jini1_1.pdf.]]Google Scholar
- Szyperski, C., Gruntz, D., and Murer, S. 2002. Component Software---Beyond Object-Oriented Programming, 2nd ed. Addison-Wesley, Boston.]] Google ScholarDigital Library
- Trowbridge, D., Roxburgh, U., Hohpe, G., Manolescu, D., and Nadhan, E. G. 2004. Integration patterns. patterns and practices. Microsoft. http://www.microsoft.com.]]Google Scholar
- Turner, K. J. 1997. Relating services and features in the intelligent network. In Proceedings of the 4th International Conference on Telecommunications (Zagreb). 235--243.]]Google Scholar
- W3C. 2002. Web Service Choreography Interface (WSCI) 1.0. World Wide Web Consortium (W3C), online specification. http://www.w3.org/TR/wsci, August 2002.]]Google Scholar
- Zave, P. 2003. Feature interactions and formal specifications in telecommunications. IEEE Comput. 26, 8, 20--30.]] Google ScholarDigital Library
Index Terms
- A formal model of services
Recommendations
Contractual Specifications of Business Services: Modeling, Formalization and Proximity
LNCS Transactions on Large-Scale Data- and Knowledge-Centered Systems XXXI - Volume 10140Business services arguably play a central role in service-based information systems as they would fill in the gap between the technicality of Service-Oriented Architecture and the business aspects captured in Enterprise Architecture. Business services ...
Contractual Proximity of Business Services
FDSE 2015: Proceedings of the Second International Conference on Future Data and Security Engineering - Volume 9446Business services arguably play a central role in service-based information systems as they would fill in the gap between the technicality of Service-Oriented Architecture and the business aspects captured in Enterprise Architecture. Business services ...
Semantic Web Services, Part 2
Semantic Web services (SWS) has been a vigorous technology research area for about six years, producing a great deal of innovative work. Part 2 of this Trends & Controversies department continues exploring the state of the art, current practices, and ...
Comments