Tutorials

Chair: Peri Tarr, IBM Thomas J. Watson Research Center, tutorials@oopsla.acm.org

OOPSLA's renowned, world-class tutorials program offers you the knowledge you need to be most effective in today's demanding research and industrial climate. Nowhere else can you find such a broad selection of OO-related topics, taught by some of the most influential and innovative people in the field.

Whatever your experience level, background, or role, and whether you need to stay current or acquire new skills, OOPSLA tutorials are your one-stop information source for everything OO: from introductions to object-oriented development, to the latest standards, languages, technologies, and methodologies, to state-of-the-art and on-the-horizon topics.

If you aren't sure which tutorial(s) are right for you, contact the tutorials chair at tutorials@oopsla.acm.org.

Sunday, 26 October

8:30-17:00 Full day

15 Judging Use Case Quality: Patterns for Writing Effective Use Cases
16 Concepts of Object-Oriented Programming
17 Programmer's Dozen: Thirteen Recommendations for Refactoring, Repairing, and Regaining Control of Your Code
18 An Introduction to Software Product Lines
19 Automated Software Testing: Hands On and Interactive!

8:30-12:00 Morning

1 Scrum and Agile Process 101
2 Introduction to Concurrent Programming in Java
3 Domain Analysis for Product-Line Architectures
4 Introduction to Aspect-Oriented Programming with AspectJ
5 Evolutionary Design
6 Eclipse Extensions—Making the Connections
7 Programming Internet-Scale Distributed Applications in the 21st Century: BPEL and Beyond

13:30-17:00 Afternoon

8 Patterns @ Work
9 Java Concurrency Utilities: Tools for Managing Multi-threading
10 Advanced Aspect-Oriented Programming with AspectJ
11 Performance Solutions: Solving Performance Problems Quickly and Effectively
12 Successful Web Services and Service-Oriented Architectures: Beyond the Hype
13 Large-Scale Agile Software Development
14 An Introduction to the Common Language Infrastructure (CLI)

Monday, 27 October

8:30-17:00 Full day

34 Developing Java Applications for Small Devices Using Eclipse
35 Essential Object-Oriented Analysis and Design
36 Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects

8:30-12:00 Morning

20 The C# Programming Language
22 Garbage Collection
23 Beyond the Gang of Four
24 Patterns of Enterprise Application Architecture
25 Agile Requirements Specification
26 Patterns for High Performance Systems
29 Foundations of Object-Oriented Languages: Types and Language Design

13:30-17:00 Afternoon

27 Java Reflection
28 Enterprise Integration Patterns
30 Large-Scale Software Architecture: A Practical Guide Using UML
31 Technical Leadership In Practice
32 Domain-Driven Design
33 From Component Reuse to Asset-Based Software Engineering
42 Agile Use Cases

Tuesday, 28 October

13:30-17:00 Afternoon

21 Feature Oriented Programming and Product-Lines
37 Dungeons and Patterns!
38 Project Retrospectives in Agile Development
39 Enterprise Aspect-Oriented Programming with AspectJ
40 An Overview of UML 2.0
41 C++ Threading: A Generic-Programming Approach
43 Program Generation: Concepts and Techniques

Wednesday, 29 October

13:30-17:00 Afternoon

44 Notes on the Forgotten Art of Software Architecture
45 Test-Driven Development with "fit", the Framework for Integrated Test
46 Object-Oriented Reengineering: Patterns & Techniques
47 Enterprise Application Integration with J2EE and .NET
48 Guided Inspection of UML Models
49 Extending Enterprise Systems with Mobile/Wireless Applications
50 Understanding Circa-2003 XML Technologies
51 Designing Reliable Collaborations
52 Agile Database Techniques: Data Doesn't Have To Be A Four Letter Word Anymore

Thursday, 30 October

8:30-12:00 Morning

53 Legacy: The Other Kind of Inheritance
54 Running Agile Software Development Projects with RUP
55 J2EE in Practice: Architectural Variations in the Context of Enterprise Systems
56 Model-Driven Architecture
57 Test-Driven Development Workout: Building Java Muscle
58 Object-Oriented Modelling with UML