ACM Home Page
Please provide us with feedback. Feedback
OBSERV—a prototyping language and environment
Full text PdfPdf (2.64 MB)
Source ACM Transactions on Software Engineering and Methodology (TOSEM) archive
Volume 1 ,  Issue 3  (July 1992) table of contents
Pages: 269 - 309  
Year of Publication: 1992
ISSN:1049-331X
Authors
Shmuel Tyszberowicz  Tel Aviv Univ., Tel Aviv, Israel
Amiram Yehudai  Tel Aviv Univ., Tel Aviv, Israel
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 37,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/131736.131751
What is a DOI?

ABSTRACT

The OBSERV methodology for software development is based on rapid construction of an executable specification, or prototype, of a systems, which may be examined and modified repeatedly to achieve the desired functionality. The objectives of OBSERV also include facilitating a smooth transition to a target system, and providing means for reusing specification, design, and code of systems and subsystems. We are particularly interested in handling embedded systems, which are likely to have concurrency and have some real-time requirements. The OBSERV prototyping language combines several paradigms to express the behavior of a system. The object-oriented approach provides the basic mechanism for building a system from a collection of objects, with well-defined interfaces between them. We use finite-state machines to model the behavior of individual objects. At a lower level, activities that occur within objects, either upon entry to a state or in transition between thus allowing a nonprocedural description. The environment provided to a prototype builder is as important as the language. We have made an attempt to provide flexible tools for executing or simulating the prototype being built, as well as for browsing and static checking. The first implementation of the tools was window based but not graphic. A graphic front end, name CRUISE, was developed afterwards. A simulation sequence focuses on a single object, which can be as complex as necessary, possibly the entire system, and expects all the interactions between it and the outside world to be achieved by communication between the simulator and the user. The simulator allows the user to easily switch back and forth from one object to another, simulating each object in isolation. To enable testing the behavior of a prototype in a realistic environment, it is possible to construct objects that imitate the environment objects. We also allow simulation of systems with missing pieces, by calling upon the user to simulate any such missing piece by himself.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
~BXCKER, A., BUDDE, R., KULENKAMP, K., MECKENSTOCK, A., SYLLA, K.-H., AND Zi)LLIGHOVEN, H. ~ProLab, A Prolog Programming Envzronment User's Manual. Sankt Augustin, GMD ~Bonn, Nov. 1988.
 
2
~BARBACCI, M R., DOUBLEDAY, D. L., AND WEINSTOCK, C.B. Application-level programming. ~In Proceedings of lOth Internat,onal Conference on Dzstributed Computzng Systems. (Paris, ~May 28-June 1, 1990), IEEE Computer Society, 458-465.
 
3
~BARBACCh M. R., AND WIN% J.M. A language for distributed applications. In Proceedings of ~IEEE Computer Soczety International Conference on Computer Languages (New Orleans, La., ~Mar. 1990), 59-68.
 
4
~BALZER, R., BELZ, F., DEWAR, R., FISHER, D., GUTTAG, J., HUDAK, P., AND WAND, M. Draft ~Report on Requirements for a Common Prototypmg System, Nov. 1988.
 
5
 
6
 
7
~BIGGERSTAFF, T. J., AND RICHTER, C. Reusability framework, assessment, and directions. ~IEEE Software 4, 2 (Mar. 1987), 41-49.
 
8
 
9
 
10
 
11
 
12
~BUDDE, R., TYSZBEROW~CZ, S., AND YEHUDAI, A. Using Prolog for the design and implementa- ~tion of OBSERV a prototyping methodology and environment, Tech. Rep. 202/91, Eske- ~nasy Inst. of Computer Science, Tel-Awv Univ. Israel, Mar. 1991.
 
13
~COHEN, A., TYSZBEROWICZ, S., AND YE~UDAI, A. CRUISE--CReative User Interface for ~Software Engineering: An overview. In Proceedings of CompEuro 90, IEEE International ~Conference on Computer Systems and Software Enginering (Tel-Aviv, May 1990), 298 306.
 
14
~DASARATHY, B. Timing constraints of real-time systems: Constructs for expressing them, ~methods of validating them. IEEE Trans. Softw. Eng. SE-11, i (Jan. 1985), 80-86.
 
15
 
16
 
17
~FLOM, E. Untitled. MasteFs thesis, in preparation, Computer Science Dept., Tel-Aviv Univ., ~1992.
 
18
~FREEMAN, P. A perspective on reusability. In Tutorial: Software Reusabihty, P. Freeman, ~Ed. IEEE Computer Society Press, New York, 1987, 2-8.
 
19
 
20
 
21
 
22
~HENINGER, K.L. Specifying software requirements for complex systems: New techniques ~and their application. In Proceedings of the Specifications of Rehable Software Conference ~(Cambridge, Mass., Apr. 1979), i 14.
 
23
~KAISER, G. E., AND G^RLEN, D. Melding software systems forom reusable building blocks. ~IEEE Software 4, 4 (July 1987), 17-24.
 
24
 
25
~KOWALSKI, R.A. Logic as a computer language. In Logic Programming. K. L. Clark, S.-A ~Tarnlund, Eds., Academic Press, London, 1982, 3 16.
 
26
~K~AMER, J., MAC~EE, J., SLOMAN, M., DULA~, N., CHEUNa, S., CRANE, S., AND TWlDLE, K. An ~introduction to distributed programming in REX. ESPRIT Conference, 1991, Project 2080
 
27
~LUQI, Normalized specification for identifying reusable software. Tech. Rep. NPS52-87-007, ~Naval Postgraduate School, Monterey, Calif., Mar. 1987.
 
28
 
29
 
30
 
31
~LISKOV, B., AND ZILLES, S. All introduction to formal specificatmns of data abstractions. In ~Current Trends Ln Programming Methodology, Vol. 1, R. T. Yeh, Ed., Prentice-Hall, Engle- ~wood Chffs, N.J., 1977, i 32.
 
32
~MEYnR, B. Reusability: The case for object-oriented design. IEEE Software 4, 2 (Mar. 1987), ~50 64.
 
33
~MINSKY, N H. Law-governed systems Tech. Rep. LCSR-TR-101, Dept. of Computer Sci- ~nce, Rutgers Univ., Feb. 1988.
 
34
~NARAYANA, K. T., AND AABY, A.A. Specification of real-time systems in real-time temporal ~interval logic. In Proceedzngs of Real-Time Systems Sympoaum (Huntsville, Ala., Dec. 1988), ~86 95.
 
35
 
36
~PURTILO, J. M., AND JALOTE, P. An environment for prototyping distributed applications. In ~Procee&ngs of 9th Internattonal Conference on Distributed Computing Systems (Newport ~Beach, Calif., June 1989), IEEE Computer Society, New York, 1989, 588-594.
 
37
~SAPIR, A. ASSERT--Methodology language and tools for system specification development. ~Master's thesis, Computer Science Dept., Tel-Aviv Univ., Israel, Jan. 1992.
 
38
 
39
~TYSZBEROWICZ, S., AND YERUDAI, A. OBSERV--The representation language. Tech Rep. ~169/90, Eskenasy Inst. of Computer Science, Tel-Aviv Univ., Israel, Mar. 1990.
 
40
~TYSZBEROWICZ, S., AND YEHUDAI, A. Reusabihty in OBSERV: Modeling of communication ~protocols. Tech. Rep. 195/91, Eskenasy Inst. of Computer Science, Tel-Aviv Univ., Israel, ~Jan. 1991.
 
41
~WANG, Y. A distributed specification model and its prototyping. In Proceedings of ~COMPSAC '86 (Chicago, Ill., Oct. 1986), 130-137.
 
42
~WARD, P. T., AND MELLOR, S.J. Appendix A Cruise control. In Structured Development for ~Real-T~me Systems, Vol. 2: Essential Modeling Techmques, Yourdon Press, Englewood Cliffs, ~N.J., 1985, 87-103.
 
43
~WEBSTER, D.E. Mapping the design representation terrain: A survey. Tech. Rep. STP-093- ~87, MCC, Austin, Tex., July 1987.
 
44
45
 
46
~ZAVE, P. An operational approach to requirements specification for embedded systems. ~IEEE Trans. Softw. Eng. SE-8, 3 (May 1982), 250 269.
47
 
48
 
49
~gAVE, P., JACKSON, D. Practical specification techniques for control-oriented systems, In ~IFIP 89, 1989.
 
50
 
51



REVIEW

"Donald J. Bagert, Jr. : Reviewer"

The authors created the OBSERV methodology for software development (especially of embedded systems) through the use of rapid prototyping. The prototyping is based on executable specifications, using a language developed specifically for the O  more...

Collaborative Colleagues:
Shmuel Tyszberowicz: colleagues
Amiram Yehudai: colleagues