Web Technology for Conducting your Business

Presenter Organization Length Date
Bob Munck TBD Full Day Monday

Abstract: If the Internet is a superhighway, the technology of the World Wide Web is moving down the fast lane like a Formula IV racer. This tutorial will give you a good understanding of the basics: client/server architecture and the HTTP protocol; text rendering (html); and graphics hypertext links (URLs). It will then use that foundation to explain the latest additions to the technology, from Java to VRML. The plans and possibilities of new players on the Web, including Microsoft and Lotus, will be examined. Finally, some possibilities for merging Ada with Web technology will be suggested.

Rational Iterative Development Process and MIL-STD-498

Presenter Organization Length Date
Philippe Kruchten Rational Full Day Monday

Abstract: In dealing with both commercial and DoD software projects over the last 14 years, Rational has gained a fairly unique perspective on modern software development processes. We see government domain organizations moving towards less regulation and more emphasis on employing commercial products and techniques. We also see commercial organizations moving towards more rigor as software grows in scale and importance to their core lines of business. We have assimilated this base of pragmatic experience in applying advanced software technologies into a "Rational process" positioned to provide a balance of cost effectiveness, rigor and quality. The Rational process puts an emphasis on iterative development and architecture, addressing risks early and continuously, and evolving an executable version of the system through a sequence of demonstrable increments. It does not assume a fixed set of frozen requirements at the inception of the project, but allows the requirements to evolve as the other project perspectives (plans, technology and understanding) evolve. It expects and accommodates change. The process does not place a strong focus on documents or "ceremonies", and it lends itself to the automation of many of the tedious tasks associated with software development. The main focus remains the software product itself, and its quality, as measured by the degree to which it satisfies its stakeholders including buyers, users, developers and investors. The spirit of 498 is clearly compatible with the iterative development techniques inherent in the Rational Process and with the proper understanding between acquisition authority and development contractor, there are only minor issues to overcome in its implementation. This tutorial presents Rational's iterative development process and its application in the context of Mil-Std-498.

Simply Ada

Presenter Organization Length Date
J.M. KAMRAD II George Mason University Full Day Monday

Abstract: This is an introductory tutorial that presents an overview of the whole language for engineers and managers alike. The objective of this tutorial is to describe Ada95 in layers, starting with a Pascal like kernel. Describing Ada95 in layers will give the audience a greater appreciation for the salient features of the language and show how these features and show how these layers address the needs of various application domains. There will be references with each layer to additional resources that are available to further explore the features in that layer. The audience is expected to have some experience with high level languages like Pascal and with languages like C.


  1. Programming-in-the-Small

  2. Advanced Programming-in-the-Small

  3. Programming-in-the-Large

  4. Advanced Programming-in-the-Large

  5. Abstract Data Types and OOP

  6. Interfacing to Hardware and Software Systems

  7. Concurrent Programming

  8. Real-time Programming

  9. Distributed Systems Programming

  10. Safety and Security Programming

CORBA, Orbix, & Ada95 Interoperability

Presenter Organization Length Date
Bill Beckwith Objective Interface Systems Half-Day Monday Morning

Abstract: This tutorial will cover the development and testing processes of a distributed object architecture based on CORBA. This will encompass the use of methods for object-oriented design and analysis, the use of CORBA tools to implement the design, and the use of software tools to test the environment for memory leaks, run-time errors, coverage and performance bottlenecks.

Information Systems Programming in Ada 95

Presenter Organization Length Date
Ben Brosgol ALSYS Half-Day Monday Afternoon

Abstract: One of the main goals of Ada 95 was to make it easier to develop information systems and financial applications which have traditionally'been the domain for COBOL. This tutorial describes the features of Ada 95, with a focus on the Information Systems Annex, that help achieve this goal. Among the topics to be covered are decimal types, "edited output", character and string handling, and interfacing with COBOL.

Introduction to Ada 95

Presenter Organization Length Date
Dave Cook ASSET Half-Day Monday Afternoon

Abstract: A short introduction to Ada95.

Managing Object Technology Projects

Presenter Organization Length Date
Richard T. Due TBD Full Day Tuesday

Abstract: The key to the successful implementation of Object Technology systems development is the effective application of project management strategies and techniques. While the leading Object-Oriented analysis and design methodologies describe required outputs, tasks, techniques, and notations, they offer little guidance on estimating, scheduling, monitoring, risk analysis, contingency planning, and change management. Traditional project management approaches, however, offer little guidance for the unique requirements of the Object paradigm. This tutorial presents a overview of proven, practical approaches to the full-time job of managing Object Technology systems development projects.

Design of Concurrent Software in Ada 95

Presenter Organization Length Date
Dr. Bo I. Sanden George Mason University Full Day Tuesday

Abstract: Participants learn how to design elegant and deadlock free concurrent software in Ada 95. The concurrency features of Ada 95 are briefly presented. The rest of the tutorial is devoted to practical problems that go far beyond textbook examples and include: periodic applications, finite-state machine applications, assembly line applications, and applications with race conditions or resource contention. The entity-life modeling design approach is used throughout. It bases the concurrency in the software on concurrent "threads" of events in the problem domain. Design heuristics and patterns are given for the different problem categories.

An Object Oriented Example Using Booch and Ada95

Presenter Organization Length Date
Brad Balfour CACI Full Day Tuesday

Abstract: This tutorial uses a small example introduce object oriented analysis, design, and programming using the Booch Method and Ada95.

Writing Java(tm)-Compatible Applets in Ada 95

Presenter Organization Length Date
Tucker Taft Intermetrics Half Day Tuesday Afternoon


This tutorial/workshop will introduce the attendees to writing Java(tm) compatible applets in Ada95. Java(tm) is a new technology from Sun (see http://www.javasoft.com/) which allows small applications ("applets") to be automatically downloaded to a client machine as part of browsing an HTML Web page with a Java-enabled Web browser. As of this writing, Sun's own HotJava(tm) browser, Netscape's Navigator browser, and Spyglass' Enhanced Mosaic browser are all going to support Java-compatible applets.

Sun has designed a new object-oriented language called "Java" as part of this technology, and provides a compiler to translate Java source programs into a byte-code representation (herein called "J-code") for secure and efficient transmission across the Internet. When a Java enabled browser encounters an HTML Web page with a reference to a Java applet, the J-code for the applet is automatically downloaded and executed, giving it control over a specified part of the screen displaying the Web page. J-code is a platform independent byte-code, and is intended for efficient execution by an interpreter, or efficient on-the-fly translation to machine-code for execution by the client hardware.

Although the source language Java and the Java byte code were designed hand-in-hand, it is still possible to map other programming languages to J-code, provided the underlying semantics of the languages match those of Java relatively well. As it turns out, the semantics of Ada 95 fit remarkably well the underlying capability of J-code. Recognizing this, a group at Intermetrics is in the process of adapting our validated Ada 95 front end ("AdaMagic"(tm)) to directly generate J-code, allowing Java-compatible applets to be implemented in Ada 95.


  1. Introduction to Sun's Java(tm) technology
    1. The Java language
    2. The Java virtual machine
    3. The standard Java classes
  2. Introduction to the Intermetrics Ada95/Java "AppletMagic(R)" compiler
    1. An overview of the mapping of Ada to J-code
    2. Programming and naming conventions for source-level interoperability between Java packages/classes and Ada 95 packages/types
    3. Using the AppletMagic compiler with a Java-enabled browser, the Java interpreter, or a Java applet viewer.

    4. Writing applets in Ada 95 The basics -- Hello world
  3. Using Java threads/Ada tasks for animation -- the game of Life
    1. Creating long-lived applets in their own "frame" -- a desk calculator
    2. The future of Ada 95 and Java on the Web
    3. Establishing repositories of reusable applet components
    4. Creating full Web-based client/server systems in Ada 95
    5. Supporting other languages via J-code (Smalltalk, Scheme, etc)

Rational Unified Method

Presenter Organization Length Date
Unified Method Rational Half-Day Tuesday Afternoon

Abstract: A short course on the Unified Method.

Object Oriented Enterprise Modeling

Presenter Organization Length Date
Captain Chad Bremmon U. S. Air Force Half-Day Tuesday Afternoon

Abstract: This tutorial presents the concepts and steps used in Object Oriented Enterprise Modeling. This tutorial will discuss the transition from standard IDEF 0 modeling to Object Oriented Modeling in the enterprise domain. After a brief discussion of the concepts of OO Enterprise Modeling, the tutorial will compare the IDEF and OO modeling methods. Attendees will see an example of an enterprise modeled in both IDEF and OO. Attendees will see the mapping between the enterprise and the object modeling domain. The object model will be expanded to show job descriptions and procedures derived from the object model. Finally, a brief discussion of Ada code generation will show how the object model is used to simulate the enterprise. This tutorial is designed for managers who are concerned about improving, automating or documenting the business process.

Artificial Intelligence with Ada

Presenter Organization Length Date
Janet F. Johns MITRE Half Day Tuesday Morning

Abstract: Knowledge is Power! Artificial Intelligence (AI) provides the means to harness the power of knowledge. Recent trends in AI have focused on implementing intelligent systems that perform useful tasks that computers can do well. Currently, AI techniques can be found inside of innumerable systems used by real people to accomplish everyday tasks. This tutorial introduces the building blocks of an AI system and focuses on rule based systems. A rule based system example is developed to illustrate how Ada 95 can be used to implement an AI system. This tutorial is intended for anyone with an interest in using Ada to implement AI software.

Go Back