Showing posts with label Mooshabaya. Show all posts
Showing posts with label Mooshabaya. Show all posts

Monday, August 22, 2011

Apache Airavata

The OGCE suite has recently become an Apache Incubator project, named Apache Airavata. It should be noted that I have used and worked with the OGCE components (2008 - 2010), during my internship and for our final year project "Mooshabaya". 

XBaya Workflow Suite - We worked (2009/2010) with XBaya for our final year project and have also published a paper on our work (Mooshabaya - a mashup generator for XBaya).

WS-Messenger - a publish-subscribe based message broker - Supun M and I  worked with WS-Messenger during our internship (2008/2009) at WSO2.

Monday, December 13, 2010

SoCPaR2010

SoCPaR (International Conference on Soft Computing and Pattern Recognition) is an annual conference that focuses on bringing the Soft Computing and Pattern Recognition together ~ "Innovating and Inspiring Soft Computing and Intelligent Pattern Recognition". For the second consecutive year, SoCPaR has been successfully conducted. SoCPaR 2009 was held in Malacca, Malaysia on December 4th - 7th, 2009, which was followed by SoCPaR2010 in Cergy Pontoise / Paris, France at Universite' de Cergy Pontoise on December 7th - 10th, 2010. Following the two successful years, SoCPaR2011 has been scheduled to be held on Dalian, China on October 14th - 16th, 2011.


Presenting the paper on Association Rule Mining
It was really a pleasant experience for me presenting our paper on our research "Horizontal Format Data Mining with Extended Bitmaps [1]" on SoCPaR2010. Our paper has been listed as Paper 113 in the proceedings. I presented the paper on Dec 8th, 2.30 - 3.00 p.m at E1 auditorium of the University, where the conference had 3 parallel sessions at E1, E2, and Colloque. It should be noted that the paper was from the same team of undergraduates from the University of Moratuwa who published a paper on their product, "Mooshabaya - A Mashup Generator for XBaya [2]". Our paper got positive and constructive feedbacks, which essentially gives us more idea towards taking the algorithm forward. We have our algorithm implementation benchmarked with the FIMI datasets, and also have the door opened to the competition of algorithm implementations on Frequent Itemset Mining Implementations, as suggested by the chair.

Paris (6th - 11th, December 2010)
Apart from the paper presentations and tech talks, we also had social events and extra social activities such as 'Paris by Night', 'Wine Tasting', 'Visit to Chateau de Chantilly', and Banquet at Abbey of Royaumont [3][4], organized by the committee. It was a nice learning experience along with the days filled with fun. It should also be noted that we had the opportunity to face the strongest snowfall that Paris experienced after the year 1986. After the conference, we were also able to enjoy two more days at Paris, and were lucky enough to visit Louvre (the museum where Mona Lisa and many other master pieces live), Notre Dame Cathedral, Montmartre Hill along with a big white church Basilica of Sacre-Coeur on its crust, Eiffel Tower, and a few other places of interest.

[1] Buddhika De Alwis, Supun Malinga, Kathiravelu Pradeeban, Denis Weerasiri, Shehan Perera. "Horizontal Format Data Mining with Extended Bitmaps," in  Proceedings of the 2010 International Conference on Soft Computing and Pattern Recognition (SoCPaR2010), Cergy-Pontoise, Paris, France. pp 220-223, Dec. 2010.

[2] Buddhika De Alwis, Supun Malinga, Kathiravelu Pradeeban, Denis Weerasiri, Srinath Perera, Vishaka Nanayakkara. "Mooshabaya: mashup generator for XBaya," in Proceedings of the 8th International Workshop on Middleware for Grids, Clouds and e-Science (MGC '10), Bangalore, India. ISBN: 978-1-4503-0453-5 doi>10.1145/1890799.1890807 

[3] The abbey
[4] Photos of the Abbey

Tuesday, December 7, 2010

Mooshabaya and the Detailed Story..

Abstract
Visual composition of workflows enables end user to visually depict the workflow as a graph of activities in a process. Tools that support visual composition translate those visual models to traditional workflow languages such as BPEL and execute them thus freeing the end user of the need of knowing workflow languages. Mashups on the other hand, provide a lightweight mechanism for ordinary user centric service composition and creation, hence considered to have an active role in the web 2.0 paradigm. In this paper, we extend a visual workflow composition tool to support mashups, thus providing a comprehensive tooling platform for mashup development backed up by workflow style modeling capabilities, while expanding the reach of the workflow domain into web 2.0 resources with the potential of the mashups. Furthermore, our work opens up a new possibility of converging the mashup domain and workflow domain, thus capturing beneficial aspects from each domain.

Full Text




Before going into the Mooshabaya research, it is worth to have a look at the roots of Mooshabaya. JavaScript based Mashups - A content aggregation technology, that is used to compose services by remixing two or more sources [sample mashup site]. And the workflows - We prefer to represent real world processes as a sequence of operations, and here comes workflows. In practice both the mashups and the workflows have their own domain of applications. Workflows have gained their major use cases from the research communities as scientific workflows and the business communities as the business workflows. Mashups mostly target the end users and empower the user-oriented web.


What if a merge of the domains is possible? Can the domains use each other? This became the core research of  Mooshabaya.

Mooshabaya composes workflows graphically, and exports them as mashups. The mashups can then be executed and monitored at run time.
What motivates us into Mooshabaya? We have two major views. 1) As a Mashup Composer - Mashups can be created graphically by dragging and dropping components. 2) Extending the reach of the workflow domain. This includes web based APIs and web contents such as feeds. Mashup also becomes an alternative lightweight medium for workflow execution.

Before going further into Mooshabaya, we look at the related works. Yahoo Pipes, JackBe Presto, and Serena are some of the Mashup composers, that allow visual mashup composition through their graphical user interface. XBaya, Taverna, Triana, CAT (Composition Analysis Tool), Kepler, and Pegasus are some of the graphical workflow composers. Each of these tools has its own set of features and target use cases.

So what is special about Mooshabaya? Visual Mashup Composers mostly restrict themselves to Web 2.0 APIs. So far mashups are seen mostly as a content aggregation technology. Existing mashup composers do not support the monitoring of the execution of the mashups at run time. When considering the workflow composers, the traditional workflow languages have a high learning curves. Content aggregation is minimally supported in the existing tools. Mooshabaya is expected to fill these gaps in both the domains.

Let's have a look at the implementation of Mooshabaya. Registry Integration, Mashup Generation, Deployment, Monitoring, Security and the user interface are the major components.
Here we have the major use case of Mooshabaya. 

First the user wants to compose workflows - He integrates a web service registry into the system. Then he discovers and fetches the services metadata from the registry. By dragging and dropping the metadata files and other service components into the Mooshabaya canvas, he composes the workflows. 

Then he exports the workflow as a mashup. After that he can deploy the mashups into a mashup server. Here mashups are deployed into a mashup server and the relevant workflow files and the service metadata are stored into a registry. After the deployment, he can execute the mashups deployed in the mashup server and monitor them at the execution time. Secured services found in an Identity Server too can be used in the workflow composition.

As we discussed, Mooshabaya provides a solution for the complete mashup life cycle, where the existing  products are not providing at the moment. For example the monitoring phase of the mashups.

Our reasearch was mostly focused on the two domains. The integration of a WS-Eventing based notification system for remote monitoring of the mashups. Next we have the mashup security, based on username password based authentication.

Mooshabaya has used XBaya as the core workflow composer. Rather we can consider it a mashup generator for XBaya. WSO2 Mashup Server is used as the mashup server for Mooshabaya, and WSO2 Governance Registry as the web services registry. For the performance analysis, we benchmarked its performance against the XBaya's existing options. The performance graphs compare the file sizes and the generation times. The mashup file size was considerably smaller than the respective BPEL file, thus reducing the time to deploy the file to a remote server. The mashup generation time and BPEL generation time too were close to each other, without much difference. 

Scientific researches such as the LEAD system, business processes, and educational researches are the major target users of Mooshabaya. As a point for future works, we can mention that, Mooshabaya still can be extended with further research, specifically a web based interface, and the support for the delegated authentication scenarios.

Friday, September 24, 2010

Over the road of flowers..

The last two weeks were really interesting and most remarkable. Our Advanced Database (CS4420) Module research paper "Horizontal Format Data Mining with Extended Bitmaps," got accepted for International Conference of Soft Computing and Pattern Recognition - SoCPaR-2010 (Paris, France. December 7th - 10th, 2010), under the category "Pattern Recognition," as a short paper. We got to know this exciting news on 11th of September. After a few days, on 16th, we were announced that our Mooshabaya paper too has been accepted to the 8th International Workshop on Middleware for Grids, Clouds and e-Science - MGC-2010 (Bangalore, India . November 29th - December 3rd, 2010), as a full paper, to double our joy. It should also be noted that both the projects were from us - the same 4 member team Mooshabaya, who are currently Software Engineers at WSO2.

Our job at WSO2 started with a remarkable week. The new building at #50 was opened the very same day (September) we joined. The next two days we had the WSO2Conf marking the 5 years of excellence of WSO2. The first week ended with the 5 years party at the Waters Edge. Walks between the forts of 50 and 59 over the road of flowers⚘. Loving these days... ♥ ♥ Cloud/Could Duality ;) And I am into WSO2 Stratos! I got into the Stratos (WSO2 Carbon Middleware Platform as a Service) team - Stratos Manager Component and Stratos Security as the first tasks. Finally completing one of the most remarkable fortnights with this post.

Sunday, June 20, 2010

Mooshabaya - The Story..

Dr. Malinga is a scientist interested in e-Science researches. He predicts the weather by analyzing the data collected over the grid. Dr. Malinga uses workflow domain to analyze the scenario, and comes up with workflows that describe the rapidly changing atmospheric conditions. He executes the workflows in his workflow system and monitors them at run time. In this process, he also wants to secure some of the services from unauthorized access.

He is looking for a much light weight model to prototype the scenario rapidly. So he can avoid learning the XML technologies or the workflow languages such as BPEL, which takes a lot of time. He is interested in using yahoo geocode and similar web based APIs. He also prefers to integrate real time data collected via satellite feeds and feeds from the other sources into his system of workflows.

Mashup creates new services by aggregating two or more sources. We can develop them rapidly using the APIs, without investing much on learning them. They are light weight and can be extended easily.

As a solution for the scientist, Mooshabaya comes as a system that can utilize the best of both the domains, by a potential merge. By exporting workflows as mashups Mooshabaya invests on the synergy of the domains.

In the process of developing the workflow system, we have used the known existing tools as the base. XBaya Graphical Workflow Composer from Indiana University is used as the core of the system. We have extended XBaya to export the workflows as mashups, and the mashups are deployed into WSO2 Mashup Server. The service metadata are fetched from WSO2 Governance Registry. The composed mashups are executed in the Mashup server and monitored in the run time.

Here we come back to Dr.Malinga with Mooshabaya. Mooshabaya discovers the service metadata from Governance Registry and fetches them. Created workflows can be saved and fetched later. Workflows are exported as Mashups. Respective service metadata is added to the Registry, while the mashups are deployed into Mashup Server. Mooshabaya also supports composing with secure services found in WSO2 Identity Server. Mooshabaya executes the workflows that are deployed into Mashup Server as mashups. WS-Messenger is used to publish the notifications from the executed workflows, and Mooshabaya monitors the execution by subscribing to the notifications. Hence Mooshabaya provides a better workflow solution for the scientist.

Friday, June 4, 2010

Mooshabaya - 1.0.0

As we are reaching the completion of the project, we have currently released the Mooshabaya binary to Sourceforge, which can be downloaded from here. At the same time, mooshabaya can also be built using ant, from the source as an open source project.

To build the distribution
trunk$ ant dist

To run the built binary
trunk/dist$ java -jar mooshabaya-1.0.0.jar

Trunk can be built currently using ant, and it is not broken at the moment as well. We have just created the tag 1.0-RC4 as well, as we always keep tagging the releases regularly.

Friday, May 14, 2010

Mooshabaya 1.0 - RC2

RC2 of Mooshabaya 1.0 with all the primary features implemented is
available now: https://mooshabaya.svn.sourceforge.net/svnroot/mooshabaya/tags/1.0-RC2/

A screencast of Mooshabaya 1.0 - RC2:


Coloring of the nodes hasn't been captured in this screen cast, though Mooshabaya can depict the running workflow dynamically by the colour change as the workflow is run. Similarly the security scenario which has also been  implemented, hasn't been captured in this small screencast. This is a raw screen  capture using XVidCap, which will be mixed with voice and further editing. Avidemux 2.5.2 Multi-platform Video Editor will be used in further editing these raw screen captures. A list of open source video software can be found here.

Friday, April 30, 2010

Input Sources - Mooshabaya

Screencast depicting the Input Sources - Feeds (rss1.0, rss2.0), Scraper, and Files of Mooshabaya. The respective mashups are generated using Mashup Generator of Mooshabaya and can be deployed into WSO2 Mashup Server, as it has the respective implementation of these input sources as host objects. This screencast was captured using XVidCap and modified (video length is reduced to 4 min and 53 seconds) using ffmpeg.
ffmpeg -i in.mpeg -t 00:04:53 -target film-dvd inputsources.mpg

[1] Feed Host Object Guide
[2] Scraper Host Object
[3] File Host Object
[4] Writing a Custom Host Object

Thursday, April 22, 2010

Mooshabaya discussions at research lab

February 22nd, 2010 [Dr.Srinath/A.S.Malinga, K.Pradeeban / CSE Research Lab]

I am writing a switch which will hide the existing menus from mooshabaya if enabled; by default mooshabaya will display all the menus. Dr.Srinath also asked to implement a screen scrapping component. And we will have to make it possible to run the workflow from xbaya itself instead of going to mashup server to invoke it from there. These are the milestones from March 11th demo.

Dr.Srinath asked to come up with a use case, which  will essentially cover all the use cases of Mooshabaya for the demo. He will fix a meeting with Dr.Sanjiva soon. The demo that we will prepare will be sent to Suresh Marru from IU. 

Since modifying Axiom's pom succeeded, I am currently trying to make mbaya a new carbon-orbit bundle, hence reverted the changes that made to axiom for testing.

We also had a discussion about Taverna and other workflow composers, which can be used instead of XBaya, though XBaya became our preferred choice since we are familiar with it and it is convenient when coming to integrate to mashup domain. Project updates and todos at the moment can be found here, where this depicts the overall view of the project.


March 24th, 2010

We had a meeting with the project's internal mentor Mrs.Vishaka Nanayakkara where we gave an overall idea and an update on the status of the project and got her thoughts and remarks.

We also demonstrated the project to the Project Coordinator Mr.Shantha Fernando and the project mentor Mrs.Vishaka Nanayakkara for the third formal project evaluations. I described and demonstrated the other input sources (files, feeds, and scraper), the XMLBeans Event generator for the known LEAD Event Types, and mbaya orbit bundle that makes XSUL messenger working as the monitoring module.


April 5th, 2010

We discussed the potential research paper for the project as well as the timeline with Mrs.Vishaka Nanayakkara, and got her suggestions and thoughts.


April 23rd, 2010 [Dr.Srinath/all/ CSE Research Lab]

We had a meeting with the mentor Dr.Srinath Perera where we gave the updates of the projects, discussed the further procedure of Mooshabaya, and the research paper.

May 26th, 2010 [Dr.Srinath/Research Lab]
We showed the screencasts, and showed the final draft paper and got his suggestions and consent. We got his thoughts on the research paper that we had submitted too.

May 27th, 2010
We discussed the draft report with the project's internal mentor, and got her consent and suggestions.

Tuesday, April 20, 2010

Upcoming Schedule : FYP

Our final year project CS4200 has the below upcoming milestones.

  • April 30th, 2010 - Beginning of Semester 2: Submission of research papers or extended abstracts to ERU
  • Last week of April - meeting with English editor
  • May 16th to 21st - Submission of final draft report to Moodle and supervisors
  • May 27th 2010: approval of the projects by the supervisors for final evaluations
  • 3rd & 4th June 2010 - mid of semester 2: Final evaluations - presentations, demonstrations & vivas
  • 2nd week of June 2010: Project demonstration in the Exhibition
  • 24th June 2010: Submission of final report (hard bound) and project CD/DVD.
  • 24th June 2010: Submission of final versions of research papers

    The final year project will continue till the mid of the semester 2, which is the final semester of our university life.


    -- Project timeline updated as on 19th of June. --
    • 21st, 23rd & 24th June 2010 - mid of semester 2: Final evaluations - presentations, demonstrations & vivas
    • Project demonstration in the Exhibition - in place of this we may arrange a public demonstration and invite the industry to evaluate (but no plans yet)
    • 23rd July 2010: Submission of final report (hard bound) and project CD/DVD. CD/DVD should contain all project documents including the final report and project web, source code, 10-minute video of the project, 1-minute video of the project, and any other item necessary for a future project group to continue the project.
    • 23rd July 2010: Submission of final versions of research papers.

    Monday, March 15, 2010

    Fortnight Reports and Presentations

    Fortnight Reports depicting my progress on our Mooshabaya Project can be found below.
    Fortnight Reports: FNR17, FNR16, FNR15, FNR14, FNR13, FNR12, FNR11, FNR10, FNR9, FNR8, FNR7,FNR6, FNR5, FNR4, FNR3, FNR2, FNR1

    First Formal Presentation
    : 30/10/2009. Evaluated by Mr.Shantha Fernando. [83/100]
    Second Formal Presentation / Viva: [Evaluation of the report and progress]: 10/12/2009. Evaluated by Mr.Shantha Fernando. [90/100]
    Draft Report [75/100]
    Third Formal Presentation: 24/03/2010. Evaluated by Mr.Shantha Fernando. [78/100]

    Overall view of Mooshabaya

    References - Mozilla Rhino Host Object
    [1] Writing a Custom Host Object
    [2] Tutorial: Embedding Rhino
    [3] File Host Object

    * Special thanks to JetBrains for providing the Open Source License for the Mooshabaya Project; Open Source License concept makes IDEA more FOSS-friendly.

    Monday, February 15, 2010

    Use case view - Mooshabaya

    Integrating the Registry

    User can add web service or a directory of web services by integrating the Registry or add data feeds. User management is handled by Identity Server. User can also configure the registry parameters.




    Monitoring Module

    User can configure the monitoring parameters and start/stop monitoring the workflow execution. Workflows are monitored using Pub/Sub model, where workflow events are published as notifications. If user chooses pull mode, notifications are stored as messages in a messagebox and later loaded from the messagebox.

    Workflow Composition

    User can choose and discover services. User can add input source nodes and set service nodes, from the services and feeds that are added. User can compose workflows using the added components and the system components in the canvas area, and implement the relevant business logic. Workflows can be saved and loaded later.


    Mashup Generation and deploying to mashup server and execution

    User can generate mashups once the workflow is composed or loaded. Generated mashups can be exported and deployed to a mashup server and executed.

    Tuesday, February 2, 2010

    Eventing Module Integration

    Finally EventingHostObject is fixed with Axis2 messenger. Here we need to put the hostobjects.eventing.jar that is built from carbon-platform/carbon-components/javascript-hostobjects/eventing into wso2mashup-2.0.0/repository/components/dropins. EventingHostObject has a method to send notifications.
     
    wso2mashup-2.0.0/product/modules/samples/EventMonitoring/EventingFunc.js -- Pls use this file to test the Eventing host object that is currently implemented.

    Building Mashup Server - Maven Build
    mvn clean install -Dmaven.test.skip=true

    or offline build
    mvn install -o -Dmaven.test.skip=true
    References on creating the pom for mbaya bundle: 
    [2] Bnd - Bundle Tool
    [3] How to build OSGi bundles using Maven Bundle Plugin - Part 1 

    Monday, December 14, 2009

    Mooshabaya Meetings at Research Lab

    October 27th, 2009 [Dr.Srinath/All members/CSE Research Lab] : Updates on the project. Eventing component issues and masup deployment and authentication issues. Discussed about the upcoming first formal presentation.

    November 19th, 2009 [Dr.Srinath/K.D.B.C.De Alwis, A.S.Malinga, K.Pradeeban/CSE Research Lab] Demonstration of the project update using a screencast. Design and development issues, further updates, and the potential usage of the ongoing project on transferring Extreme! Labs projects from using XSUL to Axis2 were also discussed.

    December 14th, 2009 [Dr.Srinath/All members/CSE Research Lab]
    Discussed about the eventing module integration into carbon to call the eventing module methods from mashup server. Project Draft Report and the upcoming project schedule was also discussed.

    December 15th, 2009 [Mrs.Vishaka Nanayakkara/All members/HoD Office]
    Discussed about the draft report with the project's internal mentor Mrs.Vishaka Nanayakkara. Suggestions for potential enhancements and improvements to the draft report were given.

    Thursday, September 24, 2009

    Development Discussions - Mooshabaya

    August 28th, 2009 [Dr.Srinath/All members] : The design constraints of Mooshabaya : [CSE/CSLR4 9.30 a.m - 10.30 a.m]

    The design constraints of Mooshabaya was discussed. The development updates were discussed with Dr.Srinath. Cleaning up XBaya code and the UI for Mooshabaya, Integrating WSO2 Identity Server along with WSO2 Registry to Mooshabaya to retrieve services, Deploying the generated mashups into WSO2 Mashup Server by configuring a Mashup Server into the Mooshabaya, and configuring the workflow monitoring to monitor the executing workflows were discussed. These initial design level constraints were discussed during the meeting.



    September 24th, 2009 [Dr.Srinath/All members] : Initial Developments : [CSE/Tutorial Room 11 a.m - 12.00 p.m]

    The development processes and the development decisions were discussed. The mashups generations for the deployed workflows, the constraints in integrating openID credentials for WSO2 Identity Server, monitoring the workflow events, using axis2 in place of XSUL, and the other input sources like web feeds were discussed. The initial developments were demonstrated.

    Tuesday, September 15, 2009

    Mooshabaya - Fortnight Reports

    Initial Discussions
    We decided to develop a Mashup generator for XBaya workflow composer, after the initial discussions with Dr.Srinath Perera and Dr.Sanjiva Weerawarana. Our team Mooshabaya, along with the Bissa team is collectively developing 'Mora Middleware for Scalable Computing (M2SC)'. We have submitted the Project Proposal, followed by the Software Requirement Specification. Design Document yet to be submitted. We have started developing Mooshabaya.

    Other FOSS Specific tasks
    Mooshabaya being a FOSS project, we decided to carry out the development in a FOSS specific manner.

    IRC
    I registered an irc channel ##m2sc on gnome(irc.gnome.org) for the communication among the M2SC combined group members. We are currently using this channel for our project based discussions.

    Documentation
    I have been posting updates on my project work, regularly on my blog. [1]

    Project Proposal
    I wrote the Introduction, Project description and an introduction to M2SC.

    Software Requirement Specification
    I wrote the overall description and also wrote the System features with another member of the group.

    Initial Development
    Since I had worked on Extreme! Labs projects during my internship at WSO2, I had some prior experience in WS-Messenger and XBaya. So I started modifying the GUI of XBaya for Mooshabaya. Mooshabaya includes options for Mashup generation and other input sources. I first included options for these in the GUI. I committed the changes to our SVN.[2]

    System Design
    After a design level meeting[3] with Dr.Srinath Perera on 6th of August, we started the design and the development of the project. Since I have modified the XBaya GUI and created the Mooshabaya GUI, I generated the Screenshots[4] for the design document. I have also written the introduction, a basic overview for M2SC and Mooshabaya, and design considerations.[5] I have also drawn the class diagrams[6] for the Mooshabaya core and the monitoring component.

    Further Reading
    I started reading about the web feeds RSS and Atoms, and parsing them using XMLBeans. I will develop the code for the input from web feeds in the upcoming fortnight. Researched on the Extreme! Labs projects for the LEAD [Linked Environments for Atmospheric Discovery] Systems. Further Literature Survey on the areas I was mainly involved throughout the project for the final report draft.

    Documentation - Initial Chapters of the final report

    Main contributor to the first two chapters of the final report - Introduction and Objectives, and the overall report formatting. Literature Survey on Web feeds, XMLBeans, and XSUL2.0.

    [1] http://kkpradeeban.blogspot.com/search/label/mooshabaya
    [2] https://mooshabaya.svn.sourceforge.net/svnroot/mooshabaya/
    [3] http://kkpradeeban.blogspot.com/2009/08/design-constraints-mooshabaya.html
    [4] http://kkpradeeban.blogspot.com/2009/08/mooshabaya-design-document-31st-of-aug.html
    [5] http://mooshabaya.wikidot.com/design-document
    [6] http://kkpradeeban.blogspot.com/2009/08/mooshabaya-class-diagrams.html

    Saturday, September 12, 2009

    Web feed


    When considering web 2.0 paradigm web feeds become an important topic to discuss. Syndication of site content is considered an important Web 2.0 feature, where the users can grab the information from many sources and customize them to retrieve them in a more convenient manner. A web feed or news feed is a data format used for providing users with frequently updated content. RSS which is commonly known as the abbreviation of "Really Simple Syndication" or sometimes "Rich Site Summary" is a family of web feed formats used to publish frequently updated web contents. RSS has many different versions, with two mostly known parallel formats. RSS 1.* and RSS 2.* both are maintained parallel by different organizations and have two unique formats. RSS 1.* (RDF branch) is owned by RSS-DEV Working Group and RSS 2.* is owned by UserLand.

    The Atom Syndication Format is an XML language used for web feeds, while the Atom Publishing Protocol (AtomPub or APP) is a simple HTTP-based protocol for creating and updating web resources. Being an XML themselves, web feeds can be parsed to java objects using XMLBeans.

    A well known application for creating mashups from the web feeds is Yahoo Pipes. Pipes is a free online service that lets you remix popular feed types and create data mashups using a visual editor.[1]

    References
    [3] A Pipe.
    [5] Sample RSS 2 and RSS 1

    Saturday, August 29, 2009

    Mooshabaya - Diagrams

    Mooshabaya code base can be browsed at http://mooshabaya.svn.sourceforge.net/mooshabaya/ (http://mooshabaya.svn.sourceforge.net/viewvc/mooshabaya/), powered by ViewVC.
    Source code can be checked out from https://mooshabaya.svn.sourceforge.net/svnroot/mooshabaya/
    for the developers.

    Or a particular folder in a particular version:
    svn co -r 289 https://mooshabaya.svn.sourceforge.net/svnroot/mooshabaya/trunk/src/main/java/edu/indiana/extreme/xbaya/mashup/script

    Mooshabaya class diagrams have some similarities with that of XBaya.

    Class diagram for Monitoring Component:


    Class diagram for Mooshabaya Core:

    ------------------------------------------------------------------------------

    Diagrams without the operations and attributes

    Class diagram for Monitoring Component:


    Class diagram for Mooshabaya Core:



    WS-Messenger is the messenger used in XBaya as well as Mooshabaya to publish and subscribe to the event notifications.


    Reference:
    Y. Huang, A. Slominski, C. Herath, and D. Gannon, " WS-Messenger: A Web Services based Messaging System for Service-Oriented Grid Computing," 6th IEEE International Symposium on Cluster Computing and the Grid (CCGrid06).


    P.S: The diagrams of our final year project, including the ones in this blog post, were drawn using dia. Dia for gnome can be installed on Ubuntu using, 
    sudo apt-get install dia-gnome
    and can be run by executing dia in the terminal.

    Thursday, August 27, 2009

    Introduction - Mooshabaya

    Mooshabaya is basically a Mashup generator for XBaya Workflow Composer. The design constraints and the other initial design decisions are emphasized in this document. This document is based on the Project Proposal and the Requirement Specification of Mooshabaya. As the successor of those documents, this document requires those two documents as the prerequisite documents.

    Project internal mentor, Project subject coordinator, project's external mentors and the team members are considered to be the direct audience of this document. However being an Open Source project, this document will be made available online for the public, where interested potential users can have a look of our design. 
    As in the case of most other Open Source SOA middleware projects, Mooshabaya will be developed through Agile Process. The design and the development will be done via several online and face-to-face meetings with the team members as well as the project mentors. Hence this design document will provide a foundation design, which will be modified later reflecting the decisions taken in the further developer meetings.

    Mooshabaya Design Document - 31st of Aug

    Mooshabaya Screenshots at the design level, based on XBaya Workflow Composer UI
    1. Mooshabaya UI, depicting the workflow monitoring.


    2. Adding a Registry to Mooshabaya


    3. Loading Security Credential


    4. Configuring Workflow Properties


    5. Monitoring Configuration


    Use Case Diagram


    The Design Document can be found here.