[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.5555/648098.748387guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Using OCL and UML to Specify System Behavior

Published: 01 January 2002 Publication History

Abstract

Use cases are an excellent tool for capturing behavioral requirements of software systems, but they are not an ideal work product for driving design activities. We believe that there is value from complementing use case descriptions with pre- and postcondition descriptions, not only to better support reasoning about system properties and a basis for testing and debugging, but also to better support a predictable decomposition level on which one can base a systematic transition to design. Nevertheless, we recognize that pre- and postcondition descriptions are not widely used in practice. We believe this is in part due to the formalism used. Either the formalism is too heavy to learn and use, or the formalism does not offer sufficient abstraction from the vocabulary of implementation.Via an example, the paper highlights our approach for specifying system behavior, which uses the Unified Modeling Language (UML) and its Object Constraint Language (OCL). We focus the paper on pre- and postconditions descriptions and in particular propose a number of enhancements and interpretations to OCL that we made while refining our approach. In particular, we describe a number of issues that cover areas such as the frame problem, incremental descriptions, structuring schemas, and events and exceptions.

References

[1]
J. Abrial. The B-Book: Assigning Programs to Meanings. Cambridge University Press, 1996.
[2]
K. Achatz and W. Schulte. A Formal OO Method Inspired by Fusion and Object-Z. In J. P. Bowen, M. G. Hinchey, and D. Till (eds.): ZUM'97: The Z Formal Specification Notation, LNCS 1212 Springer, 1997.
[3]
A. Borigda, J. Mylopoulos and R. Reiter. On the Frame Problem in Procedure Specifications. IEEE Transactions on Software Engineering, Vol. 21, No. 10: October 1995, pp. 785- 798.
[4]
J-M. Bruel and R. France. Transforming UML models to formal specifications. Proceedings of the OOPSLA'98 Workshop on Formalizing UML: Why? How?, Vancouver, Canada, 1998.
[5]
P. Chen; The Entity-Relationship Model--Toward A Unified View of Data. ACM Transactions on Database Systems, 1(1), 1976, pp. 9-36.
[6]
D. Coleman et al. Object-Oriented Development: The Fusion Method. Prentice Hall, 1994.
[7]
S. Cook, A. Kleppe, R. Mitchell, J. Warmer, and A. Wills. Defining the Context of OCL Expressions. Second International Conference on the Unified Modeling Language: UML'99, Fort Collins, USA, 1999.
[8]
D. D'Souza and A.Wills. Objects, Components and Frameworks With UML: The Catalysis Approach. Addison-Wesley 1998.
[9]
J. Daniels et al. Panel: Cracking the Software Paradox. OOPSLA 2000 Companion from the Conference on Object-Oriented Programming, Systems, Languages, and Application, USA, 2000.
[10]
K. Finney, N. Fenton, and A. Fedorec. Effects of Structure on the Comprehensibility of Formal Specifications. IEEE Proc.-Softw. Vol. 146, No. 4, August 1999.
[11]
D. Firesmith. Use Case Modeling Guidelines. Proc. 30th Conference on Technology for Object-Oriented Programming Languages and Systems (TOOLS-30), pp. 184-193, IEEE Computer Society, 1999.
[12]
M. Fowler; Use and Abuse Cases. Distributed Computing Magazine, 1999 (electronically available at http://www.martinfowler.com/articles.html).
[13]
M. Glinz; Problems and Deficiencies of UML as a Requirements Specification Language. Proceedings of the Tenth International Workshop on Software Specification and Design, San Diego, 2000, pp. 11-22.
[14]
J. Guttag et al. The Larch Family of Specification Languages. IEEE Trans Soft Eng 2(5), September 1985.
[15]
C. Jones. Systematic Software Development Using VDM. Prentice Hall, 1986.
[16]
M. Kandé and A. Strohmeier. Towards a UML Profile for Software Architecture Descriptions. UML 2000 - The Unified Modeling Language: Advancing the Standard, Third International Conference, York, UK, October 2-6, 2000, S. Kent, A. Evans and B. Selic (Eds.), LNCS (Lecture Notes in Computer Science), no. 1939, 2000, pp. 513-527.
[17]
B. Kovitz; Practical Software Requirements: A Manual of Content and Style. Manning 1999.
[18]
C. Morgan. Programming from Specifications. Second Edition, Prentice Hall 1994.
[19]
B. Meyer. Object-Oriented Software Construction. Second Edition, Prentice Hall, 1997.
[20]
R. Paige and J. Ostroff. A Comparison of the Business Object Notation and the Unified Modeling Language. UML '99 - The Unified Modeling Language: Beyond the Standard, Second International Conference, Fort Collins, CO, USA, October 28-30, 1999, Robert France and Bernard Rumpe (Eds.), LNCS (Lecture Notes in Computer Science), no. 1723, 1999, pp. 67-82.
[21]
B. Potter, J. Sinclair and D. Till. An Introduction to Formal Specification and Z. Prentice Hall, 1991.
[22]
M. Richters and M. Gogolla. On Formalizing the UML Object Constraint Language OCL. In Tok Wang Ling, Sudha Ram, and Mong Li Lee, editors, Proc. 17th Int. Conf. Conceptual Modeling (ER'98), pages 449-464. Springer, Berlin, LNCS Vol. 1507, 1998.
[23]
S. Sendall and A. Strohmeier. UML-based Fusion Analysis. UML '99 - The Unified Modeling Language: Beyond the Standard, Second International Conference, Fort Collins, CO, USA, October 28-30, 1999, Robert France and Bernard Rumpe (Ed.), LNCS (Lecture Notes in Computer Science), no. 1723, 1999, pp. 278-291, extended version also available as Technical Report (EPFL-DI No 99/319).
[24]
S. Sendall and A. Strohmeier. From Use Cases to System Operation Specifications. UML 2000 -- The Unified Modeling Language: Advancing the Standard, Third International Conference, S. Kent and A. Evans (Ed.), LNCS (Lecture Notes in Computer Science), no. 1939, pp. 1-15; Also available as Technical Report (EPFL-DI No 00/333).
[25]
S. Sendall and A. Strohmeier. Specifying Concurrent System Behavior and Timing Constraints Using OCL and UML. ¿UML' 2001 - The Unified Modeling Language: Modeling Languages, Concepts and Tools, Fourth International Conference, Toronto, Canada, October 1-5, Martin Gogolla (Ed.), Lecture Notes in Computer Science, Springer-Verlag, to be published in 2001. Also available as Technical Report EPFL-DI No 01/367.
[26]
J.M. Spivey. The Z Notation: A Reference Manual. Prentice Hall, 1989.
[27]
A. Strohmeier and S. Sendall. Operation Schemas and OCL. Technical Report (EPFL-DI No 01/358), Swiss Federal Institute of Technology in Lausanne, Software Engineering Lab., 2001.
[28]
K. Walden and J.-M. Nerson. Seamless Object-Oriented Software Architecture: Analysis and Design of Reliable Systems. Prentice-Hall, 1995.
[29]
J. Warmer and A. Kleppe. The Object Constraint Language: Precise Modeling With UML. Addison-Wesley 1998.
[30]
J. Wing. A Two-tiered Approach to Specifying Programs. Technical Report TR-299, Massachusetts Institute of Technology, Laboratory for Computer Science, 1983.
[31]
Klasse Objecten. OCL Center: OCL Tools. http://www.klasse.nl/ocl/index.htm
[32]
OMG Unified Modeling Language Revision Task Force. OMG Unified Modeling Language Specification. Version 1.3, June 1999. http://www.celigent.com/omg/umlrtf/
[33]
Software Engineering Lab., Swiss Federal Institute of Technology in Lausanne. The Fondue Method. http://lglwww.epfl.ch/research/fondue/
[34]
Software Engineering Lab., Swiss Federal Institute of Technology in Lausanne. Operation Schemas. http://lglwww.epfl.ch/research/operation-schemas/
[35]
S. Sendall. Specification Case Studies. http://lglwww.epfl.ch/~sendall/case-studies/

Cited By

View all
  • (2017)Towards a Verification Flow Across Abstraction Levels Verifying Implementations Against Their Formal SpecificationIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2016.261149436:3(475-488)Online publication date: 1-Mar-2017
  • (2011)A method for data-flow analysis of business componentsProceedings of the 14th international ACM Sigsoft symposium on Component based software engineering10.1145/2000229.2000237(51-60)Online publication date: 20-Jun-2011
  • (2007)From declarative to imperative UML/OCL operation specificationsProceedings of the 26th international conference on Conceptual modeling10.5555/1784489.1784509(198-213)Online publication date: 5-Nov-2007
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
Object Modeling with the OCL, The Rationale behind the Object Constraint Language
January 2002
279 pages
ISBN:3540431691

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 01 January 2002

Author Tags

  1. object constraint language
  2. preand postcondition assertions
  3. requirements analysis
  4. software specification
  5. unified modeling language

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2017)Towards a Verification Flow Across Abstraction Levels Verifying Implementations Against Their Formal SpecificationIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2016.261149436:3(475-488)Online publication date: 1-Mar-2017
  • (2011)A method for data-flow analysis of business componentsProceedings of the 14th international ACM Sigsoft symposium on Component based software engineering10.1145/2000229.2000237(51-60)Online publication date: 20-Jun-2011
  • (2007)From declarative to imperative UML/OCL operation specificationsProceedings of the 26th international conference on Conceptual modeling10.5555/1784489.1784509(198-213)Online publication date: 5-Nov-2007
  • (2007)Analysis goal expression languageProceedings of the 45th annual ACM Southeast Conference10.1145/1233341.1233352(53-58)Online publication date: 23-Mar-2007

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media