As software systems become larger and more complex, the software architecture of such systems plays a critical role in software development. Software architecture is generally known as the description of system in terms of computational components and their interactions. In the past, software architecture was informally described as box-and-line diagram. By the needs of analysis and precise description, many Architecture Description Languages(ADLs) have been proposed to specify and analyze various aspect of software. None the less, the existing ADLs lack in supporting design of consideration on synchronous/asynchronous message passing and data affecting computation among the components. Distinguishing synchronous and asynchronous message passing is one of the important issues at the architectural level of design. Also, it is important to analyze the architecture considering data (for example, boundary value) of components in a software under development. However, the existing ADLs do not address those information sufficiently.
In this thesis, we propose a visual ADL which can be used to specify and analyze software architecture including message passing and data. Also, we present a prototype tool that supports the visual description of software architecture and the translation from it to PROMELA for model checking.