U S NAVAL POSTGRADUATE SCHOOL Software Engineering Automation

  • Slides: 31
Download presentation
U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Integrated Development Environment (IDE) for

U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Integrated Development Environment (IDE) for the Federated Interoperability Object Model (FIOM) MV 4920 9/20/2021 Major Brent P. Christie USMC 1

Outline U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Background þ Why heterogeneous

Outline U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Background þ Why heterogeneous system integration is needed þ Legacy system integration focus þ XML þ Problem / Current Method þ Advantages of FIOM þ Data Binding þ FIOM IDE Demo þ Major Brent P. Christie USMC 9/20/2021 2

Background U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ “Information Technology infrastructure

Background U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ “Information Technology infrastructure is composed of many disparate underlying computing configurations, designed and implemented at different times to meet different requirements … it is reasonable to assume that heterogeneity of our systems will continue to be prevalent. ” - Defense Information Infrastructure (DII) Master Plan Expect Heterogeneity! Major Brent P. Christie USMC 9/20/2021 3

Statistics U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center 2 percent of the

Statistics U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center 2 percent of the (GNP) can be attributed to inefficiencies such as redundant information entry, data conversion and system incompatibilities þ US GNP > 9. 8 trillion $ in 2000 þ That’s 197 billion dollars wasted!! þ Or, same year budget of the Navy and USMC combined! þ Major Brent P. Christie USMC 9/20/2021 4

Why Integration is Needed U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ

Why Integration is Needed U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Independent development of legacy systems results in differences in ý ý þ þ Data physical representation Accuracy tolerances Range of values represented Data set consistency Data representational differences inhibit information sharing Improving information sharing saves $ / enhances warfighter effectiveness Major Brent P. Christie USMC 9/20/2021 5

Independently Developed Systems Results in Different Representations for Same Entity U. S. NAVAL POSTGRADUATE

Independently Developed Systems Results in Different Representations for Same Entity U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Enemy. Missile. System missile. Designation missile. Class time (GMT) position (latitude/longitude) TOI Forward. Observer. Tgt. Desig BInum tgt. Class tgt. Obs. Time (GMT) tgt. Pos (latitude/longitude) target. ID target. Type observation. Time (LMT) tgt. Location (MGRS) Major Brent P. Christie USMC 9/20/2021 7

Modeling Representational Differences Using Contemporary Object Modeling Techniques U. S. NAVAL POSTGRADUATE SCHOOL Software

Modeling Representational Differences Using Contemporary Object Modeling Techniques U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center <<type>> Enemy. Missile. System <<type>> TOI <<type>> Forward. Observer. Tgt. Desig Major Brent P. Christie USMC 9/20/2021 missile. Launcher 9

When to Integrate U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Producer has

When to Integrate U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Producer has data of interest to consumer þ Integration defines producer-consumer relationship þ Producer exports data for import by consumer ý A system may be both, implies two separate producer-consumer relationships ý Major Brent P. Christie USMC 9/20/2021 10

Legacy System Integration Focus U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center On

Legacy System Integration Focus U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center On produced and consumed types þ Black box view þ Anything more would require modification of legacy system code ý Assume XML used to produce and consume data ý Major Brent P. Christie USMC 9/20/2021 11

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ What is XML?

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ What is XML? e. Xtensible Markup Language ý Meta-markup language defined by the World Wide Web Consortium (W 3 C, specification at www. w 3 c. org/XML) ý n n ý Meta, define your own markup language Supercedes other markup languages, HTML XML is a subset of Standard Generalized Markup Language (SGML) n n XML easier-to-use subset of SGML HTML an application of SGML Major Brent P. Christie USMC 9/20/2021 12

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ What’s so great

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ What’s so great about it? ý Easy Data Exchange n n n ý Customized Markup Languages n ý Non-proprietary, no patent or copyright (encoded) Stored as text, human readable Efficient storage, yes text is efficient, MS bloatware Customized browsers or applications (IFX, CML) Self-Describing Data Specification <? xml version="1. 0" encoding="UTF-8"? > <DOCUMENT> <GREETING> Hello From XML </GREETING> <MESSAGE> Welcome to the wild and woolly world of XML. </MESSAGE> </DOCUMENT> Major Brent P. Christie USMC 9/20/2021 13

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center ý Structured and Integrated

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center ý Structured and Integrated Data n n n þ The logical design of a document (content) should be separate from its visual design (presentation) Separation of logical and visual design n promotes sound typography n encourages better writing n is more flexible XML can be used to define the logical design, while the XSL (e. Xtensible Style Language) is used to define the visual design (usually by mapping XML into HTML). How XML fits into the new HTML world: ý ý ý XML describes the logical structure of the document. CSS (Cascading Style Sheets) or other style language describes the visual presentation of the document. The DOM (Document Object Model) allows scripting languages, such as Java. Script to access document objects. Major Brent P. Christie USMC 9/20/2021 14

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ XML constraints: 1.

XML U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ XML constraints: 1. Well-formedness, W 3 C, if its not well-formed its not XML. – – A data object is an XML document if it is well-formed, as defined in this specification. A well-formed XML document my in addition be valid if it meets certain further constraints Properly nested and nonabbreviated starting and ending tags are used, syntax rules. Stops browsers from fixing bugs Allows parsing of document n 2. Major Brent P. Christie USMC 9/20/2021 By, well defined encapsulation mechanism allowing designated sections of the data to be accessed programmatically. Validity. – Obey DTD or schema 15

Related Acronyms U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Document Type

Related Acronyms U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Document Type Definition (DTD), which defines the tags and their relationships þ þ XML Schema, more flexible and unlike DTDs, supports strong-typing Extensible Style Language (XSL) style sheets, which specify the presentation of the document þ Document Object Model (DOM), API for converting the document to a tree object in your program for processing and updating þ Simple API for XML (SAX), “serial access” protocol, fast-toexecute protocol for processing document on the fly þ XML Namespaces, for an environment of multiple sets of XML tags Major Brent P. Christie USMC 9/20/2021 16

XML: One Language, Many Vocabularies U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center

XML: One Language, Many Vocabularies U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center <latitude_degrees>30 N</latitude_degrees> <latitude units=“degrees” hemisphere=“north”>30</latitude> <lat> <hemisphere>N</hemisphere> <deg>30</deg> </lat> These 3 XML fragments are: • Equally valid ways to express the same real world object in XML • Well-formed per the W 3 C XML Specification Major Brent P. Christie • Non-interoperable USMC 9/20/2021 17

Problem U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ þ þ How

Problem U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ þ þ How do we share information between two or more system specific representations of the same real world object? Furthermore, how do we extend the objectoriented model to handle these representational differences while maintaining all the benefits of the original model? And lastly, how do we connect the systems targeted for integration in an efficient, scaleable, and manageable manner? Major Brent P. Christie USMC 9/20/2021 18

Current Method U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ þ þ

Current Method U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ þ þ Careful, time-intensive study of a producer system’s exported information Determine what kind of information and in what format a consumer system expects data After mapping the exported data type to the imported data type, the system integrator then writes a software “wrapper” which will perform a translation from the producer’s representation to the consumer’s. Major Brent P. Christie USMC 9/20/2021 19

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Simplify connections,

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Simplify connections, Major Brent P. Christie USMC 9/20/2021 20

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent P. Christie USMC 9/20/2021 21

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Simplified

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Simplified Model, Major Brent P. Christie USMC 9/20/2021 22

U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent P. Christie USMC

U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent P. Christie USMC 9/20/2021 23

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent P. Christie USMC 9/20/2021 24

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent P. Christie USMC 9/20/2021 25

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Major Brent P. Christie USMC 9/20/2021 26

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Translations

Advantages of FIOM U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Translations developed in IDE using Java vice XSLT. Major Brent P. Christie USMC 9/20/2021 27

Key to Simplify Translations U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ

Key to Simplify Translations U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ Data binding -XML data binding is Java methodology, along with an API, that allows programs to be written at the same conceptual level as the XML documents they manipulate. þ Facilitates the direct mapping of an XML document to objects while maintaining the constraints imposed by its corresponding schema. Major Brent P. Christie USMC 9/20/2021 28

Data Binding U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Programmer does not

Data Binding U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center Programmer does not have to “reinvent the wheel” in gaining access to and updating the element content within a document. þ Completely automated. þ Maintains well formedness and validity of the resulting XML document. þ Major Brent P. Christie USMC 9/20/2021 29

Data Binding U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ XML data

Data Binding U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ XML data binding facility contains two components: ý schema compiler n ý binds components of an input schema to derived light weight classes marshalling framework - three primary operations: n n · The unmarshalling of an XML document into a Java object that is an instance of a schema-derived class. · The marshalling of an object back into a XML document, and · The validation of member variables against the constraints expressed in the schema. Major Brent P. Christie USMC 9/20/2021 30

Data Binding U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ How XML

Data Binding U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center þ How XML schemas, XML documents, Java classes, and Java objects and related under this framework. Major Brent P. Christie USMC 9/20/2021 31

U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center DEMO Data-binding XSLT 9/20/2021 Major

U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center DEMO Data-binding XSLT 9/20/2021 Major Brent P. Christie USMC 32

U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center QUESTIONS? 9/20/2021 Major Brent P.

U. S. NAVAL POSTGRADUATE SCHOOL Software Engineering Automation Center QUESTIONS? 9/20/2021 Major Brent P. Christie USMC 33