TOWARDS AUTOMATED TOOL SUPPORT FOR EXTRACTING INFORMATION FROM KNOWLEDGE REPOSITORY

Size: px
Start display at page:

Download "TOWARDS AUTOMATED TOOL SUPPORT FOR EXTRACTING INFORMATION FROM KNOWLEDGE REPOSITORY"

Transcription

1 I J I T E ISSN: (1-2), 2012, pp TOWARDS AUTOMATED TOOL SUPPORT FOR EXTRACTING INFORMATION FROM KNOWLEDGE REPOSITORY 1 C. DHAYA AND 2 G. ZAYARAZ 1 Research Scholar, 2 Associate Professor Pondicherry Engineering College, s: dhaya.c@gmail.com; gzayaraz@pec.edu Abstract: Architectural knowledge Management is vital in improving an organization s architectural capabilities. Different approaches have been developed to support such architectural knowledge management activities. Some approaches maintain a repository based tool support for managing architectural knowledge. The organized architectural knowledge in the architectural knowledge repository is a reusable artifact. Simply having a repository of architectural knowledge is insufficient in delivering the knowledge to the people. In this paper, a framework is proposed for extracting relevant knowledge from repositories using our architectural knowledge management tool ADUAK (Architectural development using architectural knowledge). This extracted knowledge, implicitly or explicitly offer solutions for the specific problem. The retrieval framework receives a user s request and extracts the relevant knowledge from the entire software documents. Searching various documents in the knowledge repository is now made easier. Keywords: Architectural Knowledge (AK), Architecture Knowledge Management (AKM), Design decisions, Functional Requirements (FR), Non-Functional Requirements (NFR) 1. INTRODUCTION The software architecture of a program or computing system is the structure or structures of the system, consisting of interrelated components and connectors [1]. They fail to document design decisions and their rationale. This may lead to (i) costly support for system development (ii) poor communication among stakeholders and (iii) reduced reusability of software [2, 3].The architecting process can be considered as a decision making process through which the appropriate decisions must be made at the right time [4]. Recent research in software architecture treats architectural decisions as first class entities. Hence software system s architecture is no longer observed as interacting components and connectors, but rather as a set of architectural design decisions [5]. The design decisions, rationale, alternatives, and architectural design collectively make a concept called architectural knowledge (AK) [6]. These decisionbased approaches of developing software architecture manage architectural knowledge, emphasizing the explicit organization and documentation of design decisions and the rationale. A comparison on nine different decision based approaches [7] has been made. (i) Archium (ii) Akerman and Tyree s Ontology (ATO) (iii) AREL (iv) ArchDesigner (v) Bayesian Belief Network based Alternatives Selection Method (BBNb ASM); (vi) AQUA (vii) Automated Solution Synthesis Method (ASSM) (viii) PAKME (ix) ADDSS. Each decision-centric approaches record different architectural knowledge and employ different reasoning techniques. However the different notions of and emphasis is reflected in the design and implementation of existing AK tools [8]. ADUAK (Architectural Development using Architectural Knowledge) tool captures AK as reusable objects. The main objective is to provide a good support and theoretical guidance to design and implement repository-based tool support for managing architectural knowledge. The architectural design developed with the architecture knowledge viz., architecture styles and patterns [9-12], design patterns [11],

2 302 C. Dhaya and G. Zayaraz architecture and design tactics [12] improves the architecture-based software development process for their software applications. But the repository technology is challenging for two reasons: (i) people are not able to identify their problems correctly because they are not familiar with the terms used in the repository [13,14]; (ii) people do not get the assistance from repositories [15,16]. There are no helpful suggestions for searching, a person has to either browse the entire document set or have a strong sense of what they are looking. In this paper, a model is proposed for retrieving relevant information from knowledge repositories to develop an appropriate design for the given problem specification. The rest of this paper is organized as follows: Section 2 specifies the features of ADUAK. Section 3 explains about the semi-automatic tool model for the extraction of relevant AK from repositories. Section 4 ends up with the conclusion. 2. MANAGING ARCHITECTURAL KNOWLEDGE ADUAK, an architecture knowledge management tool aims in providing knowledge management support for the software architecting process. Similar to PAKME [17], ADUAK provides knowledge repository, templates and various functions to capture, manage, and present architectural knowledge. As represented in Figure Figure 1: Architectural Design Using ADUAK 1, ADUAK provides a generic solution to address the issues during the software architecting process with its repository. ADUAK s knowledge repository is logically divided into two types of knowledge: Generic and Project specific. Generic architectural knowledge is collected with the general knowledge capturing techniques [18] Project-specific architectural knowledge gets the artifacts either from the generic knowledge or created during different activities of the software development process. Project-specific knowledge helps designers, developers and maintainers to better understand the architectural decisions, their constraints and reasoning behind it. The main objective of this approach is to help making explicit what is known by architects or implicitly embedded in architecture. This may include knowledge about the domain analysis, architectural patterns used, design alternatives evaluated, quality factors considered and assumptions underpinning design decisions. 3. EXTRACTING KNOWLEDGE FROM REPOSITORIES Access to a repository of AK facilitates the designers to use accumulated wisdom from different projects and users when devising or evaluating architecture decisions or designs for projects in the same or similar domains [19]. But there is no single source that contains or provides all relevant architectural knowledge. Instead, architectural knowledge is reflected in various artifacts such as patterns, source code, and documentation. It s a complicated process to distill relevant AK from the repository. In general, the designers have three major questions regarding knowledge repository and the architectural knowledge contained in it. The three questions are: (1) From where I should start reading? (2) Which documents I should consult for more information for the given problem specification? (3) What is the useful route through the documentation for a sufficient level of Architectural Knowledge?

3 Towards Automated Tool Support for Extracting Information from Knowledge Repository 303 There is a need for framework to extract relevant Architectural Knowledge from the knowledge repository, which helps the novice to provide an architectural solution for their specific requirements. The semiautomatic framework consists of the following components Keyword Pre-processor and Document Filter The designer prompts the terms for searching, based on that the relevant knowledge is extracted. This keyword is used to generate a set of semantic list of keys by using the DISCO (extracting DIStributionally related words using Co-occurrences) [20]. The documents having the semantic list of keys are used to filter particular documents from the block of documents Content word Extractor It uses the set of key matched documents to separate the content words from it. The content words represent the document contents, which are represented in the documents Stop words are common words that carry less important meaning than keywords. Removing stop words return the most relevant result. This content word extraction process removes the stop words with the stop word recognizer LSA It uses the list of content word as keys to generate count vector matrix based on the appearance of the content word in the title of the document. It is the method that can be used to capture the meaning of a collection of documents by the construction of a vector-space model. Vectorspace models are based on the assumption that the meaning of a document can be derived from the terms that are used in that document. Two problems that arose using the vector space model: Synonymy - Many ways to refer to the same object, e.g. car and automobile which leads to poor recall. Polysemy - Most words have more than one distinct meaning, e.g. model, python, chip which leads to poor precision. To overcome these problems Latent Semantic Analysis (LSA) method can be used. Latent Semantic Analysis [21], uses a mathematical technique called Singular Value Decomposition Figure 2: Extracting Related Documents from Knowledge Repository

4 304 C. Dhaya and G. Zayaraz (SVD) to discover the semantic structure underlying a set of documents. LSA infers the meaning of words and the contexts in which these words appear by statistical analysis Latent semantic structure is used to guide the designers through the documentation to the architectural knowledge needed Rank Analyzer It uses the cluster based method to do the ranking process on the list of related documents given by latent semantic analysis module. This ranking aids the designer to read the documents in an efficient way Related Paragraph Extractor Then the knowledge is extracted from the ranked based on the paragraph extractor. The paragraph extraction tool such as Apache POI can be used. The knowledge obtained from the documents can give rise to new terms to explore, and the discovered semantic structure can be used to determine the order in which the terms - and corresponding documents should be explored. With the framework explained, extracting knowledge from repositories intend to reduce the time, resources and skill level required to effectively and efficiently capture AK. Our aim is to provide a tool like ADUAK to help the organizations and the architects to reduce the time and effort required for capturing relevant AK from repositories. 4. CONCLUSION Software architecting is essentially a collaborative process in which reusing architectural knowledge is a vital and essential part. The central objective of this framework is to extract relevant knowledge from repository-based architecture knowledge management tool. Document inspection is a method to distill architectural knowledge from the knowledge repositories. But, document inspection is very much difficult to perform. The designers are in need of a process to extract relevant knowledge in an easier manner which helps them in giving an architectural solution. This paper aims to provide collaborative architecting process by integrating knowledge extraction model that correspond to the various activities of the process. There is no use in having tools working separately. A holistic tool is necessary that aims in reducing the searching time, and skill level to effectively and efficiently manage AK is the need of the hour. References [1] L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice, 2nd edition, Addison-Wesley Pearson Education, [2] S. van der Ven, A. Jansen, J. Nijhuis, and J. Bosch, Design Decisions: The Bridge between Rationale and Architecture, Rationale Management in Software Engineering, Springer, pp , [3] A. Jansen, J. S. van der Ven, P. Avgeriou, and D.K. Hammer, Tool Support for Architectural Decisions, Proceedings of the 6th IEEE/IFIP Working Conference on Software Architecture (WICSA), pp , [4] R. Farenhorst, P. Lago, and H. van Vliet, Effective Tool Support for Architectural Knowledge Sharing, Proceedings of 5th European Conference on Software Architecture (ECSA), pp , [5] Jansen A. and Bosch J, Software Architecture as a Set of Architectural Design Decisions, Proceedings of 5 th IEEE/IFIP Working Conference on Software Architecture, pp , November [6] P. Kruchten, P. Lago and H. van Vliet, Building up and Reasoning about Architectural Knowledge, Proceedings of the 2nd International Conference on the Quality of Software Architectures (QoSA), pp , [7] Zayaraz.G, Dhaya C and Vijayalakshmi V, A Survey on Decision based Software Architecture Design Approaches, Journal of Computing, Vol 3, Issue 12, pp , December [8] A Tang, P. Avgeriou, A. Jansen, R. Capilla, and M.A. Babar, A comparative study of architecture knowledge management tools, Journal of System and Software, Vol. 83, No. 3, pp , [9] Shaw, M. and D. Garlan, Software Architecture: Perspectives on an Emerging Discipline, Prentice Hall, Upper Saddle River, NJ, [10] Buschmann, F., et al., Pattern-Oriented Software Architecture: A System of Patterns. John Wiley & Sons, [11] Gamma, E., et al., Design Patterns-Elements of Reusable Object-Oriented Software, Addison-Wesley, Reading, MA, [12] Bachmann, F., et al., Deriving Architectural Tactics: A Step toward Methodical Architectural Design, Tech. Report CMU/SEI-2003-TR-004, SEI, Carnegie Mellon University, USA, [13] Belkin, N. Helping People Find What They Don t Know, Communication of the ACM, Vol. 43 Issue 8, pp , 2000.

5 Towards Automated Tool Support for Extracting Information from Knowledge Repository 305 [14] Belkin, N. J., Oddy, R. N., and Brooks, H. M. Ask for Information Retrieval Parts 1 & 2. Journal of Documentation, Vol. 38 Issue 2&3. pp ; , [15] Devanbu, P., Brachman, R.J., Selfridge, P.G., and Ballard, B. W. LaSSIE, A Knowledge-Based Software Information System, Communications of the ACM, Vol. 34, Issue 5, pp , [16] Fischer, G., Lemke, A., and Schwab, T., Knowledge- Based Help Systems, Proceedings on Human Factors in Computing Systems (CHI 85), pp , [17] Ali Babar, M., Northway, A., Gorton, I., Heuer, P., Nguyen, T., Introducing Tool Support for Managing Architectural Knowledge: An Experience Report. In: Proceedings of the 15th IEEE International Conference on Engineering Computer-Based Systems (ECBS 08), pp [18] M. Ali-Babar, et al. An Exploratory Study of Groupware Support for Distributed Software Architecture Evaluation Process, Proceedings of the 11th Asia Pacific Software Engineering Conference, pp , [19] G. Arango, E. Schoen, and R. Pettengill, A Process for Consolidating and Reusing Design Knowledge, Proceedings of the 15th International Conference on Software Engineering, [20] Kolb, P., DISCO: A Multilingual Database of Distributionally Similar Words. In: Proceedings of KONVENS-08, Berlin, [21] de Boer, R., van Vliet, H.: Architecture Knowledge Discovery with Latent Semantic Analysis: Constructing a Reading Guide for Software Product Audits. Journal of System and Software, Vol. 81, Issue 9, pp , 2008.

Attributes for Characterizing the Evolution of Architectural Design Decisions

Attributes for Characterizing the Evolution of Architectural Design Decisions Third IEEE Workshop on Software Evolvability Attributes for Characterizing the Evolution of Architectural Design Decisions Rafael Capilla, Francisco Nava Department of Computer Science Universidad Rey

More information

A comparative study of architecture knowledge management tools Tang, Antony; Avgeriou, Paraskevas; Jansen, Anton; Capilla, Rafael; Babar, Muhammad Ali

A comparative study of architecture knowledge management tools Tang, Antony; Avgeriou, Paraskevas; Jansen, Anton; Capilla, Rafael; Babar, Muhammad Ali University of Groningen A comparative study of architecture knowledge management tools Tang, Antony; Avgeriou, Paraskevas; Jansen, Anton; Capilla, Rafael; Babar, Muhammad Ali Published in: Journal of systems

More information

Towards Decision Centric Repository of Architectural Knowledge

Towards Decision Centric Repository of Architectural Knowledge Towards Decision Centric Repository of Architectural Knowledge Bartosz Michalik and Jerzy Nawrocki Poznan University of Technology, Institute of Computing Science, ul. Piotrowo 2, 60-965 Poznań, Poland

More information

Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures

Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures Muhammad Ali Babar National ICT Australia Ltd. and University of New South

More information

Integrating decision management with UML modeling concepts and tools

Integrating decision management with UML modeling concepts and tools Downloaded from orbit.dtu.dk on: Dec 17, 2017 Integrating decision management with UML modeling concepts and tools Könemann, Patrick Published in: Joint Working IEEE/IFIP Conference on Software Architecture,

More information

Making the Right Decision: Supporting Architects with Design Decision Data

Making the Right Decision: Supporting Architects with Design Decision Data Making the Right Decision: Supporting Architects with Design Decision Data Jan Salvador van der Ven 1 and Jan Bosch 2 1 Factlink, Groningen, the Netherlands 2 Chalmers University of Technology Gothenborg,

More information

Detecting Architecture Erosion by Design Decision of Architectural Pattern

Detecting Architecture Erosion by Design Decision of Architectural Pattern Detecting Architecture Erosion by Design Decision of Architectural Pattern Lei Zhang, Yanchun Sun*, Hui Song, Franck Chauvel, Hong Mei Institute of Software, School of Electronics Engineering and Computer

More information

A template for SOA design decision making in an educational setting

A template for SOA design decision making in an educational setting A template for SOA design decision making in an educational setting Qing Gu Department of Computer Science VU University Amsterdam The Netherlands Email: qinggu@cs.vu.nl Patricia Lago Department of Computer

More information

Managing Architectural Design Decisions Documentation and Evolution

Managing Architectural Design Decisions Documentation and Evolution Managing Architectural Design Decisions Documentation and Evolution Meiru Che, Dewayne E. Perry Abstract Software architecture is considered as a set of architectural design decisions (ADDs). Capturing

More information

Pattern-Based Architectural Design Process Model

Pattern-Based Architectural Design Process Model Pattern-Based Architectural Design Process Model N. Lévy, F. Losavio Abstract: The identification of quality requirements is crucial to develop modern software systems, especially when their underlying

More information

Using Rationale to Support Pattern-Based Architectural Design

Using Rationale to Support Pattern-Based Architectural Design Using Rationale to Support Pattern-Based Architectural Design Wei Wang Miami University Benton Hall, Oxford Ohio 45056 USA +1-513-529-0347 wangw2@muohio.edu Janet E. Burge Miami University Department of

More information

Achieving Goals through Architectural Design Decisions

Achieving Goals through Architectural Design Decisions Journal of Computer Science 6 (12): 1424-1429, 2010 ISSN 1549-3636 2010 Science Publications Achieving Goals through Architectural Design Decisions Lena Khaled Department of Software Engineering, Faculty

More information

Quality-Driven Architecture Design Method

Quality-Driven Architecture Design Method Quality-Driven Architecture Design Method Matinlassi Mari, Niemelä Eila P.O. Box 1100, 90571 Oulu Tel. +358 8 551 2111 Fax +358 8 551 2320 {Mari.Matinlassi, Eila.Niemela}@vtt.fi Abstract: In this paper

More information

University of Groningen. Documenting after the fact Jansen, Anton; Bosch, Jan; Avgeriou, Paraskevas. Published in: Journal of systems and software

University of Groningen. Documenting after the fact Jansen, Anton; Bosch, Jan; Avgeriou, Paraskevas. Published in: Journal of systems and software University of Groningen Documenting after the fact Jansen, Anton; Bosch, Jan; Avgeriou, Paraskevas Published in: Journal of systems and software DOI: 10.1016/j.jss.2007.08.025 IMPORTANT NOTE: You are advised

More information

MTAT Software Engineering

MTAT Software Engineering MTAT.03.094 Software Engineering Lecture 07: Architecture and Design Part I Dietmar Pfahl Fall 2013 email: dietmar.pfahl@ut.ee Schedule of Lectures Week 01: Introduction to SE Week 02: Requirements Engineering

More information

A model for documenting architectural decisions

A model for documenting architectural decisions A model for documenting architectural decisions María Luciana Roldán, Silvio Gonnet, and Horacio Leone INGAR (UTN-CONICET), Facultad Regional Santa Fe Universidad Tecnológica Nacional Santa Fe, Argentina

More information

Architectural Reflection for Software Evolution

Architectural Reflection for Software Evolution Architectural Reflection for Software Evolution Stephen Rank Department of Computing and Informatics, University of Lincoln. srank@lincoln.ac.uk Abstract. Software evolution is expensive. Lehman identifies

More information

A Lightweight Language for Software Product Lines Architecture Description

A Lightweight Language for Software Product Lines Architecture Description A Lightweight Language for Software Product Lines Architecture Description Eduardo Silva, Ana Luisa Medeiros, Everton Cavalcante, Thais Batista DIMAp Department of Informatics and Applied Mathematics UFRN

More information

Assisting software architects in architectural decision-making using Quark

Assisting software architects in architectural decision-making using Quark Assisting software architects in architectural decision-making using Quark David Ameller and Xavier Franch Universitat Politècnica de Catalunya, Barcelona, Spain, {dameller, franch}@essi.upc.edu Abstract

More information

A Reference Architecture for a Cloud-Based Tools as a Service Workspace

A Reference Architecture for a Cloud-Based Tools as a Service Workspace A Reference Architecture for a Cloud-Based Tools as a Service Workspace Muhammad Aufeef Chauhan ±1, Muhammad Ali Babar ±1,2, Quan Z. Sheng 2 ± CREST-Centre for Research on Engineering Software Technologies

More information

The Method for Verifying Software Architecture with FSP Model

The Method for Verifying Software Architecture with FSP Model The Method for Verifying Software Architecture with FSP Model Kim, Jungho SKC&C Inc., SK u-tower 25-1, Jeongja-dong, Bundang-gu, Seongnam-si, Gyeonggi-do 463-844, Korea kimjh@skcc.com Abstract C&C view

More information

Decision Based Development of Productline: A Quintessence Usability Approach

Decision Based Development of Productline: A Quintessence Usability Approach Journal of Computer Science 7 (5): 619-628, 2011 ISSN 1549-3636 2011 Science Publications Decision Based Development of Productline: A Quintessence Usability Approach 1 R.V. Siva Balan and 2 M. Punithavalli

More information

RELIABILITY EVALUATION OF SOFTWARE ARCHITECTURE STYLES

RELIABILITY EVALUATION OF SOFTWARE ARCHITECTURE STYLES ELIABILITY EVALUATION OF SOFTWAE ACHITECTUE STYLES ABSTACT Gholamreza Shahmohammadi Department of Information Technology, Olum Entazami Amin University, Tehran, Iran Shahmohamadi@yahoo.co.uk In process

More information

Using Architectural Models at Runtime: Research Challenges

Using Architectural Models at Runtime: Research Challenges Proceedings of the European Workshop on Software Architectures, St. Andrews, Scotland, May 2004. Using Architectural Models at Runtime: Research Challenges David Garlan and Bradley Schmerl Department of

More information

A Technique for Design Patterns Detection

A Technique for Design Patterns Detection A Technique for Design Patterns Detection Manjari Gupta Department of computer science Institute of Science Banaras Hindu University Varansi-221005, India manjari_gupta@rediffmail.com Abstract Several

More information

Foundations of Software Engineering

Foundations of Software Engineering Foundations of Software Engineering Lecture 8: Software Architecture II Christian Kästner (with slides by Ivan Ruchkin) 2 Learning Goals Understand key parts of architectural process Use architectural

More information

Ontobrowse: A Semantic Wiki for Sharing Knowledge about Software Architectures

Ontobrowse: A Semantic Wiki for Sharing Knowledge about Software Architectures Ontobrowse: A Semantic Wiki for Sharing Knowledge about Software Architectures Hans-Jörg Happel*) and Stefan Seedorf ) *) FZI Research Center for Information Technologies Research Group Information Process

More information

Foundations of Software Engineering

Foundations of Software Engineering Foundations of Software Engineering Lecture 9: Architecture Documentation, Patterns, and Tactics Christian Kaestner 1 Learning Goals Use notation and views to describe the architecture suitable to the

More information

RARep: a Reference Architecture Repository

RARep: a Reference Architecture Repository RARep: a Reference Architecture Repository Tales Prates Correia, Milena Guessi, Lucas Bueno Ruas Oliveira and Elisa Yumi Nakagawa University of São Paulo - USP, São Carlos, Brazil University of South Brittany

More information

Concurrent Object-Oriented Development with Behavioral Design Patterns

Concurrent Object-Oriented Development with Behavioral Design Patterns Concurrent Object-Oriented Development with Behavioral Design Patterns Benjamin Morandi 1, Scott West 1, Sebastian Nanz 1, and Hassan Gomaa 2 1 ETH Zurich, Switzerland 2 George Mason University, USA firstname.lastname@inf.ethz.ch

More information

How can frameworks facilitate component reuse?

How can frameworks facilitate component reuse? 76 Chapters 17 & 18 How can frameworks facilitate component reuse? Rikard Land Department of Computer Science Mälardalen University Västerås, Sweden rikard.land@mdh.se Abstract: Reuse of software has the

More information

Viewpoints for Sensor based Environmental Information Systems

Viewpoints for Sensor based Environmental Information Systems Viewpoints for Sensor based Environmental Information Systems Ruthbetha Kateule, Andreas Winter {kateule, winter}@se.uni-oldenburg.de Abstract: Sensor based environmental information systems are in use

More information

Coordination Patterns

Coordination Patterns Coordination Patterns 1. Coordination Patterns Design Patterns and their relevance for Coordination Oscar Nierstrasz Software Composition Group Institut für Informatik (IAM) Universität Bern oscar@iam.unibe.ch

More information

EPL603 Topics in Software Engineering

EPL603 Topics in Software Engineering Lecture 5 Architectural Design & Patterns EPL603 Topics in Software Engineering Efi Papatheocharous Visiting Lecturer efi.papatheocharous@cs.ucy.ac.cy Office FST-B107, Tel. ext. 2740 Topics covered Software

More information

Style-specific techniques to design product-line architectures

Style-specific techniques to design product-line architectures Style-specific techniques to design product-line architectures Philippe Lalanda Thomson-CSF Corporate Research Laboratory Phone: 33 1 69 33 92 90 Email: lalanda@thomson-lcr.fr Domaine de Corbeville 91404

More information

Usually software system variants, developed by Clone-and-own approach, form

Usually software system variants, developed by Clone-and-own approach, form ABSTRACT Usually software system variants, developed by Clone-and-own approach, form a starting point for building Software Product Line. To migrate software systems which are deemed similar to a product

More information

Aspect Design Pattern for Non Functional Requirements

Aspect Design Pattern for Non Functional Requirements Aspect Design Pattern for Non Functional Requirements FAZAL-E-AMIN¹, ANSAR SIDDIQ², HAFIZ FAROOQ AHMAD³ ¹ ²International Islamic University Islamabad, Pakistan ³NUST Institute of Information Technology,

More information

MTAT Software Engineering

MTAT Software Engineering MTAT.03.094 Software Engineering Lecture 07: Architecture and Design Dietmar Pfahl Fall 2015 email: dietmar.pfahl@ut.ee ATI Päev 2015 ICS Day 2015 When? Friday, 16-Oct-2015, 14:00-17:00 http://www.cs.ut.ee/en/ics-day

More information

Implementing Software Connectors through First-Class Methods

Implementing Software Connectors through First-Class Methods Implementing Software Connectors through First-Class Methods Cheoljoo Jeong and Sangduck Lee Computer & Software Technology Laboratory Electronics and Telecommunications Research Institute Taejon, 305-350,

More information

Patterns for documenting software architectures

Patterns for documenting software architectures Patterns for documenting software architectures Paris Avgeriou, Nicolas Guelfi, Reza Razavi Software Engineering Competence Center (SE2C), University of Luxembourg, 6, rue Richard Coudenhove-Kalergi L-1359

More information

ACCOMMODATING USABILITY DRIVEN CHANGES IN EXISTING SOFTWARE ARCHITECTURE

ACCOMMODATING USABILITY DRIVEN CHANGES IN EXISTING SOFTWARE ARCHITECTURE ACCOMMODATING USABILITY DRIVEN CHANGES IN EXISTING SOFTWARE ARCHITECTURE Tamer Rafla, Rafiou Oketokoun, Artur Wiklik, Michel Desmarais and Pierre-N Robillard Software Engineering Research Lab (RGL), Department

More information

Architectural design of MDX compiler via attribute-driven design *

Architectural design of MDX compiler via attribute-driven design * Jul. 2009, Volume 6, No.7 (Serial No.56) Journal of Communication and Computer, ISSN 1548-7709, USA Architectural design of MDX compiler via attribute-driven design * ZHANG Ping-jian, XI Jian-qing, ZHAO

More information

Software Language Engineering of Architectural Viewpoints

Software Language Engineering of Architectural Viewpoints Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr

More information

Introduction to software architecture Revision : 732

Introduction to software architecture Revision : 732 Introduction to software architecture Revision : 732 Denis Conan Septembre 2018 Foreword The content of these slides is extracted from the following references: L. Bass, P. Clements, and R. Kazman. Software

More information

Software Architecture Viewpoint Models: A Short Survey

Software Architecture Viewpoint Models: A Short Survey Software Architecture Viewpoint Models: A Short Survey Valiallah Omrani 1, Seyyed Ali Razavi Ebrahimi 2 1 Computer Science & Information Technology, Payam Noor University (PNU), Tehran, Iran omrani@inio.ac.ir

More information

CS560 Lecture: Software Architecture Includes slides by I. Sommerville

CS560 Lecture: Software Architecture Includes slides by I. Sommerville CS560 Lecture: Software Architecture 2009 Includes slides by I. Sommerville Architectural Design Design process for identifying the sub-systems making up a system and the framework for sub-system control

More information

Quality-Driven Conformance Checking in Product Line Architectures

Quality-Driven Conformance Checking in Product Line Architectures Quality-Driven Conformance Checking in Product Line Architectures Femi G. Olumofin and Vojislav B. Mišić University of Manitoba, Winnipeg, Manitoba, Canada Abstract Software product line are often developed

More information

A Constraint-Oriented Approach to Software Architecture Design

A Constraint-Oriented Approach to Software Architecture Design A Constraint-Oriented Approach to Software Architecture Design Mark van den Berg Tilburg University, Tilburg, the Netherlands m.j.p.vdnberg@uvt.nl Antony Tang Swinburne University of Technology, Melbourne,

More information

Modeling Constraints Improves Software Architecture Design Reasoning

Modeling Constraints Improves Software Architecture Design Reasoning Modeling Constraints Improves Software Architecture Design Reasoning Antony Tang Swinburne University of Technology, Melbourne, Australia atang@swin.edu.au Hans van Vliet VU University, Amsterdam, The

More information

A User Study on Features Supporting Subjective Relevance for Information Retrieval Interfaces

A User Study on Features Supporting Subjective Relevance for Information Retrieval Interfaces A user study on features supporting subjective relevance for information retrieval interfaces Lee, S.S., Theng, Y.L, Goh, H.L.D., & Foo, S. (2006). Proc. 9th International Conference of Asian Digital Libraries

More information

SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA

SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA PURPOSE OF THIS CLASS An introduction to software architecture What is an architecture Why it is important How it is represented

More information

Analytical Design of Reusable Software Components for Evolvable, Embedded Applications

Analytical Design of Reusable Software Components for Evolvable, Embedded Applications Analytical Design of Reusable Software Components for Evolvable, Embedded Applications Carol L. Hoover Pradeep K. Khosla Daniel P. Siewiorek Department of Electrical Institute for Complex Human-Computer

More information

R. R. Badre Associate Professor Department of Computer Engineering MIT Academy of Engineering, Pune, Maharashtra, India

R. R. Badre Associate Professor Department of Computer Engineering MIT Academy of Engineering, Pune, Maharashtra, India Volume 7, Issue 4, April 2017 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Web Service Ranking

More information

Ontology-based Architecture Documentation Approach

Ontology-based Architecture Documentation Approach 4 Ontology-based Architecture Documentation Approach In this chapter we investigate how an ontology can be used for retrieving AK from SA documentation (RQ2). We first give background information on the

More information

JOURNAL OF OBJECT TECHNOLOGY Online at Published by ETH Zurich, Chair of Software Engineering. JOT, 2002

JOURNAL OF OBJECT TECHNOLOGY Online at  Published by ETH Zurich, Chair of Software Engineering. JOT, 2002 JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering. JOT, 2002 Vol. 1, No. 2, July-August 2002 Representing Design Patterns and Frameworks in UML Towards

More information

PhD Dissertation. Muhammad Aufeef Chauhan December 2015

PhD Dissertation. Muhammad Aufeef Chauhan December 2015 PhD Dissertation Foundations for Tools as a Service Workspace: A Reference Architecture Design Space, Architecture Models, Design Tactics, Prototype and Experiences Muhammad Aufeef Chauhan December 2015

More information

Ontology Creation and Development Model

Ontology Creation and Development Model Ontology Creation and Development Model Pallavi Grover, Sonal Chawla Research Scholar, Department of Computer Science & Applications, Panjab University, Chandigarh, India Associate. Professor, Department

More information

Text Document Clustering Using DPM with Concept and Feature Analysis

Text Document Clustering Using DPM with Concept and Feature Analysis Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 2, Issue. 10, October 2013,

More information

Modelling Variation in Quality Attributes

Modelling Variation in Quality Attributes Modelling Variation in Quality Attributes Leire Etxeberria, Goiuria Sagardui, Lorea Belategi Faculty of Engineering University of Mondragon Limerick 16.01.2007 Research group &3 ;078 9 4143/7, 43 Research

More information

Requirements Engineering for Enterprise Systems

Requirements Engineering for Enterprise Systems Association for Information Systems AIS Electronic Library (AISeL) AMCIS 2001 Proceedings Americas Conference on Information Systems (AMCIS) December 2001 Requirements Engineering for Enterprise Systems

More information

Frameworks Representations & Perspectives Position Paper Workshop on Language Support for Design Patterns and Frameworks, ECOOP 97

Frameworks Representations & Perspectives Position Paper Workshop on Language Support for Design Patterns and Frameworks, ECOOP 97 Frameworks Representations & Perspectives Position Paper Workshop on Language Support for Design Patterns and Frameworks, ECOOP 97 Palle Nowack Department of Computer Science, Aalborg University Fredrik

More information

A Comparative Analysis of Architecture Frameworks

A Comparative Analysis of Architecture Frameworks A Comparative Analysis of Architecture Frameworks Antony Tang Jun Han Pin Chen School of Information Technology DSTO C3 Research Centre Swinburne University of Technology Department of Defence Melbourne,

More information

University of Groningen. Architectural design decisions Jansen, Antonius Gradus Johannes

University of Groningen. Architectural design decisions Jansen, Antonius Gradus Johannes University of Groningen Architectural design decisions Jansen, Antonius Gradus Johannes IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's PDF) if you wish to cite from it.

More information

Subjective Relevance: Implications on Interface Design for Information Retrieval Systems

Subjective Relevance: Implications on Interface Design for Information Retrieval Systems Subjective : Implications on interface design for information retrieval systems Lee, S.S., Theng, Y.L, Goh, H.L.D., & Foo, S (2005). Proc. 8th International Conference of Asian Digital Libraries (ICADL2005),

More information

Modeling variability with UML

Modeling variability with UML Modeling variability with UML Matthias Clauß Intershop Research Software Engineering Group Intershop, Jena Dresden University of Technology Matthias.Clauss@gmx.de Keywords: product families, domain modeling,

More information

Svamp An Integrated Approach to Modeling Functional and Quality Variability

Svamp An Integrated Approach to Modeling Functional and Quality Variability Svamp An Integrated Approach to Modeling Functional and Quality Variability Mikko Raatikainen, Eila Niemelä, Varvana Myllärniemi, Tomi Männistö Helsinki University of Technology (TKK), VTT Technical Research

More information

ISSUES IN SPATIAL DATABASES AND GEOGRAPHICAL INFORMATION SYSTEMS (GIS) HANAN SAMET

ISSUES IN SPATIAL DATABASES AND GEOGRAPHICAL INFORMATION SYSTEMS (GIS) HANAN SAMET zk0 ISSUES IN SPATIAL DATABASES AND GEOGRAPHICAL INFORMATION SYSTEMS (GIS) HANAN SAMET COMPUTER SCIENCE DEPARTMENT AND CENTER FOR AUTOMATION RESEARCH AND INSTITUTE FOR ADVANCED COMPUTER STUDIES UNIVERSITY

More information

An Architectural Strategy for Self-Adapting Systems

An Architectural Strategy for Self-Adapting Systems An Architectural Strategy for Self-Adapting Systems Danny Weyns and Tom Holvoet DistriNet Labs, Department of Computer Science Katholieke Universiteit Leuven Celestijnenlaan 200A, B-3001 Leuven, Belgium

More information

The Past, Present and Future of Software Architecture

The Past, Present and Future of Software Architecture The Past, Present and Future of Software Architecture Eoin Woods UBS Investment Bank eoin@artechra.com www.eoinwoods.info About me I m a working software architect Always worked as a software engineer

More information

Intelligent Agent based Mapping of Software Requirement Specification to Design Model

Intelligent Agent based Mapping of Software Requirement Specification to Design Model Intelligent Agent based Mapping of Software Requirement Specification to Design Model Emdad Khan College of Computer and Information Sciences Al-Imam Muhammad Ibn Saud Islamic University Riyadh, Saudi

More information

Requirements to models: goals and methods

Requirements to models: goals and methods Requirements to models: goals and methods Considering Garlan (2000), Kruchen (1996), Gruunbacher et al (2005) and Alter (2006-08) CIS Department Professor Duane Truex III Wojtek Kozaczynski The domain

More information

Capturing Design Expertise in Customized Software Architecture Design Environments

Capturing Design Expertise in Customized Software Architecture Design Environments Capturing Design Expertise in Customized Software Architecture Design Environments Robert T. Monroe School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213 Abstract: Software architecture

More information

Towards The Adoption of Modern Software Development Approach: Component Based Software Engineering

Towards The Adoption of Modern Software Development Approach: Component Based Software Engineering Indian Journal of Science and Technology, Vol 9(32), DOI: 10.17485/ijst/2016/v9i32/100187, August 2016 ISSN (Print) : 0974-6846 ISSN (Online) : 0974-5645 Towards The Adoption of Modern Software Development

More information

A component-centric UML based approach for modeling the architecture of web applications.

A component-centric UML based approach for modeling the architecture of web applications. International Journal of Recent Research and Review, Vol. V, March 2013 ISSN 2277 8322 A component-centric UML based approach for modeling the architecture of web applications. Mukesh Kataria 1 1 Affiliated

More information

Software Architecture Recovery based on Dynamic Analysis

Software Architecture Recovery based on Dynamic Analysis Software Architecture Recovery based on Dynamic Analysis Aline Vasconcelos 1,2, Cláudia Werner 1 1 COPPE/UFRJ System Engineering and Computer Science Program P.O. Box 68511 ZIP 21945-970 Rio de Janeiro

More information

Catalogue of architectural patterns characterized by constraint components, Version 1.0

Catalogue of architectural patterns characterized by constraint components, Version 1.0 Catalogue of architectural patterns characterized by constraint components, Version 1.0 Tu Minh Ton That, Chouki Tibermacine, Salah Sadou To cite this version: Tu Minh Ton That, Chouki Tibermacine, Salah

More information

International Journal of Data Mining & Knowledge Management Process (IJDKP) Vol.7, No.3, May Dr.Zakea Il-Agure and Mr.Hicham Noureddine Itani

International Journal of Data Mining & Knowledge Management Process (IJDKP) Vol.7, No.3, May Dr.Zakea Il-Agure and Mr.Hicham Noureddine Itani LINK MINING PROCESS Dr.Zakea Il-Agure and Mr.Hicham Noureddine Itani Higher Colleges of Technology, United Arab Emirates ABSTRACT Many data mining and knowledge discovery methodologies and process models

More information

Using Data Mining to Determine User-Specific Movie Ratings

Using Data Mining to Determine User-Specific Movie Ratings Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology ISSN 2320 088X IMPACT FACTOR: 6.017 IJCSMC,

More information

Design Decision Topology Model for Pattern Relationship Analysis

Design Decision Topology Model for Pattern Relationship Analysis Design Decision Topology Model for Pattern Relationship Analysis Kiran Kumar PhD Scholar Department of Computer Science and Engineering Indian Institute of Technology Kanpur, India vkirankr@iitk.ac.in

More information

Model-Driven Approach to Software Architecture Design

Model-Driven Approach to Software Architecture Design Model-Driven Approach to Software Design Daniel Perovich, María Cecilia Bastarrica, Cristián Rojas Department of Computer Science Universidad de Chile {dperovic,cecilia,crirojas}@dcc.uchile.cl Abstract

More information

What is your definition of software architecture?

What is your definition of software architecture? What is your definition of software architecture? WHAT IS YOUR DEFINITION OF SOFTWARE ARCHITECTURE? The SEI has compiled a list of modern, classic, and bibliographic definitions of software architecture.

More information

Chapter 27 Introduction to Information Retrieval and Web Search

Chapter 27 Introduction to Information Retrieval and Web Search Chapter 27 Introduction to Information Retrieval and Web Search Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 27 Outline Information Retrieval (IR) Concepts Retrieval

More information

Software Architecture Pattern Morphology in Open- Source Systems

Software Architecture Pattern Morphology in Open- Source Systems Software Architecture Pattern Morphology in Open- Source Systems Neil B. Harrison, Erich Gubler, and Danielle Skinner Department of Computer Science and Engineering Utah Valley University Orem, Utah, USA

More information

Model-View-Controller

Model-View-Controller CNM STEMulus Center Web Development with PHP November 11, 2015 1/8 Outline 1 2 2/8 Definition A design pattern is a reusable and accepted solution to a particular software engineering problem. Design patterns

More information

Automated Software Architectural Synthesis using Patterns: A Cooperative Coevolution Approach

Automated Software Architectural Synthesis using Patterns: A Cooperative Coevolution Approach Automated Software Architectural Synthesis using Patterns: A Cooperative Coevolution Approach Yongrui Xu State Key Lab of Software Engineering School of Computer, Wuhan University Wuhan, China xuyongrui@whu.edu.cn

More information

An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs)

An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs) An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs) Rosziati Ibrahim, Siow Yen Yen Abstract System development life cycle (SDLC) is a process uses during the development of any

More information

Dealing with Artifact-Centric Systems: a Process Mining Approach

Dealing with Artifact-Centric Systems: a Process Mining Approach Dealing with Artifact-Centric Systems: a Process Mining Approach Guangming Li and Renata Medeiros de Carvalho 2 Abstract: Process mining provides a series of techniques to analyze business processes based

More information

Software Performance-driven Quality Refinement of MINPHIS: an architectural view

Software Performance-driven Quality Refinement of MINPHIS: an architectural view www.ijcsi.org 275 Software Performance-driven Quality Refinement of MINPHIS: an architectural view Ishaya Gambo 1, Rhoda Ikono 2, Olaronke Iroju 3, Theresa Omodunbi 4 and Abimbola Soriyan 5 1, 2, 4 & 5

More information

Mining Relationships Between the Participants of Architectural Patterns

Mining Relationships Between the Participants of Architectural Patterns Mining Relationships Between the Participants of Architectural Patterns Ahmad Waqas Kamal and Paris Avgeriou Department of Mathematics and Computing Science, University of Groningen, The Netherlands a.w.kamal@rug.nl,

More information

Design of Convolutional Codes for varying Constraint Lengths

Design of Convolutional Codes for varying Constraint Lengths Design of Convolutional Codes for varying Constraint Lengths S VikramaNarasimhaReddy 1, Charan Kumar K 2, Neelima Koppala 3 1,2 MTech(VLSI) Student, 3 Assistant Professor, ECE Department, SreeVidyanikethan

More information

Pattern-oriented Knowledge Model for Architecture Design

Pattern-oriented Knowledge Model for Architecture Design Pattern-oriented Knowledge Model for Architecture Design KIRAN KUMAR, Indian Institute of Technology Kanpur PRABHAKAR T.V., Indian Institute of Technology Kanpur Software design patterns document the most

More information

REVIEW OF THE BASIC CHARACTERISTICS OF OBJECT ORIENTATION

REVIEW OF THE BASIC CHARACTERISTICS OF OBJECT ORIENTATION c08classandmethoddesign.indd Page 282 13/12/14 2:57 PM user 282 Chapter 8 Class and Method Design acceptance of UML as a standard object notation, standardized approaches based on work of many object methodologists

More information

Predicting Architectural Styles from Component Specification

Predicting Architectural Styles from Component Specification Predicting Architectural Styles from Component ification Sutirtha Bhattacharya PTD Automation Intel Corporation Hillsboro, OR 97124 Hsutirtha.bhattacharya@intel.comH Dewayne E. Perry Empirical Software

More information

A Process Framework for Designing Software Reference Architectures for Providing Tools as a Service

A Process Framework for Designing Software Reference Architectures for Providing Tools as a Service Downloaded from orbit.dtu.dk on: Dec 20, 2017 A Process Framework for Designing Software Reference Architectures for Providing Tools as a Service Chauhan, Muhammad Aufeef; Babar, Muhammad Ali; Probst,

More information

highest cosine coecient [5] are returned. Notice that a query can hit documents without having common terms because the k indexing dimensions indicate

highest cosine coecient [5] are returned. Notice that a query can hit documents without having common terms because the k indexing dimensions indicate Searching Information Servers Based on Customized Proles Technical Report USC-CS-96-636 Shih-Hao Li and Peter B. Danzig Computer Science Department University of Southern California Los Angeles, California

More information

MUDABlue: An Automatic Categorization System for Open Source Repositories

MUDABlue: An Automatic Categorization System for Open Source Repositories MUDABlue: An Automatic Categorization System for Open Source Repositories By Shinji Kawaguchi, Pankaj Garg, Makoto Matsushita, and Katsuro Inoue In 11th Asia Pacific software engineering conference (APSEC

More information

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 1 Faculty of Sciences, Lebanese University 2 LINA Laboratory, University of Nantes ABSTRACT:

More information

ARCHITECTURE MIGRATION USING DSM IN A LARGE-SCALE SOFTWARE PROJECT

ARCHITECTURE MIGRATION USING DSM IN A LARGE-SCALE SOFTWARE PROJECT 14 TH INTERNATIONAL DEPENDENCY AND STRUCTURE MODELING CONFERENCE, DSM 12 KYOTO, JAPAN, SEPTEMBER 13 14, 2012 ARCHITECTURE MIGRATION USING DSM IN A LARGE-SCALE SOFTWARE PROJECT Takashi Maki Corporate Technology

More information

Experiences with Semantic Wikis for Architectural Knowledge Management

Experiences with Semantic Wikis for Architectural Knowledge Management 2011 2011 Ninth Ninth Working Working IEEE/IFIP Conference Conference Software on Software Architecture Architecture Experiences with Semantic Wikis for Architectural Knowledge Management Remco C. de Boer

More information

ENHANCEMENT OF METICULOUS IMAGE SEARCH BY MARKOVIAN SEMANTIC INDEXING MODEL

ENHANCEMENT OF METICULOUS IMAGE SEARCH BY MARKOVIAN SEMANTIC INDEXING MODEL ENHANCEMENT OF METICULOUS IMAGE SEARCH BY MARKOVIAN SEMANTIC INDEXING MODEL Shwetha S P 1 and Alok Ranjan 2 Visvesvaraya Technological University, Belgaum, Dept. of Computer Science and Engineering, Canara

More information