Modeling Event Driven Applications With a Specification Language (MEDASL) Murali Kaundinya Sun Microsystems, Inc 400 Atrium Drive Somerset, NJ 08873 (001) 732 302 3819 Murali.Kaundinya@sun.com Ali Syed Sun Microsystems, Inc 1, Network Drive Menlo Park, CA 94043 (001) 408-404-7263 Syed.Ali@sun.com ABSTRACT Radio Frequency Identification (RFID) technology provides the means to track any object, any time, anywhere with Electronic Product Codes (EPC). A major consequence of this technology is that the existing Information Technology systems, applications and processes have to be retrofitted to be EPC-aware. Many new systems and applications have to be developed while the technology and standards are still emerging. These will be driven by dynamic business processes and therefore have to be agile, and easy to use and modify by a business and sometimes non-IT savvy end user. We describe and use Distributed Application Specification Language (DASL) from Sun Microsystems, Inc., to model an enterprise application and deploy it directly on a target platform thus reducing the development lifecycle substantially. DASL provides for a rapid, intuitive modeling of enterprise applications. It abstracts application services such as persistence, tier’ing and messaging within the modeling language and enables a developer to focus more on the application domain. We discuss how we use DASL to model an application in the RFID domain, test for its correctness and proceed to deploy thus bringing about substantial efficiencies in the application development lifecycle. Categories and Subject Descriptors D.2.2 [Software Engineering]: Design Tools and Techniques – Computer-aided software engineering (CASE), Evolutionary prototyping, Object-oriented design methods, Petri nets, State diagrams, Structured Programming, User interfaces. General Terms: Design, Reliability, Languages, Domain- Specific- Languages (DSL), Keywords: Model Driven Development, Business Object Specification (BOS), Application Usage Specification (AUS), DASL/OQL, Enterprise Application Integration (EAI) 1. INTRODUCTION As we develop software applications for business problems with constantly growing and evolving requirements, these applications invariably result in a representation further and further divorced from the original business domain. Over time it results in such a drift that it is impossible for the business teams and the software engineering teams to relate to issues with a common vocabulary. Enterprises try to address the problem by encouraging and sometimes mandating all their teams to document their activities with modeling artifacts with standards such as Unified Modeling Language (UML). These artifacts complement the actual application development effort. However, the modeling standards like UML are neither expressive to fully capture domain knowledge nor precise to completely describe domain specific applications. As a result these modeling artifacts become application/system snapshots at any given time. 2. PROJECT MEDASL Object Management Group’s (OMG) Model Driven Architecture (MDA) is trying to solve this by making the modeling exercises produce Platform Independent Models (PIM) and transforming them into Platform Specific Models (PSM) that represents target deployment platforms. DASL is a practical realization of MDA’s vision. Project MEDASL is an experimental project to use DASL to model events from an RFID application domain and to automatically generate enterprise applications from these models. The requirements for Project MEDASL were driven by post- implementation experiences from RFID projects and EAI. Enterprises leverage RFID technology in IT-challenged, labor- prone areas of their business to achieve operational efficiency. Ease of use, ease of development, ease of integration and ease of deployment have been a key requirement. RFID is an event-driven technology and some of its architecture is based on the well- known “Pipes and Filters” 3 architectural design pattern. Figure 1: RFID Architecture: Components and Layers The Use Cases in an RFID application span across enterprise networks and sometimes across organizational boundaries. The Use Case realization consists of two phases: the first one is related Copyright is held by the author/owner(s). OOPSLA’04, Oct. 24–28, 2004, Vancouver, British Columbia, Canada. ACM 1-58113-833-4/04/0010. 11