Midterm Presentation

advertisement
Integrating Drupal with Software
Developers Assistance (SDA)
Instructor:
Kwok-Bun Yue
Mentor:
Team # 1:
Abbasi Dhilawala
Aditya Macherla
Arun Gupta Mahankali
Shruti Damle
Truyen Van Le
Vishakha Kadam
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 Architecture
THIS
PROJECT
EXISTING
SYSTEM
11
System Architecture
SDA Presentation - Drupal
 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
12
System Architecture
SDA Communications - XMLRPC
 Provide an interface for Drupal to interact
with SDA
 Drupal plays XMLRPC client
 SDA backend plays XMLRPC Server
 Web Services – 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 diagram
SVG file
1. Entity
2. Links to
other entity
SVG image
Input
SDA View
Drupal Module
Output
1. Color: fill
2. Links
3. Breadcrumb
Input parameters/
arguments
SDA
Backend
Communications
Layer
Web servicesXMLRPC
DB
ParentID
ChildID
20
High level block diagram
Explanation:
• Raw SVG (Scalable Vector Graphics)
files
21
High level block diagram
• The complete SVG image
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
Download