Distributed Development and Teaching of Algorithmic Concepts - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Distributed Development and Teaching of Algorithmic Concepts

Description:

Java debugger as applet. Tomorrow: Sharing of dynamic state. Test cases. Coverage results ... Integrated editor, chat, whiteboard (now), debugger, video (planned) ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 13
Provided by: leonardm8
Category:

less

Transcript and Presenter's Notes

Title: Distributed Development and Teaching of Algorithmic Concepts


1
Distributed Development and Teaching of
Algorithmic Concepts
  • Saman Amarasinghe, John Chapin, Seth Teller
  • MIT Lab for Computer Science
  • www.lcs.mit.edu
  • saman,jchapin,seth_at_lcs.mit.edu

2
Motivations
  • Teaching
  • Students demonstrate conceptual mastery
  • Collaborative distance learning
  • Web distribution, evaluation, feedback
  • Over-the-shoulder interaction
  • Live, integrated staff/student connections
  • Explore broader applications
  • Capture, analysis, sharing mechanisms
  • Distributed engineering

3
Fusion Project
  • Teach algorithmic concepts
  • Students demonstrate mastery byexhibiting
    correct algorithm for concept
  • Increase efficiency of teaching staff
  • Less administration more involvement
  • Web distribution, evaluation, feedback
  • Templated development kit
  • Distributed creation of new modules

4
Foundational Work
  • Algorithm animation
  • Zeus (Brown 91) Interactive Illustrations
    (Trychin 97)
  • Data-flow software architectures
  • Conman (Haeberli 88), AVS (Upson et al. 89)
  • Web-based teaching
  • WebCT (Goldberg et al. 96), JScheme (Hickley
    97)
  • Web chat, whiteboard, video, etc.
  • Vat, Wb, Vic (McCanne 94)
  • Stages of learning
  • Perceiving structure integration
    actingfeedback reflection (Laurillard 93)

5
Fuse-N system Advances
  • Web-based curriculum distribution, coursework,
    evaluation, feedback
  • Four distinct pedagogical modes
  • Reference Manual Implement Difference
  • Shared lab bench metaphor for student, staff
    work interaction
  • Authoring kit to facilitate module development by
    other educators

6
Student Perspective
  • Concept Module
  • Represents algorithmic concept
  • Pedagogical modes
  • Reference (correct, but source hidden)
  • Manual (non-algorithmic)
  • Implement (algorithmic)
  • Difference (validation)

-Demo-
7
Data-Flow Desktop Framework
  • Data-Flow metaphor supports
  • Per-module, typed, input/output ports
  • Concatenation of modules (chaining)
  • Aggregation of modules (abstraction)
  • Per-student state (persistence)
  • Network transparency
  • Test suites, event logging, etc.

-Demo-
8
Interaction Feedback
  • Avatars for each student, staff person
  • Visual status, location of person
  • Mechanism for message exchange, etc.
  • Desktop sharing (e.g., with a TA)
  • Allows selective/wholesale state sharing
  • Mechanisms for distributed data-flow
  • Logging, checkpointing of student work
  • Forms-based feedback, grading

-Demo-
9
Teaching programming concepts
  • Synergy among student, teaching staff, and
    automated analysis tools
  • Example common semantic errors
  • Deploy to introductory programmingclass
  • Incorporate second language (Scheme)

10
Collaborative dynamic analysis
  • Today Debugging across the web
  • Java debugger as applet
  • Tomorrow Sharing of dynamic state
  • Test cases
  • Coverage results
  • Failure analyses
  • Group access to analysis information generated by
    individuals

11
Future Directions
  • Enhanced collaboration capability
  • Analysis, meta-data repository
  • Authorization security improvements
  • Audio, video streaming live avatars
  • Consistent shared access to info spaces
  • Enhanced analysis capability
  • Bi-directional debugging (w/ Boothe)
  • Testing, grading, feedback, aggregates

12
Technical underpinnings
  • Client-server architecture
  • Server-side compilation
  • No development environment necessary on client
  • All code in Java for cross-platform,
    cross-browser use server retargeting
  • Integrated editor, chat, whiteboard (now),
    debugger, video (planned)
Write a Comment
User Comments (0)
About PowerShow.com