KEEP THIS COPY FOR REPRODUCTION Pý:RPCS.15i )OCUMENTATION PAGE 0 ''.1-AC7..<Z C. in;2re PORT DATE JPOTTYPE AND DATES COVERID

Similar documents
A New Parameter for Maintaining Consistency in an Agent's Knowledge Base Using Truth Maintenance System

MISSOURI S FRAMEWORK FOR CURRICULAR DEVELOPMENT IN MATH TOPIC I: PROBLEM SOLVING

McDougal Littell High School Math Program. correlated to. Oregon Mathematics Grade-Level Standards

St. John Neumann Catholic Church Strategic Plan. May 2007

Artificial Intelligence Prof. Deepak Khemani Department of Computer Science and Engineering Indian Institute of Technology, Madras

Prentice Hall The American Nation: Beginnings Through 1877 '2002 Correlated to: Chandler USD Social Studies Textbook Evaluation Instrument (Grade 8)

1. Read, view, listen to, and evaluate written, visual, and oral communications. (CA 2-3, 5)

10648NAT Diploma of Ministry (Insert Stream)

Bank Chains Process in SAP

MANUAL ON MINISTRY. Student in Care of Association. United Church of Christ. Section 2 of 10

Lecture 9. A summary of scientific methods Realism and Anti-realism

(Refer Slide Time 03:00)

Syllabus for PRM Planting New Churches 3 Credit hours Fall 2013

Prentice Hall World Geography: Building A Global Perspective 2003 Correlated to: Colorado Model Content Standards for Geography (Grade 9-12)

PRIMARY AND SECONDARY SUPERRESOLUTION BY DATA INVERSION (PREPRINT)

DIOCESE OF ORLANDO JOB DESCRIPTION

An Experimental Method for Measuring Water Droplet Impingement Efficiency on Two- and Three-Dimensional Bodies

DIOCESE OF TRENTON FAITH IN OUR FUTURE

Reading 4.5. Queensland Catholic Commission. (2001). Brisbane: Queensland Catholic Education Commission.

PROSPECTIVE TEACHERS UNDERSTANDING OF PROOF: WHAT IF THE TRUTH SET OF AN OPEN SENTENCE IS BROADER THAN THAT COVERED BY THE PROOF?

Artificial Intelligence Prof. P. Dasgupta Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur

Brochure of Robin Jeffs Registered Investment Advisor CRD # Ashdown Place Half Moon Bay, CA Telephone (650)

Prentice Hall U.S. History Modern America 2013

NAVAL POSTGRADUATE SCHOOL

***** [KST : Knowledge Sharing Technology]

OT 3XS3 SAMUEL. Tuesdays 1:30pm 3:20pm

Comprehensive Plan for the Formation of Catechetical Leaders for the Third Millennium

Area: Regular Part Time (20 Hours) (salary) Supervisor: Executive Minister

Prentice Hall United States History Survey Edition 2013

CHU credits Place of Worship Assessment for Safety and Security Graduate. Course Description: Course Objectives: Course Texts:

Resolution Related to a Comprehensive Urban Ministry Strategic Plan

Anaphora Resolution in Biomedical Literature: A

ON THE ROLE OF METHODOLOGY: ADVICE TO THE ADVISORS

Churches Improve Ministry Effectiveness During Implementation Process With Church Community Builder. A Case Study by Ben Stroup

Online Mission Office Database Software

QCAA Study of Religion 2019 v1.1 General Senior Syllabus

Blessed Sacrament Church

You are Not a Beautiful and Unique Snowflake

ABB STOTZ-KONTAKT GmbH ABB i-bus KNX DGN/S DALI Gateway for emergency lighting

DEVELOP)ROADMAP)FOR)IMPLEMENTATION)OF)) IN4USE)AUTOMOBILE)EMISSION)STANDARDS)IN)VIET)NAM))

PAGE(S) WHERE TAUGHT (If submission is not text, cite appropriate resource(s))

WHEN YOU SEE AN AGED MAN RUNNING, THE YORUBAS SAYS IF HE IS NOT PURSUING SOMETHING THEN SOMETHING MUST BE PURSUING HIM.

GUIDING PRINCIPLES Trinity Church, Santa Monica, California

Natural Language Processing (NLP) 10/30/02 CS470/670 NLP (10/30/02) 1

Streamlined Administration Model Report to Church Council

Prentice Hall Biology 2004 (Miller/Levine) Correlated to: Idaho Department of Education, Course of Study, Biology (Grades 9-12)

FIDES FIDES. FIDES : general presentation

YEAR: UNIT-SPECIFIC GOALS (italicized) Assessable Student Outcome

Identifying Anaphoric and Non- Anaphoric Noun Phrases to Improve Coreference Resolution

Thanks! Thanks for joining us for an informative seminar on Building Your Vibrant Parish.

10647NAT Certificate IV in Ministry (Leadership)

2.1 Review. 2.2 Inference and justifications

On the Origins and Normative Status of the Impartial Spectator

ACCREDITATION POLICY

Summer Revised Fall 2012 & 2013 (Revisions in italics)

Steps to Establishing a Permanent Endowment Program

Leveraging technology in the 21st CHURCH School. Rev. David L. Ferguson

CREATE. CONNECT. LIVE. Ed Hepler Winner of the Qualcomm Tricorder XPRIZE

TH 501 Semlink+: Theology Survey I Spring 2019 All Campuses

IS 502 Christian Formation: Vocation of Ministry

Summary of Registration Changes

REQUIRED DOCUMENT FROM HIRING UNIT

RHODE ISLAND SOCIAL STUDIES STANDARDS, CERTIFICATE OF INITIAL MASTERY (CIM) (1999)

Course Document Diploma of Biblical Ministry

Instructions for Ward Clerks Provo Utah YSA 9 th Stake

POSITION DESCRIPTION CONNECTIONAL PRESBYTER. New Castle Presbytery

From Machines To The First Person

MCMASTER DIVINITY COLLEGE FALL SEMESTER, 2016 MS 3XP3 / 6XP6 PREACHING PAUL

Test Item File. Full file at

Georgia Quality Core Curriculum 9 12 English/Language Arts Course: Ninth Grade Literature and Composition

Wittgenstein: Meaning and Representation

Guidelines for registration of a Yoga Teacher Training Course

CT760: Readings in Christian Thought Orthodoxy and Gnosticism Gordon-Conwell Theological Seminary Charlotte Dr. Don Fairbairn Fall 2017

Building Up the Body of Christ: Parish Planning in the Archdiocese of Baltimore

Excel Lesson 3 page 1 April 15

BE5502 Course Syllabus

correlated to the North Carolina Social Studies Standard Course of Study for Africa, Asia and Australia and Skills Competency Goals

TECHNICAL WORKING PARTY ON AUTOMATION AND COMPUTER PROGRAMS. Twenty-Fifth Session Sibiu, Romania, September 3 to 6, 2007

Introduction to Statistical Hypothesis Testing Prof. Arun K Tangirala Department of Chemical Engineering Indian Institute of Technology, Madras

Where family comes first! Parish Communication Solutions, Inc.

Technical Committee of Experts on Islamic Banking and Finance. Third Session of OIC Statistical Commission April 2013 Ankara - Turkey

JOB DESCRIPTIONS. Senior Pastor. Associate Pastor. Student Ministries Director. Music Ministries Director. Children s Ministries Director

Payment Card Industry (PCI) Qualified Integrators and Resellers

Your instructor is available for correspondence. If you have a question about the course, you can contact your instructor via .

1. Be a committed Christian who, upon appointment, will become a member of Bendigo Baptist Church.

Wendy E. Mackay. INRIA, France

Table of Contents. 3 About faithhighway. 4 Praise Sheet. 6 What are the Executives saying? 7 Executive Bios. 9 faithhighway Services

Grade 6 correlated to Illinois Learning Standards for Mathematics

USF MASTERS OF SOCIAL WORK PROGRAM ASSESSMENT OF FOUNDATION STUDENT LEARNING OUTCOMES LAST COMPLETED ON 4/30/17

EE-100 Engineering Laboratory Module1: PCB

Georgia Quality Core Curriculum 9 12 English/Language Arts Course: American Literature/Composition

TITLE: Application of Near Infrared Spectroscopy, Intravascular Ultrasound and the Coronary Calcium Score to Predict Adverse Coronary Events

SYSTEMATIC RESEARCH IN PHILOSOPHY. Contents

Special Training Session For The Preparation of Ordination of License Ministers & Men who are set aside by their Churches To become Deacons

OJS at BYU. BYU ScholarsArchive. Brigham Young University. C. Jeffrey Belliston All Faculty Publications

UNITING CHURCH IN AUSTRALIA WESTERN AUSTRALIA POSITION DESCRIPTION

Dear Brothers and Sisters in Christ,

Southside Baptist Church of Jacksonville, Florida Bylaws

Prentice Hall The American Nation: Beginnings Through Correlated to: Arkansas Social Studies Curriculum Frameworks (Grades 5 8)

SYLLABUS. Department Syllabus. Philosophy of Religion

Transcription:

jajd - ri264 0 17 ''' MASTER COPY )OCUMENTATION PAGE 0 ''.1-AC7..<Z C KEEP THIS COPY FOR REPRODUCTION Pý:RPCS.15i -CA- O',.c *-. 2 in;2re PORT DATE JPOTTYPE AND DATES COVERID 4. TITLE AND SUBTITLE 5 FUNDING NBERS Accelerating the Transfer of Technology for Implementing Domain Specific Software Architectures 6. AUTHOR(S)kc) Vincent P. Heuring and William M. Waite ;.T 7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) jr P... t lf IN(i ORGANIZATION TE University of Colorado Boulder Department of Electrical and Computer Engineering LECTE Campus Box 425 AY1 0 1993 Boulder, CO 80309-0425 9. SPONSORING /MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10, NSORING ITORING NCY REPORT NUMBER U. S. Army Research Office P. 0. Box 12211 Research Triangle Park, NC 27709-2211 D rlo3-iqc- - -- 11. SUPPLEMENTARY NOTES The view, opinions and/or findings contained in this report are those of the author(s) and should not be construed as an official Department of the Army position, policy, or decision, unless so designated by other documentation. 12a. DISTRIBUTION / AVAILABILITY STATEMENT 12b. DISTRIBUTION CODE Approved for public release; distribution unlimited. 13. ABSTRACT (Maximum 200 words) The purpose of the research effort was to find one or more clients within the DOD community to help evaluate the Eli system when applied to problems of interest to the DOD. We solicited information from a number of DoD agencies, and finally formed a relationship with a group at the Naval Postgraduate School (NPS). As a result of that relationship, we have developed a formal specification for the NPS language, PSDL, using the Eli system. That specification has been subsequently modified by NPS personnel whom we trained in the use of the ELi system, and the resulting PSDL translator is being used by NPS personnel. The research also led to further modifications to the Eli system. We were able to add a "literate programming" tool to Eli that has proven to be a significant aid in organizing and explaining specifications. 14. SUBJECT TERMS 15. NUMBER OF PAGES l ~5 = 16. PRICE CODE 17. SECURITY CLASSIFICATION 18. SECURITY CLASSIFICATION 19. SECURITY CLASSIFICATION 20. LIMITATION OF ABSTRACT OF REPORT OF THIS PAGE OF ABSTRACT UNCLASSIFIED UNCLASSIFIED I UNCLASSIFIED UL NSN 7540-01-280-5500 Stancaro Porm 298,Rey 2-89).qI. n,+ -A %t

1. Summary Our objective was to locate and evaluate several potential customers for the Eli system, 1 demonstrate how this technology could improve their productivity, and provide the information and training needed for them to make effective use of it. We hoped to complete one pilot project in order to gain credibility for the technology so that another of the potential customers would be willing to participate in and support a second pilot project. We solicited information from a number of DoD agencies, and finally formed a relationship with a group at the Naval Postgraduate School (NPS). This group is developing an approach to rapid prototyping of real-time systems, using a language called PSDL. 2 They needed a translator from PSDL to Ada that could be constructed quickly, and would be flexible enough to accommodate changes in both PSDL and the mapping from PSDL to Ada. Eli is ideally suited to this task, and the NPS group was not satisfied with the other tools they had investigated. The cooperation began in the fall of 1991, when the NPS group provided us with their current grammar for PSDL and an account on their computer. That grammar and reference 2 were the only available description of PSDL. Our first task was to understand PSDL and try to formalize that understanding using Eli. This task involved studying the documents, formulating hypotheses, and verifying those hypotheses via electronic mail Our NPS contact was Lt. Charles Altizer, a naval instructor employed on the project. By late spring of 1992, we had completed the first task. The formalization of PSDL had uncovered several inconsistencies in the language, and these had been corrected in consultation with the NPS group. We had implemented the Eli system on the NPS machine, and Lt. Altizer had begun to familiarize himself with the documentation. The NPS group invited Prof. Waite to spend a week in Monterey to provide handson instruction in the use of Eli. Due to scheduling conflicts, this visit could not be made until the week of July 13-17. During his visit, Prof. Waite demonstrated Eli. Then he and Lt. Altizer went through a case study involving a part of the translation, with Prof. Waite demonstrating the implementation techniques in the course of creating that part of the translator. After that part had been completed, Lt. Altizer embarked upon another part under Prof. Waite's supervision. Finally, Lt. Altizer implemented yet a third part of the translator with only minimal aid. Lt. Altizer continued the translator implementation during the fall of 1992, with consultation on problems via electronic mail. In January of 1993, he spent a week in Boulder working with several members of the Eli group on a particularly subtle part of the translation. We believe that the pilot study involving NPS was successful. The technology was shown to be appropriate for the problem, and the NPS group was able to effectively use that technology to solve the problem. Feedback on certain difficulties with large specifications led to incorporation of a new "literate programming" tool into the Eli system. This tool is proving to be a significant aid in organizing and explaining 93-09703 93 5 0 4 2 5 4 I liliiiiiitlil]liii

specifications. 2. The PSDL Project PSDL is a specification language that supports rapid prototyping of real-time systems. A user specifies the desired real-time system via a set of operators, where each operator is either implemented in Ada or described in PSDL. Properties and assertions can be associated with each operator and usel to search a software data base for appropriate implementations. A graphical editor is used to construct and update PSDL descriptions presented in the form of directed graphs. The user's specification is reduced to a flat, directed graph by other components of the rapid-prototyping system. Each node in the graph represents an instance of a primitive operator that is available in Ada and stored in the software data base. Each arc in the graph represents a stream of data items. This must be converted to an Ada specification that describes the interconnections, triggering conditions, input/output operations and module invocations necessary to simulate the specified real-time system. The resulting Ada specification is then compiled to obtain a running simulator. Conversion of the flat graph to an Ada specification is a compilation problem: The graph must be checked for consistency, associations between formal parameters and arguments must be established, and Ada text produced. This problem is not well defined because the entire system is evolving. Despite its ill-defined nature, it must be solved if progress is to be made. Without the ability to convert flat graphs to Ada specifications, it is impossible to create running simulators. The notation for describing the flat graph is quite stable. Its structure and context conditions will probably not change radically. The appropriate Ada specification for a given fiat graph is less certain. Thus the translator that converts a graph to an Ada specification must be easily altered when changes to the form of the output specification are proposed. During the first part of this project, our group constructed a specification to describe the lexical and syntactic structure of PSDL. We also provided specifications for context conditions on operators, but did not deal with the data type identifiers. All of this work was done in consultation with the NPS group, since some of the language definition existed only in the minds of the designers, Thus, in addition to providing the basis of a translator, these specification files became the official description of PSDL itself. There is no written description of the mapping from PSDL to Ada, nor is there any but a fragmentary description of the PSDL typing mechanism. We could not, therefore, provide much support for these aspects of the language. We therefore used the specifications that we had developed as a teaching tool and a point of departure for transferring the technology to the NPS group. Our strategy was to use the constructs we had described as case studies, having the NPS group explain the equivalent Ada specification for each and then implementing the translation rules to produce that - equivalent Ada specification. Prof. Waite implemented the first such case study, care-.. fully explaining the rationale to Lt. Altizer as he wrote the rules, and answering all of the questions that came up in the process. The second case study was implemented by Lt. Altizer, with Prof. Waite asking questions and providing guidance. Lt. Altizer then Ouhron "& / b Av %jdatitt)y Cod rv Av t,,r rdi or.dst pseci

implemented the third case study with minimal interaction from Prof. Waite. The remainder of the project was carried out by Lt. Altizer with consultation via electronic mail. At one point the sophistication of the translation was pushing the capabilities of Eli and Lt. Altizer spent a week in Boulder working with several members of the group. This visit resulted in new perspectives on one component of Eli, and an elegant solution to the problem of mapping PSDL types to Ada. 3. Changes to Eli Several changes to the Eli system and its documentation were made as a result of our experiences with PSDL and the Naval Postgraduate School. The most important was our inclusion of a tool that allows us to combine specifications of different types in a single file. A specification that solves a problem like the PSDL translation problem can be understood only if it is decomposed according to task: Each subtask is specified separately. Unfortunately, a single task usually involves several different kinds of specification, each of which is relatively small. Thus the number of small files increases rapidly under this sort of decomposition. When a change is needed, related changes must be made in a number of files, and maintenance of the specification becomes a nightmare. The tool we used to solve this problem is called FunnelWeb. It was developed in Australia, and is an implementation of Knuth's "literate programming" paradigm. 3 ' 4 Unlike most such tools, FunnelWeb allows one to produce many different files from a single description. That means we can gather together all of the small specifications of different kinds that relate to a single task into a single file for that task. When a change is required, only one file is involved instead of many. FunnelWeb also gives Eli the ability to construct formatted text files from the specifications, Using FunnelWeb, the PSDL specification can be written in such a way as to serve both as a human-readable definition of the language and mapping, and as the source from which the processor itself is generated. This makes it considerably easier to keep the language definition and the translator consistent, and to guarantee a complete language definition. The other changes occurred in the documentation. A number of clarifications were necessary, and a major re-orientation of the discussion of overload resolution was required. PSDL is the first language that we had encountered that needed to distinguish many instantiations of a particular abstract data type symbolically. (This was necessary in order to produce the Ada specification.) Although we were able to devise an elegant solution with the existing mechanisms, that solution was virtually impossible to see given the available documentation. 4. References 1. R. W. Gray, V. P. Heuring, S. P. Levi, A. M. Sloane and W. M. Waite, 'Eli: A Complete, Flexible Compiler Construction System', Communications of the ACM, 35, 121-131 (February 1992).

2. l. uqi, V. Berzins and R. T. Yeh, 'A Prototyping Language for Real-Time Software', IEEE Transactions on Software Engineering, 14, 1409-1423 (October 1988). 3. D. E. Knuth, 'Literate Programming', The Computer Journal, 27, 97-111 (1984). 4. L. M. C. Smith and M. H. Samadzadeh, 'An Annotated Bibliography of Literate Programming', SIGPLAN Notices, 26, 14-20 (January 1991).