integrating drupal with software developers assistance (sda) team # 1: aditya macherla arun gupta...

Post on 25-Dec-2015

221 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Integrating Drupal with Software Developers Assistance (SDA)

Team # 1: Aditya MacherlaArun Gupta MahankaliShruti DamleTruyen Van LeVishakha Kadam

Instructor: Kwok-Bun YueMentor: Abbasi Dhilawala

1

Content

• Introduction• Limitations of SDA• Why we choose Drupal?• System Architecture• Challenges and Pros/cons of communication Technique• How we are achieving the goals• How we are going to implement XML-RPC• High level block diagram• Future work/ summary• Q&A

2

Introduction

• What is Software Developers Assistance?• Engineering automation product that guides

engineers through their project specific standard, processes and procedures

3

Introduction

• What is Drupal?• Open source web content management

framework

4

Introduction

• What is the Project?• Integrating Drupal with SDA

5

Limitations of existing system• Inter module communication

• Has complex and huge modules: intertwined, cannot be separated with Liferay 5.2.3 used by system

• Current system uses some of them e.g. out of 60 3-5 are used - consumes resources (memory, processor, hardware resources, software resources)

• Does not have boundaries between organizations • Passing parameters to multiple portlets• Session management• Very difficult to upgrade to the newer versions• Does not have clean URL

6

Why we choose Drupal?

Still on the process of studying the feasibility of whether Drupal can replace LIFERAY?

SDA

7

Why we choose Drupal?Technical motivations:

• Drupal can solve the above limitations of LIFERAY:

• Provide boundaries between organizations• Passing parameters to multiple portlets• Especially upgrade to new version

8

Why we choose Drupal?Technical issues:

• And more than that, Drupal fulfills other requirements of SDA that LIFERAY can not

• Support group (Organic group)• Time to start and build a module is pretty

quick• Support Java backend: standardize API -

XMLRPC • Very highly scalability and load balancing

support

9

Why we choose Drupal?Non - Technical motivation:

• Drupal become more popular (Top 3)• Big organizations/firms are using Drupal

• Whitehouse• US Department of Commerce• Continental Airline and United Airline Merger• Intel

• Tietronix customers (including NASA) are switching to Drupal

• Drupal – A free open source tools• Strong community including paid services

10

System ArchitectureTHIS

PROJECT

EXISTING SYSTEM

11

System Architecture

Provide an UI to interact with the system

Include logic to present data to the users

No business or data access logics

PHP/HTML/JS/CSS

SDA Presentation - Drupal

12

System Architecture

Provide an interface for Drupal to interact with SDA

Drupal plays XMLRPC client

SDA backend plays XMLRPC Server

Web Services – XMLRPC

SDA Communications - XMLRPC

13

Challenges and Pros/cons of communication Techniques

Challenges: • The current implementation uses

Liferay, which supports Java• Drupal is PHP based and thus its

integration with the backend Java business layer is a tricky part

• There are two ways to achieve that:• Web Services (XMLRPC)• PHP/Java Bridge

14

Challenges and Pros/cons of communication Techniques

• What is XMLRPC?

• What is PHP/Java Bridge?

15

Challenges and Pros/cons of communication Techniques

To choose between these two options we came up with some evaluation criteria

16

How we are achieving the goals

• Implement XMLRPC

• Build custom modules in Drupal to replace the modules in Liferay and act as XMLRPC client

• Build a custom class on top of SDA’s core modules and act as XMLRPC server

17

SDA Communication Module

• This module will act as a communication layer between back-end SDA and its presentation layer

• This module resides on top of SDA’s core java modules. This module contains a class called XMLRPCServer.java

SDA

18

XMLRPCServer.java

• XMLRPCServer.java contains following three methods: • XMLRPCServer • GetInitialProcessDetails • GetProcessDetails

19

High level block diagramInput

DBParentIDChildID

Input parameters/ arguments

OutputSDA View Drupal Module

SVG image1. Color: fill2. Links 3. Breadcrumb

SDA Backend

Communications Layer

Web services-XMLRPC

SVG file1. Entity2. Links to

other entity

20

Explanation: • Raw SVG (Scalable Vector Graphics)

files

High level block diagram

21

• The complete SVG image

High level block diagram

22

Future work/ summary• Analyze the possibility, pros and cons, and

personnel skills for integration of SDA with Drupal over the current open source CMS like Liferay

• Implement two SDA modules Lifecycle, My Worklist (J2EE based) in Drupal

• Write the publication paper• More inclined to industrial case study• Focus on issues like migration, integration, use

of multiple languages, and how to deal with legacy system

23

References• Tietronix website: www.tietronix.com • Drupal community: http://drupal.org • Drupal Developer: API

http://api.drupal.org • XMLRPC standard:

http://www.xmlrpc.com/ • W3C SVG Working Group:

http://www.w3.org/Graphics/SVG/ • www.google.com/images

24

Q&A

25

top related