Software Architecture Recovery based on Dynamic Analysis

Size: px
Start display at page:

Download "Software Architecture Recovery based on Dynamic Analysis"

Transcription

1 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 ZIP Rio de Janeiro RJ Brazil 2 CEFET Campos (Centro Federal de Educação Tecnológia de Campos) Dr. Siqueira, 273 Pq. Dom Bosco ZIP Campos dos Goytacazes- RJ [aline, werner]@cos.ufrj.br Abstract Architecture recovery from legacy systems has been claimed to offer great contributions to software maintenance and reuse. Most of the approaches to architecture recovery is based on the static analysis of systems and lack a sound support to architectural elements identification. In this context, this paper presents an approach to architecture recovery based on dynamic analysis of systems. The system is executed for some specified use-cases and execution traces are collected. By analyzing the execution traces, interaction patterns are detected and architectural elements are defined based on these interaction patterns and their relation to use-case realizations. Moreover, in order to evaluate the proposed approach a case study is presented. 1. Introduction This paper presents an approach to software architecture recovery from object-oriented legacy systems mainly based on the dynamic analysis of systems. Software architecture represents the description of a system global structure in terms of their elements and relationships among them, along with the principles that guide their design and evolution [1]. The proposed approach has been investigated in the context of the Odyssey project [11], which involves the development of a software development environment based on domain models named Odyssey. Our goals are to contribute to program comprehension and software maintenance and to generate artifacts that can later be used to specify a domain reference architecture. Architecture recovery involves a set of methods for the extraction of architectural information from lower level representations of a software system, such as source code [7]. The abstraction process to generate architectural elements frequently involves clustering source code entities (such as files, classes, functions etc.) into subsystems according to a set of criteria that can be application dependent or not. Architecture recovery from legacy systems is motivated by the fact that these systems do not often have an architectural documentation, and when they do, this documentation is many times out of synchronization with the implemented system. Most approaches to software architecture recovery has been exploring the static analysis of systems [2] [5] [6] [7]. When considering object-oriented software, which employs a lot of polymorphism and dynamic binding mechanisms, dynamic analysis becomes an essential technique to comprehend the system behavior, object interactions, and hence to reconstruct its architecture. In this work, the criteria used to determine how source code entities should be clustered in architectural elements are mainly based on the dynamic analysis of the system, taking into account the occurrences of interaction patterns and types (classes and interfaces) in use-case realizations.

2 The proposed architecture recovery approach aims at the extraction of a functional decomposition of the system, clustering entities that implement similar and coherent functionality. However, it is important to state that an application can have many architecture descriptions, considering, for example, the different architectural views [3] or the diversity of implemented architectural patterns [2]. In this work, we adopt the 4+1 view model [3] to describe an architecture and, besides the functional decomposition that corresponds to the logical view of the architecture, the process and scenario views are also recovered by a dynamic reverse engineering sub-process. To present the proposed approach, following this introduction, section 2 describes the proposed software architecture recovery process; section 3 presents a case study used to evaluate the process; and section 4 outlines some conclusions and lists our ongoing work. 2. The Proposed Approach The proposed process to software architecture recovery is depicted in figure 1. Figure 1: The proposed software architecture recovery process. The process is iterative and incremental. The architecture is recovered in cycles, starting by the use-case modeling activity, and in each cycle a more complete description of the system architecture is obtained. The process is semi-automatic and guided by a developer who must have some knowledge about the application. This knowledge, if not existent, can be obtained from system experts, available system documentation and application execution. In the following we briefly describe the process activities. Static Reverse Engineering and Use-Case Modeling The process starts by the static reverse engineering and use-case modeling activities. The static reverse engineering aims at the recovery of a static model of the system, which is represented through UML Class Diagrams. This activity is executed only once. The use-case modeling can start in parallel to the static reverse engineering. Its goal is to establish the focus of the architecture recovery in the current cycle of the process. To recover the whole architecture of an application in one step is a hard task [5]. In [9] the focus of the recovery process is also established by the use-case modeling. However usecases are selected according to the change and evolution requirements of the application. In our work, the recovery must start by some key use-cases of the application, representing essential functionality, and incorporates more use-cases as the developer feels it is necessary.

3 The use-case modeling activity involves a manual reconstruction of some system use-cases whenever an up-to-date use-case model of the application is not available. Besides usecases definition, this activity also involves use-case scenarios description. A use-case scenario encompasses a set of steps that guide the developer during the application execution. In order to specify the use-cases and their scenarios, as stated in [4], which is also a reverse engineering method that performs the analysis of input and output events of the application, user manuals and application execution may be investigated. In application executions, menu options at the application user-interface are a good indicator of system use-cases. Moreover, test cases documentation, if available, can also be analyzed. Dynamic Reverse Engineering and Architectural Elements Definition Dynamic reverse engineering aims at the reconstruction of a system behavioral model, represented through UML sequence diagrams, in this case. To this end, the system is executed for the specified use-case scenarios and these executions are monitored, allowing the collection of execution traces. Execution traces encompass the set of events and messages generated during system execution, with their sender and receiver instances and their types. They are the input source of information to the reconstruction of sequence diagrams and the definition of architectural elements. The criteria to architectural elements definition are based on the analysis of these execution traces. Most of the approaches to architecture recovery does not establish general criteria to architectural elements definition [5] [9]. When they do, architectural elements identification is based on the static analysis of the system [2] [6]. In this work, our assumption is that the dynamic model of the system, considering object-oriented software, reveals significant information about object interactions that is essential to support architectural elements reconstruction. We propose two criteria to architectural elements definition, namely: Criterion 1: Clustering in subsystems source-code entities (classes and interfaces) that participate in interaction patterns that appear in a large 1 set of use-cases. An interaction pattern that participates in the realization of a large set of use-cases indicates types that represent a central functionality in the architecture. Criterion 2: Clustering of source-code entities that participate in the realization of a small set of use-cases together with these use-cases in subsystems. An interaction pattern represents an ordered sequence of messages and events that frequently occur during system execution. Moreover, the architectural elements defined must thereafter be mapped to the sequence diagrams reconstructed in order to allow a representation of a dynamic model of the system architecture, corresponding to the process and scenarios view [3]. The scenarios view relates use-cases to architectural elements. A challenge we face, however, to conduct this dynamic analysis is the volume of information obtained in the traces. One of the solutions proposed to this problem is to filter out from the traces the events and messages to/from Java API classes. Evaluation In each cycle of the recovery process, the architecture reconstructed must be evaluated by system experts. The goal is to validate if the recovered elements really correspond to an expected architecture representation, being helpful to system comprehension. 1 The number of use-cases that indicate a large set is application-dependent. As we perform several case studies applying the proposed process, a percentage value for this number can be defined.

4 In order to reduce the frequently required manual effort to architecture recovery, a tool set to support the process has been developed in the context of the Odyssey project [11]. The following section presents a case study that was performed to evaluate the proposed process along with the description of our tool set. 3. Case Study A case study to evaluate the proposed process has been done with the support of the Odyssey environment, aiming at the reconstruction of its own architecture. Odyssey is a software development environment that covers the development for reuse, through domain engineering, and the development with reuse, through application engineering. It has two main views, namely Environment and Modeling Environment, in which the developer can create domains, applications, model domains and applications etc. Odyssey is written in Java programming language and contains around 650 classes. Along the years Odyssey became a huge environment, with drawbacks related to performance, usage complexity and evolution. Many tools, such as the pattern detection tool, are not necessary in some particular usage scenarios, and they can represent an overhead to the whole environment in these scenarios. Since Odyssey continues to evolve, in 2003 the team decided to reengineer the environment in order to reduce its complexity and to allow its customization to specific needs. However, only a few of the original developers were available and there was no up-to-date documentation of the whole environment design to be investigated. Thus the team realized the need to recover the Odyssey architecture in order to allow its comprehension and facilitate its reengineering. The following sections illustrate how the proposed process was applied to the recovery of the Odyssey architecture, taking into account a few architectural elements, i.e., the kernel of the application and some elements related to essential features of the environment Static Reverse Engineering and Use-Case Modeling The static reverse engineering was performed with the Ares tool, a reverse engineering tool integrated to the Odyssey environment, which is capable of extracting a UML static model from Java source-code. The use-case modeling activity started through the identification of some key use-cases, namely: Create a New Domain; Create a New Class; Create a New Use-Case; Create a New Class Diagram; and Define a New User. The identification of key use-cases is the developer responsibility, but may take into account some essential features of the application. In the case of Odyssey, since it represents a development environment, which encompasses reuse through domain engineering, the key use-cases were the ones related to domain creation and its modeling. Moreover, an important feature of the Odyssey environment is its control over authorized users. Some more use-cases were defined along the other recovery cycles. Create a New Class Main Scenario: Create a new class through pop-up menu option. To start this scenario the user must be in the Modeling Environment view of Odyssey. Steps: 1. The user goes to the Structural View and presses the mouse right button. 2. Odyssey shows a menu window with some options. 3. The user chooses Creates New Class. 4. Odyssey creates a new class element in its Structural View, with a graphical representation and a set of documentation items to be fulfilled. Figure 2. Main scenario for Create New Class use-case.

5 The main scenarios for each use-case were specified. Figure 2 exemplifies a scenario description to the main scenario for the use-case Create a New Class Dynamic Reverse Engineering During the dynamic reverse engineering, Odyssey was executed to the specified use-case scenarios and the execution traces were collected. To support the dynamic reverse engineering, we developed a trace collector tool, named Tracer, that uses aspects [10] to monitor Java program executions and collect the messages and events generated during execution. Tracer fits well the process needs, since it allows the collection of execution traces to be enabled and disabled at run-time, making it feasible to collect only the execution traces related to a specific use-case scenario or application functionality. Moreover, some filters can be applied while using Tracer, allowing the user to determine packages and/or classes to be traced. Tracer stores the trace in a XML file, facilitating the post-processing of the generated information. Based on these execution traces, sequence diagrams, associated to the use-case scenarios, were reconstructed using Odyssey Architectural Elements Definition Architectural elements definition started with the detection of interaction patterns in the reconstructed dynamic model. By comparing the sequence diagrams reconstructed to the Odyssey use-cases, it was possible to identify two interaction patterns that appear in almost all of the use-case scenarios. They are depicted in figures 3 and 4. Figure 3 illustrates the first pattern in the context of the Create New Class use-case. This pattern occurs anytime a new semantic element (like a class, a use-case or a user) needs to be created in Odyssey. Environment and ModelingEnvironment classes control a semantic element creation, asking SemanticFactory to fabricate the correspondent element. There are little differences in this pattern considering the different use-case scenarios, such as the ClassNode class, which is UseCaseNode in the Create New Use-Case use-case. It is important to state, however, that we assume that an interaction pattern can have some interleaved messages. The second interaction pattern detected is illustrated in figure 4. This pattern is in fact a continuation of the first one. By analyzing the patterns in figures 3 and 4, it was possible to realize that every model element, like classes, use-cases, diagrams etc., are modeling items (class ModelItem) and abstract models (class AbstractModel). Through the interaction patterns detected, it was possible to visualize the Odyssey kernel, the Semantic Core element, which encompasses the classes that are essential to the definition and instantiation of any semantic element and appear in the realization of almost all the use-cases, like Environment, ModelingEnvironment, AbstractModel etc. It is depicted in figure 6. Moreover, since Odyssey works with some factories, an architectural element to encapsulate them was defined. Architectural elements are depicted in figure 5. The Semantic Core depends on the Factories in order to create new semantic elements. The Class Modeling architectural element contains the classes (e.g. ClassModelRepresentation) that only appear in the realization of the use-cases related to class modeling. The same holds for the Use-Case Modeling architectural element. The classes in the Class Modeling and UseCase Modeling architectural elements are subclasses of classes in the Semantic Core.

6 Figure 3. First interaction pattern detected in the Odyssey execution. Figure 4. Second interaction pattern detected in the Odyssey execution. In order to reconstruct the internal structure of each architectural element, a tool that queries the Odyssey internal class model was applied. The Class Manipulation tool provides some query capabilities to the Odyssey environment, allowing the user to select classes in the static model of an application based on some search criterion. The static reverse engineering of Odyssey was performed within Odyssey itself, making it possible to use the Class Manipulation tool to locate in the static model the classes that appeared in the interaction patterns detected. Since Odyssey has 650 classes, by using this tool, we could slice its static model and reduce the time to reconstruct its partial architecture. Moreover, by querying classes using their name string, allowed us to find classes with similar names. Grouping classes with a common string in their names,

7 although not being one of our main crietria to architectural elements definition, is also helpful since designers use to follow this criterion in order to characterize architectural elements, like layers. The Class Manipulation tool also computed the high-level dependencies between the architectural elements (shown in figure 5) as their internal structures were reconstructed. Odyssey Architectural Elements Figure 5. Some Odyssey architectural elements Evaluation Figure 6. Semantic Core internal structure. By evaluating the Odyssey architecture with experts we could confirm that the recovered architectural elements were reasonable. However, some static relationships between classes, as the aggregation between the classes Model and ModelItem (figure 6), were not recovered by the static reverse engineering tool and needed to be added manually to the diagram. Nevertheless, the recovered architecture was successfully used as the basis to the reengineering of the Odyssey, which lead to the generation of a new version of the environment, named OdysseyLight [12]. 4. Conclusions and Ongoing Work Through the presented case study it was possible to have an initial evaluation of the effectiveness of architecture recovery based on dynamic analysis of software. There are

8 also a few approaches to architecture recovery that take into account the dynamic analysis. In [8], the authors apply the formal concept analysis technique to identify methods shared by use-cases implementation. Each concept in the generated conceptual lattice encompasses a set of use-cases and their shared methods. However, the lattice does not make clear where a source-code entity, such as a class, must be located in the architecture, since the same entity appears in more than one concept. In [9], dynamic analysis is also considered in the recovery process. However, this analysis is not automated and it is not used as the basis to architectural elements identification. In our proposal, criteria to architecture reconstruction are clearly defined based on use-case realizations. Moreover, we are currently specifying and developing tools to support the process activities to which an automated support still does not exist, such as the sequence diagram reconstruction and interaction patterns detection. References 1. Garlan, D., Perry, D. Introduction to the Special Issue on Software Architecture. IEEE Transactions on Software Engineering, April 1995, p Harris, D. R., Yeh, A., Reubestein, H.B., Yeh, A.S. Reverse Engineering to the Architectural Level. In Proceedings of the 17 th International Conference on Software Engineering, Scattle, Washington, April 1995, p Kruchten, P.B. The 4+1 View Model of Architecture. IEEE Software, November 1995, Vol. 12, Number 6, p Penteado, R.A.D., Germano, Masiero, F., P.C. An Overall Based on Fusion to Reverse Engineer Legacy Code. In Proceedings of the 3 rd IEEE Working Conference on Reverse Engineering, Monterey, California, November, 1996, p Kazman, R., Carrière, S.J. Playing Detective: Reconstructing Software Architecture from Available Evidence. Technical Report CMU/SEI-97-TR-010, Carnegie Mellon University, October Mendonça, N. C., Kramer, J. Developing an Approach for the Recovery of Distributed Software Architectures. In Proceedings of the 6 th IEEE International Workshop on Program Comprehension, Ischia, Italy, June 1998, p Sartipi, K., Kontogiannis, K., Mavaddat, F. Software Architecture Recovery. Software Engineering Group, University of Waterloo, Waterloo, Ontario, Canada, Technical Report, Bojic, D., Velasevic, D. A Use-Case Driven Method of Architecture Recovery for Program Understanding and Reuse Reengineering. In Proceedings of the 4 th European Software Maintenance and Reengineering Conference, Zuriq, Swiss, February 2000, p Ding, L., Medvidovic, N. Focus: a LightWeight, Incremental Approach to Software Architecture Recovery and Evolution. Working IEEE/IFIP Conference on Software Architecture, Amsterdam, Netherlands, August 2001, p AOSD Steering Committee. Aspect-Oriented Software Development. In: Accessed in 09/02/ Odyssey Project. In: Accessed in 05/10/ Murta, L., Vasconcelos, A., et al. Run-Time Variability through Component Dynamic Loading. To appear in the Proceedings of the Tools Session at the 18 th Brazilian Symposium on Software Engineering, Brasilia, Brazil, October 2004.

A Design Rationale Representation for Model-Based Designs in Software Engineering

A Design Rationale Representation for Model-Based Designs in Software Engineering A Design Rationale Representation for Model-Based Designs in Software Engineering Adriana Pereira de Medeiros, Daniel Schwabe, and Bruno Feijó Dept. of Informatics, PUC-Rio, Rua Marquês de São Vicente

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

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

Beginning To Define ebxml Initial Draft

Beginning To Define ebxml Initial Draft Beginning To Define ebxml Initial Draft File Name Version BeginningToDefineebXML 1 Abstract This document provides a visual representation of how the ebxml Architecture could work. As ebxml evolves, this

More information

Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study

Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Jadson Santos Department of Informatics and Applied Mathematics Federal University of Rio Grande do Norte, UFRN Natal,

More information

Designing a System Engineering Environment in a structured way

Designing a System Engineering Environment in a structured way Designing a System Engineering Environment in a structured way Anna Todino Ivo Viglietti Bruno Tranchero Leonardo-Finmeccanica Aircraft Division Torino, Italy Copyright held by the authors. Rubén de Juan

More information

Impact of Dependency Graph in Software Testing

Impact of Dependency Graph in Software Testing Impact of Dependency Graph in Software Testing Pardeep Kaur 1, Er. Rupinder Singh 2 1 Computer Science Department, Chandigarh University, Gharuan, Punjab 2 Assistant Professor, Computer Science Department,

More information

Derivation of Feature Component Maps by means of Concept Analysis

Derivation of Feature Component Maps by means of Concept Analysis Derivation of Feature Component Maps by means of Concept Analysis Thomas Eisenbarth, Rainer Koschke, Daniel Simon University of Stuttgart, Breitwiesenstr. 20-22, 70565 Stuttgart, Germany {eisenbts, koschke,

More information

Building an Assurance Foundation for 21 st Century Information Systems and Networks

Building an Assurance Foundation for 21 st Century Information Systems and Networks Building an Assurance Foundation for 21 st Century Information Systems and Networks The Role of IT Security Standards, Metrics, and Assessment Programs Dr. Ron Ross National Information Assurance Partnership

More information

SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION

SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION http://www.tutorialspoint.com/software_architecture_design/introduction.htm Copyright tutorialspoint.com The architecture of a system describes its major components,

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

CM-OPL: An Ontology Pattern Language for the Configuration Management Task

CM-OPL: An Ontology Pattern Language for the Configuration Management Task CM-OPL: An Ontology Pattern Language for the Configuration Management Task Ana Carolina Almeida 1, Daniel Schwabe 2, Sérgio Lifschitz 2, Maria Luiza M. Campos 3 1 Dept. of Comp. Science State University

More information

IOSR Journal of Computer Engineering (IOSRJCE) ISSN: Volume 3, Issue 3 (July-Aug. 2012), PP

IOSR Journal of Computer Engineering (IOSRJCE) ISSN: Volume 3, Issue 3 (July-Aug. 2012), PP IOSR Journal of Computer Engineering (IOSRJCE) ISSN: 2278-0661 Volume 3, Issue 3 (July-Aug. 2012), PP 50-55 Modeling Object Oriented Applications by Using Dynamic Information for the Iterative Recovery

More information

Update on AADL Requirements Annex

Update on AADL Requirements Annex Open-PEOPLE Open Power and Energy Optimization PLatform and Estimator Update on AADL Requirements Annex Dominique BLOUIN* *Lab-STICC, Université de Bretagne Sud, Lorient, FRANCE AADL Standards Meeting,

More information

Software Architectures

Software Architectures Software Architectures Richard N. Taylor Information and Computer Science University of California, Irvine Irvine, California 92697-3425 taylor@ics.uci.edu http://www.ics.uci.edu/~taylor +1-949-824-6429

More information

Integrating Domain Specific Modeling into the Production Method of a Software Product Line

Integrating Domain Specific Modeling into the Production Method of a Software Product Line Integrating Domain Specific Modeling into the Production Method of a Software Product Line Gary J. Chastek Software Engineering Institute John D. McGregor Clemson University Introduction This paper describes

More information

Comparative Analysis of Architectural Views Based on UML

Comparative Analysis of Architectural Views Based on UML Electronic Notes in Theoretical Computer Science 65 No. 4 (2002) URL: http://www.elsevier.nl/locate/entcs/volume65.html 12 pages Comparative Analysis of Architectural Views Based on UML Lyrene Fernandes

More information

A PARSING APPROACH FOR SYSTEM BEHAVIOUR MODELING

A PARSING APPROACH FOR SYSTEM BEHAVIOUR MODELING IADIS International Conference Applied Computing 2007 A PARSING APPROACH FOR SYSTEM BEHAVIOUR MODELING Lau Sei Ping 1, Wee Bui Lin 2, Nurfauza bt Jali 3 Faculty of Computer Science and Information Technology

More information

Analyzing the Product Line Adequacy of Existing Components

Analyzing the Product Line Adequacy of Existing Components Analyzing the Product Line Adequacy of Existing Components Jens Knodel and Dirk Muthig Fraunhofer Institute for Experimental Software Engineering (IESE), Fraunhofer-Platz 1, D-67663 Kaiserslautern, Germany

More information

WARE: a tool for the Reverse Engineering of Web Applications

WARE: a tool for the Reverse Engineering of Web Applications WARE: a tool for the Reverse Engineering of Web Applications Anna Rita Fasolino G. A. Di Lucca, F. Pace, P. Tramontana, U. De Carlini Dipartimento di Informatica e Sistemistica University of Naples Federico

More information

Software Architecture

Software Architecture Software Architecture Architectural Design and Patterns. Standard Architectures. Dr. Philipp Leitner @xleitix University of Zurich, Switzerland software evolution & architecture lab Architecting, the planning

More information

Product Line Evolution Using Source Packages

Product Line Evolution Using Source Packages Product Line Evolution Using Source Packages Arie van Deursen Merijn de Jonge CWI P.O. Box 94079, 1090 GB Amsterdam, The Netherlands http://www.cwi.nl/ {arie,mdejonge} Abstract We present a language-independent

More information

Automatic Reconstruction of the Underlying Interaction Design of Web Applications

Automatic Reconstruction of the Underlying Interaction Design of Web Applications Automatic Reconstruction of the Underlying Interaction Design of Web Applications L.Paganelli, F.Paternò C.N.R., Pisa Via G.Moruzzi 1 {laila.paganelli, fabio.paterno}@cnuce.cnr.it ABSTRACT In this paper

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

Comprehensive Study on Cybercrime

Comprehensive Study on Cybercrime Federal Ministry of Justice and 17 August 2016 Consumer Protection German Comments on the Comprehensive Study on Cybercrime (Draft February 2013) The United Nations Office on Drugs and Crime (UNODC) invited

More information

1. Discovering Important Nodes through Graph Entropy The Case of Enron Database

1. Discovering Important Nodes through Graph Entropy The Case of Enron  Database 1. Discovering Important Nodes through Graph Entropy The Case of Enron Email Database ACM KDD 2005 Chicago, Illinois. 2. Optimizing Video Search Reranking Via Minimum Incremental Information Loss ACM MIR

More information

Meta Architecting: Towered a New Generation of Architecture Description Languages

Meta Architecting: Towered a New Generation of Architecture Description Languages Journal of Computer Science 1 (4): 454-460, 2005 ISSN 1549-3636 Science Publications, 2005 Meta Architecting: Towered a New Generation of Architecture Description Languages Adel Smeda, Tahar Khammaci and

More information

WEB SERVICES TESTING CHALLENGES AND APPROACHES

WEB SERVICES TESTING CHALLENGES AND APPROACHES WEB SERVICES TESTING CHALLENGES AND APPROACHES Sana Azzam CIS department, IT faculty Yarmouk University Irbid, Jordan sana_azzam@yahoo.com Mohammed Naji Al-Kabi CIS department, IT faculty Yarmouk University

More information

Dynamic Management of Integration Testing for Self-Adaptive Systems

Dynamic Management of Integration Testing for Self-Adaptive Systems Dynamic Management of Integration Testing for Self-Adaptive Systems Carlos Eduardo da Silva Escola de Ciências e Tecnologia UFRN, Natal, RN, Brazil carlos.silva@ect.ufrn.br Rogério de Lemos School of Computing

More information

MythoLogic: problems and their solutions in the evolution of a project

MythoLogic: problems and their solutions in the evolution of a project 6 th International Conference on Applied Informatics Eger, Hungary, January 27 31, 2004. MythoLogic: problems and their solutions in the evolution of a project István Székelya, Róbert Kincsesb a Department

More information

data elements (Delsey, 2003) and by providing empirical data on the actual use of the elements in the entire OCLC WorldCat database.

data elements (Delsey, 2003) and by providing empirical data on the actual use of the elements in the entire OCLC WorldCat database. Shawne D. Miksa, William E. Moen, Gregory Snyder, Serhiy Polyakov, Amy Eklund Texas Center for Digital Knowledge, University of North Texas Denton, Texas, U.S.A. Metadata Assistance of the Functional Requirements

More information

CHAPTER 9 DESIGN ENGINEERING. Overview

CHAPTER 9 DESIGN ENGINEERING. Overview CHAPTER 9 DESIGN ENGINEERING Overview A software design is a meaningful engineering representation of some software product that is to be built. Designers must strive to acquire a repertoire of alternative

More information

Patterns and Testing

Patterns and Testing and Lecture # 7 Department of Computer Science and Technology University of Bedfordshire Written by David Goodwin, based on the lectures of Marc Conrad and Dayou Li and on the book Applying UML and (3

More information

challenges in domain-specific modeling raphaël mannadiar august 27, 2009

challenges in domain-specific modeling raphaël mannadiar august 27, 2009 challenges in domain-specific modeling raphaël mannadiar august 27, 2009 raphaël mannadiar challenges in domain-specific modeling 1/59 outline 1 introduction 2 approaches 3 debugging and simulation 4 differencing

More information

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Dhirubhai Ambani Institute for Information and Communication Technology, Gandhinagar, Gujarat, India Email:

More information

Architectural Blueprint

Architectural Blueprint IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint

More information

IMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING

IMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING IMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING Pardeep kaur 1 and Er. Rupinder Singh 2 1 Research Scholar, Dept. of Computer Science and Engineering, Chandigarh University, Gharuan, India (Email: Pardeepdharni664@gmail.com)

More information

SCOS-2000 Technical Note

SCOS-2000 Technical Note SCOS-2000 Technical Note MDA Study Prototyping Technical Note Document Reference: Document Status: Issue 1.0 Prepared By: Eugenio Zanatta MDA Study Prototyping Page: 2 Action Name Date Signature Prepared

More information

International Journal for Management Science And Technology (IJMST)

International Journal for Management Science And Technology (IJMST) Volume 4; Issue 03 Manuscript- 1 ISSN: 2320-8848 (Online) ISSN: 2321-0362 (Print) International Journal for Management Science And Technology (IJMST) GENERATION OF SOURCE CODE SUMMARY BY AUTOMATIC IDENTIFICATION

More information

Architecture Design Recovery of a Family of Embedded Software Systems

Architecture Design Recovery of a Family of Embedded Software Systems Architecture Design Recovery of a Family of Embedded Software Systems An Experience Report Lars Bratthall and Per Runeson Dept. of Communication Systems, Lund University, Sweden. P.O. Box 118, S-221 00

More information

An Object-Oriented HLA Simulation Study

An Object-Oriented HLA Simulation Study BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 15, No 5 Special Issue on Control in Transportation Systems Sofia 2015 Print ISSN: 1311-9702; Online ISSN: 1314-4081 DOI: 10.1515/cait-2015-0022

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : , Course Code : MCS-032 Course Title : Object Oriented Analysis and Design Assignment Number : MCA (3)/032/Assign/2014-15 Assignment Marks : 100 Weightage : 25% Last Dates for Submission : 15th October,

More information

Reflective Java and A Reflective Component-Based Transaction Architecture

Reflective Java and A Reflective Component-Based Transaction Architecture Reflective Java and A Reflective Component-Based Transaction Architecture Zhixue Wu APM Ltd., Poseidon House, Castle Park, Cambridge CB3 0RD UK +44 1223 568930 zhixue.wu@citrix.com ABSTRACT In this paper,

More information

1. i. What are the 3 major components of a information system and show their relationship input output

1. i. What are the 3 major components of a information system and show their relationship input output Higher National Diploma in Information Technology First Year, Second semesterexamination-2011 IT2005: System Analysis and Design Answer Script No. of pages: 11 1. i. What are the 3 major components of

More information

Quality Attribute Driven Software Architecture Reconstruction. Version 1.0 QADSAR SATURN page 1

Quality Attribute Driven Software Architecture Reconstruction. Version 1.0 QADSAR SATURN page 1 Pittsburgh, PA 15213-3890 Quality Attribute Driven Software Architecture Reconstruction SATURN Workshop April 7, 2005 Liam O Brien Sponsored by the U.S. Department of Defense 2005 by Carnegie Mellon University

More information

SArEM: A SPEM extension for software architecture extraction process

SArEM: A SPEM extension for software architecture extraction process SArEM: A SPEM extension for software architecture extraction process Mira Abboud LaMA Laboratory Lebanese University Tripoli, Lebanon And LINA Laboratory University of Nantes Nantes, France mira.abboud@univ-nantes.fr

More information

HyperFrame - A Framework for Hypermedia Authoring

HyperFrame - A Framework for Hypermedia Authoring HyperFrame - A Framework for Hypermedia Authoring S. Crespo, M. F. Fontoura, C. J. P. Lucena, D. Schwabe Pontificia Universidade Católica do Rio de Janeiro - Departamento de Informática Universidade do

More information

A Meta-Model for Fact Extraction from Delphi Source Code

A Meta-Model for Fact Extraction from Delphi Source Code Electronic Notes in Theoretical Computer Science 94 (2004) 9 28 www.elsevier.com/locate/entcs A Meta-Model for Fact Extraction from Delphi Source Code Jens Knodel and G. Calderon-Meza 2 Fraunhofer Institute

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Self-Adaptive Middleware for Wireless Sensor Networks: A Reference Architecture

Self-Adaptive Middleware for Wireless Sensor Networks: A Reference Architecture Architecting Self-Managing Distributed Systems Workshop ASDS@ECSAW 15 Self-Adaptive Middleware for Wireless Sensor Networks: A Reference Architecture Flávia C. Delicato Federal University of Rio de Janeiro

More information

Model Driven Development of Context Aware Software Systems

Model Driven Development of Context Aware Software Systems Model Driven Development of Context Aware Software Systems Andrea Sindico University of Rome Tor Vergata Elettronica S.p.A. andrea.sindico@gmail.com Vincenzo Grassi University of Rome Tor Vergata vgrassi@info.uniroma2.it

More information

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh SOFTWARE DESIGN COSC 4353 / 6353 Dr. Raj Singh UML - History 2 The Unified Modeling Language (UML) is a general purpose modeling language designed to provide a standard way to visualize the design of a

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

A Reconnaissance on Design Patterns

A Reconnaissance on Design Patterns A Reconnaissance on Design Patterns M.Chaithanya Varma Student of computer science engineering, Sree Vidhyanikethan Engineering college, Tirupati, India ABSTRACT: In past decade, design patterns have been

More information

Support for Static Concept Location with sv3d

Support for Static Concept Location with sv3d Support for Static Concept Location with sv3d Xinrong Xie, Denys Poshyvanyk, Andrian Marcus Department of Computer Science Wayne State University Detroit Michigan 48202 {xxr, denys, amarcus}@wayne.edu

More information

Use-Case Driven Domain Analysis for Milk Production Information Systems

Use-Case Driven Domain Analysis for Milk Production Information Systems Use-Case Driven Domain Analysis for Milk Production Information Systems Andrea Carla Alves Borim a, Antônio Mauro Saraiva b and Carlos Alberto Ramos Pinto c a Faculdade Comunitária de Campinas Anhanguera

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

Panel: Pattern management challenges

Panel: Pattern management challenges Panel: Pattern management challenges Panos Vassiliadis Univ. of Ioannina, Dept. of Computer Science, 45110, Ioannina, Hellas E-mail: pvassil@cs.uoi.gr 1 Introduction The increasing opportunity of quickly

More information

DABYS: EGOS Generic Database System

DABYS: EGOS Generic Database System SpaceOps 2010 ConferenceDelivering on the DreamHosted by NASA Mars 25-30 April 2010, Huntsville, Alabama AIAA 2010-1949 DABYS: EGOS Generic base System Isabel del Rey 1 and Ramiro

More information

Integrated Framework for Automating the Structural Design Iteration

Integrated Framework for Automating the Structural Design Iteration Integrated Framework for Automating the Structural Design Iteration P. Mujumdar a and J.U. Maheswari b a,b Department of Civil Engineering, Indian Institute of Technology Delhi, India E-mail: purvamujumdar@gmail.com

More information

The Specifications Exchange Service of an RM-ODP Framework

The Specifications Exchange Service of an RM-ODP Framework The Specifications Exchange Service of an RM-ODP Framework X. Blanc (*+), M-P. Gervais(*), J. Le Delliou(+) (*)Laboratoire d'informatique de Paris 6-8 rue du Capitaine Scott F75015 PARIS (+)EDF Research

More information

Why Consider Implementation-Level Decisions in Software Architectures?

Why Consider Implementation-Level Decisions in Software Architectures? 1. Abstract Why Consider Implementation-Level Decisions in Software Architectures? Nikunj Mehta Nenad Medvidović Marija Rakić {mehta, neno, marija}@sunset.usc.edu Department of Computer Science University

More information

An Approach to Software Component Specification

An Approach to Software Component Specification Page 1 of 5 An Approach to Software Component Specification Jun Han Peninsula School of Computing and Information Technology Monash University, Melbourne, Australia Abstract. Current models for software

More information

EPOS: an Object-Oriented Operating System

EPOS: an Object-Oriented Operating System EPOS: an Object-Oriented Operating System Antônio Augusto Fröhlich 1 Wolfgang Schröder-Preikschat 2 1 GMD FIRST guto@first.gmd.de 2 University of Magdeburg wosch@ivs.cs.uni-magdeburg.de Abstract This position

More information

QoS-aware model-driven SOA using SoaML

QoS-aware model-driven SOA using SoaML QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira

More information

The IDN Variant TLD Program: Updated Program Plan 23 August 2012

The IDN Variant TLD Program: Updated Program Plan 23 August 2012 The IDN Variant TLD Program: Updated Program Plan 23 August 2012 Table of Contents Project Background... 2 The IDN Variant TLD Program... 2 Revised Program Plan, Projects and Timeline:... 3 Communication

More information

An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry

An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry I-Chen Wu 1 and Shang-Hsien Hsieh 2 Department of Civil Engineering, National Taiwan

More information

Towards a Framework to Incorporate NFRs into UML Models

Towards a Framework to Incorporate NFRs into UML Models Towards a Framework to Incorporate NFRs into UML Models Subrina Anjum Tonu, Ladan Tahvildari Software Technologies Applied Research Group Dept. of Electrical and Computer Engineering University of Waterloo

More information

An Approach to Software Architecture Analysis for Evolution and Reusability

An Approach to Software Architecture Analysis for Evolution and Reusability An Approach to Software Architecture Analysis for Evolution and Reusability Chung-Horng Lung, Sonia Bot, Kalai Kalaichelvan Rick Kazman 1 Software Engineering Analysis Lab. Department of Computer Science

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

Software Reuse Techniques

Software Reuse Techniques DCC / ICEx / UFMG Software Reuse Techniques Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Overview of Reuse Techniques Frameworks Design Patterns Configurable Applications Architecture Patterns

More information

Models in Conflict Towards a Semantically Enhanced Version Control System for Models

Models in Conflict Towards a Semantically Enhanced Version Control System for Models Models in Conflict Towards a Semantically Enhanced ersion Control System for Models Kerstin Altmanninger Department of Telecooperation, Johannes Kepler University Linz, Austria kerstin.altmanninger@jku.at

More information

Reconstructing Software Architectures using the Code- and Structure Package of the Knowledge Discovery Meta-Model

Reconstructing Software Architectures using the Code- and Structure Package of the Knowledge Discovery Meta-Model University of Kiel Department of Computer Science Software Engineering Group Reconstructing Software Architectures using the Code- and Structure Package of the Knowledge Discovery Meta-Model Bachelorthesis

More information

Understanding and Automating Application-level Caching

Understanding and Automating Application-level Caching Understanding and Automating Application-level Caching Jhonny Mertz and Ingrid Nunes (Advisor) 1 Programa de Pós-Graduação em Computação (PPGC), Instituto de Informática Universidade Federal do Rio Grande

More information

INTEROPERABILITY OF STATISTICAL DATA AND METADATA AMONG BRAZILIAN GOVERNMENT INSTITUTIONS USING THE SDMX STANDARD. Submitted by IBGE, Brazil 1

INTEROPERABILITY OF STATISTICAL DATA AND METADATA AMONG BRAZILIAN GOVERNMENT INSTITUTIONS USING THE SDMX STANDARD. Submitted by IBGE, Brazil 1 SDMX GLOBAL CONFERENCE 2009 INTEROPERABILITY OF STATISTICAL DATA AND METADATA AMONG BRAZILIAN GOVERNMENT INSTITUTIONS USING THE SDMX STANDARD Submitted by IBGE, Brazil 1 Abstract Since 1990, the Brazilian

More information

ADD 3.0: Rethinking Drivers and Decisions in the Design Process

ADD 3.0: Rethinking Drivers and Decisions in the Design Process ADD 3.0: Rethinking Drivers and Decisions in the Design Process Rick Kazman Humberto Cervantes SATURN 2015 Outline Presentation Architectural design and types of drivers The Attribute Driven Design Method

More information

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management Second OMG Workshop on Web Services Modeling Easy Development of Scalable Web Services Based on Model-Driven Process Management 88 solutions Chief Technology Officer 2003 Outline! Introduction to Web Services!

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

A B2B Search Engine. Abstract. Motivation. Challenges. Technical Report

A B2B Search Engine. Abstract. Motivation. Challenges. Technical Report Technical Report A B2B Search Engine Abstract In this report, we describe a business-to-business search engine that allows searching for potential customers with highly-specific queries. Currently over

More information

Research on Construction of Road Network Database Based on Video Retrieval Technology

Research on Construction of Road Network Database Based on Video Retrieval Technology Research on Construction of Road Network Database Based on Video Retrieval Technology Fengling Wang 1 1 Hezhou University, School of Mathematics and Computer Hezhou Guangxi 542899, China Abstract. Based

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

Supporting Migration to Services using Software Architecture Reconstruction

Supporting Migration to Services using Software Architecture Reconstruction Supporting Migration to Services using Software Architecture Reconstruction Liam O Brien 1 Dennis Smith, Grace Lewis Lero-ISERC Software Engineering Institute University of Limerick Carnegie Mellow University

More information

Modeling the Evolution of Aspect Configurations using Model Transformations

Modeling the Evolution of Aspect Configurations using Model Transformations Modeling the Evolution of Aspect Configurations using Model Transformations Uwe Zdun, Mark Strembeck Institute of Information Systems, New Media Lab Vienna University of Economics, Austria {uwe.zdun mark.strembeck}@wu-wien.ac.at

More information

Introduction to Object Oriented Analysis and Design

Introduction to Object Oriented Analysis and Design A class note on Introduction to Object Oriented Analysis and Design Definition In general, analysis emphasizes an investigation of the problem and requirements of the domain, rather than a solution. Whereas,

More information

An Introduction to PREMIS. Jenn Riley Metadata Librarian IU Digital Library Program

An Introduction to PREMIS. Jenn Riley Metadata Librarian IU Digital Library Program An Introduction to PREMIS Jenn Riley Metadata Librarian IU Digital Library Program Outline Background and context PREMIS data model PREMIS data dictionary Implementing PREMIS Adoption and ongoing developments

More information

A Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines

A Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines A Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines Jakob Axelsson School of Innovation, Design and Engineering, Mälardalen University, SE-721 23 Västerås, Sweden

More information

Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes

Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes Chiara Di Francescomarino supervised by Paolo Tonella dfmchiara@fbk.eu - Fondazione Bruno Kessler, Trento, Italy Abstract.

More information

Capturing and Formalizing SAF Availability Management Framework Configuration Requirements

Capturing and Formalizing SAF Availability Management Framework Configuration Requirements Capturing and Formalizing SAF Availability Management Framework Configuration Requirements A. Gherbi, P. Salehi, F. Khendek and A. Hamou-Lhadj Electrical and Computer Engineering, Concordia University,

More information

Software Architecture Recovery based on Pattern Matching

Software Architecture Recovery based on Pattern Matching Software Architecture Recovery based on Pattern Matching PhD Dissertation Synopsis Kamran Sartipi School of Computer Science, University of Waterloo Waterloo, ON. NL 3G, Canada ksartipi@math.uwaterloo.ca

More information

Conceptual Model for a Software Maintenance Environment

Conceptual Model for a Software Maintenance Environment Conceptual Model for a Software Environment Miriam. A. M. Capretz Software Engineering Lab School of Computer Science & Engineering University of Aizu Aizu-Wakamatsu City Fukushima, 965-80 Japan phone:

More information

PROJECT PERIODIC REPORT

PROJECT PERIODIC REPORT PROJECT PERIODIC REPORT Grant Agreement number: 257403 Project acronym: CUBIST Project title: Combining and Uniting Business Intelligence and Semantic Technologies Funding Scheme: STREP Date of latest

More information

Introduction to Software Reuse

Introduction to Software Reuse DCC / ICEx / UFMG Introduction to Software Reuse Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Software Reuse The use of existing software or software knowledge to build new software In the last

More information

Implementing Trusted Digital Repositories

Implementing Trusted Digital Repositories Implementing Trusted Digital Repositories Reagan W. Moore, Arcot Rajasekar, Richard Marciano San Diego Supercomputer Center 9500 Gilman Drive, La Jolla, CA 92093-0505 {moore, sekar, marciano}@sdsc.edu

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

17. GRASP: Designing Objects with Responsibilities

17. GRASP: Designing Objects with Responsibilities 17. GRASP: Designing Objects with Responsibilities Objectives Learn to apply five of the GRASP principles or patterns for OOD. Dr. Ziad Kobti School of Computer Science University of Windsor Understanding

More information

Overview of lectures today and Wednesday

Overview of lectures today and Wednesday Model-driven development (MDA), Software Oriented Architecture (SOA) and semantic web (exemplified by WSMO) Draft of presentation John Krogstie Professor, IDI, NTNU Senior Researcher, SINTEF ICT 1 Overview

More information

From Design Patterns: Elements of Reusable Object Oriented Software. Read the sections corresponding to patterns covered in the following slides.

From Design Patterns: Elements of Reusable Object Oriented Software. Read the sections corresponding to patterns covered in the following slides. From Design Patterns: Elements of Reusable Object Oriented Software Read the sections corresponding to patterns covered in the following slides. DESIGN PRINCIPLES Modularity Cohesion Coupling Separation

More information

Harmonization of usability measurements in ISO9126 software engineering standards

Harmonization of usability measurements in ISO9126 software engineering standards Harmonization of usability measurements in ISO9126 software engineering standards Laila Cheikhi, Alain Abran and Witold Suryn École de Technologie Supérieure, 1100 Notre-Dame Ouest, Montréal, Canada laila.cheikhi.1@ens.etsmtl.ca,

More information

Methodologies for Web Information System Design

Methodologies for Web Information System Design Methodologies for Web Information System Design Peter Barna, Flavius Frasincar, Geert-Jan Houben, and Richard Vdovjak Technische Universiteit Eindhoven PO Box 53, NL-5600 MB Eindhoven, The Netherlands

More information

Ontology based Model and Procedure Creation for Topic Analysis in Chinese Language

Ontology based Model and Procedure Creation for Topic Analysis in Chinese Language Ontology based Model and Procedure Creation for Topic Analysis in Chinese Language Dong Han and Kilian Stoffel Information Management Institute, University of Neuchâtel Pierre-à-Mazel 7, CH-2000 Neuchâtel,

More information