Software Systems Lab Department of Electrical Engineering Technion - Israel Institute of Technology By: David Nasi & Amitay Svetlit Supervisor: Oved Itzhak.

Slides:



Advertisements
Similar presentations
Executional Architecture
Advertisements

A component- and message-based architectural style for GUI software
ALEPH 500 Union Catalogue Overview Judy Levi Senior Product Analyst Ex Libris Ltd. November 2004.
Final Presentation Liat Ben-Ami Yonathan Perez Instructor: Roy Mitrany.
Presented By: Shatsman Yuri Leibovitz Amit Supervised By: Oved Itzhak Winter 2009/10 Networked Software Systems Lab, EE Department, Technion – Israel Institute.
 Guy Jacob  Roee Shapiro – Project A Spring, 2008 INFINI DRIVE  Project Supervisor: Hai Vortman  Lab Chief Engineer: Dr. Ilana David.
Presented By: Shatsman Yuri Leibovitz Amit Supervised By: Oved Itzhak Winter 2009/10 Networked Software Systems Lab, EE Department, Technion – Israel Institute.
LYU0101 Wireless Digital Information System Lam Yee Gordon Yeung Kam Wah Supervisor Prof. Michael Lyu Second semester FYP Presentation 2001~2002.
Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -
LYU0101 Wireless Digital Information System Lam Yee Gordon Yeung Kam Wah Supervisor Prof. Michael Lyu Second semester FYP Presentation 2001~2002.
Lecture 23: Software Architectures
Electrical Engineering Department Software Systems Lab TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY Meeting recorder Application based on Software Agents.
Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz Cooperated with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel.
Employing Web Search indexing for fast creation of filtered view of large text files Mostafa Agbaria, Ahmad Atamlh Department of Electrical engineering,
Memory Management, File Systems, I/O How Multiprogramming Issues Mesh ECEN 5043 Software Engineering of Multiprogram Systems University of Colorado, Boulder.
Integration of Applications MIS3502: Application Integration and Evaluation Paul Weinberg Adapted from material by Arnold Kurtz, David.
DISTRIBUTED CACHE SYSTEM EE SOFTWARE LAB, TECHNION By Shamil Nisimov Dror Bohrer Supervisor : Yaron Ben Shoshan Lab Engineer : David Ilana.
Department of Electrical & Computer Engineering Team Hollot By: Cory Brett Jonathan Katon Thomas Pavlu Haiyan Xu NavFocus Midway Design Review.
1 I/O Management in Representative Operating Systems.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Technion – Israel Institute of Technology Department of Electrical Engineering Software Lab Grades Server on J2EE Technology Edo Yichie Sagee Rosen Supervisor:
Extensible Windows Desktop Utilities Performed By: Alexander Badyan Oren Shalgi Supervisor: Oved Itzhak Winter 2004/5.
3D Object Retrieval Client-Server Project
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
Googalize your Search with DirectInfo Documents DirectInfo Documents - New Features Author: Kiril Rusev Software Architect Semantec Bulgaria OOD Semantec.
The Client/Server Database Environment
UNIT-V The MVC architecture and Struts Framework.
File System. NET+OS 6 File System Architecture Design Goals File System Layer Design Storage Services Layer Design RAM Services Layer Design Flash Services.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
LAYING OUT THE FOUNDATIONS. OUTLINE Analyze the project from a technical point of view Analyze and choose the architecture for your application Decide.
Database Types of database programs Charles w. Bachman Well- Designed Databases Database Management Systems Types of database programs Daabase Techniques.
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Department of Mechanical Engineering, LSUSession VII MATLAB Tutorials Session VIII Graphical User Interface using MATLAB Rajeev Madazhy
Drag and Drop Display and Builder. Timofei B. Bolshakov, Andrey D. Petrov FermiLab.
Marcel Casado NCAR/RAP WEATHER WARNING TOOL NCAR.
Web Categorization Crawler Mohammed Agabaria Adam Shobash Supervisor: Victor Kulikov Winter 2009/10 Design & Architecture Dec
Patterns, effective design patterns Describing patterns Types of patterns – Architecture, data, component, interface design, and webapp patterns – Creational,
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
The Network Performance Advisor J. W. Ferguson NLANR/DAST & NCSA.
3461A Readings from the Swing Tutorial. 3461A Overview  The follow is the Table of Contents from the trail “Creating a GUI with JFC/Swing” in the “The.
Hyper/J and Concern Manipulation Environment. The need for AOSD tools and development environment AOSD requires a variety of tools Life cycle – support.
Network Monitor Final presentation Project in systems programming, Winter 2008 Students : Vitaly Zakharenko & Alex Tikh Supervisor : Isask'har (Zigi) Walter.
ENHANCED MONITORING TOOL PROJECT Project Presentation By: David Nasi & Amitay Svetlit Supervisor: Oved Itzhak Software Systems Lab Department of Electrical.
Personal Computer - Stand- Alone Database  Database (or files) reside on a PC - on the hard disk.  Applications run on the same PC and directly access.
Self-assembling Agent System Presentation 1 Donald Lee.
Evaluation of Agent Building Tools and Implementation of a Prototype for Information Gathering Leif M. Koch University of Waterloo August 2001.
Amir Bishara and Dorin Danial Supervisors: Roiy Zysman Dr. Ilana David.
Jan 2015 iServ OfficeServ Operator Essential for business operators, receptionists, and people who manage high volume on calls, the iServ OfficeServ Operator.
Introduction to the IRRIIS Simulation SimCIP Césaire Beyel.
Workforce Scheduling Release 5.0 for Windows Implementation Overview OWS Development Team.
KIM: Kuali Abstraction Layer for Identities, Groups, Roles, and Permissions.
MVC WITH CODEIGNITER Presented By Bhanu Priya.
Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Views The architecture was specifically changed to accommodate multiple views. The used of the QStackedWidget makes it easy to switch between the different.
Navigation Framework using CF Architecture for a Client-Server Application using the open standards of the Web presented by Kedar Desai Differential Technologies,
Technician Table Editor Academic advisor : Professor Ehud Gudes Technical advisor : Menny Even Danan Team: Olga Peled Doron Avinoam Ira Zaitsev ADD Presentation.
START Application Spencer Johnson Jonathan Barella Cohner Marker.
INTRODUCTION TO INFORMATION SYSTEMS LECTURE 9: DATABASE FEATURES, FUNCTIONS AND ARCHITECTURES PART (2) أ/ غدير عاشور 1.
Networked Software Systems Laboratory
The Client/Server Database Environment
Software Design and Architecture
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
CS703 - Advanced Operating Systems
Starting Design: Logical Architecture and UML Package Diagrams
The Islamia University Bahawalpur
Presentation transcript:

Software Systems Lab Department of Electrical Engineering Technion - Israel Institute of Technology By: David Nasi & Amitay Svetlit Supervisor: Oved Itzhak

Motivation  Conventional text file viewer applications poorly suitable for very large text files (user response time wise).  Conventional text file applications do not provide tools for creating custom search and index.

Project Objectives  A user friendly graphic interface specialized for viewing VLTFs.  Application responsiveness is independent of input file size.  Extensible indexing architecture for employing indexing by arbitrary criteria.

User Interface Design Main Features: Text View Pane Search Results Pane Search Bar Go-to-Line Bar Progress Bar Scroll Knob

User Interface Design – Scroll Knob Scrolling over a VLTF using a conventional scroll bar may be very tedious Scroll Knob functionality allows to scroll over the VLTF with adaptive speed The speed is adjusted by a polynomial factor dependant on the distance of the knob from the center

Software Design – Segmentation Basic Concept  Goal:  Create a highly responsive viewer when displaying VLTFs (in the order of GBs).  Challenge:  Simple file access patterns (i.e. reading the entire file upon opening) are unsuitable.  Approach:  Segmentation: Upon opening the VLTF is partitioned to fixed-size segments. The segmentation process maps line numbers to segments in which they are held. Each segment holds only complete lines.

Segmentation - Example Segment #1 Lines: 1…1000Size = ~ 32Kb Segment #2 Lines: 1001…2200 Size = ~ 32Kb Segment #3 Lines:2201…3115 Size = ~ 32Kb Segment #K Lines: ?...?Size = ~ 32Kb

Software Design – Estimation Basic Concept  Goal:  Create a highly responsive viewer when displaying VLTFs (in the order of GBs).  Challenge:  Since segmentation requires reading the entire file, a question arises about the user experience before the file is fully indexed.  Approach:  Using some metrics (average number of lines in a segment) and provide the user with the estimated line with an indication that this is only estimation.

Software Architecture – Three Tier GUI Business Logic Data Structure

Data Structure Layer Responsibilities:  Segmentation Process  Estimation metrics gathering  Serving Business Logic data request

Data Structure Layer - Asynchronous Request Handling  Queue of Read Requests from the Business Logic  No duplicate segment requests are handled  The requests are handled in a FIFO order  Each request is processed on a separate thread  A callback to the Business Logic transferring the data and meta data for analyzing it - sessionless principle

Business Logic Layer Responsibilities:  Receives read request from the GUI  Serves as cache for the GUI layer requests  Sends data requests to the Data Structure  Custom Search and Index capabilities

Custom Search & Index Capabilities  We provide the developers with an abstract class of a searcher  Through implementing this class it’s possible to: 1. Construct a custom index 2. Interconnect with the GUI performing arbitrary search requests

Choosing a Custom Searcher

Search Progress

GUI Read Requests Handling  As a result of the paging work being done on separate threads library functions are used in order to update the GUI controls  Race Condition between different requests is handled by assigning a time stamp ID to each request

Design Components

Class Overview

End  Many thanks to our dedicated supervisor, Oved Itzhak for his great help and support  Thanks to the software lab staff for the support (Ilana David and Victor Kulik)