Déjà Vu: A Hierarchical Case-Based Reasoning System for Software Design
|
|
- Melinda Baldwin
- 5 years ago
- Views:
Transcription
1 Déjà Vu: A Hierarchical Case-Based Reasoning System for Software Design Barry Smyth Hitachi Dublin Laboratory Trinity College Dublin 2 Ireland. Tel Fax bsmyth@vax1.tcd.ie Pádraig Cunningham Hitachi Dublin Laboratory Trinity College Dublin 2 Ireland. Abstract Déjà Vu is a case-based reasoning system for software design. This paper describes the hierarchical case-base in Déjà Vu and the blackboard based architecture that controls reasoning with this case-base. The case-base is structured as a partonomic hierarchy. Each complete solution in the case base is represented by a top-level case describing the outline of the solution. This top-level case contains pointers to several 'detail cases' representing the modules that make up the solution. In addition the case base has a taxonomic structure that facilitates case retrieval. The partonomic structure of the case base requires that the case base reasoning process is multi-stage rather than the singlepass retrieval process that is normal in case-base reasoning. In Déjà Vu a solution is built by first retrieving and adapting a top-level case and then retrieving and adapting detail cases to build up this solution. The control issues introduced by this multi-stage case-base reasoning is addressed by organising the system as a blackboard system with dedicated control agents organising the reasoning process. 1
2 1. Introduction This paper describes a case-based reasoning system for software design. The system is novel to the extent that using it to generate a new solution involves several interations of the case-base reasoning (CBR) process. This requires that the case-base have a hierarchical structure and means that the control process is more complex than in single-pass CBR systems. Case-based reasoning is motivated in large part by the intuition that much of human expert competence works by retrieving and modifying previously solved problems stored in memory. One promising area of application for CBR is in software engineering. The intuition about human expert competence working by retrieving and adapting past solutions holds - the systems programmer who wishes to produce a script for a particular purpose will retrieve a similar script and adapt it. The question for CBR research in software engineering is can this process be formalised into an automatic software development system. Attempts at using CBR in software development have the advantage that the software development process can be formalised and there has been extensive research in automatic programming and formal methods. Indeed the main difficulty in automatic programming is the huge search process involved in transforming the specification into executable code. This is precisely the issue that is addressed by using CBR in software design - in that transforming the retrieved solution to solve the target problem is expected to be easier than producing that solution from transformations on the initial specification. This advantage of formalization is offset to some extent by the 'brittleness' of the programming domain. A piece of code cannot be slightly wrong; this is in contrast to other CBR applications where a family of solutions are acceptable. Our experience has been that this problem of brittleness is exacerbated if the solution is to be in a comparatively low level language. The more remote the solution is from the input specification the more difficult it is to automate the adaptation process. The Déjà Vu system described here works with a control programming language that is very high level and consequently the adaptation process is more tractable. This plant control problem domain will be described in the next section before discussing the details of the CBR system. Déjà Vu's hierarchical case base structure is described in section 3 and its blackboard control architecture in section Problem Domain As mentioned in the introduction, the main difficulty in using CBR for software design is the problem of adapting the solution in the base case to fit the requirements of the target specification. This problem is relieved in our situation because the solution is expressed in a very high level representation. The solution is consequently closer to the problem specification so reasoning from specifications to solutions is more tractable. We are concerned with plant control software for controlling autonomous vehicles in loading and unloading metal coils in a steel milling process. Much work has already been done in automating the actual generation of the plant controller code [Sakurai '90] thus providing a large amount of initial cases for the case base. The input to this code generation system is a network representation of the operation procedure, an example of which is shown in the solution window in Figure 1. The code generation system compiles this network representation into executable code. 2
3 { CB } Edit Instance: F-BUGGY-1S Child of FORWARD-BUGGY Slot Names: Selected Feature Slot: DESTINATION Filler: TENSION-REEL Case Id. Internal Features Solution: Feature Value Buggy Fast Forward Position Check Decelerate (200m Before Tension Reel) Buggy Slow Forward Stop (Tension Reel Position) Buggy Stop Network Representation Figure 1. An example case from the Déjà Vu case-base as presented in the case browser. This example is a detail or module case that is part of a top-level solution in the case-base. The toplevel case to which it belongs involves removing a coil of worked steel from a steel mill. All the cases under consideration involve loading or unloading empty spools or coils of material and moving them to storage areas. The different cases involve different arrangements of the spindles on which the reels are loaded and different layouts of the storage areas for reels and empty spools. The objective with Déjà Vu is to receive a problem statement such as "Remove Spool from tension Reel with Single Speed Buggy" given a particular shop floor layout and to produce a solution that can be compiled into executable code. The first step involves producing a full specification of this case that will be the basis of the CBR process. 3. Hierarchical Case Base We mentioned already that the case shown in Figure 1 is a detailed case that is part of a more elaborate solution. Each solution in the case-base is stored as several cases, one top level case and detailed cases representing the components of the top level case (the architecture will support intermediate levels if necessary). In Figure 2 f-buggy-1s is a detailed case and r-spool-1sbuggy is a top-level case. This is in contrast to traditional CBR systems where each case represents a complete solution at the level of the planners's primitive actions. This partonomic structure adds greater flexibility to the CBR component of Déjà Vu and supports the recursive nature of a Déjà Vu problem solving episode. When presented with a target problem Déjà Vu retrieves a 'best' plan, a top-level case (TLC), from the case-base. The adaptation of this TLC invokes further retrievals corresponding to its internal low-level components. However the detailed cases (DCs) retrieved will typically be different from those indicated by the retrieved TLC since retrieval will be on the basis of some element of the target specification. Thus, numerous retrievals guided by the initial TLCs structure will result in a collection of code components which are adapted to conform to the target situation, and then integrated to form a complete target solution (see Section 4). Individual cases are indexed by a set of classification features which locate the case within a taxonomy of case types reflecting the functionality of plant-model planning [Hammond '89] (see Figure 2). Each classification feature is represented by a type node in the case-base and defines a particular set of internal features. Actual cases are stored in case nodes and contain both the case solution and an internal feature set providing a description of the case goals. The features available to a case node are those inherited from its superclasses. The main advantage of this taxonomic structure is the increased efficiency of the retrieval process. 3
4 *Program* Stepping Buggy f-buggy-1s Detailed Case r-spool-1s-buggy f-buggy-1s l-spool b-buggy-1s u-spool Spool b-buggy-1s b-buggy-2s r-spool-1s-buggy l-spool u-spool Removal r-spool-1s-buggy Move Forward f-buggy-1s Top-Level Case Key: Type Node Case Node Figure 2. A portion of the case base viewed as a taxonomy, the insert shows the partonomic structure of one of the top-level cases. The retrieval process is a two-step operation. The first step uses the classification features of the target specification to locate a number of case-clusters. The classification features reflect the structure of the problem domain and thus this first retrieval step will retrieve a set of cases which are similar to the target problem. The second stage matches the internal features of the target against the internal features of each case retrieved by the previous step and results in the retrieval of a single, 'best' case. Determination of 'best' case is based on a similarity metric which estimates the adaptation distance from the base to the target case (i.e. a measure of the 'work' needed to adapt the base case to the target case). 4. Blackboard Solution The fact that the Déjà Vu is a multi-pass rather than a single pass system as is normally the case in CBR introduces a problem of control into the system. This problem is addressed by organising the system as a blackboard with the solution being built upon the panels of the blackboard by the different knowledge agents (see Figure 3). There are four knowledge agents in the current system. Two of these agents are high level agents controlling the dissection of the problem and the composition of the solution; these are the Specification Analysis and Integration Agents respectively. The two low level agents are the Retrieval agent and the Adaptation agent; these perform the details of the CBR. (see also [Nii '86] and [Cunningham '91] on blackboards) Retrieval Agent Case Base Case Specification Operation: Move Forward Object :Buggy Speeds : 2 Adaptation Retrieved Case () (Buggy Fast Forward Start Node 1) (Buggy Slow Forward Node 1 Node 2) l-spool b-buggy-2s u-spool Solution??? Target Specification Detailed Problem specification Integration Agent Adaptation Agent Specification Analysis Agent Figure 3. The blackboard based control structure in Déjà Vu. 4
5 The problem solving action of Déjà Vu works as follows: The problem specification is formulated as a frame structure that reflects the system configuration and layout - this is the target specification. This is passed to the retrieval/adaptation agents and the best top-level case is adapted and returned. This TLC acts as an integration template on which the solution is built. The Specification Analysis agent works on this adapted top-level solution resulting in a number of CBR retrieval-adaptation cycles that fill out the details of the solution. The result of each CBR cycle is the passing of a solution component to the solution panel for integration into the evolving target solution. For example consider the problem "Remove Spool from Tension Reel using 2 Speed Buggy"; this is the problem shown in Figure 3. The TLC retrieved is r-spool-1s-buggy, the main difference between this and the target case being that the transport buggy in this case is capable of two speed operation so the modules controlling the buggy will have to be changed. The retrieved TLC has the components Forward*1s-Load-Back*1s-Unload and this is adapted to Forward*2s-Load- Back*2s-Unload. The Specification Analysis breaks this down into its 4 constituents and passes each of these to the Retrieval/Adaptation Agents in turn. The Load and Unload detail cases retrieved are those corresponding to the retrieved TLC but different detail cases are retrieved for the 2-speed moves (in fact and b-buggy-2s). These partial solutions are picked up by the Integration Agent and integrated into the solution. In this situation the detail cases require no adaptation; this will not always be the case. 5. Conclusion This multi-pass CBR process reflects the human expert's process of design by successive refinement. However, the increased complexity of the CBR process introduces an added problem of control. The blackboard structure adopted in Déjà Vu shows considerable promise in handling this added complexity. The process of successive refinement in the CBR require that the case-base contain cases at different levels of detail. These are organised into a partonomic hierarchy. In the current implementation this hierarchy contains just two levels; however intermediate levels can be added in the future. The cases are stored as frames which form a taxonomy that facilitates the retrieval process. Current research efforts concentrate on experimenting with the organisation of the blackboard process. In the future our intention is to develop the system as an interactive man-machine system with the user interacting in the adaptation process. References [Cunningham '91] Cunningham P., Veale T., "A Flexible Blackboard Architecture for Automatic Knowledge Elicitation form Text", in Proceedings of Fifth European Knowledge Acquisition for Knowledge Based Systems Workshop, Crieff, Scotland, May, [Hammond '89] Hammond K., "Planning from memory" in Case-Based Planning, ed., B. Chandrasekaran, Academic Press, [Nii '86] Nii H. P., "Blackboard Systems: The Blackboard Model of Problem Solving and the Evolution of Blackboard Architectures", AI Magazine, Vol.7. No.2, pp39-53, Summer, [Sakurai '90] Sakurai T., et al. "An Automatic Programming System based on Modular Integrated-Concept Architecture (MICA)", in Proceedings of International Conference on Industrial Electronics, Control and Instrumentation, pp , Monterey, California,
6 6
Agent-Oriented Software Engineering
Agent-Oriented Software Engineering Lin Zuoquan Information Science Department Peking University lz@is.pku.edu.cn http://www.is.pku.edu.cn/~lz/teaching/stm/saswws.html Outline Introduction AOSE Agent-oriented
More informationDescribing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms?
Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? CIS 8690 Enterprise Architectures Duane Truex, 2013 Cognitive Map of 8090
More informationSemantic Web. Ontology Engineering and Evaluation. Morteza Amini. Sharif University of Technology Fall 93-94
ه عا ی Semantic Web Ontology Engineering and Evaluation Morteza Amini Sharif University of Technology Fall 93-94 Outline Ontology Engineering Class and Class Hierarchy Ontology Evaluation 2 Outline Ontology
More informationComponents vs. Objects
Components vs. Objects Luigia Petre Turku Centre for Computer Science & Abo Akademi University, FIN-20520 Turku, Finland (Presented at Nordic Workshop on Programming Theory, Bergen, Norway, Oct 11-13,
More informationDomain-specific Concept-based Information Retrieval System
Domain-specific Concept-based Information Retrieval System L. Shen 1, Y. K. Lim 1, H. T. Loh 2 1 Design Technology Institute Ltd, National University of Singapore, Singapore 2 Department of Mechanical
More informationOntology Development. Qing He
A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far Ontology Development Qing He 1 Why develop an ontology? In recent years the development of ontologies
More informationSemantic Web. Ontology Engineering and Evaluation. Morteza Amini. Sharif University of Technology Fall 95-96
ه عا ی Semantic Web Ontology Engineering and Evaluation Morteza Amini Sharif University of Technology Fall 95-96 Outline Ontology Engineering Class and Class Hierarchy Ontology Evaluation 2 Outline Ontology
More informationCIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)
By the end of this course, students should CIS 1.5 Course Objectives a. Understand the concept of a program (i.e., a computer following a series of instructions) b. Understand the concept of a variable
More informationAN OBJECT-ORIENTED VISUAL SIMULATION ENVIRONMENT FOR QUEUING NETWORKS
AN OBJECT-ORIENTED VISUAL SIMULATION ENVIRONMENT FOR QUEUING NETWORKS Hussam Soliman Saleh Al-Harbi Abdulkader Al-Fantookh Abdulaziz Al-Mazyad College of Computer and Information Sciences, King Saud University,
More informationBuilding Knowledge Models Using KSM
Building Knowledge Models Using KSM Jose Cuena, Martin Molina Department of Artificial Intelligence, Technical University of Madrid, Campus de Montegancedo S/N, Boadilla del Monte 28660, Madrid, SPAIN
More informationLecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science)
Lecture 09 Ada to Software Engineering Mr. Mubashir Ali Lecturer (Dept. of dr.mubashirali1@gmail.com 1 Summary of Previous Lecture 1. ALGOL 68 2. COBOL 60 3. PL/1 4. BASIC 5. Early Dynamic Languages 6.
More informationRemembering To Forget A Competence-Preserving Case Deletion Policy for Case-Based Reasoning Systems
Remembering To Forget A Competence-Preserving Case Deletion Policy for Case-Based Reasoning Systems Barry Smyth Hitachi Dublin Laboratory, Trinity College Dublin, Dublin, IRELAND. EMail: barry.smyth@hdl.ie
More informationOntology Development. Farid Naimi
Ontology Development Farid Naimi Overview Why develop an ontology? What is in an ontology? Ontology Development Defining classes and a class hierarchy Naming considerations Conclusion Why develop an ontology?
More informationHYPERION SYSTEM 9 PERFORMANCE SCORECARD
HYPERION SYSTEM 9 PERFORMANCE SCORECARD RELEASE 9.2 NEW FEATURES Welcome to Hyperion System 9 Performance Scorecard, Release 9.2. This document describes the new or modified features in this release. C
More informationBehavior Programming Language and Automated Code Generation for Agent Behavior Control
Behavior Programming Language and Automated Code Generation for Agent Behavior Control Thuc Vu, Manuela Veloso tdv@andrew.cmu.edu, mmv@cs.cmu.edu Carnegie Mellon University 5000 Forbes Avenue Pittsburgh,
More informationchallenges 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<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany
Information Systems University of Koblenz Landau, Germany Ontology 101 Design principles Ontology design principles Based on paper by Natasha Noy & Deborah McGuinness Ontology Development 101: A Guide
More informationAdvances in Databases and Information Systems 1997
ELECTRONIC WORKSHOPS IN COMPUTING Series edited by Professor C.J. van Rijsbergen Rainer Manthey and Viacheslav Wolfengagen (Eds) Advances in Databases and Information Systems 1997 Proceedings of the First
More informationWEBSELL: Intelligent Sales Assistants for the World Wide Web
WEBSELL: Intelligent Sales Assistants for the World Wide Web Pádraig Cunningham, Ralph Bergmann, Sascha Schmitt, Ralph Traphöner, Sean Breen, Barry Smyth Trinity College Dublin, Computer Science, Technical
More informationCS:2820 (22C:22) Object-Oriented Software Development
The University of Iowa CS:2820 (22C:22) Object-Oriented Software Development! Spring 2015 Software Complexity by Cesare Tinelli Complexity Software systems are complex artifacts Failure to master this
More informationRepresenting Cases for CBR in XML 1
Representing Cases for CBR in XML 1 Lorcan Coyle, Conor Hayes, Pádraig Cunningham Department of Computer Science Trinity College Dublin {Lorcan.Coyle, Conor.Hayes, Padraig.Cunningham}@cs.tcd.ie Abstract.
More informationDistributed Clustering Method for Large-Scaled Wavelength Routed Networks
Distributed Clustering Method for Large-Scaled Wavelength Routed Networks Yukinobu Fukushima Graduate School of Information Science and Technology, Osaka University - Yamadaoka, Suita, Osaka 60-08, Japan
More informationSimplified Approach for Representing Part-Whole Relations in OWL-DL Ontologies
Simplified Approach for Representing Part-Whole Relations in OWL-DL Ontologies Pace University IEEE BigDataSecurity, 2015 Aug. 24, 2015 Outline Ontology and Knowledge Representation 1 Ontology and Knowledge
More informationLANGUAGE TRANSLATORS. Workbook. etghallem. St. Aloysius College Computing
LANGUAGE TRANSLATORS Workbook St. Aloysius College Computing Contents Programming... 2... 3 Types of Programming Languages... 3 Low Level Languages (LLL)... 3 High Level Languages (HLL)... 3 High Level
More informationModel-Solver Integration in Decision Support Systems: A Web Services Approach
Model-Solver Integration in Decision Support Systems: A Web Services Approach Keun-Woo Lee a, *, Soon-Young Huh a a Graduate School of Management, Korea Advanced Institute of Science and Technology 207-43
More informationEasy Ed: An Integration of Technologies for Multimedia Education 1
Easy Ed: An Integration of Technologies for Multimedia Education 1 G. Ahanger and T.D.C. Little Multimedia Communications Laboratory Department of Electrical and Computer Engineering Boston University,
More informationAn expert network simulation and design system
An expert network simulation and design system An expert network simulation and design system Bhavani M. Thuraisingham Bhavani M. Thuraisingham Honey well Inc., Corporate Systems Development Division 1000
More informationSOFTWARE ENGINEERING AND PROJECT MAN AGEMENT
SOFTWARE ENGINEERING AND PROJECT MAN AGEMENT Question: Difference between Verification and Validation? Answer: Verification ensures the product is designed to deliver all functionality to the customer;
More informationRIGOROUSLY AUTOMATING TRANSFORMATIONS OF UML BEHAVIOR MODELS
RIGOROUSLY AUTOMATING TRANSFORMATIONS OF UML BEHAVIOR MODELS Jon Whittle 1, João Araújo 2, Ambrosio Toval 3, and Jose Luis Fernández Alemán 3 1 QSS / NASA Ames Research Center, M/S 269-2, Moffett Field,
More informationCASE BASED REASONING A SHORT OVERVIEW
CASE BASED REASONING A SHORT OVERVIEW Z. Budimac, V. Kurbalija Institute of Mathematics and Computer Science, Fac. of Science, Univ. of Novi Sad Trg D. Obradovića 4, 21000 Novi Sad, Yugoslavia zjb@im.ns.ac.yu,
More information# 47. Product data exchange using STEP
# 47 Product data exchange using STEP C. Demartini, S. Rivoira, A. Valenzano CENS and Dip. di Automatica e Informatica, Politecnico c.so Duca degli Abruzzi, 24 10129 Torino (Italy) tel. +39-11-5647016,
More informationAdaptive Scheduling in Wireless Sensor Networks.
Adaptive Scheduling in Wireless Sensor Networks. A.G. Ruzzelli, M.J. O'Grady, G.M.P O'Hare, R. Tynan. Adaptive Information Cluster (AIC group) Department of Computer Science, University College Dublin
More informationSDMX self-learning package No. 5 Student book. Metadata Structure Definition
No. 5 Student book Metadata Structure Definition Produced by Eurostat, Directorate B: Statistical Methodologies and Tools Unit B-5: Statistical Information Technologies Last update of content December
More informationInheritance (Chapter 7)
Inheritance (Chapter 7) Prof. Dr. Wolfgang Pree Department of Computer Science University of Salzburg cs.uni-salzburg.at Inheritance the soup of the day?! Inheritance combines three aspects: inheritance
More informationMutual recognition between regulators. Mr John Allan BEng CEng MIET Head of Analysis & Plans
Mutual recognition between regulators Mr John Allan BEng CEng MIET Head of Analysis & Plans International Military Aviation Acquisition Project specific arrangements are tailored for each multinational
More informationFuture Directions in Simulation Modeling. C. Dennis Pegden
Future Directions in Simulation Modeling C. Dennis Pegden Outline A half century of progress. Where do we need to go from here? How do we get there? Simulation: A Compelling Technology See the future Visualize
More informationComponent-Based Software Engineering TIP
Component-Based Software Engineering TIP X LIU, School of Computing, Napier University This chapter will present a complete picture of how to develop software systems with components and system integration.
More informationContemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements.
Contemporary Design We have been talking about design process Let s now take next steps into examining in some detail Increasing complexities of contemporary systems Demand the use of increasingly powerful
More informationAn Interactive Web based Expert System Degree Planner
An Interactive Web based Expert System Degree Planner Neil Dunstan School of Science and Technology University of New England Australia ph: +61 2 67732350 fax: +61 2 67735011 neil@cs.une.edu.au ABSTRACT
More informationTOWARDS A CONCEPTUAL FRAMEWORK FOR DIGITAL DOSSIER MANAGEMENT IN CRIMINAL PROCEEDINGS
TOWARDS A CONCEPTUAL FRAMEWORK FOR DIGITAL DOSSIER MANAGEMENT IN CRIMINAL PROCEEDINGS Martin Apistola, Martijn Warnier, Frances Brazier, Anja Oskamp VU University Amsterdam De Boelelaan 1105 Amsterdam
More informationPrinciples of Computer Game Design and Implementation. Lecture 3
Principles of Computer Game Design and Implementation Lecture 3 We already knew Introduction to this module History of video High-level information for a game (such as Game platform, player motivation,
More informationCMPT Data and Program Organization
CMPT-201 - Data and Program Organization Professor: Bill Havens Office: APSC-10828 Lectures: MWF 2:30pm - 3:20pm Venue: C-9002 WWW: http://www.cs.sfu.ca/coursecentral/201 Office Hours: Monday @3:30pm January
More informationINHERITED BEHAVIOUR PATTERN
INHERITED BEHAVIOUR PATTERN Class Behavioral Intent Extends the behaviour of a method in subclasses by reusing the inherited method and adding to it. This pattern is supported by some object-oriented languages
More informationComponent-Based Software Engineering TIP
Component-Based Software Engineering TIP X LIU, School of Computing, Napier University This chapter will present a complete picture of how to develop software systems with components and system integration.
More informationPARAMETRIC MODELING FOR MECHANICAL COMPONENTS 1
PARAMETRIC MODELING FOR MECHANICAL COMPONENTS 1 Wawre S.S. Abstract: parametric modeling is a technique to generalize specific solid model. This generalization of the solid model is used to automate modeling
More informationTIRA: Text based Information Retrieval Architecture
TIRA: Text based Information Retrieval Architecture Yunlu Ai, Robert Gerling, Marco Neumann, Christian Nitschke, Patrick Riehmann yunlu.ai@medien.uni-weimar.de, robert.gerling@medien.uni-weimar.de, marco.neumann@medien.uni-weimar.de,
More informationQoS-Aware IPTV Routing Algorithms
QoS-Aware IPTV Routing Algorithms Patrick McDonagh, Philip Perry, Liam Murphy. School of Computer Science and Informatics, University College Dublin, Belfield, Dublin 4. {patrick.mcdonagh, philip.perry,
More informationTo install Glamour on your Pharo image execute the following code:
Glamour Chapter 1 Glamour with the participation of: Tudor Girba (tudor@tudorgirba.com) Browsers are a crucial instrument in understanding complex systems or models. A browser is a tool to navigate and
More informationVerification of Multiple Agent Knowledge-based Systems
Verification of Multiple Agent Knowledge-based Systems From: AAAI Technical Report WS-97-01. Compilation copyright 1997, AAAI (www.aaai.org). All rights reserved. Daniel E. O Leary University of Southern
More informationTopics in Object-Oriented Design Patterns
Software design Topics in Object-Oriented Design Patterns Material mainly from the book Design Patterns by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides; slides originally by Spiros Mancoridis;
More informationJQueryScapes: customizable Java code perspectives
JQueryScapes: customizable Java code perspectives [Forum Demonstration Proposal] Lloyd Markle, Kris De Volder Department of Computer Science University of British Columbia Vancouver, BC, Canada 604-822-1290
More informationETSI ETR 046 TECHNICAL July 1992 REPORT
ETSI ETR 046 TECHNICAL July 1992 REPORT Source: ETSI TC-NA Reference: DTR/NA-43303 ICS: 33.080 Key words: TMN, modelling Network Aspects (NA); Telecommunications management networks modelling guidelines
More informationWhat are the characteristics of Object Oriented programming language?
What are the various elements of OOP? Following are the various elements of OOP:- Class:- A class is a collection of data and the various operations that can be performed on that data. Object- This is
More informationSmart 5G networks: enabled by network slicing and tailored to customers needs
Smart 5G networks: enabled by network slicing and tailored to customers needs To date, mobile networks have been inflexible. Customers (people, businesses and machines) had to take what was available,
More informationTaxonomies and controlled vocabularies best practices for metadata
Original Article Taxonomies and controlled vocabularies best practices for metadata Heather Hedden is the taxonomy manager at First Wind Energy LLC. Previously, she was a taxonomy consultant with Earley
More informationReducing the Size of Routing Tables for Large-scale Network Simulation
Reducing the Size of Routing Tables for Large-scale Network Simulation Akihito Hiromori, Hirozumi Yamaguchi, Keiichi Yasumoto, Teruo Higashino and Kenichi Taniguchi Graduate School of Engineering Science,
More informationObject-Oriented Programming
Object-Oriented Programming 3/18/14 Presentation for use with the textbook Data Structures and Algorithms in Java, 6th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Wiley, 2014 Object-Oriented
More informationWBEM Web-based Enterprise Management
1 WBEM Web-based Enterprise Management Outline What is Enterprise Management? What are the drivers in Enterprise Mgt.? Distributed Management Technology Forum (DMTF) Web Based Enterprise Management (WBEM)
More informationINTRODUCING 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 informationThe modularity requirement
The modularity requirement The obvious complexity of an OS and the inherent difficulty of its design lead to quite a few problems: an OS is often not completed on time; It often comes with quite a few
More informationA Quality of Service Decision Model for ATM-LAN/MAN Interconnection
A Quality of Service Decision for ATM-LAN/MAN Interconnection N. Davies, P. Francis-Cobley Department of Computer Science, University of Bristol Introduction With ATM networks now coming of age, there
More informationArchivists Toolkit: Description Functional Area
: Description Functional Area Outline D1: Overview D2: Resources D2.1: D2.2: D2.3: D2.4: D2.5: D2.6: D2.7: Description Business Rules Required and Optional Tasks Sequences User intentions / Application
More informationCHAPTER 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 informationImplementing manufacturing feature based design in CAD/CAM
Implementing manufacturing feature based design in CAD/CAM T. Szecsi School of Mechanical and Manufacturing Engineering, Materials Processing Research Centre, Dublin City University, Dublin 9, Ireland
More informationADMINISTRATIVE MANAGEMENT COLLEGE
First Semester ADMINISTRATIVE MANAGEMENT COLLEGE BACHELOR OF COMPUTER APPLICATION COURSE OUTCOME (CO) Problem solving techniques Using C CO 1: Understand the basic concepts of programming, software and
More informationNOTICE WARNING CONCERNING COPYRIGHT RESTRICTIONS: The copyright law of the United States (title 17, U.S. Code) governs the making of photocopies or
NOTICE WARNING CONCERNING COPYRIGHT RESTRICTIONS: The copyright law of the United States (title 17, U.S. Code) governs the making of photocopies or other reproductions of copyrighted material. Any copying
More informationPattern-Oriented Development with Rational Rose
Pattern-Oriented Development with Rational Rose Professor Peter Forbrig, Department of Computer Science, University of Rostock, Germany; Dr. Ralf Laemmel, Department of Information Management and Software
More informationWebsite User Guide Your guide to making the most of your Metal Bulletin subscription
1 Website User Guide Your guide to making the most of your Metal Bulletin subscription 2 Contents Website Navigation My Account / Account Settings My Account / Email Preferences Metal Bulletin Price Book
More informationConcept as a Generalization of Class and Principles of the Concept-Oriented Programming
Computer Science Journal of Moldova, vol.13, no.3(39), 2005 Concept as a Generalization of Class and Principles of the Concept-Oriented Programming Alexandr Savinov Abstract In the paper we describe a
More informationMethodologies, Tools and Languages. Where is the Meeting Point?
Methodologies, Tools and Languages. Where is the Meeting Point? Asunción Gómez-Pérez Mariano Fernández-López Oscar Corcho Artificial Intelligence Laboratory Technical University of Madrid (UPM) Spain Index
More informationLearning Composite Operators for Object Detection
Real-World Applications Learning Composite Operators for Object Detection Bir Bhanu and Yingqiang Lin Center for Research in Intelligent Systems University of California, Riverside, CA, 92521, USA Email:
More informationSystem Configuration. Paul Anderson. publications/oslo-2008a-talk.pdf I V E R S I U N T Y T H
E U N I V E R S I System Configuration T H O T Y H F G Paul Anderson E D I N B U R dcspaul@ed.ac.uk http://homepages.inf.ed.ac.uk/dcspaul/ publications/oslo-2008a-talk.pdf System Configuration What is
More informationCrossing the Archival Borders
IST-Africa 2008 Conference Proceedings Paul Cunningham and Miriam Cunningham (Eds) IIMC International Information Management Corporation, 2008 ISBN: 978-1-905824-07-6 Crossing the Archival Borders Fredrik
More informationSEMESTER 2 Chapter 3 Introduction to Dynamic Routing Protocols V 4.0
SEMESTER 2 Chapter 3 Introduction to Dynamic Routing Protocols V 4.0 3.1.1 What are the four routing RIP, RIPv2, EIGRP, OSPFv2 protocols that are the focus of this course? 3.1.1.2 What are routing protocols?
More informationCase-Based Reasoning
0/0/ Case-Based Reasoning In this lecture, we turn to another popular form of reasoning system: case based reasoning (CBR) Unlike Rule-based systems and Fuzzy Logic, CBR does not use any rules or logical
More informationXETA: extensible metadata System
XETA: extensible metadata System Abstract: This paper presents an extensible metadata system (XETA System) which makes it possible for the user to organize and extend the structure of metadata. We discuss
More informationSIR C R REDDY COLLEGE OF ENGINEERING
SIR C R REDDY COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY Course Outcomes II YEAR 1 st SEMESTER Subject: Data Structures (CSE 2.1.1) 1. Describe how arrays, records, linked structures,
More informationSelf-Controlling Architecture Structured Agents
Self-Controlling Architecture Structured Agents Mieczyslaw M. Kokar (contact author) Department of Electrical and Computer Engineering 360 Huntington Avenue, Boston, MA 02115 ph: (617) 373-4849, fax: (617)
More informationBuilding a Concept Hierarchy from a Distance Matrix
Building a Concept Hierarchy from a Distance Matrix Huang-Cheng Kuo 1 and Jen-Peng Huang 2 1 Department of Computer Science and Information Engineering National Chiayi University, Taiwan 600 hckuo@mail.ncyu.edu.tw
More informationIntelligent flexible query answering Using Fuzzy Ontologies
International Conference on Control, Engineering & Information Technology (CEIT 14) Proceedings - Copyright IPCO-2014, pp. 262-277 ISSN 2356-5608 Intelligent flexible query answering Using Fuzzy Ontologies
More informationDesign Pattern: Composite
Design Pattern: Composite Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Motivation
More informationTecniche di Progettazione: Design Patterns
Tecniche di Progettazione: Design Patterns GoF: Composite 1 Composite pattern Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects
More informationSafety and limit switches
Microswitches and sealed position switches If your application depends on it SERIES MP800 Plastic or metal case IP65-66 protection 30 mm, 40 mm or 50 mm case width Forced break switches with slow action
More informationDesign Patterns. Gunnar Gotshalks A4-1
Design Patterns A4-1 On Design Patterns A design pattern systematically names, explains and evaluates an important and recurring design problem and its solution Good designers know not to solve every problem
More informationCorrelating Orphaned Windows Registry Data Structures
Annual ADFSL Conference on Digital Forensics, Security and Law 2009 May 21st, 10:00 AM Correlating Orphaned Windows Registry Data Structures Damir Kahvedžić Centre for Cyber Crime Investigation, University
More informationMULTIMEDIA TECHNOLOGIES FOR THE USE OF INTERPRETERS AND TRANSLATORS. By Angela Carabelli SSLMIT, Trieste
MULTIMEDIA TECHNOLOGIES FOR THE USE OF INTERPRETERS AND TRANSLATORS By SSLMIT, Trieste The availability of teaching materials for training interpreters and translators has always been an issue of unquestionable
More informationA SELF-ADAPTIVE ARCHITECTURE FOR AUTONOMIC SYSTEMS DEVELOPED WITH ASSL
A SELF-ADAPTIVE ARCHITECTURE FOR AUTONOMIC SYSTEMS DEVELOPED WITH ASSL Emil Vassev 1, Mike Hinchey 2, Aaron Quigley 1 1 Lero The Irish Software Engineering Research Centre, University College Dublin, Ireland
More informationXII- COMPUTER SCIENCE VOL-II MODEL TEST I
MODEL TEST I 1. What is the significance of an object? 2. What are Keyword in c++? List a few Keyword in c++?. 3. What is a Pointer? (or) What is a Pointer Variable? 4. What is an assignment operator?
More informationSystem-On-Chip Architecture Modeling Style Guide
Center for Embedded Computer Systems University of California, Irvine System-On-Chip Architecture Modeling Style Guide Junyu Peng Andreas Gerstlauer Rainer Dömer Daniel D. Gajski Technical Report CECS-TR-04-22
More informationCapturing 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 informationDesign Patterns. Manuel Mastrofini. Systems Engineering and Web Services. University of Rome Tor Vergata June 2011
Design Patterns Lecture 1 Manuel Mastrofini Systems Engineering and Web Services University of Rome Tor Vergata June 2011 Definition A pattern is a reusable solution to a commonly occurring problem within
More informationDifferential Compression and Optimal Caching Methods for Content-Based Image Search Systems
Differential Compression and Optimal Caching Methods for Content-Based Image Search Systems Di Zhong a, Shih-Fu Chang a, John R. Smith b a Department of Electrical Engineering, Columbia University, NY,
More informationObject Relationships
Object Relationships Objects can work together in three different types of relationships: Uses: An object can use another to do some work (association). Composition: A complex object may be composed of
More informationSOFTWARE 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 informationAADL Graphical Editor Design
AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized
More informationHow to Exploit Abstract User Interfaces in MARIA
How to Exploit Abstract User Interfaces in MARIA Fabio Paternò, Carmen Santoro, Lucio Davide Spano CNR-ISTI, HIIS Laboratory Via Moruzzi 1, 56124 Pisa, Italy {fabio.paterno, carmen.santoro, lucio.davide.spano}@isti.cnr.it
More informationExploration of Data from Modelling and Simulation through Visualisation
Exploration of Data from Modelling and Simulation through Visualisation Tao Lin: CSIRO Mathematical and Information Sciences, PO Box 664, ACT 2601, Australia. Robert Cheung*: CRC for Advanced Computational
More informationThis report was prepared by the Information Commissioner s Office, United Kingdom (hereafter UK ICO ).
REPORT TO THE 38 th INTERNATIONAL CONFERENCE OF DATA PROTECTION AND PRIVACY COMMISSIONERS - MOROCCO, OCTOBER 2016 ON THE 5 th ANNUAL INTERNATIONAL ENFORCEMENT COOPERATION MEETING HELD IN MANCHESTER, UK,
More informationCapturing Product Line Architectures
Capturing Product Line Architectures André van der Hoek Institute for Software Research Department of Information and Computer Science University of California, Irvine Irvine, CA 92697-3425 USA andre@ics.uci.edu
More informationInvestigating F# as a development tool for distributed multi-agent systems
PROCEEDINGS OF THE WORKSHOP ON APPLICATIONS OF SOFTWARE AGENTS ISBN 978-86-7031-188-6, pp. 32-36, 2011 Investigating F# as a development tool for distributed multi-agent systems Extended abstract Alex
More information