1 / 22

Stoneworks Software Corp.

Stoneworks Software Corp. Presents Ambassador for DOORS. What is Ambassador?.

carter
Download Presentation

Stoneworks Software Corp.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Stoneworks Software Corp. Presents Ambassador for DOORS

  2. What is Ambassador? The Ambassador is a proprietary service-oriented architecture (SOA) created by Stoneworks Software Corporation that facilitates the communication and data sharing between an IBM Rational DOORS® Server and any software product.

  3. What is a Web Service? • Defined by the W3C as "a software system designed to support interoperablemachine-to-machine interaction over a network“ • They expose API of the operations offered by the service written in the Web Services Description Language (WSDL) • User Interfaces are provided by Implementation

  4. Our Service • Service API written in pure JAVA • Platform Independent • Can run as a Web Service or as a stand alone RMI Server.

  5. Ambassador SOA Framework DOORS Server DOORS Client Cache DOORS Client Envoy Service Ambassador Service for DOORS WSDL Delegate Service Client JAVA, C++, VB, Perl, etc

  6. Envoy Service DOORS Server DOORS Client Cache DOORS Client Envoy Service Ambassador Service for DOORS WSDL Delegate Service Client JAVA, C++, VB, Perl, etc

  7. Envoy Service • Manages DOORS Clients • Starts N DOORS Clients • Monitors QOS of DOORS Clients • Stops DOORS Clients • Handles request from the Ambassador Service for DOORS by creating DXL Scripts Dynamically and submitting the script to DOORS and waiting for DOORS to complete • The script generates XML • Transforms the XML response from DOORS into JAVA Objects that are returned to the Ambassador

  8. Dynamic DXL Script string dUn = "foo"; string outputPath = "C:\\Temp\\DOORSThread\\5094~-1417675888\\"; string outputFileName = "C:\\Temp\\DOORSThread\\5094~-1417675888\\out.xml"; string curUid = "00000000"; #include <stoneworks/RMLink/seeds/listContentByUid.inc> inc_listContentByUid();

  9. DOORS XML <?xml version="1.0" encoding="ISO-8859-1"?> <rs id="00000000"> <el name='Project' id='00000001'> <attributes> <at name="Name"><![CDATA[New Car]]></at> <at name="FullName"><![CDATA[/New Car]]></at> <at name="Id"><![CDATA[00000001]]></at> <at name="ParentId"><![CDATA[00000000]]></at> <at name="Type"><![CDATA[Project]]></at> <at name="Path"><![CDATA[/]]></at> <at name="Description"><![CDATA[Initial Assessment of Requirements for a New Passenger Car]]></at> <at name="Url"><![CDATA[doors://doorsServer:36677/?version=1,prodID=0,dbid=4713b90735de1ad9,container=00000001]]></at> <at name="Description"><![CDATA[Initial Assessment of Requirements for a New Passenger Car]]></at> </attributes> </el> <el name='Project' id='00000002'> <attributes> <at name="Name"><![CDATA[Test System]]></at> <at name="FullName"><![CDATA[/Test System]]></at> <at name="Id"><![CDATA[00000002]]></at> <at name="ParentId"><![CDATA[00000000]]></at> <at name="Type"><![CDATA[Project]]></at> <at name="Path"><![CDATA[/]]></at> <at name="Description"><![CDATA[Testing of Avionics Systems]]></at> <at name="Url"><![CDATA[doors://doorsServer:36677/?version=1,prodID=0,dbid=4713b90735de1ad9,container=00000002]]></at> <at name="Description"><![CDATA[Testing of Avionics Systems]]></at> </attributes> </el> ….

  10. DOORS XML Cont. <el name='Folder' id='00000003'> <attributes> <at name="Name"><![CDATA[Test]]></at> <at name="FullName"><![CDATA[/Test]]></at> <at name="Id"><![CDATA[00000003]]></at> <at name="ParentId"><![CDATA[00000000]]></at> <at name="Type"><![CDATA[Folder]]></at> <at name="Path"><![CDATA[/]]></at> <at name="Description"><![CDATA[]]></at> <at name="Url"><![CDATA[doors://doorsServer:36677/?version=1,prodID=0,dbid=4713b90735de1ad9,container=00000003]]></at> <at name="Description"><![CDATA[]]></at> </attributes> </el> </rs>

  11. XML to JAVA Mapping default=com.cse.rmlink.doors.common.objects.DOORSObjectBean folder=com.cse.rmlink.doors.common.objects.DOORSFolderBean project=com.cse.rmlink.doors.common.objects.DOORSProjectBean formal=com.cse.rmlink.doors.common.objects.DOORSModuleBean baseline=com.cse.rmlink.doors.common.objects.DOORSBaselineBean object=com.cse.rmlink.doors.common.objects.DOORSRequirementBean cp=com.cse.rmlink.doors.common.objects.DOORSChangeProposalBean view=com.cse.rmlink.doors.common.objects.DOORSViewBean column=com.cse.rmlink.doors.common.objects.DOORSColumnBean history=com.cse.rmlink.doors.common.objects.DOORSHistoryBean

  12. Ambassador Service for DOORS DOORS Server DOORS Client Cache DOORS Client Envoy Service Ambassador Service for DOORS WSDL Delegate Service Client JAVA, C++, VB, Perl, etc

  13. Ambassador Service for DOORS • Manages • Sessions (License Consumption) • Envoy Connections • Cache • File Transfers • Load Balancing • Cache • Converts RTF from DOORS • Into Apache FOP XML • From FOP to HTML • From FOP to PDF • Converts Pictures from DOORS • Into JPG format

  14. API

  15. Delegate Service DOORS Server DOORS Client Cache DOORS Client Envoy Service Ambassador Service for DOORS WSDL Delegate Service Client JAVA, C++, VB, Perl, etc

  16. Delegate • Any programming language that supports Web Service Development • JAVA, C++, Visual Basic, Perl, etc. • Therefore most any existing 3rd party thin or thick application can leverage DOORS data and add value to their respective product

  17. WSDL and Stubs • The Ambassador service exposes a public WSDL that informs implementers of the available API and related Objects • This WSDL can be used to generate language specific Objects (Stubs) that facilitate communication with the remote service

  18. Simple JAVA Delegate Code RMLinkQueueServerIfc server = getRMLinkQueueServer(); String sessionId = server.login("Zm9vOmZvbw=="); // Base64 Encoded DOORSFolderBean root = server.getRootFolder(sessionId); DOORSResultSet set = server.listContents(sessionId, root); for (int i = 0; i < set.getSet().length; i++) { System.out.println(set.getSet()[i].getFullName()); } server.logout(sessionId);

  19. Simple JAVA Delegate Output /New Car /Test System /Test

  20. Questions? Contact Stoneworks Software for more information today!

  21. Our Partners

  22. Stoneworks Software Corp. Headquarters 7404 Executive Place Suite 102 Lanham MD USA 20706 Stoneworks Software Corp. O: 443.423.1246 F: 443.423.1246 Toll Free 1.877.761.1246 General Information Email info@sws-corp.com Website http://www.sws-corp.com

More Related