Abstract
The design of distributed applications in a CORBA-based environment can be carried out by means of an incremental approach, which starts from the specification and leads to the high-level architectural design. This article discusses a methodology to transform a formal specification written in TRIO into a high-level design document written in an extension of TRIO, named TRIO/CORBA (TC). The TC language is suited to formally describe the high-level architecture of a CORBA-based application. As a result, designers are offered high-level concepts that precisely define the architectural elements of an application. Furthermore, TC offers mechanisms to extend its base semantics, and can be adapted to future developments and enhancements in the CORBA standard. The methodology and the associated language are presented through a case study derived from a real Supervision and Control System.
- Abrial, J. R. 1996. The B-Book: Assigning Programs To Meanings. Cambridge University Press. Google Scholar
- Alborghetti, A., Gargantini, A., and Morzenti, A. 1997. Providing automated support to deductive analysis of time critical systems. In Proceedings of the Sixth European Software Engineering Conference (ESEC 97), Zurich, Switzerland. Google Scholar
- Allen R. and Garlan D. 1997. A formal basis for architectural connection. ACM Trans. Softw. Eng. Method. 6, 3, pp. 213--249. Google Scholar
- Barbacci, M., Weinstock, C., Doubleday, D., Gardner, M., et al., 1993. Durra: A structure description language for developing distributed applications. IEE Softw. Eng. J. 8, 2, pp. 83--94.Google Scholar
- Boehm, B. W. 1988. A spiral model of software development and enhancement. IEEE Computer 21, 5, pp. 61--72. Google Scholar
- Booch, G. 1994. Object Oriented Analysis and Design with Applications. Benjamin Cummings. Google Scholar
- Booch, G. 1996. Object Solutions: Managing the Object-Oriented Project. Addison Wesley. Google Scholar
- Booch, G., Jacobson, I., and Rumbaugh, J. 1996. The unified modeling language for object oriented development. Documentation set, RationalRose. Google Scholar
- Borland. 2003. Borland® VisiBroker®-RT Product Overview. www.highlander.com/products/index.htmlGoogle Scholar
- Capobianchi, R., Carcagno, D., Coen-Porisini, A., Mandrioli, D., and Morzenti, A. 1999. A framework architecture for the development of new generation supervision and control systems, in Domain Specific Application Frameworks, Eds. M. Fayad, D. Schmidt. John Wiley, pp. 231--250.Google Scholar
- Ciapessoni, E., Coen-Porisini, A., Crivelli, E., Mandrioli, D., Mirandola, P., and Morzenti, A. 1999. From formal models to formal based methods: an industrial experience. ACM Trans. Softw. Eng. Method. 8, 1, pp 79--113. Google Scholar
- Coen-Porisini, A. and Mandrioli, D. 2000. Using TRIO for designing a CORBA-based application. Concurrency: Prac. Exp. 12, 8, pp 981--1015. Google Scholar
- Coen-Porisini, A., Pradella, M., Rossi, M., and Mandrioli, D. 2000. A formal approach for designing CORBA-based applications. In Proceedings of the International Conference on Software Engineering (ICSE2000), Limerick, Ireland. Google Scholar
- Cugola, G., Di Nitto, E., and Fuggetta A. 2001. The JEDI event-based infrastructure and its application to the development of the OPSS WFMS, IEEE Trans. Softw. Eng. 27, 9, pp 827--850. Google Scholar
- Di Nitto, E. and Rosenblum, D. 1999. Exploiting ADLs to specify architectural styles induced by middleware infrastructures. In Proceedings of the 21st International Conference on Software Engineering, Los Angeles, California. Google Scholar
- Douglass, B. P. 2000. Real-time UML: Developing Efficient Objects for Embedded Systems. Addison Wesley. Google Scholar
- Easterbrook, S., Lutz, R., Covington, R., Kelly, J., Ampo, Y., and Hamilton, D. 1998. Experiences using lightweight formal methods for requirements modeling. IEEE Trans. Softw. Eng. 24, 1, pp. 4--14. Google Scholar
- Eddon, G. and Eddon H. 1998. Inside Distributed COM. Microsoft Press. Google Scholar
- Fayad, M., Schmidt, D., and Johnson, R. 1999. Building Application Frameworks: Object-Oriented Foundations of Framework Design. John Wiley. Google Scholar
- Gargantini, A. and Morzenti, A. 2001. Automated deductive requirements analysis of critical systems. ACM Trans. Softw. Eng. Method. 3, 3, pp 225--307. Google Scholar
- Ghezzi, C., Mandrioli, D., and Morzenti, A. 1990. TRIO, a logic language for executable specifications of real-time systems. J. Syst. Softw. 12, 2, pp. 107--123. Google Scholar
- Guttag, J. V. and Horning, J. J. 1993. Larch: Languages and Tools for Formal Specification. Springer-Verlag. Google Scholar
- Hinchey M. and Bowen J. 1995. Application of Formal Methods. Prentice Hall International, Hertfordshire. Google Scholar
- Hoare, C. A. R. 1985. Communicating Sequential Processes. Prentice Hall. Google Scholar
- IEC---IS---1158-2. Field-Bus standard for use in industrial control system. Physical layer specification and service definition.Google Scholar
- Jackson, M. 1995. Software Requirements and Specification. Addison Wesley, Reading, MA. Google Scholar
- Jacobson, I., Booch, G., and Rumbaugh, J. 1999. The Unified Software Development Process. Addison Wesley. Google Scholar
- Kaveh N. and Emmerich W. 2001. Deadlock detection in distributed object systems. In Proceedings of the Eighth European Software Engineering Conference (ESEC2001), Wien, Austria. Google Scholar
- Kramer, J. and Magee, J. 1997. Exposing the skeleton in the coordination closet. In Proceedings of the Second International Conference on Coordination Languages and Models. Lecture Notes in Computer Science, No. 1282, pp. 18--31. Google Scholar
- Lano, K. 1996. Enhancing Object oriented methods with formal notations. Theo. Prac. Obj. Syst. 2, 4, pp. 247--268. Google Scholar
- Lavazza, L., Quaroni, G., and Venturelli, M. 2001. Combining UML and formal notations for modelling real-time systems. In Proceedings of the Eighth European Software Engineering Conference (ESEC2001), Wien, Austria. Google Scholar
- Luckham, D., Kenney, J., Augustin, L., Vera, J., Bryan, D., and Mann, W. 1995. Specification and analysis of system architecture using rapide. IEEE Trans. Softw. Eng. 21, 4, pp. 336--355. Google Scholar
- Luckham, D. 1998. Rapide: A language and toolset for causal event modeling of distributed system architectures. In Proceedings of the Second International Conference on Worldwide Computing and Its Applications (WWCA 98). Lecture Notes in Computer Science, No. 1368, pp. 88--96. Google Scholar
- Magee, J., Dulay., N, Eisenbach, S., and Kramer, J. 1995. Specifying distributed software architecture. In Proceedings of the ESEC '95. Lecture Notes in Computer Science, No. 989, pp. 137--153. Google Scholar
- Maher, A., Kuusela, J., and Ziegler, J. 1996. Object-Oriented Technology for Real-time Systems, A Practical Approach using OMT and Fusion. Prentice Hall. Google Scholar
- Mandrioli, D., Morasca, S., and Morzenti, A. 1995. Generating test cases for real-time systems from logic specifications. ACM Trans. Comp. Syst. 13, 4, pp. 365--398. Google Scholar
- Marotta, A., Morzenti, A., and Mandrioli, D. 2001. Modeling and Analyzing Real-time CORBA and Supervision & Control Framework and Applications. In Proceedings of the 21st International Conference on Distributed Computer Systems (ICDCS 2001). Google Scholar
- Mills, H., Dyer, M., and Linger, R. 1987. Cleanroom software engineering. IEEE Softw. 4, 5, pages 19--25.Google Scholar
- Morzenti, A., Pradella, M., Rossi, M., Russo, S., and Sergio, A. 1999. A case study in object-oriented modeling and design of distributed multimedia applications. In Proceedings of the Second Symposium on Software Engineering for Parallel and Distributed Systems (PDSE'99), Los Angeles (USA), IEEE Computer Society Press, pp 217--223. Google Scholar
- Morzenti, A. and San Pietro, P. 1994. Object-Oriented logic specifications of time critical systems, ACM Trans. Softw. Eng. Method. 3, 1 (Jan.). pp. 56--98. Google Scholar
- Neema, S., Bapty T., Gray J., and Gokhale A. 2002. Generators for synthesis of QoS adaptation in distributed real-time embedded systems. First ACM SIGPLAN/SIGSOFT Conference on Generative Programming and Component Engineering (GPCE 2002), Pittsburgh (USA), pp. 236--251. Google Scholar
- OpenDREAMS Consortium. Final Report, Deliv. WP0/T0.1-ALCT-REP/R01e.Google Scholar
- OpenDREAMS II Consortium. 2000. Final Report, Deliv. WP0/T0.1-ALCT-REP/R01b-V1.Google Scholar
- OpenDREAMS II Consortium. 1998a. EMS application specification extensions. Deliv. WP7/T7.1-ENEL-REP/R71-V1.Google Scholar
- OpenDREAMS II Consortium. 1998b. Formalization of OD services. Deliv. WP1/T1.3-PdM-REP/R13-V1.Google Scholar
- OpenDREAMS II Consortium 1998c. Activity modules functional specification. Deliv. WP3/T3.3-ISR-REP/R33-V2.Google Scholar
- OpenDREAMS II Consortium. 1998d. Utility modules functional specification. Deliv. WP3/T3.2-ALCT-REP/R32-V1.Google Scholar
- OMG 2000. The common object request broker: architecture and specification, Revision 2.4. OMG Technical report 2000-10-01, 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2001a. The common object request broker: architecture and specification, Revision 2.5. OMG Technical report 2001-09-34, 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2001b. Event service specification. OMG Technical report 2001-03-01. 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2001c. Model driven architecture---A technical perspective. OMG Technical report ormsc/2001-07-01, 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2001d. Software process engineering metamodel, OMG Technical report 2002-11-14. 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2002a. The common object request broker: architecture and specification. Revision 3.0. OMG Technical report 2002-06-01, 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2002b. Real-time CORBA specification. OMG Technical report 2002-08-02, 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2002c. UML profile for CORBA specification. OMG Technical report 2002-04-01, 492 Old Connecticut Path, Framingham, MA.Google Scholar
- OMG 2003. OMG unified modeling language specification. OMG Technical report 2003-03-01, 492 Old Connecticut Path, Framingham, MA.Google Scholar
- Owre, S., Rushby, J. M., and SHankar, N. 1992. PVS: A prototype verification system. In Proceedings of the 11th International Conference on Automated Deduction. Lecture Notes in Computer Science, No. 607, pp. 748--752. Google Scholar
- Oram, A.2001. Peer-to-Peer, Harnessing the Power of Disruptive Technologies. O'Reilly. Google Scholar
- Parnas, D. L. and Clements, P. C. 1986. A rational design process: how and why to fake it. IEEE Trans. Softw. Eng. 12, 2, pp. 251--257. Google Scholar
- Pitt E. and McNiff K. 2001. JavaTM.rmi: The Remote Method Invocation Guide. Addison-Wesley. Google Scholar
- Pradella, M. 2000. Methods and tools for the design and analysis of distributed supervision and control systems. Ph.D. Thesis, Politecnico di Milano. www.elet.polimi.it/upload/pradella.Google Scholar
- Pradovera, P. 2001. A feasibility study of real-time systems based on the common object request architecture. M.S Thesis, University of Illinois at Chicago.Google Scholar
- Robbins, J. E., Medvidovic, N., Redmiles, D. F., and Rosenblum, D. S. 1998. Integrating architecture description languages with a standard design method. In Proceedings of the 20th Inter. Conf. on Softw. Engi. Kyoto, Japan. Google Scholar
- Rossi, M. 2002. Modeling and analysis of CORBA-based real-time distributed systems. Ph.D. Thesis, Politecnico di Milano. www.elet.polimi.it/upload/rossi/.Google Scholar
- Rumbaugh, J., Blaha, M. W., Premerlani, F., Eddy, F., and Lorensen, W. 1991. Object-Oriented Modeling and Design. Prentice Hall. Google Scholar
- Saiedian, H., Bowen, J. P., Butler, R. W., Dill, D. L., Glass, R. L., Gries, D., Hall, A., Hinchey, M. G., Holloway, C. M., Jackson, D., Jones, C. B., Lutz, M. J., Parnas, D. L., Rushby, J., Wing, J., and Zave, P. 1996. An invitation to formal methods. IEEE Computer, 29, 4, pp. 16--30. Google Scholar
- San Pietro, P., Morzenti, A., and Morasca, S. 2000. Test case generation for modular time critical systems. IEEE Trans. Softw. Eng. 26, 2. Google Scholar
- Schmidt, D. 2003. Real-time CORBA with TAO. www.cs.wustl.edu/∼schmidt/tao.html.Google Scholar
- Schmidt, D. C., Levine, D., and Mungee, S. 1998. The design of the TAO real-time object request broker. Comp. Comm. Elsevier Science, 21, 4, pp. 294--324. Google Scholar
- Selic, B., Gullekon, G., and Ward, P. T. 1994. Real-Time Object-Oriented Modeling. John Wiley. Google Scholar
- Siegel, J. 2000. CORBA 3 Fundamentals of Programming. John Wiley. Google Scholar
- Soley, R. and Stone, C. (ed). 1995. Object Management Architecture Guide. John Wiley. Google Scholar
Index Terms
- A formal approach for designing CORBA-based applications
Recommendations
A formal approach for designing CORBA based applications
ICSE '00: Proceedings of the 22nd international conference on Software engineeringThe design of distributed applications in a CORBA based environment can be carried out by means of an incremental approach, which starts from the specification and leads to the high level architectural design. This is done by introducing in the ...
Towards Real-Time Fault-Tolerant CORBA Middleware
An increasing number of applications are being developed using Distributed Object Computing (DOC) middleware, such as CORBA. Many of these applications require the underlying middleware, operating systems, and networks to provide dependable end-to-end ...
An improved IDL compiler for optimizing CORBA applications
SIGAda '06: Proceedings of the 2006 annual ACM SIGAda international conference on AdaBuilding CORBA distributed applications for embedded and real-time systems has brought a number of requirements to be satisfied (small footprint, determinism...). A large part of the distributed application code is generated automatically from its IDL (...
Comments