|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.
|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.
|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.
|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.
|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.
|Dave Cook||ASSET||Half-Day||Monday Afternoon|
Abstract: A short introduction to Ada95.
|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.
|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.
|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.
|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.
|Unified Method||Rational||Half-Day||Tuesday Afternoon|
Abstract: A short course on the Unified Method.
|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.
|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.