Download presentation
Presentation is loading. Please wait.
Published byJosephine Lester Modified over 9 years ago
1
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
2
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.
3
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.
4
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.
5
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.
6
6 Examples from my Life! Combining traditional Software Engineering with traditional engineering Combining Computer Science with Audiology Combining Computer Science with Music
7
7 The System Test Phase: Parametric Control Cangussu et al. TSE 2002 Computer Science and Control Engineering
8
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?
9
9 Traditional approach: Metrics driven Test effort Errors Discovered/fi xed
10
10 Proposed approach: Feedback Control theory driven Specifications System Effort + f(e) Additional effort What is f ? - Required Quality Observed Quality
11
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
12
12 Problem Scenario cp 1 cp 2 cp 3 cp 4 cp 5 cp 6 cp 7 cp 8 cp 9 cp i = check point i rfrf schedule set by the manager Approximation of how r is likely to change r0r0 observed deadline r - number of remaining errors t- time t0t0
13
13 Our Approach Controller r error (t) ’ w’fw’f + + wf+wfwf+wf + wf+wfwf+wf r observed (t) r expected (t) Actual STP scsc r0r0 STP State Model scsc r0r0 Initial Settings (w f, ) wfwf Test Manager w f : workforce : quality of the test process
14
14 Physical and Software Systems: An Analogy Dashpot Rigid surface External force X equilibrium X: Position Number of remaining errors Spring Force Effective Test Effort Block Software Mass of the block Software complexity Quality of the test process Viscosity X current Spring To err is Human
15
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.
16
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 S c of an application, its rate of reduction in the number of remaining errors, and the applied effort E is E=S c. r..
17
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.
18
18 CDM First Postulate The magnitude of the rate of decrease of the remaining errors is directly proportional to the net applied effort and inversely proportional to the complexity of the program under test. This is analogous to Newton’s Second Law of motion.
19
19 CDM Second Postulate The magnitude of the effective test effort is proportional to the product 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.
20
20 CDM Third Postulate The error reduction resistance is proportional to the error reduction velocity and inversely proportional to the overall quality 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.
21
21 State Model : Disturbance x(t) = Ax(t) + B u(t). Force (effort) balance equation:
22
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 at time T+ T Given:
23
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.
24
24 Fun with CS and Music: The Listen/JListen Project http://www.cs.purdue.edu/homes/apm/listen.html Computer Science and Music
25
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?
26
26 The JListen System yourProgram.java Program auralizer yourProgramAuralized.java Sound libraryRun time controls Program Listener Event-sound mapping
27
27 Example: Bubble sort EventInstrumentNote before if statementOrchestral Hit G4 if body beginTaiko DrumE3 if body endTaiko DrumG3 after if statementOrchestral Hit C4 before for loopTaiko DrumE5 for body beginOrchestral HitE4 after for loopOrchestral HitC5 body beginTaiko Drum D3 body endTaiko DrumC3 BubbleSort.mp3
28
28 Example: Primality Check EventInstrumentNote 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
29
29 Example: CS 180 Calculator Program EventInstrumentNote 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()
30
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.
31
31 Thank you!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.