All submissions are closed.
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps


Chair: Steve Metsker, CapTech Ventures, tutorials@oopsla.org


This call for papers is an invitation for object technology professionals to submit proposals for top quality tutorials for OOPSLA 2004.

OOPSLA attendees are interested in a huge variety of OO topics, including classic subjects that have been taught for years, as well as news about the latest advances in OO technology. The OOPSLA tutorials program aspires to cover the full breadth of OO topics.

Attendees of OOPSLA tutorials deserve the highest standard of excellence in tutorial preparation and delivery. Tutorial presenters are typically experts in their chosen topic who are experienced speakers with exceptional skills in preparing and delivering educational presentations. The OOPSLA Tutorials Committee will consider both your knowledge of your topic and your success at teaching it, when selecting tutorials for OOPSLA 2004.

The format of your presentation is important. Many tutorials follow a traditional lecture style, with a series of slides that pace or keep stride with the speaker. An increasing number of tutorials use other formats, such as presentations that:

  • Show the presenter writing code (or creating some other kind of result) during the presentations.
  • Arrange for attendees to develop software (or other artifacts) during the presentation.
  • Teach attendees an educational game and let them play it.

Many other teaching formats are possible. OOPSLA 2004 encourages the submission of tutorials that will teach in a nontraditional format. As with traditional techniques, your submission should cite previous successes at teaching using the format that you propose.

In addition to selecting your topic and teaching format, you must devise your tutorial to work within a few timing and logistical constraints. Most OOPSLA tutorials are half-day sessions (composed of two 90-minute blocks with an intermediate 30-minute break). You may also submit tutorials that will span a full day, although your submission should explain why the topic requires a full day. Note that many semester-length topics have been taught successfully in a half-day format. Tutorials will be presented in rooms that include a laptop projector, and presenters must provide tutorial notes for attendees several months in advance.

The OOPSLA 2004 Tutorials Committee will evaluate all tutorial proposals. The committee is composed of people from industry, academia, and industrial research, with extensive experience in teaching object technologies. The committee will consider following criteria:

  • Relevance, interest, and value and of the topic to OOPSLA attendees.
  • Completeness, clarity, and quality of the tutorial proposal.
  • Expertise and experience of the presenters in the proposed topic.
  • Expertise and experience of the presenters in delivering a successful educational presentation.
  • Effectiveness of the proposed presentation approach.

Proposals are due by March 19, 2004, but the Committee may read early proposals and work with the submitter(s) to further develop proposals that need additional information or to identify possible innovative techniques for delivery. The Tutorial Chair will send notification of acceptance or rejection by May 10, 2004. Accepted tutorials will become part of the OOPSLA 2004 Tutorial Program and will be described in the Advance Program using an abstract provided by the submitter as part of the proposal.

Important Dates

  • Firm deadline for receipt of submissions: March 19, 2004
  • Notification of acceptance or rejection: May 10, 2004
  • Deadline for camera-ready copy: August 2, 2004

Submission Process

Go to the Tutorials submission system.

Submit your proposal through the online OOPSLA submission system. You may be modify your proposal up until the deadline, but be sure to thoroughly complete all required portions of the online submission form.

Required Submission Contents

Each submission must include the following information. Please note that much of the required information is specified in the on-line submission form, but some of it must be submitted in a separate file. The separate file can also contain any additional information the submitter wishes to include to help the Tutorials Committee evaluate the proposal.

Title [on-line submission form]: The name of the tutorial. Choosing a good title can be more challenging than you might think. The title will often serve as the first synopsis of your tutorial. It is important to choose a short title that accurately describes your tutorial.

Abstract [on-line submission form]: A 200-word (maximum) description of the tutorial. The abstract should be written to fit in to the OOPSLA Advance Program. The abstract is your advertisement to and contract with participants will who decide whether or not to take this tutorial based largely on this information.

Main topic keywords [on-line submission form]: Along with the Abstract, the main topic keywords will help us better understand your submission and choose appropriate reviewers.

Presenters [on-line submission form]: Include for each presenter (including the contact person, who must be clearly designated as such): name, email address, affiliation, address, and a brief biography indicating the presenter's expertise and experience in the tutorial's subject matter.

Level [on-line submission form]: The expertise level of the tutorial. Choose from Beginner, Intermediate, or Advanced.

Attendee background [on-line submission form]: Briefly describe the knowledge attendees must or should have in order to benefit from this tutorial.

Tutorial objectives [on-line submission form]: Your statement of the objective of the tutorial should mirror the abstract, but without an advertising element. Explain what knowledge and capabilities he attendee will gain by attending this tutorial.

Presentation format [on-line submission form]: What instructional format will the presenter(s) use? Will it be a slide-based lecture, a hands-on exercises, a group problem solving session, a game, or something else.

Scheduling constraints [on-line submission form]: If the presenters have any constraints on when they can present the tutorial, these should be listed. These can refer to specific days (e.g., "I can't present on Oct. 26"), or to other OOPSLA activities to which the presenters are committed (e.g., "If my technical paper submission, entitled 'What Are Objects?', is accepted, I cannot present this tutorial during the session where my paper is presented").

Half/Full-Day [on-line submission form]: Choose from Half day (3 contact hours plus breaks) or Full day (6 contact hours plus breaks).

Can repeat [on-line submission form]: Yes or No: whether or not you are willing to repeat the presentation of the tutorial if there is sufficient demand.

Tutorial presentation history [on-line submission form]: A summary of the tutorial's presentation history, if it has been presented previously. If it is a new tutorial, simply indicate that it is new. You may also comment on related presentations that show experience with the topic or the presentation format of your submission. For previously presented tutorials that relate to your submission, please indicate the following:

  • Name of venue
  • Date of presentation
  • Summary of reviews of the tutorial from participants.
  • What, if anything, have you done to address participant feedback?
  • What, if anything, have you done to keep the tutorial current?

Classification [on-line submission form]: Indicate whether your tutorial is best described as presenting research material, practice-oriented material, or material that covers both research and practice.

Target audience [on-line submission form]: Indicate the audience who will most benefit from your tutorial: researchers, practitioners, managers, and/or others. If you check "others," please explain in the Remarks field.

Status [on-line submission form]: The current status of the material covered by this tutorial. You must, at minimum, indicate one of the following:

  • The tutorial covers new ideas, which are not yet validated as of the time of the proposal submission.
  • The tutorial covers material for which some preliminary validation or proof-of-concept exists. These include being accepted for publication at a major peer-reviewed conference or journal; being used in test applications or evaluation scenarios; being presented to standards boards; etc.
  • The tutorial covers material for which significant validation exists. This includes acceptance by standards boards; being used in non-trivial applications and/or real-world settings; publication of material in a book by a major publisher; etc.

URL with additional info [on-line submission form]: If you have additional information about the material contained in the tutorial available on the web, please include a URL for this web site.

Auxiliary information [separate file]: You may upload a file that sheds more light on your proposal. This file might include a sample of materials (such as slides or a game board), more information about the presenters' or the tutorial's history, or any other information that will help the Committee make an informed decision about your submission.

Examples to Emulate

Below are some exemplary examples of four portions of a tutorial proposal, the Abstract, the Tutorial Objectives, the Attendee Background section, and the Presentation Format. (These are intended simply as good examples of the information requested. No endorsement on content or topic is implied by the use of these examples; they are merely for illustration.)

Example Abstracts

Note: The following sample Abstracts are short, due to space considerations. Your proposal's Abstract may be up to 200 words.

Abstract: When the performance penalty of object-oriented systems is mentioned, a common response is to blame antiquated hardware designs for not supporting object-oriented languages as they deserve. To what extent can the performance gap between conventional languages and object-oriented languages be closed using hardware? What architectural changes benefit object-oriented systems, and by how much? There have been many attempts to make hardware that better supports object-oriented programming. This tutorial describes some of these systems, and the extent that they have succeeded or failed in their aims. These systems include the iAPX432, SOAR, Rekursiv, and MUSHROOM, as well as some features from mainstream architectures such as SPARC.

Abstract: This tutorial presents techniques for improving, understanding, and expressing object analysis and design models. These techniques include development of: Use Case Conversations, User Stories, User Navigation Models, CRC cards, object behavior stereotypes, control style analysis, behavior refactoring worksheets, hot spot cards, and flexibility design. These techniques can be successfully applied to augment your analysis and design toolkit, regardless of methodology. This tutorial will be conducted as a hands-on-workshop where we review guidelines and examples to illustrate key techniques, and use the techniques to develop the artifacts.

Abstract: There are many issues that need to be addressed before a truly reusable C# class library can be built. This tutorial will examine these issues from both an abstract perspective (design) and a pragmatic perspective (code).

Abstract: As Java projects grow, they tend to hit the Java productivity wall—the point at which added resources do not contribute proportionately to project progress. This can happen at any point between three to six or more developers. This tutorial defines the problem, surveys available products, and provides generic and customized practical solutions using CVS as a model.

Abstract: A project that is using object technology and an iterative development process faces a number of unique issued in order to deal with the project's entire life cycle. This tutorial presents a process framework that can be tailored to a specific project's situation. The tutorial follows a logical order of topics facing projects. Topics include estimating, scheduling, methodology selection, iterative development, and reuse. Specific advice derived from multiple project experiences is given during the discussion of each topic area.

Example Tutorial Objectives

Objective: The intermediate level C# programmer who attends this tutorial will gain experience in the following areas: the relationship of ASP.NET and code behind; the creation of skins and a few other advanced GDI+ capabilities; leveraging delegates and events; techniques for efficient operator overloading; the use of anonymous methods.

Objective: This tutorial is intended to prepare the participant (1) to determine whether a native XML database is appropriate technology for his or her database needs (2) to understand the technical tradeoffs between relational and XML technologies, and (3) to evaluate the commercially available XML persistence products.

Objective: Participants will learn 10-15 GoF patterns well enough to explain their purpose.

Objective: Participants will be acquainted with a comprehensive test plan that includes test-driven development, the new relationship of developers and test teams, and how to position testing as a function within a typical corporation.

Example Presentation Formats

Presentation Format: This tutorial will be lecture based.

Presentation Format: This tutorial will be 70% lecture and 30% individual paper exercises.

Presentation Format: This tutorial will offer a minimum amount of lecture, with the majority of time spent in small groups trying to solve specific problems. Lectures will be used to deliver the key points but after approximately every 30 minutes of lecture, participants will complete a set of short exercises to reinforce the lecture material. Solutions to the exercises will be presented and discussed.

Presentation Format: After a brief introduction by the presenter to set the scope and objectives for the session, participants will be divided into groups, and each group given one of four different problems to solve. Then two groups that have tackled different problems will swap members to compare solutions and prepare a poster that explains how the differences in the problems affected the solution approaches taken. There will then be an opportunity for all participants to view and discuss the posters. In the second half of the session the process will be repeated but with different group memberships and different problems. The session will end with the presenter drawing together the results of the exercises and explaining how they compare with recently published research results.

Example Attendee Backgrounds

Background: Participants should be experienced Java programmers

Background: Participants should have a general familiarity with the object-oriented paradigm, preferably being fluent in one or more object-oriented languages. Familiarity with C# will be useful, but not required. The intended audience is professionals charged with developing or managing instruction in object-oriented techniques, either in a university or industry context.

Background: The tutorial is targeted to those individuals interested in the managerial issues that influence the success of object-oriented software development efforts. It is assumed that the audience has some familiarity with the basic concepts of object technology and have begun to worry about how to effectively employ the technology.

Background: Basic knowledge of the operational behavior of languages, particularly inheritance and polymorphism, but with no formal theoretical understanding. Only a knowledge of simple set theory will be required; and a willingness to perform certain mathematical substitutions. The tutorial is aimed at software professionals wanting to write type-correct software; language designers wanting to understand type issues in OOP; final year undergraduates and first year graduate students wanting to relate traditional notions of type to OOP.

For More Information

For additional information, clarifications, or answers to questions, please contact the Tutorials Chair, Steve Metsker, tutorials@oopsla.org.