Thursday, September 27, 2012

Paper Reading and Critiques : Specifying Distributed Software Architecture

Specifying Distributed Software Architecture


This paper tries to justify (using pi-calculus) Darwin as a choice for modeling Distributed Software Architecture.
  • Distributed systems require dynamism which Darwin supports as it enables dynamic analysis of architectures by instantiating parameters and components to enact "what if" scenarios. It also provides run-time replication of components which is an essential feature of distributed software architecture.
  • Distributed systems require their constituents to be individual entities. As such, analysis of correctness of individual as well as composite systems which are formed from these systems is required. Paper supports this notion by specifying that components are “context independent”, which is a fair notion in textual format. 
  • But if an architect is using Darwin tools for building distributed systems, than its compilers, constraint checkers, and runtime systems will raise exceptions if when faced with unplanned architectural changes like addition of new component or alteration in connections/services of components. This particular limitation in Darwin’s toolset can be traced back to its limitations in specification-time evolutions, due to its “in-line” connector properties.
  • Issues such as reliability, efficiency and real time analysis is missing from this paper. While design of Distributed Systems requires proper scalability, performance and reliability analysis. It may also require fault tolerance and bandwidth usage modeling. In the absence of these modeling features for distributed systems it is hard to judge Darwin as a prime candidate for modeling Distributed systems.

No comments:

Post a Comment