Network programming is notoriously hard to understand: one has to deal with a variety of protocols (IP, ICMP, UDP, TCP etc), concurrency, packet loss, host failure, timeouts, the c...
Building a system at the architectural level can be thought of as decomposition into components followed by a series of exercises in matching. Components must be composed with eac...
Rick Kazman, Paul C. Clements, Leonard J. Bass, Gr...
Parallel programs are known to be difficult to analyze. A key reason is that they typically have an enormous number of execution interleavings, or schedules. Static analysis over...
Jingyue Wu, Yang Tang, Gang Hu, Heming Cui, Junfen...
This paper presents a reactive programming and triggering framework for the coordination of a large number of distributed agents with shared knowledge. At the heart of this framewo...
The Unified Modeling Language is extensible, and so can be regarded as a family of languages. Implicitly or explicitly, any particular UML model should be accompanied by a definit...
Steve Cook, Anneke Kleppe, Jos Warmer, Richard Mit...