aditya p. mathur professor department of computer sciences purdue university, west lafayette monday...

31
Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman Honors Seminar 1 http://www.cs.purdue.edu/homes/apm/ talks.html

Upload: josephine-lester

Post on 28-Dec-2015

225 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

Aditya P. Mathur

ProfessorDepartment of Computer SciencesPurdue University, West Lafayette

Monday Feb 6, 201211:30am

Interdisciplinary Fun

CS 197 Freshman Honors Seminar

1

http://www.cs.purdue.edu/homes/apm/talks.html

Page 2: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

2

What is “Interdisciplinary” ?

Combining two or more academic disciplines or fields of

study, e.g., CS and Biology.

Crossing traditional discipline boundaries, e.g., CS

undergraduate working with a speech science professor

to model and investigate the behavior of cells in the

human cochlea.

Page 3: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

3

Why “Interdisciplinary” ?

To fulfill a desire to face and overcome new challenges,

e.g., chip in the brain.

To solve problems that are difficult to solve using the

knowledge and skills acquired of education in a single

traditional academic discipline, e.g., understanding

human emotions.

To be able to appreciate what and how others do what

they do, e.g., What does a cell biologist do in her lab?

To be able to work in teams that solve complex

problems, e.g., the design of the Mars (Human) Lander.

Page 4: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

4

What is your discipline?

“We are not students of some subject matter, but

students of problems. And problems may cut right

across the borders of any subject matter or discipline.” -

Karl Popper

Popper, K. R. “Conjectures and Refutations: The

Growth of Scientific Knowledge.” New York:

Routledge and Kegan Paul, 1963, p. 88.

Page 5: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

5

You and the future

“The time is upon us to recognize that the new frontier is

the interface, wherever it remains unexplored…. In the

years to come, innovators will need to jettison the security

of familiar tools, ideas, and specialties as they forge new

partnerships.”

Kafatos, F.C. and Eisner, T., “Unification in the

Century of Biology.” Science, 303 (February 27):1257,

2004.

Page 6: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

6

Examples from my Life!

Combining traditional Software Engineering with traditional engineering

Combining Computer Science with Audiology

Combining Computer Science with Music

Page 7: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

7

The System Test Phase: Parametric Control

Cangussu et al. TSE 2002

Computer Science and Control Engineering

Page 8: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

8

Software Process Control: The Problem

A (large) team of engineers is engaged in developing a

software/hardware system.

Requirements are known.

Project schedule has been developed and approved.

How does one monitor and control

the development process?

Page 9: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

9

Traditional approach: Metrics driven

Test effort

Err

ors

D

isco

vere

d/

fixed

Page 10: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

10

Proposed approach: Feedback Control theory driven

Specifications

SystemEffort +

f(e)Additionaleffort What is f ?

-

RequiredQuality

ObservedQuality

Page 11: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

11

Sample Study: Modeling the system test phase

Software Test Process (STP): System test phase; physical system analogy

Objective:Control the STP so that the quality of the tested software is as desired.

Quantification of quality of software:• Number of remaining errors• Reliability

Page 12: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

12

Problem Scenario

cp1 cp2 cp3 cp4 cp5 cp6 cp7 cp8 cp9

cpi = check point i

rf

schedule set bythe manager

Approximation of how r is likely to change

r0 observed

deadline

r -

num

ber

ofre

mai

ning

err

ors

t- time

t0

Page 13: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

13

Our Approach

Controllerrerror(t)

w’f

+

+

wf+wf

+

wf+wf

+

robserved(t)

rexpected(t)

Actual STP

sc r0

STP State Model

sc r0

Initial Settings(wf,)

wf

Test Manager

wf: workforce : quality of the test process

Page 14: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

14

Physical and Software Systems: An Analogy

Dashpot

Rigid surface

External force

Xequilibrium

X: Position

Number of remainingerrors

Spring Force

Effective Test Effort

Block

Software

Mass of the blockSoftware

complexity

Quality of thetest process

Viscosity

Xcurrent

SpringTo err isHuman

Page 15: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

15

Physical Systems: Laws of Motion [1]

First Law:

Every object in a state of uniform motion tends to remain in that state of motion unless an external force is applied to it.

Does not (seem to) apply to testing because the number of errors does not change when no external effort is applied to the application.

Page 16: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

16

Physical Systems: Laws of Motion [2]

Newton’s Second Law:

The relationship between an object's mass m, its acceleration a, and the applied force F is F = ma.

CDM First Postulate:

The relationship between the complexity Sc of an application, its rate of reduction in the number of remaining errors, and the applied effort E is E=Sc .

r..

Page 17: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

17

Physical Systems: Laws of Motion [3]

Third Law:

For every action force, there is an equal and opposite reaction force.

When an effort is applied to test software, it leads to (mental) fatigue on the tester.

Unable to quantify this relationship.

Page 18: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

18

CDM First Postulate

The magnitude of the rate of decrease of the remaining errorsis directly proportional to the net applied effort and inverselyproportional to the complexity of the program under test.

This is analogous to Newton’s Second Law of motion.

Page 19: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

19

CDM Second Postulate

The magnitude of the effective test effort is proportional to theproduct of the applied work force and the number of remaining errors.

for an appropriate .

Analogy with the spring:

Note: While keeping the effective test effort constant, a reduction in r requires an increase in workforce.

Page 20: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

20

CDM Third Postulate

The error reduction resistance is proportional to the errorreduction velocity and inversely proportional to the overallquality of the test phase.

for an appropriate .

Analogy with the dashpot:

Note: For a given quality of the test phase, a larger error reduction velocity leads to larger resistance.

Page 21: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

21

State Model

: Disturbance

x(t) = Ax(t) + B u(t).

Force (effort) balance equation:

Page 22: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

22

Computing the feedback-Question

Question:

What changes to the process parameters will achieve the desired r(T+T) ?

r(T): the number of remaining errors at time T

r(T+T): the desired number of remaining errors attime T+T

Given:

Page 23: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

23

This work led to Software Cybernetics

A (new) discipline that aims at the

development of models and control

methodologies for software and the software

development processes.

Page 24: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

24

Fun with CS and Music: The Listen/JListen Project

http://www.cs.purdue.edu/homes/apm/listen.html

Computer Science and Music

Page 25: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

25

You as a composer, your program as a symphony!

Have you ever thought how will your program sound if

you were able to “listen” to it during execution?

Page 26: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

26

The JListen System

yourProgram.java

Programauralizer

yourProgramAuralized.java

Sound library Run timecontrols

ProgramListener

Event-sound mapping

Page 27: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

27

Example: Bubble sort

Event Instrument Note

before if statement Orchestral Hit G4if body begin Taiko Drum E3if body end Taiko Drum G3after if statement Orchestral Hit C4before for loop Taiko Drum E5for body begin Orchestral Hit E4after for loop Orchestral Hit C5body begin Taiko Drum D3body end Taiko Drum C3

BubbleSort.mp3

Page 28: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

28

Example: Primality Check

Event Instrument Note

before if statement Piano E5 if body begin Celesta C6 if body end Celesta C4 after if statement Piano C5 for body begin Piano G4 for body end Piano D5 body begin Celesta F3 body end Celesta C4

CheckPrimality.mp3

Page 29: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

29

Example: CS 180 Calculator Program

Event Instrument Note

before if statement Electric Piano 2 E3 if body begin Piano B4 if body end Piano C5 after if statement Electric Piano 1 A3 before for loop Acoustic Bass G4 for body begin Acoustic Bass C4 for body end Acoustic Bass E4 after for loop Acoustic Bass D5 body begin Piano B4 body end Cello A3 Calculator.mp3

actionPerformed()

Page 30: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

30

Summary

Interdisciplinary “thinking” brings new, and perhaps better, solutions to problems.

Interdisciplinary education helps one to work in teams of people from different disciplines to solve complex problems.

Page 31: Aditya P. Mathur Professor Department of Computer Sciences Purdue University, West Lafayette Monday Feb 6, 2012 11:30am Interdisciplinary Fun CS 197 Freshman

31

Thank you!