Reuse and Beyond: Innovative Software Retrieval Approaches
|
|
- Brice Washington
- 6 years ago
- Views:
Transcription
1 Palladio Days 2012 Reuse and Beyond: Innovative Software Retrieval Approaches Oliver Hummel SOFTWARE DESIGN AND QUALITY GROUP INSTITUTE FOR PROGRAM STRUCTURES AND DATA ORGANIZATION, FACULTY OF INFORMATICS sdq.ipd.kit.edu KIT University of the State of Baden-Wuerttemberg and National Research Center of the Helmholtz Association
2 Three Problems I ssdfsd I was having three problems: No job, no money, and no clue how to continue. Otto The Movie (1986) Photo: [Andreas Reiner, Wikipedia] Software Retrieval Beyond Reuse
3 Three Problems II Software reuse is the process of creating software systems from existing software rather than building software systems from scratch. [Krueger 92] A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can be deployed independently and is subject to composition by third parties. [Szyperski 02] [ ] And there they were again, my three problems No repository structure, no reusable software, and no clue how to retrieve something. The Reuse Community (1999) Software Retrieval Beyond Reuse
4 Overview I m going to share some insights on software search & retrieval with you 1. Using the web as a reuse repository 2. How to build a software search engine with Lucene and how to use it 3. How to add functional semantics to software searches 4. A Word on proactive reuse recommendations in Eclipse 5. Can we utilize the wisdom of the crowd in software development? 6. Outlook, summary and conclusion Software Retrieval Beyond Reuse
5 Solution Idea I Using the Web (and Google) as a Reuse Repository (2006) with some additional keywords filetype:java class stack void push Object pop Stack +push(o:object):void +pop():object + simple, easy to use + no overhead + precise for simple requests - still too imprecise - dark web not covered anymore - no reliable API for IDE integration Software Retrieval Beyond Reuse
6 Solution Idea II Build a specialized software search engine (2008) with google-like interface and IDE integration and suport for programming languages, signatures, interfaces etc. Use Database or Lucene or both? relational model vs. field-based approach De-Normalizing allows effective software searches in Lucene Stack +push(o:object):void +pop():object name method method msign msign minter minter stack push pop 1_pt:object_rt:void 1_pt:void_rt:object 1_mn:push_pt:object_rt:void 1_mn:pop_pt:void_rt:object 10 million files (~40 GB) in < 3 seconds with.com Software Retrieval Beyond Reuse
7 Simple Applications What can we do with such a software search engine? Keyword Searches Calculator lang:java Name Matching method:push Signature Matching $(float,float):float; Interface Matching isleapyear(int):boolean; Open Source Lookup java.util.stack Library Identification findjar:org.apache.lucene.search.query Software Retrieval Beyond Reuse
8 Simple Applications II Searches for full object interfaces are also possible even in Java/C# syntax public class Matrix { public Matrix add(matrix) {} public Matrix multiply(matrix) {} } Only test cases refuse to deliver test cases..? import junit.framework.testcase; public class CalculatorTest extends TestCase { public void testadd() { Calculator calc = new Calculator(); assertequals(calc.add(2, 1), 3); } } Software Retrieval Beyond Reuse
9 Precision from a Reuse Perspective Preliminary comparison of retrieval approaches has shown limited top 25 precision results for 13 method queries even a full syntax matching is not precise enough how can we support semantics in searches? Software Retrieval Beyond Reuse
10 Semantic Software Retrieval And what about contractually specified interfaces? [Hummel, 2008] and a seamless integration in modern development processes and tools? Test-Driven Reuse test-driven development candidate selection based on interface of C.U.T. assessment of semantics based on test cases very precise more candidates by ignoring names in interface expensive, but still precise Software Retrieval Beyond Reuse
11 Success Examples & Discussion [Hummel, 2008] Software Retrieval Beyond Reuse
12 Eclipse Integration Precise reuse recommendations on the fly [CodeConjurer.org] Software Retrieval Beyond Reuse
13 The Wisdom of the Crowd Book Amazon API Recommendations with ParseWeb (Thummalapenta & Xie, 2007) Software Retrieval Beyond Reuse
14 The Wisdom of the Crowd Developers who have coded a Stack have implemented a push, pop and isempty method Towards crowd-based design recommendations (2010) via intersecting interfaces of search result or attributes or dependencies etc Software Retrieval Beyond Reuse
15 Ongoing & Future Work Component recognition tracing dependencies -> e.g. delivered a full-grown FTP Client goal is to get this into the Merobase index [Kakarontzas & Stamelos] have been working on Facade detection in Open SME EU project [Janjic & Atkinson subm.] Test case recommendation Software Retrieval Beyond Reuse
16 Conclusion Numerous applications for software retrieval beyond reuse Code Recommendations Design Recommendations explorative searches Snippet Reuse Component Reuse Library Reuse Back-to-Back Testing Test Recommendation Libray Lookup Open Source Lookup concrete searches Defect information Impact Analysis Program Understanding Software Retrieval Beyond Reuse [Janjic et al., 2010]
17 The End. Thank you for your attention! Time for some questions? or maybe you want to contact me later Software Retrieval Beyond Reuse
18 References C. Atkinson, O. Hummel, W. Janjic, "Search-enhanced testing: NIER track", in Software Engineering (ICSE), rd International Conference on, p O. Hummel, C. Atkinson, "Extreme harvesting: Test driven discovery and reuse of software components", in Information Reuse and Integration, IRI Proceedings of the 2004 IEEE International Conference on, p O. Hummel, C. Atkinson, "Using the web as a reuse repository", Reuse of Off-the-Shelf Components, p O. Hummel, W. Janjic, C. Atkinson, Evaluating the Efficiency of Retrieval Methods for Component Repositories, Proceedings of the Int. Conf on Software Engineering & Knowledge Engineering, O. Hummel, W. Janjic, C. Atkinson, "Code conjurer: Pulling reusable software out of thin air", IEEE Software, vol. 25, no. 5 p O.Hummel, Semantic Component Retrieval in Software Engineering, PhD thesis, University of Mannheim, O. Hummel, W. Janjic, C. Atkinson, "Proposing software design recommendations based on component interface intersecting", in Proceedings of the 2nd International Workshop on Recommendation Systems for Software Engineering, p W. Janjic, O. Hummel, C. Atkinson, "More archetypal usage scenarios for software search engines", in Proceedings of 2010 ICSE Workshop on Search-driven Development: Users, Infrastructure, Tools and Evaluation, p G. Kakarontzas, I. Stamelos, S. Skalistis, A. Naskos, "Extracting Components from Open Source: The Component Adaptation Environment (COPE) Approach", in Software Engineering and Advanced Applications (SEAA), th EUROMICRO Conference on, p S. Thummalapenta, T. Xie, "Parseweb: a programmer assistant for reusing open source code on the web", in Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering, p Software Retrieval Beyond Reuse
19 Three Problems Again Otto: There they were again, my three problems. Sylvia: Are you going to make me happy tonight?" Otto: Yeah." Sylvia: Are you going to make me happy twice? Otto: Yeah. Sylvia: Even three times? Otto: There they were again, my three problems Software Retrieval Beyond Reuse
Continuous the research Software Engineering. Cycle through Test-Driven Search the teaching
Overview 1 1. Find out why software engineering is important see some software engineering failures 2. Integrating Get acquainted with Reuse into the Rapid, the Chair of Software Engineering Continuous
More informationRecommending Source Code for Rapid Software Prototypes
Recommending Source Code for Rapid Software Prototypes Collin McMillan 1 Nikki Hariri 2 Denys Poshyvanyk 1 Jane Cleland Huang 2 Bamshad Mobasher 2 1 College of William & Mary 2 DePaul University You own
More informationDetecting Return Value Mismatch during Component Adaptation with Concern of System Performance
I.J. Information Engineering and Electronic Business, 14, 2, 41-46 Published Online April 14 in MECS (http://www.mecs-press.org/) DOI: 1.5815/ijieeb.14.2.5 Detecting Return Value Mismatch during Component
More informationA SEMI-AUTOMATED PROCESS FOR OPEN SOURCE CODE REUSE *
A SEMI-AUTOMATED PROCESS FOR OPEN SOURCE CODE REUSE * Apostolos Kritikos, George Kakarontzas and Ioannis Stamelos Computer Science Department, Aristotle University of Thessaloniki, 54124 Thessaloniki,
More informationExtensible Graphical Editors for Palladio
Extensible Graphical Editors for Palladio Misha Strittmatter, Michael Junker, Kiana Rostami, Sebastian Lehrig, Amine Kechaou, Bo Liu and Robert Heinrich 7th Symposium on Software Performance, Kiel 2016
More informationIntegration of Existing Software Artifacts into a View- and Change-Driven Development Approach
Integration of Existing Software Artifacts into a View- and Change-Driven Development Approach Sven Leonhardt, Johannes Hoor, Benjamin Hettwer, Michael Langhammer 21.07.2015 SOFTWARE DESIGN AND QUALITY
More informationWorkload Characterization using the TAU Performance System
Workload Characterization using the TAU Performance System Sameer Shende, Allen D. Malony, and Alan Morris Performance Research Laboratory, Department of Computer and Information Science University of
More informationA Generic Microservice Architecture for Environmental Data Management
A Generic Microservice Architecture for Environmental Data Management Clemens Düpmeier, Eric Braun, Thorsten Schlachter, Karl-Uwe Stucky, Wolfgang Suess KIT The Research University in the Helmholtz Association
More informationHandling Cyclic Execution Paths in Timing Analysis of Component-based Software
Handling Cyclic Execution Paths in Timing Analysis of Component-based Software Luka Lednicki, Jan Carlson Mälardalen Real-time Research Centre Mälardalen University Västerås, Sweden Email: {luka.lednicki,
More informationAn 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 informationA Mashup-Based Strategy for Migration to Web 2.0
A Mashup-Based Strategy for Migration to Web 2.0 Dr. Semih Çetin A Mashup-Based Strategy for Migration to Web 2.0 1 Content Statement of the problem and motivation Existing technologies and approaches
More informationA Framework for Reliability Assessment of Software Components
A Framework for Reliability Assessment of Software Components Rakesh Shukla, Paul Strooper, and David Carrington School of Information Technology and Electrical Engineering, The University of Queensland,
More informationCoDocent: Support API Usage with Code Example and API Documentation
CoDocent: Support API Usage with Code Example and API Documentation Ye-Chi Wu Lee Wei Mar Hewijin Christine Jiau Institute of Computer and Communication Engineering Department of Electrical Engineering
More informationLeveraging State to Facilitate Separation of Concerns in Reuse-oriented Performance Models
Leveraging State to Facilitate Separation of Concerns in Reuse-oriented Performance Models Dominik Werle, Stephan Seifermann, Sebastian D. Krach 8th Symposium on Software Performance 2017 ARCHITECTURE-DRIVEN
More informationActionable User Intentions for Real-Time Mobile Assistant Applications
Actionable User Intentions for Real-Time Mobile Assistant Applications Thimios Panagos, Shoshana Loeb, Ben Falchuk Applied Research, Telcordia Technologies One Telcordia Drive, Piscataway, New Jersey,
More informationSynthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures
Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures Dietmar Schreiner 1,2 and Karl M. Göschka 1 1 Vienna University of Technology Institute of Information
More informationSoftware Reuse and Component-Based Software Engineering
Software Reuse and Component-Based Software Engineering Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Contents Software Reuse Components CBSE (Component-Based Software Engineering) Domain Engineering
More informationAMASS. Architecture-driven, Multi-concern and Seamless Assurance and
AMASS Architecture-driven, Multi-concern and Seamless Assurance and Architecture-driven, Multi-concern and Seamless Assurance and Certification of Cyber-Physical Systems AMASS Usage Scenario 2: Process
More informationIntegration Unit Testing on SAP NetWeaver Application Server
Applies To: This technical article applies to the SAP (Java), SAP NetWeaver Developer Studio, Unit Testing, Integration Unit Testing, JUnit, and JUnitEE. Summary Unit testing is an excellent way to improve
More informationLeveraging the Social Web for Situational Application Development and Business Mashups
Leveraging the Social Web for Situational Application Development and Business Mashups Stefan Tai stefan.tai@kit.edu www.kit.edu About the Speaker: Stefan Tai Professor, KIT (Karlsruhe Institute of Technology)
More informationTowards Compositional Domain Specific Languages
Andreas Horst, Bernhard Rumpe Software Engineering RWTH Aachen University, Germany http://www.se-rwth.de/ 1 Introduction The deployment of Domain Specific Languages (DSL) and in particular Domain Specific
More informationAutomated Assessment of Security Risks for Mobile Applications
Automated Assessment of Security Risks for Mobile Applications Rahul Pandita, Xusheng Xiao, Wei Yang, William Enck, and Tao Xie Department of Computer Science North Carolina State University Lookout Mobile
More informationMoving Beyond Sockets
Moving Beyond Sockets Architecture and Observations Tommy Pauly (tpauly@apple.com) TAPS IETF 97, November 2016, Seoul 1 Context TAPS is about providing easier ways to use various transport protocols, and
More informationMinsoo Ryu. College of Information and Communications Hanyang University.
Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based
More informationOntology Engineering for Product Development
Ontology Engineering for Product Development Henson Graves Lockheed Martin Aeronautics Company Fort Worth Texas, USA henson.graves@lmco.com Abstract. This analysis is to identify requirements for a Description
More informationHow to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect
How to Harvest Reusable Components in Existing Software Nikolai Mansurov Chief Scientist & Architect Overview Introduction Reuse, Architecture and MDA Option Analysis for Reengineering (OAR) Architecture
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2005 Vol. 4, No. 3 Special issue: 6th GPCE Young Researchers Workshop 2004 Feature
More informationRESTful Web Service Composition with JOpera
RESTful Web Service Composition with JOpera Cesare Pautasso Faculty of Informatics University of Lugano (USI), Switzerland http://www.pautasso.info 1 University of Lugano, Switzerland Faculty of Informatics
More informationHOW THE RIGHT CMS MAKES CONTENT AVAILABLE WHEN AND WHERE CUSTOMERS NEED IT
HOW THE RIGHT CMS MAKES CONTENT AVAILABLE WHEN AND WHERE CUSTOMERS NEED IT We have never lived in a more oversaturated content environment than we do now. We have images and hashtags and blog posts demanding
More informationJAVASCRIPT CHARTING. Scaling for the Enterprise with Metric Insights Copyright Metric insights, Inc.
JAVASCRIPT CHARTING Scaling for the Enterprise with Metric Insights 2013 Copyright Metric insights, Inc. A REVOLUTION IS HAPPENING... 3! Challenges... 3! Borrowing From The Enterprise BI Stack... 4! Visualization
More informationCSE 332: Data Abstractions. Ruth Anderson Spring 2014 Lecture 1
CSE 332: Data Abstractions Ruth Anderson Spring 2014 Lecture 1 Welcome! We have 10 weeks to learn fundamental data structures and algorithms for organizing and processing information Classic data structures
More informationAZURE CONTAINER INSTANCES
AZURE CONTAINER INSTANCES -Krunal Trivedi ABSTRACT In this article, I am going to explain what are Azure Container Instances, how you can use them for hosting, when you can use them and what are its features.
More informationExceptions and Design
Exceptions and Exceptions and Table of contents 1 Error Handling Overview Exceptions RuntimeExceptions 2 Exceptions and Overview Exceptions RuntimeExceptions Exceptions Exceptions and Overview Exceptions
More informationINTEGRATING DESIGN RATIONALE WITH A PROCESS MODEL
INTEGRATING DESIGN RATIONALE WITH A PROCESS MODEL J. E. BURGE, D. C. BROWN AI in Research Group Department of Computer Science WPI, 100 Institute Road Worcester, MA 01609, USA Abstract. One goal for having
More informationCollaborative enterprise knowledge mashup
Collaborative enterprise knowledge mashup Devis Bianchini, Valeria De Antonellis, Michele Melchiori Università degli Studi di Brescia Dip. di Ing. dell Informazione Via Branze 38 25123 Brescia (Italy)
More informationIncorporating applications to a Service Oriented Architecture
Proceedings of the 5th WSEAS Int. Conf. on System Science and Simulation in Engineering, Tenerife, Canary Islands, Spain, December 16-18, 2006 401 Incorporating applications to a Service Oriented Architecture
More informationQuis Custodiet Ipsos Custodes The Java memory model
Quis Custodiet Ipsos Custodes The Java memory model Andreas Lochbihler funded by DFG Ni491/11, Sn11/10 PROGRAMMING PARADIGMS GROUP = Isabelle λ β HOL α 1 KIT 9University Oct 2012 of the Andreas State of
More informationAdaptive Instrumentation of Java-Applications for Experiment-Based Performance Analysis
Adaptive Instrumentation of Java-Applications for Experiment-Based Performance Analysis Henning Schulz, Albert Flaig, Alexander Wert and André van Hoorn Symposium on Software Performance 2014 28.11.2014
More informationAn Overview of Techniques for Detecting Software Variability Concepts in Source Code
1/30 An Overview of Techniques for Detecting Software Variability Concepts in Source Code Angela Lozano Université catholique de Louvain, Belgium 2/30 Variability Customized and Affordable Maximize reuse
More informationBasic Concepts of the Energy Lab 2.0 Co-Simulation Platform
Basic Concepts of the Energy Lab 2.0 Co-Simulation Platform Jianlei Liu KIT Institute for Applied Computer Science (Prof. Dr. Veit Hagenmeyer) KIT University of the State of Baden-Wuerttemberg and National
More informationStudy of Component Based Software Engineering
Study of Based Software Ishita Verma House No.4, Village Dayalpur Karawal Nagar Road Delhi-110094, India ish.v.16@gmail.com Abstract based engineering is an approach of development that emphasizes the
More informationCloud Essentials for Architects using OpenStack
Cloud Essentials for Architects using OpenStack Course Overview Start Date 5th March 2015 Duration 2 Days Location Dublin Course Code SS15-13 Programme Overview Cloud Computing is gaining increasing attention
More informationASSESSING INVARIANT MINING TECHNIQUES FOR CLOUD-BASED UTILITY COMPUTING SYSTEMS
ASSESSING INVARIANT MINING TECHNIQUES FOR CLOUD-BASED UTILITY COMPUTING SYSTEMS ABSTRACT Likely system invariants model properties that hold in operating conditions of a computing system. Invariants may
More informationChristoph Treude. Bimodal Software Documentation
Christoph Treude Bimodal Software Documentation Software Documentation [1985] 2 Software Documentation is everywhere [C Parnin and C Treude Measuring API Documentation on Web Web2SE 11: 2nd Int l Workshop
More informationSketch-based Metamodel Construction. Research Internship II Lucas Heer
Sketch-based Metamodel Construction Research Internship II Lucas Heer lucas.heer@student.uantwerpen.be 31.01.2018 Motivation 2 Motivation 3 Solution What if we start from instance models? 4 Solution 5
More informationSourcererCC -- Scaling Code Clone Detection to Big-Code
SourcererCC -- Scaling Code Clone Detection to Big-Code What did this paper do? SourcererCC a token-based clone detector, that can detect both exact and near-miss clones from large inter project repositories
More informationTECHNIQUES FOR COMPONENT REUSABLE APPROACH
TECHNIQUES FOR COMPONENT REUSABLE APPROACH Sukanay.M 1, Biruntha.S 2, Dr.Karthik.S 3, Kalaikumaran.T 4 1 II year M.E SE, Department of Computer Science & Engineering (PG) sukanmukesh@gmail.com 2 II year
More informationDeveloping Solutions for Google Cloud Platform (CPD200) Course Agenda
Developing Solutions for Google Cloud Platform (CPD200) Course Agenda Module 1: Developing Solutions for Google Cloud Platform Identify the advantages of Google Cloud Platform for solution development
More informationA Study on a Development Environment for Software Traceability Management
1,a) 1,b) 1,c) TERAS A Study on a Development Environment for Software Traceability Management NORITOSHI ATSUMI 1,a) TAKASHI KOBAYASHI 1,b) HIROAKI TAKADA 1,c) Abstract: Software traceability management
More informationWireless Environments
A Cyber Physical Systems Architecture for Timely and Reliable Information Dissemination in Mobile, Aniruddha Gokhale Vanderbilt University EECS Nashville, TN Wireless Environments Steven Drager, William
More informationBefore you start with this tutorial, you need to know basic Java programming.
JDB Tutorial 1 About the Tutorial The Java Debugger, commonly known as jdb, is a useful tool to detect bugs in Java programs. This is a brief tutorial that provides a basic overview of how to use this
More informationSimple and Efficient Construction of Static Single Assignment Form
Simple and Efficient Construction of Static Single Assignment Form saarland university Matthias Braun, Sebastian Buchwald, Sebastian Hack, Roland Leißa, Christoph Mallon and Andreas Zwinkau computer science
More informationActive Directory Domain Add-on for Wyse 5070 Thin Client Version
Rev. A00 2018-09 Active Directory Domain Add-on for Wyse 5070 Thin Client Version 1.0.0.1 Software releases are created to correct defects, make enhancements, or add new features. These releases are tested
More informationDeveloping Web-Based Applications Using Model Driven Architecture and Domain Specific Languages
Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain
More informationTIBCO Spotfire Statement of Direction. Spotfire Product Management
TIBCO Spotfire Statement of Direction Spotfire Product Management CONFIDENTIALITY The following information is confidential information of TIBCO Software Inc. Use, duplication, transmission, or republication
More informationContext-aware Services for UMTS-Networks*
Context-aware Services for UMTS-Networks* * This project is partly financed by the government of Bavaria. Thomas Buchholz LMU München 1 Outline I. Properties of current context-aware architectures II.
More informationTempWeb rd Temporal Web Analytics Workshop
TempWeb 2013 3 rd Temporal Web Analytics Workshop Stuff happens continuously: exploring Web contents with temporal information Omar Alonso Microsoft 13 May 2013 Disclaimer The views, opinions, positions,
More informationA data-driven framework for archiving and exploring social media data
A data-driven framework for archiving and exploring social media data Qunying Huang and Chen Xu Yongqi An, 20599957 Oct 18, 2016 Introduction Social media applications are widely deployed in various platforms
More informationwarwick.ac.uk/lib-publications
Original citation: Zhao, Lei, Lim Choi Keung, Sarah Niukyun and Arvanitis, Theodoros N. (2016) A BioPortalbased terminology service for health data interoperability. In: Unifying the Applications and Foundations
More informationEmpowering People with Knowledge the Next Frontier for Web Search. Wei-Ying Ma Assistant Managing Director Microsoft Research Asia
Empowering People with Knowledge the Next Frontier for Web Search Wei-Ying Ma Assistant Managing Director Microsoft Research Asia Important Trends for Web Search Organizing all information Addressing user
More informationVisualisation : Lecture 1. So what is visualisation? Visualisation
So what is visualisation? UG4 / M.Sc. Course 2006 toby.breckon@ed.ac.uk Computer Vision Lab. Institute for Perception, Action & Behaviour Introducing 1 Application of interactive 3D computer graphics to
More informationF. Tip and M. Weintraub FUNCTIONAL TESTING
F. Tip and M. Weintraub FUNCTIONAL TESTING ACKNOWLEDGEMENTS Thanks go to Andreas Zeller for allowing incorporation of his materials 2 HOW TO TELL IF A SYSTEM MEETS EXPECTATIONS? Two options: 1. testing:
More informationJ2EE Application Development : Conversion and Beyond Osmond Ng
IBM Software Group J2EE Application Development : Conversion and Beyond Osmond Ng IBM Software Group Practitioner View Point IBM Rational Application Developer J2EE/EJB Tooling J2EE construction tools
More information[2:3] Linked Lists, Stacks, Queues
[2:3] Linked Lists, Stacks, Queues Helpful Knowledge CS308 Abstract data structures vs concrete data types CS250 Memory management (stack) Pointers CS230 Modular Arithmetic !!!!! There s a lot of slides,
More informationFront End Nanodegree Syllabus
Front End Nanodegree Syllabus Build Stunning User Experiences Before You Start You've taken the first step toward becoming a web developer by choosing the Front End Nanodegree program. In order to succeed,
More informationModels versus Ontologies - What's the Difference and where does it Matter?
Models versus Ontologies - What's the Difference and where does it Matter? Colin Atkinson University of Mannheim Presentation for University of Birmingham April 19th 2007 1 Brief History Ontologies originated
More informationfeature Despite steady advancement in the state of the art, software engineering remains development tools Recommendation
feature development tools Recommendation Systems for Software Engineering Martin P. Robillard, McGill University Robert J. Walker, University of Calgary Thomas Zimmermann, Microsoft Research Recommendation
More informationProgress DataDirect For Business Intelligence And Analytics Vendors
Progress DataDirect For Business Intelligence And Analytics Vendors DATA SHEET FEATURES: Direction connection to a variety of SaaS and on-premises data sources via Progress DataDirect Hybrid Data Pipeline
More informationSearch Engine Architecture. Hongning Wang
Search Engine Architecture Hongning Wang CS@UVa CS@UVa CS4501: Information Retrieval 2 Document Analyzer Classical search engine architecture The Anatomy of a Large-Scale Hypertextual Web Search Engine
More informationTest Driven Development with Oracles and Formal Specifications
Test Driven Development with Oracles and Formal Specifications Shadi Alawneh and Dennis Peters Faculty of Engineering and Applied Science Memorial University, St.John s, NL Canada A1B 3X5 {shadi.alawneh,dpeters}@mun.ca
More informationMaking Business Process Implementations Flexible and Robust: Error Handling in the AristaFlow BPM Suite
Making Business Process Implementations Flexible and Robust: Error Handling in the AristaFlow BPM Suite Andreas Lanz, Manfred Reichert, and Peter Dadam Institute of Databases and Information Systems, University
More informationCACAO PROJECT AT THE 2009 TASK
CACAO PROJECT AT THE TEL@CLEF 2009 TASK Alessio Bosca, Luca Dini Celi s.r.l. - 10131 Torino - C. Moncalieri, 21 alessio.bosca, dini@celi.it Abstract This paper presents the participation of the CACAO prototype
More informationCSE 70 Final Exam Fall 2009
Signature cs70f Name Student ID CSE 70 Final Exam Fall 2009 Page 1 (10 points) Page 2 (16 points) Page 3 (22 points) Page 4 (13 points) Page 5 (15 points) Page 6 (20 points) Page 7 (9 points) Page 8 (15
More informationLanguage engineering and Domain Specific Languages
Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh Plan 1. Defining languages 2. General purpose languages vs domain specific languages 3.
More informationBuild Meeting Room Management Website Using BaaS Framework : Usergrid
Build Meeting Room Management Website Using BaaS Framework : Usergrid Alvin Junianto Lan 13514105 Informatics, School of Electrical Engineering and Informatics Bandung Institute of Technology Bandung,
More informationHigh Availability Distributed (Micro-)services. Clemens Vasters Microsoft
High Availability Distributed (Micro-)services Clemens Vasters Microsoft Azure @clemensv ice Microsoft Azure services I work(-ed) on. Notification Hubs Service Bus Event Hubs Event Grid IoT Hub Relay Mobile
More informationCOPYRIGHTED MATERIAL. Introducing the Project: The SmartCA Application. The Problem
Introducing the Project: The SmartCA Application The project for this book is based on a real application for a real company. The names of the company and the application have been changed for privacy
More informationOrganizing and Managing Grassroots Enterprise Mashup Environments. Doctorial Thesis, 24 th June, Volker Hoyer
Organizing and Managing Grassroots Enterprise Mashup Environments Doctorial Thesis, 24 th June, 2010 Volker Hoyer Motivation and Research Questions Research Design Results Conclusion Motivation and Research
More informationStephan Fuchs, Ramona Wander, Tatyana Rogozina, Stephan Hilgert (KIT) Armin Canzler, Bernd Lehmkuhl, Heiko Keifenheim (COS)
MoRE Application Stephan Fuchs, Ramona Wander, Tatyana Rogozina, Stephan Hilgert (KIT) Armin Canzler, Bernd Lehmkuhl, Heiko Keifenheim (COS) INSTITUTE FOR WATER AND RIVER BASIN MANAGEMENT, DEPARTMENT OF
More informationRDMG Research Data Management Group at Freiburg University
RDMG Research Data Management Group at Freiburg University Round Table RDM, Academy of Sciences in Heidelberg 13/07/2018 Dirk von Suchodoletz, escience dept. of the Computer Center Institutional RDM Rising
More informationRanked Retrieval. Evaluation in IR. One option is to average the precision scores at discrete. points on the ROC curve But which points?
Ranked Retrieval One option is to average the precision scores at discrete Precision 100% 0% More junk 100% Everything points on the ROC curve But which points? Recall We want to evaluate the system, not
More informationIdentifier-Based Context-Dependent API Method Recommendation
Identifier-Based Context-Dependent API Method Recommendation Lars Heinemann Veronika Bauer Markus Herrmannsdoerfer Benjamin Hummel Technische Universität München, Germany {heineman, bauerv, herrmama, hummelb}@in.tum.de
More informationTowards xmof: Executable DSMLs based on fuml www.modelexecution.org Tanja Mayerhofer, Philip Langer, Manuel Wimmer Business Informatics Group Institute of Software Technology and Interactive Systems Vienna
More informationData Centers and Cloud Computing
Data Centers and Cloud Computing CS677 Guest Lecture Tim Wood 1 Data Centers Large server and storage farms 1000s of servers Many TBs or PBs of data Used by Enterprises for server applications Internet
More informationData Centers and Cloud Computing. Slides courtesy of Tim Wood
Data Centers and Cloud Computing Slides courtesy of Tim Wood 1 Data Centers Large server and storage farms 1000s of servers Many TBs or PBs of data Used by Enterprises for server applications Internet
More informationFedX: A Federation Layer for Distributed Query Processing on Linked Open Data
FedX: A Federation Layer for Distributed Query Processing on Linked Open Data Andreas Schwarte 1, Peter Haase 1,KatjaHose 2, Ralf Schenkel 2, and Michael Schmidt 1 1 fluid Operations AG, Walldorf, Germany
More informationWhat if annotations were reusable: a preliminary discussion
What if annotations were reusable: a preliminary discussion Nikos Manouselis 1, Riina Vuorikari 2 1 Greek Research & Technology Network 56 Messogion Str. Athens, Greece {nikosm}@ieee.org 2 European Schoolnet,
More informationIntroduction to Web 2.0 Data Mashups
Lecture Notes on Web Data Management Birzeit University, Palestine 2013 Introduction to Web 2.0 Data Mashups Dr. Mustafa Jarrar University of Birzeit mjarrar@birzeit.edu www.jarrar.info Jarrar 2013 1 Watch
More information2. The Proposed Process Model of CBD Main phases of CBD process model are shown, in figure Introduction
Survey-Based Analysis of the Proposed Component-Based Development Process M. Rizwan Jameel Qureshi Dept. of Computer Science, COMSATS Institute of Information Technology, Lahore anriz@hotmail.com Ph #
More informationImproving Software Reliability and Productivity via Mining Program Source Code
Improving Software Reliability and Productivity via Mining Program Source Code Tao Xie, Mithun Acharya, Suresh Thummalapenta, Kunal Taneja Department of Computer Science North Carolina State University
More informationData Centers and Cloud Computing. Data Centers
Data Centers and Cloud Computing Slides courtesy of Tim Wood 1 Data Centers Large server and storage farms 1000s of servers Many TBs or PBs of data Used by Enterprises for server applications Internet
More informationOverview. Data-mining. Commercial & Scientific Applications. Ongoing Research Activities. From Research to Technology Transfer
Data Mining George Karypis Department of Computer Science Digital Technology Center University of Minnesota, Minneapolis, USA. http://www.cs.umn.edu/~karypis karypis@cs.umn.edu Overview Data-mining What
More informationB2DROP The EUDAT Personal Cloud Storage
Mitglied der Helmholtz-Gemeinschaft B2DROP The EUDAT Personal Cloud Storage 31.01.2017 Benedikt von St. Vieth, Thijs Cobben, Sander Apweiler, Mikael Karlsson The EUDAT project(s) data services EUDAT 2011-2015
More informationData as a Service Models and Engineering
Advanced Services Engineering, Summer 2016 Lecture 4 Data as a Service Models and Engineering Hong-Linh Truong Distributed Systems Group, Vienna University of Technology truong@dsg.tuwien.ac.at http://dsg.tuwien.ac.at/staff/truong
More informationCS-201 Introduction to Programming with Java
CS-201 Introduction to Programming with Java California State University, Los Angeles Computer Science Department Lecture IX: Methods Introduction method: construct for grouping statements together to
More informationPlan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language
Plan Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh 1. Defining languages 2. General purpose languages vs domain specific languages 3.
More informationModularizing Web Services Management with AOP
Modularizing Web Services Management with AOP María Agustina Cibrán, Bart Verheecke { Maria.Cibran, Bart.Verheecke@vub.ac.be System and Software Engineering Lab Vrije Universiteit Brussel 1. Introduction
More informationSoftware Testing Workshop 2014 Introduction
Software Testing Workshop 2014 Introduction May 3 rd 2014. FAST, Islamabad. About Us Majd Uddin 15+ years of experience with a decade in software testing Promoting software quality: M.Sc. (CS) from PUCIT,
More informationICSA 2017 Tutorial Runtime Modeling and Visualization -- Introduction to Palladio
DFG Priority Programme 1593 Design For Future - Managed Software Evolution ICSA 2017 Tutorial Runtime Modeling and Visualization -- Introduction to Palladio R. Heinrich ICSA 2017 Tutorial Introduction
More informationLesson 14 SOA with REST (Part I)
Lesson 14 SOA with REST (Part I) Service Oriented Architectures Security Module 3 - Resource-oriented services Unit 1 REST Ernesto Damiani Università di Milano Web Sites (1992) WS-* Web Services (2000)
More information