Concurrency in programming and database systems
Concurrency in programming and database systems
Using role components in implement collaboration-based designs
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The universe model: an approach for improving the modularity and reliability of concurrent programs
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Communicating sequential processes
Communications of the ACM
Object-Oriented Software Construction
Object-Oriented Software Construction
Operating system principles
Patterns of Enterprise Application Architecture
Patterns of Enterprise Application Architecture
Object Design: Roles, Responsibilities, and Collaborations
Object Design: Roles, Responsibilities, and Collaborations
The Deadlock problem: a classifying bibliography
ACM SIGOPS Operating Systems Review
Verifiable Concurrent Programming Using Concurrency Controllers
Proceedings of the 19th IEEE international conference on Automated software engineering
Evaluating SIP server performance
Proceedings of the 2007 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
ECharts for SIP servlets: a state-machine programming environment for VoIP applications
Proceedings of the 1st international conference on Principles, systems and applications of IP telecommunications
On Mechanisms for Deadlock Avoidance in SIP Servlet Containers
Principles, Systems and Applications of IP Telecommunications. Services and Security for Next Generation Networks
Compositional Control of IP Media
IEEE Transactions on Software Engineering
A thread synchronization model for SIP servlet containers
Proceedings of the 3rd International Conference on Principles, Systems and Applications of IP Telecommunications
Avoiding deadlock in multitasking systems
IBM Systems Journal
Measurement of the SIP parsing performance in the SIP express router
EUNICE'07 Proceedings of the 13th open European summer school and IFIP TC6.6 conference on Dependable and adaptable networks and services
Characterizing session initiation protocol (SIP) network performance and reliability
ISAS'05 Proceedings of the Second international conference on Service Availability
Hi-index | 0.00 |
Communication middleware, like J2EE and OCCAS, facilitates development and deployment of IP telecommunication services by automating various cross-cutting concerns, such as those related to messaging and security. This middleware is highly concurrent, with threads executing methods that an application programmer writes to carry out the service logic. While the middleware manages life-cycle concerns of threads, the problem of synchronizing them is left to the application programmer. Unfortunately, this synchronization code can be complex and prone to error. Moreover, it can easily obscure the service logic. Our prior work proposed solving these problems using a middleware framework to automatically synchronize concurrent service executions based on declarative synchronization contracts. This paper describes an implementation of our synchronization framework and a case study using it. The case study demonstrates the extent to which contract-based synchronization facilitates refinement of a finite-state design to code and improves design transparency. It also examines the impact on performance of the subject application. A conclusion of the case study is that contract-based synchronization could provide a foundation for automatic generation of IPT services from finite-state designs.