From: Jonathan Aldrich (jonal@cs.washington.edu)
Date: Tue Oct 15 2002 - 23:19:25 PDT
> John Hatcliff has been working on support for lightweight formal methods
> for component-based systems. His Cadena system includes some language
> features that look very much like architectural descriptions in ArchJava:
>
> http://www.cis.ksu.edu/~hatcliff/Papers/cadena.pdf
Thanks for the pointer, Keunwoo! This looks like really interesting work
to me (although I don't know the field well enough to know if it's novel).
A short summary: Cadena supports the development of real-time systems
based on an architecture built out of CORBA components. Their focus on
real-time systems allows them to do sophisticated analyses of system
architectures, including dependance analysis, temporal property checking,
and domain-specific analyses like real time scheduling.
Compared to ArchJava, this system has different (and complementary) goals.
ArchJava limits itself to one language and VM (for now) but gains the
ability to support very flexible implementation styles while guaranteeing
that the implementation conforms to the declared architectural structure.
While Cadena is cross-language and cross-platform, it supports much more
restricted architectures and implementation styles compared to ArchJava,
it doesn't guarantee conformance between architecture and implementation,
and it focus on only one particular domain. However, accepting these
restrictions gives them leverage to reason about a lot of interesting
design-level properties, as mentioned above.
I'd like to learn more about the problems of component-based development
(as distinct from software architecture) and current research in that
field. It's obviously a very hot topic in industry (with CORBA, COM,
JavaBeans, etc.) and there are a lot of related industrial tools, but I
don't understand very well what concrete benefits these systems provide,
other than a nice, standard middleware library. Is there research that
shows how component-based systems can provide concrete properties that are
otherwise hard to guarantee? What are the software engineering benefits
of a component model, and what are the outstanding software engineering
problems in component-based software development?
This paper seems to represent at least one interesting point in that
space. I heard that Matthew Dwyer (a co-author of this paper) might be
visiting UW next week, so maybe we can talk with him.
Jonathan :-)
_______________________________________________
Cecil mailing list
Cecil@cs.washington.edu
http://majordomo.cs.washington.edu/mailman/listinfo/cecil
This archive was generated by hypermail 2.1.5 : Tue Oct 15 2002 - 23:19:29 PDT