{"title":"Interface-centric architecture descriptions","authors":"Hans Jonkers","doi":"10.1109/WICSA.2001.948418","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948418","url":null,"abstract":"The paper presents an approach to defining component-based software architectures in which interfaces rather than components play the key role. Architectural descriptions are built from 'i-specs' that define interface-level interaction patterns. An i-spec can be seen as a contract defining the rights and obligations of 'roles' that can be played in interface-based interactions. We introduce the 'closed world assumption' for i-specs, leading to a compositional approach to defining software architectures. We show how i-specs can be composed and how component specifications can be constructed from i-specs.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125388776","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
M. Hakala, Juha Hautamäki, K. Koskimies, J. Paakki, Antti Viljamaa, J. Viljamaa
{"title":"Annotating reusable software architectures with specialization patterns","authors":"M. Hakala, Juha Hautamäki, K. Koskimies, J. Paakki, Antti Viljamaa, J. Viljamaa","doi":"10.1109/WICSA.2001.948426","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948426","url":null,"abstract":"An application framework is a collection of classes implementing the shared architecture of a family of applications. It is shown how the specialization interface (\"hot spots\") of a framework can be annotated with specialization patterns to provide task-based guidance for the framework specialization process. The specialization patterns define various structural, semantic, and coding constraints over the applications derived from the framework. We also present a tool that supports both the framework development process and the framework specialization process, based on the notion of specialization patterns. We outline the basic concepts of the tool and discuss techniques to identify and specify specialization patterns as required by the tool. These techniques have been applied in realistic case studies for creating programming environments for application frameworks.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"78 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132760242","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"An architecture for distributing the computation of software clustering algorithms","authors":"B. Mitchell, Martin Traverso, S. Mancoridis","doi":"10.1109/WICSA.2001.948427","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948427","url":null,"abstract":"Collections of general purpose networked workstations offer processing capability that often rivals or exceeds supercomputers. Since networked workstations are readily available in most organizations, they provide an economic and scalable alternative to parallel machines. The authors discuss how individual nodes in a computer network can be used as a collection of connected processing elements to improve the performance of a software engineering tool that we developed. Our tool, called Bunch, automatically clusters the structure of software systems into a hierarchy of subsystems. Clustering helps developers understand complex systems by providing them with high-level abstract (clustered) views of the software structure. The algorithms used by Bunch are computationally intensive and, hence, we would like to improve our tool's performance in order to cluster very large systems. The paper describes how we designed and implemented a distributed version of Bunch, which is useful for clustering large systems.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116957437","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The role of SW architecture in solving fundamental problems in object-oriented development of large embedded SW systems","authors":"P. Laine","doi":"10.1109/WICSA.2001.948400","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948400","url":null,"abstract":"The article approaches SW (software) architecture through the needs and problems of object oriented SW development. It is widely perceived that the OO approach, despite its generally acknowledged strengths, has so far failed to fully deliver its promises. Based on experiences from the development of several large embedded SW systems, an analysis of common practical and conceptual problems in OO SW development is performed and a solution is suggested The analysis indicates a need for SW architecture as a separate concept. The discussion of the solution concentrates on the nature of SW architecture in this context, on the methodological implications of combining SW architecture work with OO approach and on the role of the architecture task in the entirety of SW construction.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128563147","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"An object-oriented RBAC model for distributed system","authors":"C. Zhang, Cungang Yang","doi":"10.1109/WICSA.2001.948401","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948401","url":null,"abstract":"In distributed computing environments, users would like to share resources and communicate with each other to perform their jobs more efficiently. For better performance, it is important to keep resources and information integrity from unexpected use by unauthorized users. Therefore, there is a strong demand for access control of distributed shared resources. Role-Based-Access-Control (RBAC) has been introduced and offers a powerful means for specifying access control decisions. The authors propose an object oriented RBAC model for distributed system (ORBAC), it efficiently represents the real world. Moreover, under the decentralized ORBAC management architecture, an implementation of the model has realized multiple-domain access control. Finally, statically and dynamically role authorization is considered and a method to deal with the problem of separation of duties is presented.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130143758","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Statechart simulator for modeling architectural dynamics","authors":"Alexander Egyed, D. Wile","doi":"10.1109/WICSA.2001.948413","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948413","url":null,"abstract":"Software development is a constant endeavor to optimize qualities like performance and robustness while ensuring functional correctness. Architecture Description Languages (ADLs) form a foundation for modeling and analyzing functional and non-functional properties of software systems, but, short of programming, only the simulation of those models can ensure certain desired qualities and functionalities. The paper presents an adaptation to statechart simulation, as pioneered by D. Harel (1987). This extension supports architectural dynamism: the creation, replacement, and destruction of components. We distinguish between design-time dynamism, where system dynamics are statically proscribed (e.g., creation of a predefined component class in response to a trigger), and run-time dynamism, where the system is modified while it is running (e.g., replacement of a faulty component without shutting down the system). Our enhanced simulation language, with over 100 commands, is tool-supported.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"54 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124494583","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"MAP - mining architectures for product line evaluations","authors":"Christoph Stoermer, L. O'Brien","doi":"10.1109/WICSA.2001.948405","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948405","url":null,"abstract":"Product lines evolve out of existing products. In order to evaluate the potential of creating a product line from existing products, it is necessary to 'mine' their architectures and analyze the commonalities and variabilities across those architectures. To manage the evaluation process in a disciplined way the paper introduces the MAP (Mining Architectures for Product Lines) method. MAP outlines a bottom-up approach for mining the architecture of the existing products, a top-down approach to mapping architectural styles and attributes onto the mined architectures and an approach to analyzing their commonalities and variabilities. It combines well-known architecture reconstruction and product line analysis techniques. A case study is presented showing the application of the method and its benefits are outlined.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114384888","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"When system boundaries dissolve: research opportunities in software architectures for ubiquitous computing and communication","authors":"M. Shaw","doi":"10.1109/WICSA.2001.948414","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948414","url":null,"abstract":"Modern computing technology is creating a growing infrastructure for high performance, nearly ubiquitous computing and communication. This infrastructure extends the reach of computation and information beyond the traditional framework of a computer application running on a fixed set of machines. The architectures that suffice for such traditional software systems that depend on resources controlled by someone other than the developer. I will discuss the architectural challenges of this new setting, describe some promising approaches to handling those challenges, and suggest some research strategies for exploring and developing solutions.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129418450","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Why we need a different view of software architecture","authors":"Jason Baragry, K. Reed","doi":"10.1109/WICSA.2001.948419","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948419","url":null,"abstract":"The definition and understanding of software architectures and architecture views still shows considerable disagreement in the software engineering community. The paper argues that the problems we face exist because our understanding is based on specious analogies with traditionally engineered artefacts. A review of the history of ideas shows the evolution of this understanding. A detailed examination is then presented of the differences that exist between the nature of the systems, the content of their large-scale representations, and how they are used in practice in the respective disciplines. These differences seriously undermine the analogies used to develop our understanding and this is discussed in terms of software engineering as a whole.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130893606","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Is architecture a product that can be packaged and sold?","authors":"W. Kozaczynski","doi":"10.1109/WICSA.2001.948398","DOIUrl":"https://doi.org/10.1109/WICSA.2001.948398","url":null,"abstract":"With the maturation of this field, companies are now in a position to describe, package, and reuse application architectures. This is exactly what Rational Software is trying to do for what we call solution stacks. A solution stack is defined by the selection of a problem domain, a deployment infrastructure, a development infrastructure, and various project characteristics. For such a point in the development space, it seems possible to pre-build an entire application framework capturing the key architectural decisions for that application. The talk will describe how we can approach that task and what the outcome may look like.","PeriodicalId":339670,"journal":{"name":"Proceedings Working IEEE/IFIP Conference on Software Architecture","volume":"76 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121109648","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}