August 7, 2003 BITS C461/IS C341 Software Engineering1 Jlisten: A Tool for Program Auralization Last Update: August 6, 2003 Aditya Mathur.

Slides:



Advertisements
Similar presentations
What Do You Hear? Beginning Sounds /i/, /t/, /n/.
Advertisements

Bubble Sort Algorithm 1.Initialize the size of the list to be sorted to be the actual size of the list. 2.Loop through the list until no element needs.
Arrays First step is to reserve sufficient space for the array.
Decision Maths 1 Sorting Algorithms Bubble Sort A V Ali : 1.Start at the beginning of the data set. 2.Compare the first two elements,
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Listen/Java Edward L. Gilmore II Bryan P. Strait Aditya P. Mathur Purdue University
VISUAL C++ PROGRAMMING: CONCEPTS AND PROJECTS Chapter 9A Sorting (Concepts)
Visual C++ Programming: Concepts and Projects
CS 253: Algorithms Chapter 2 Sorting Insertion sort Bubble Sort Selection sort Run-Time Analysis Credit: Dr. George Bebis.
Simple Sorting Algorithms
Chapter 3: Sorting and Searching Algorithms 3.2 Simple Sort: O(n 2 )
CS 106 Introduction to Computer Science I 02 / 28 / 2007 Instructor: Michael Eckmann.
 2003 Prentice Hall, Inc. All rights reserved. 1 Sorting Arrays Sorting data –Important computing application –Virtually every organization must sort.
CS 106 Introduction to Computer Science I 03 / 08 / 2010 Instructor: Michael Eckmann.
 2003 Prentice Hall, Inc. All rights reserved Sorting Arrays Sorting data –Important computing application –Virtually every organization must sort.
Introduction to Digital Audio An Overview. Sound In Media Sound Design gives meaning to noise, music and dialog A good design makes the listener immerse.
Simple Sorting Algorithms. 2 Bubble sort Compare each element (except the last one) with its neighbor to the right If they are out of order, swap them.
10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn.
Chapter 19: Searching and Sorting Algorithms
Data Structures Simple Sorts Phil Tayco Slide version 1.0 Feb. 8, 2015.
© M. Gross, ETH Zürich, 2014 Informatik I für D-MAVT (FS 2014) Exercise 12 – Data Structures – Trees Sorting Algorithms.
CS 178: Programming with Multimedia Objects Aditya P. Mathur Professor of Computer Sciences Purdue University, West Lafayette August 25, 2004 Last update:
Computer Science 101 Introduction to Sorting. Sorting One of the most common activities of a computer is sorting data Arrange data into numerical or alphabetical.
BUBBLE SORT. Introduction Bubble sort, also known as sinking sort, is a simple sorting algorithm that works by repeatedly stepping through the list to.
Sorts Tonga Institute of Higher Education. Introduction - 1 Sorting – The act of ordering data Often, we need to order data.  Example: Order a list of.
Fundamentals of Algorithms MCS - 2 Lecture # 15. Bubble Sort.
CSC211 Data Structures Lecture 21 Quadratic Sorting Instructor: Prof. Xiaoyan Li Department of Computer Science Mount Holyoke College.
Program auralization refers to the act of adding sounds to a program so that when the program executes the sounds added are played back. Doing so assists.
12. Sorting Intro Programming in C++ Computer Science Dept Va Tech August, 2002 © Barnette ND & McQuain WD 1 Sorting Many computer applications.
Bubble Sort.
CS 162 Intro to Programming II Bubble Sort 1. Compare adjacent elements. If the first is greater than the second, swap them. Do this for each pair of.
3 – SIMPLE SORTING ALGORITHMS
1 Sorting (Bubble Sort, Insertion Sort, Selection Sort)
Mixcraft Portfolio Student Name :. Task 1 - Learn the Basics In Task 1 you are finding out the basic tools in Mixcraft. You must be able to show you can:
Copyright © 2000, Department of Systems and Computer Engineering, Carleton University 1 Introduction An array is a collection of identical boxes.
CS 106 Introduction to Computer Science I 03 / 02 / 2007 Instructor: Michael Eckmann.
Lecture 4 1 Advance Analysis of Algorithms. Selection Sort 2 Summary of Steps Find the smallest element in the array Exchange it with the element in the.
August 7, 2003 BITS C461/IS C341 Software Engineering1 Infrastructure for Software Service Provider Last Update: August 6, 2003 Aditya Mathur.
COP 3540 Data Structures with OOP
Tutorial 9 Iteration. Reminder Assignment 8 is due Wednesday.
Bubble Sort. Sorting  Computers only use numeric values for sorting  Does this mean you cannot sort a file by a character field (such as last name or.
Introduction to Algorithms. Algorithms Algorithms are ways of solving problems. There is a technical definition that basically says an algorithm is a.
CompSci 4 Chap 10 November 4, 2010 Prof. Susan Rodger.
Playing Cards Example GPL’ed cards:
Starting Out with C++, 3 rd Edition 1 Sorting Arrays.
Chapter 15 Running Time Analysis. Topics Orders of Magnitude and Big-Oh Notation Running Time Analysis of Algorithms –Counting Statements –Evaluating.
Chapter 9: Sorting and Searching Arrays
CS212: Data Structures and Algorithms
Simple Sorting Algorithms
CS 106 Computing Fundamentals II Chapter 77 “Algorithm”
Sorting Algorithms.
CSC 108H: Introduction to Computer Programming
Design and Analysis of Algorithms
Bubble Sort The basics of a popular sorting algorithm.
Introduction to Processing Digital Sounds part 2
And now for something completely different . . .
Sorting.
25 Searching and Sorting Many slides modified by Prof. L. Lilien (even many without an explicit message indicating an update). Slides added or modified.
24 Searching and Sorting.
Sorting Damian Gordon.
Simple Sorting Algorithms
Presents a preliminary view of sorting algorithms
Bubble sort.
Chapter 23 Searching and Sorting
Simple Sorting Algorithms
Insertion Sort Array index Value Insertion sort.
CS Problem Solving and Object Oriented Programming Spring 2019
Discrete Mathematics CS 2610
CS Problem Solving and Object Oriented Programming Spring 2019
Presentation transcript:

August 7, 2003 BITS C461/IS C341 Software Engineering1 Jlisten: A Tool for Program Auralization Last Update: August 6, 2003 Aditya Mathur

August 7, 2003 BITS C461/IS C341 Software Engineering2 What is program auralization? Program auralization refers to the task of mapping program events and activities to sounds. Program events: “Sonification” is another term for “auralization.” Execution begins Control enters a loop. Method check_balance is invoked. Variable her_balance becomes greater than $1 million.

August 7, 2003 BITS C461/IS C341 Software Engineering3 Program events Execution begins Control enters a loop. Method check_balance is invoked. Variable her_balance becomes greater than $1 million.

August 7, 2003 BITS C461/IS C341 Software Engineering4 Program activities Method detect_intrusion is executing. Loop starting at label sort_begin is executing.

August 7, 2003 BITS C461/IS C341 Software Engineering5 Why auralize? An auralized program can be “heard” while it executes. Hearing the execution of an auralized program enables the detection of mapped events and activities. Sound serves as a complement to printed or other visual media. Sound allows the detection of events without having to “dig” into the program through a debugging or other tool.

August 7, 2003 BITS C461/IS C341 Software Engineering6 Past work in program auralization Listen project at Purdue: Originally by Boardman and Mathur. Several other (data) sonification projects at Georgia Tech, U of Illinois, Northumbria University, Sante Fe institute, etc

August 7, 2003 BITS C461/IS C341 Software Engineering7 Jlisten: How does it work?

August 7, 2003 BITS C461/IS C341 Software Engineering8 Sample LSL spec [1] /*********************************************************************** * *File:sort.lsl *Author:David B. Boardman *Date:Aug 1994 * *For the bubble, insertion, and selection sort, this *specification auralizes the begin and end of a *program, the number of comparisons, and the *element swapped. * ************************************************************************/

August 7, 2003 BITS C461/IS C341 Software Engineering9 Sample LSL spec [2] begin auralspec specmodule temp begin temp syncto mmabs q = 60; notify rule = prog_begin using begin_snd; notify rule = prog_end using end_snd; notify rule = while_body_begin using sticks_snd in func = "insert_sort"; notify rule = while_statement_exit using sticks_snd in func = "insert_sort";

August 7, 2003 BITS C461/IS C341 Software Engineering10 Sample LSL spec [3] notify rule = for_body_begin using sticks_snd in func = "bubble_sort" and func = "selection_sort"; dtrack temp when rule = function_entry:"exchange" until rule = function_return:"exchange" using flute2_snd; end temp; end auralspec.

August 7, 2003 BITS C461/IS C341 Software Engineering11 Your tasks Understand the problem well. Perform requirement analysis. Make good use of information and components already available to you. Design the Jlisten system. Prototype Jlisten and have fun with it! Can a program be mapped to Music? Let us investigate through experimentation!