Rik Farenhorst
VU University Amsterdam
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Rik Farenhorst.
sharing and reusing architectural knowledge | 2007
Muhammad Ali Babar; R.C. de Boer; T. Dingsoyr; Rik Farenhorst
The software architecture community has recently gained an increasing interest in managing architectural knowledge. However, up until now there have been no attempts to obtain an overview of the work in the field. In this paper we present a preliminary review on current approaches to architectural knowledge management. To this end, we compare approaches known from literature and encountered in industry with knowledge management theory. We found that in reports from research and practice there appears to be a preference to use the codification strategy. However, our observations of the software architecture industry show that organizations in general tend to use a personalization strategy unintentionally. This paper serves as a call for awareness of this gap between intention and reality, and questions the biased focus on intentional codification alone. We suggest to close this gap through focusing on hybrid approaches.
european conference on software architecture | 2007
Rik Farenhorst; Patricia Lago; Hans van Vliet
Knowledge management plays an important role in the software architecting process. Recently, this role has become more apparent by a paradigm shift that views a software architecture as the set of architectural design decisions it embodies. This shift has sparked the discussion in both research and practice on how to best facilitate sharing of so-called architectural knowledge, and how tools can best be employed. In order to design successful tool support for architectural knowledge sharing it is important to take into account what software architecting really entails. To this end, in this paper we define the main characteristics of architecting, based on observations in a large software development organization, and state-of-the-art literature in software architecture. Based on the defined characteristics, we determine how best practices known from knowledge management could be used to improve architectural knowledge sharing. This results in the definition of a set of desired properties of architectural knowledge sharing tools. To improve the status quo of architectural knowledge sharing tools, we present the design of an architectural knowledge sharing platform.
Archive | 2009
Rik Farenhorst; Remco C. de Boer
Architectural knowledge has played a role in discussions on design, reuse, and evolution for over a decade. Over the past few years, the term has significantly increased in popularity and attempts are being made to properly define what constitutes ‘architectural knowledge’. In this chapter, we discuss the state-of-the-art in architectural knowledge management. We describe four main views on architectural knowledge based on the results of a systematic literature review. Based on software architecture and knowledge management theory we define four main categories of architectural knowledge, and discuss four distinct philosophies on managing architectural knowledge, which have their origin in the aforementioned views. Whereas traditionally tools, methods, and methodologies for architecture knowledge management were confined to a single philosophy, a trend can be observed that state-of-the-art approaches take a more holistic stance and integrate different philosophies in a single architecture knowledge management approach.
International Journal of Cooperative Information Systems | 2007
Rik Farenhorst; Patricia Lago; Hans van Vliet
Knowledge management plays an important role in the software architecting process. Recently, this role has become more apparent by a paradigm shift that views a software architecture as the set of architectural design decisions it embodies. This shift has sparked the discussion in both research and practice on how to best facilitate sharing of so-called architectural knowledge, and how tools can best be employed. In order to design successful tool support for architectural knowledge sharing it is important to take into account what software architecting really entails. In this paper, we define the main characteristics of architecting, based on observations in a large software development organization, and state-of-the-art literature in software architecture. Based on the defined characteristics, we determine how best practices known from knowledge management could be used to improve architectural knowledge sharing. This results in the definition of a set of desired properties of architectural knowledge sharing tools. Finally, we highlight the design and implementation of EAGLE, an architectural knowledge sharing portal that implements those properties.
working ieee/ifip conference on software architecture | 2009
Rik Farenhorst; Johan F. Hoorn; Patricia Lago; Hans van Vliet
Although the benefits are well-known and undisputed, sharing architectural knowledge is not something architects automatically do. In an attempt to better understand what architects really do and what kind of support they need for sharing knowledge, we have conducted large-scale survey research. The results of our study indicate that architects can be characterized as rather lonesome decision makers who mainly consume, but neglect documenting and actively sharing architectural knowledge. Acknowledging this nature of architects suggests ways to develop more effective support for architectural knowledge sharing.
australian software engineering conference | 2007
Rik Farenhorst; Patricia Lago; H. van Vliet
Sharing knowledge pertaining to software architectures becomes increasingly important. If this knowledge is not explicitly stored or communicated, valuable knowledge dissipates. However, stakeholders will only share knowledge with each other if they are motivated to do so, or in other words if the necessary incentives are created. In this paper we identify three incentives for architectural knowledge sharing: the establishment of social ties, more efficient decision making, and knowledge internalization. Next, we discuss our experiences on how architectural knowledge is shared in a large software development organization. Based on these experiences we propose a set of prerequisites that need to be met to foster successful architectural knowledge sharing. The importance of these prerequisites is motivated by demonstrating that they create the identified incentives.
sharing and reusing architectural knowledge | 2009
Rik Farenhorst; Hans van Vliet
In this paper we report on four years of case study research in a large software development organization, during which we built up understanding on how to effectively support software architects in sharing knowledge. By following a typical action research cycle we first diagnosed the architecting process of this organization, after which we designed and executed a therapy for the identified problems. The insights gained over the past few years have resulted in four lessons learned and have culminated in a theoretical framework of what architects do and what they need.
Collaborative Software Engineering: Challenges and Prospects | 2010
Patricia Lago; Rik Farenhorst; Paris Avgeriou; Remco C. de Boer; Viktor Clerc; Anton Jansen; Hans van Vliet
Modern software architecting increasingly often takes place in geographically distributed contexts involving teams of professionals and customers with different backgrounds and roles. So far, attention and effort have been mainly dedicated to individuals sharing already formalized knowledge and less to social, informal collaboration. Furthermore, in Web 2.0 contexts, little to no attention has been given to practitioners carrying out complex, collaborative, and knowledge-intensive tasks in organizational contexts.
Software Architecture Knowledge Management - Theory and Practice | 2009
Hans van Vliet; Paris Avgeriou; Remco C. de Boer; Viktor Clerc; Rik Farenhorst; Anton Jansen; Patricia Lago
GRIFFIN is a joint research project of the VU University Amsterdam and the University of Groningen. The GRIFFIN project develops notations, tools and associated methods to extract, represent and use architectural knowledge that currently is not documented or represented in the system. The research is carried out in a consortium with various industries, both large and small, that provide case studies and give regular feedback. Paraphrasing [327], the goal of the GRIFFIN project can be summarized as “What architects know, and how they know it”. In this chapter, we give an overview of the results of the GRIFFIN project, and lessons learned with respect to software architecture knowledge management.
international conference on quality software | 2009
Mark van den Berg; Antony Tang; Rik Farenhorst
Software architecture design constraints exist and they bound the solution space in some ways. However,in research and practice little is known about the characteristics of these constraints and how they influence decision making. In this paper we report our findings on design constraint characteristics based on case studies in two countries. We discovered how constraints typically manifest themselves in the architecture design process, and how they impact the architectural decisions taken. Based on these insights we suggest a number of implications and strategies to support architectural design.