integrating drupal with software developers assistance (sda)

25
Integrating Drupal with Software Developers Assistance (SDA) Team # 1: Aditya Macherla Arun Gupta Mahankali Shruti Damle Truyen Van Le Vishakha Kadam Instruc tor: Kwok-Bun Yue Mentor : Abbasi Dhilawala 1

Upload: ralph

Post on 25-Feb-2016

33 views

Category:

Documents


0 download

DESCRIPTION

Integrating Drupal with Software Developers Assistance (SDA). Instructor:. Kwok-Bun Yue. Mentor:. Abbasi Dhilawala. Team # 1:. Aditya Macherla Arun Gupta Mahankali Shruti Damle Truyen Van Le Vishakha Kadam. Content. Introduction Limitations of SDA Why we choose Drupal ? - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Integrating  Drupal  with Software  Developers Assistance (SDA)

Integrating Drupal with Software Developers Assistance (SDA)

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

Instructor: Kwok-Bun YueMentor: Abbasi Dhilawala

1

Page 2: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 3: Integrating  Drupal  with Software  Developers Assistance (SDA)

Introduction

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

engineers through their project specific standard, processes and procedures

3

Page 4: Integrating  Drupal  with Software  Developers Assistance (SDA)

Introduction

• What is Drupal?• Open source web content management

framework

4

Page 5: Integrating  Drupal  with Software  Developers Assistance (SDA)

Introduction

• What is the Project?• Integrating Drupal with SDA

5

Page 6: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 7: Integrating  Drupal  with Software  Developers Assistance (SDA)

Why we choose Drupal?

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

SDA7

Page 8: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 9: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 10: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 11: Integrating  Drupal  with Software  Developers Assistance (SDA)

System ArchitectureTHIS

PROJECT

EXISTING SYSTEM

11

Page 12: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 13: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 14: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 15: Integrating  Drupal  with Software  Developers Assistance (SDA)

Challenges and Pros/cons of communication Techniques

• What is XMLRPC?

• What is PHP/Java Bridge?

15

Page 16: Integrating  Drupal  with Software  Developers Assistance (SDA)

Challenges and Pros/cons of communication Techniques

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

16

Page 17: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 18: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 19: Integrating  Drupal  with Software  Developers Assistance (SDA)

XMLRPCServer.java

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

19

Page 20: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 21: Integrating  Drupal  with Software  Developers Assistance (SDA)

Explanation: • Raw SVG (Scalable Vector Graphics)

files

High level block diagram

21

Page 22: Integrating  Drupal  with Software  Developers Assistance (SDA)

• The complete SVG image

High level block diagram

22

Page 23: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 24: Integrating  Drupal  with Software  Developers Assistance (SDA)

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

Page 25: Integrating  Drupal  with Software  Developers Assistance (SDA)

Q&A

25