Spring 2005 Design Review Advisors: Prof. David Ebert and Kirk Riley TA: Steve Gunawan.

Slides:



Advertisements
Similar presentations
Chapter 5: Tree Constructions
Advertisements

Supporting New Business Imperatives Creating a Framework for Interoperable Media Services (FIMS)
Copyright © 2006 Help Desk Systems, Inc. All rights reserved. Overview of Help Desk Systems Inc. (HDSI) HDSI offers a hosted, web based trouble ticket.
Configuration Management
Inpainting Assigment – Tips and Hints Outline how to design a good test plan selection of dimensions to test along selection of values for each dimension.
Quick Review of Apr 10 material B+-Tree File Organization –similar to B+-tree index –leaf nodes store records, not pointers to records stored in an original.
Alternate Software Development Methodologies
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
The Office of the Dean of Students December 20, 2003 Projects: Interactive Campus Map (ICM) Adjustable Book Shelf (ABS) Global Positioning System Device.
The Experience Factory May 2004 Leonardo Vaccaro.
1 File Management (a). 2 File-System Interface  File Concept  Access Methods  Directory Structure  File System Mounting  File Sharing  Protection.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
LYU0101 Wireless Digital Information System Lam Yee Gordon Yeung Kam Wah Supervisor Prof. Michael Lyu Second semester FYP Presentation 2001~2002.
The Office of the Dean of Students May 8 th, 2004 Projects: Interactive Campus Map (ICM) Adjustable Book Shelf (ABS) Global Positioning System Device for.
Office of the Dean of Students Michael Alexander Sak Mahasuverachai Bryn Nealis Advisor: Prof. David EbertAdvisor: Prof. David Ebert TA: Jared FritzTA:
LYU0101 Wireless Digital Information System Lam Yee Gordon Yeung Kam Wah Supervisor Prof. Michael Lyu Second semester FYP Presentation 2001~2002.
Adjustable Book Shelf Team Members : Ankit DhawanVineet Alva Shohei ShibataAvirul Sharma.
Adjustable Book Shelf Team Members : Vineeth Alva Ankit Dhawan Shohei Shibata.
Design Review November 11, 2003 Projects: Interactive Campus Map (ICM) Adjustable Book Shelf (ABS) Global Positioning System Device for the Visually Impaired.
Project Life Cycle Jon Ivins DMU. Introduction n Projects consist of many separate components n Constraints include: time, costs, staff, equipment n Assets.
1 CS 430 / INFO 430 Information Retrieval Lecture 24 Usability 2.
Fundamentals of Information Systems, Second Edition
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
1 Personal Activity Coordinator (PAC) Xia Hong UC Berkeley ISRG retreat 1/11/2000.
ODOS The Office of the Dean of Students. Projects Interactive Campus Map Global Positioning System - Device for the Visually Impaired Adjustable Table.
7/14/2015EECS 584, Fall MapReduce: Simplied Data Processing on Large Clusters Yunxing Dai, Huan Feng.
Office of the Dean of Students Brian Eng Matteo Mannino Jonathan Timura Advisors: Prof. David EbertAdvisors: Prof. David Ebert Kirk Riley Kirk Riley TA:
Database System Development Lifecycle Transparencies
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
Teaching Deliberative Navigation Using the LEGO RCX and Standard LEGO Components Gary R. Mayer, Dr. Jerry Weinberg, Dr. Xudong Yu
Zhonghua Qu and Ovidiu Daescu December 24, 2009 University of Texas at Dallas.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
SOFTWARE ENGINEERING1 Introduction. Software Software (IEEE): collection of programs, procedures, rules, and associated documentation and data SOFTWARE.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Representing and Using Graphs
16 1 Installation  After development and testing, system must be put into operation  Important planning considerations Costs of operating both systems.
The Network Performance Advisor J. W. Ferguson NLANR/DAST & NCSA.
Chapter 11 Maintaining the System System evolution Legacy systems Software rejuvenation.
Intelligent Scissors for Image Composition Anthony Dotterer 01/17/2006.
Database System Development Lifecycle 1.  Main components of the Infn System  What is Database System Development Life Cycle (DSDLC)  Phases of the.
SE: CHAPTER 7 Writing The Program
Cohesion and Coupling CS 4311
DATA STRUCTURE & ALGORITHMS (BCS 1223) NURUL HASLINDA NGAH SEMESTER /2014.
Systems Analysis and Design in a Changing World, Fourth Edition
Fundamentals of Information Systems, Second Edition 1 Systems Development.
Department of Computer Science Internet Performance Measurements using Firefox Extensions Scot L. DeDeo Professor Craig Wills.
Union-find Algorithm Presented by Michael Cassarino.
1 CMPT 275 High Level Design Phase Modularization.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Faculty Coach: Professor Martinez  Justin Mahar  Chris Baum  Greg Schmitz  Adam Abdelhamed.
© 2006 Pearson Addison-Wesley. All rights reserved 14 A-1 Chapter 14 Graphs.
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
+ Publishing Your First Post USING WORDPRESS. + A CMS (content management system) is an application that allows you to publish, edit, modify, organize,
July 19, 2004Joint Techs – Columbus, OH Network Performance Advisor Tanya M. Brethour NLANR/DAST.
GROUP PresentsPresents. WEB CRAWLER A visualization of links in the World Wide Web Software Engineering C Semester Two Massey University - Palmerston.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
A significant Term to ensure flawless performance Mobile App Maintenance.
6. (supplemental) User Interface Design. User Interface Design System users often judge a system by its interface rather than its functionality A poorly.
IL Marking Get out your CPU / Memory answers Swap with someone else
Software Specification and Configuration Management
CSC 321: Data Structures Fall 2016
Lesson Objectives Aims Understand the following “standard algorithms”:
Graphs Chapter 11 Objectives Upon completion you will be able to:
CS310 Software Engineering Lecturer Dr.Doaa Sami
ITEC 2620M Introduction to Data Structures
Introduction of PTM (Planning Tracking & Management) Tool - developed by Meridian Technology 29/05/2019.
Presentation transcript:

Spring 2005 Design Review Advisors: Prof. David Ebert and Kirk Riley TA: Steve Gunawan

Agenda  Adjustable Bookshelf (ABS)  GPS Device for the Visually Impaired (GPS- DVI)  Interactive Campus Map (ICM)  Discussions to follow each project presentation

ODOS - Adjustable Book Shelf Manish Handa

Presentation Outline  Problem Definition  Concept Generation  Concept Evaluation  Current Progress  Modifications  Expected Semester Outcome  Overall Project Plan

The Dorm Desk and Bookshelf

Problem Definition  Bookshelf unit in dorm rooms do not follow the guidelines set by ADA (Americans with Disabilities Act).  Height range of 9” to 48”: Lowest point of current shelf is approximately 50”.  Front reach maximum of 25”: The current shelf unit is located at exactly 25”.  Goal: To design a shelf unit that is within the guidelines set by ADA, within the limited space available in a dorm room. *User must not insert more than 5 lb of force to access the bookshelf.

Concepts Generated  Sliding Down Bookshelf  Bookshelf will be placed in existing bookshelf in dorm, lowered and raised onto desk  Side of Desk – Low  Bookshelf placed underneath desk, moved in and out  Side of Desk – High  Bookshelf placed on side of desk. Above desk such that there is no need for it to move  Swing Shelf  Placed underneath desk, swings towards user.

Concept Evaluation  Evaluation was done using decision matrix  Evaluated each concept against customer requirements such as Reachability, Ease of Access, Cost.  Compared each concept with the existing bookshelf, and the prototype.  Side of Desk – High, was chosen for its reachability and use of space.

Current Progress  Dimensions of shelf unit and platform complete  Force analysis on the prototype complete. Result modification needed on prototype.  Preparing design modification.  Designing support system.  Designing moving mechanism and switch

Current Progress

Modifications  The prototype had only a single shelf, but the new prototype will have three shelves, which would distribute the weight of the books and hence prevent failure.  The prototype didn’t have any support system, the new one will have support.  The prototype was not constructed as to dimensions, reconstruction will be enforced.

Force Analysis  Stress Analysis  Plywood structure is strong enough for the bookshelf  Weight of motor mechanism to be determined  Acceleration of shelf  0.13 ft/sec 2 for movement in 5 seconds  This number determines force needed by the motor.

Expected Semester Outcome  Complete Design  Finish designing moving mechanism  Choose materials, parts  Complete Prototype  Complete as designed  Test

Overall Project Plan  Prototype completed this semester  Start testing prototype, continue testing in Fall  Delivery in December, 2005

Discussion

EPICS-ODOS: GPS-DVI Jay Gengelbach Rohit Vankipuram Jonathan Timura

Overview  Introduction  Fault tolerance – improving usability by recovering from common mistakes  Forward mobility – make code maintenance simpler for the future  Scalability – improve asymptotic performance  Data Formats – allow for extensibility

Introduction  GPS-DVI: Global Positioning System Device for the Visually Impaired  Goal: To create a device that blind students can use to find their way around on campus

Introduction (cont.)  Current Device:  HP iPAQ PDA with CF GPS receiver  Current Data:  22 nodes around the engineering mall  Implementation:  Map stored as a weighted graph  Paths calculated using Dijkstra’s shortest path algorithm

Fault Tolerance  Before:  Power-cycling would cause failure  Running the program twice (accidental double-click) caused failure  Now:  Device recalibrates after a power cycle  Only one instance of program can run (token file)  Future:  More stable way to detect program instances

Forward Mobility  Before:  Power PC 2002  Now:  Power PC 2003  Change is easily removable for backwards compatibility  Future:  Future versions will be more similar to PPC 2003 than 2002, so further upgrades will be simpler

Forward Mobility (cont.)  Before:  Few files (newgui.cpp, newguiDialog.cpp)  Unclear what tasks each file performs  Generally poor comments: /* Implements Dijkstra’s Algorithm */ void DoDijkstra(…)

Forward Mobility (cont.)  Now:  Many files (Dijkstra.cpp, path.cpp, AdjacencyVector.cpp)  Files perform a few specific tasks and are well- documented: /* Path.cpp: * This file contains various functions required to perform path calculation, etc. * The data in this file is specific to our implementation. This file employs * Dijkstra.cpp, which contains generalized pathfinding code. * Jay Gengelbach - February 27, 2005 */

Forward Mobility (cont.)  Conclusions:  Code sharing will be simpler with logically separate files  Finding the code that performs X will be easier due to specificity of each file

Scalability  Before:  n x n Adjacency Matrix  Takes n 2 space. BIG disadvantage  Lookup takes 1 or 2 indirections 123…n 13 …1 23 … 3 …2 ………… … n1 2…

Scalability (cont.)  Now:  Vector of linked lists  Space < k*n where k is the maximum vertex degree (4)  Maximum indirections = k 123…n 21n n 1 3 2

Scalability (cont.) Analysis of Dijkstra’s algorithm:  Before:  Relaxation step takes O(n) time: for(i = 0;i < Number_of_Nodes;i++) if(distance(currentNode,i) != -1) relax(currentNode, i);

Scalability (cont.)  Now:  Relaxation step takes O(k) time: currentNode.reset(); while(currentNode.hasMore()) relax(currentNode, currentNode.next());  Closest node kept in sorted list, so next iteration can be determined in constant time  Dijkstra’s algorithm runs in O(n*k) time – essentially linear

Scalability (cont.)  Before:  Adjacency matrix recalculated every time a path is requested  Now:  Calculate adjacency lists at program launch  Prevents unnecessary file I/O

Data Formats  Before:  Node database file only allows latitude and longitude to be specified  Nodes are specified only by number  Adjacency matrix format assumes no node will ever be adjacent to 5 or more others  A node that borders more will require the format to change and every line to be altered  Adjacency matrix only stores edge weights

Data Formats (cont.)  Future:  Adjacency matrix stores only one edge per line, and additional data/metadata can be appended  Node database supports storing building names and other data alongside GPS data  File becomes a lot more human-readable  Both formats support addition of new flags without changing unaffected lines

Summary  Updates focus on extensibility  Code and data easier to maintain and update  More scalable code allows campus map to be expanded with minimal impact

Discussion

ICM Brian Eng Matteo Mannino Interactive Campus Map

Overview  Introduction  Semester Goals  ICM Overview  Node Database Software

Interactive Campus Map  Objective: To help students with physical disabilities locate the best accessible path between campus locations by drawing a map

Semester Goals  Prepare kiosk for use and place in MSEE  Collect user feedback  Make changes based on feedback  Deliver project  Create node database software

How does ICM work?  User gives start/end information on website  Calculate shortest path  Draw map  Encode image  Display map

Breakdown of Components  Node Database  Path Finding Algorithm (Dijkstra’s Algorithm)  File I/O, Image Manipulation  Web Interface  Today, we will only be discussing aspects of the node database

Nodes on the Map

Node Database  Uses pseudo GPS coordinates  Scaled pixel coordinates  Ability to swap map images easily  This assumes maps are to scale  Currently around 300 nodes in database

Database Example NodeCoordinatesNeighbors 0123,4561,3,4 Description 1213,5220,2,3 Description 2211,2221 Description 3887,8180,1 Description

Node Database Software  Justification for software  Several bugs in database from past semesters  Tracking down which node is faulty is many times difficult and very time consuming  The only nodes with meaningful descriptions are door nodes  Debugging gets harder as database grows with expanding campus

Node Database Software  Node software allows those who are maintaining ICM to:  easily update the map  add and delete nodes  debug paths  Interface is user-friendly and easy to learn  No technical background needed to operate  Point and click operation  No need to follow confusing input file format rules

Node Database Software  Data Structures  Quadtree - allows for point and click operation on map  Problem: user clicks on a node to modify its information  Solution: use a quadtree and descend it to determine if the pixel the user clicked on occupies a spatial partition, and if so, return which node it is  Advantage of trees: all essential operations are simple tree traversal or descent  Our implementation  Worst case number of traversals: O(lg(n)/2)  Worst case time complexity: O(n)  Worst case memory complexity: O(4/3*n)

Node Database Software  Data structures (cont.)  Linked list – allows for loading of existing database and output to text file ordered by node index  Easy to insert and delete data  Search time complexity: O(n)

Kiosk  Wheelchair accessible  To be placed in MSEE Atrium  Waiting on monitor support system

This Semester  Prepare kiosk for use and place in MSEE  Monitor support system to be completed by this weekend at the very latest  Collect user feedback  Prof. Jameison acting as Principal Investigator  Online certification completed  User feedback survey completed  Exemption form submitted to Purdue IRB  Waiting for kiosk to be placed

This Semester  Make changes based on feedback  Will occur once user feedback survey is administered  Deliver project  Delivery will occur immediately following installation of kiosk modifications  Create node database software  Basic functionality: load existing database, add nodes  Clean and easy to use GUI

Continuity  Delivery of ICM planned by week 12  Members of ODOS will maintain software  Adequate documentation from should problems arise  Node database software will allow for painless database debugging

Discussion