28
MALAYSIAN OPEN SOURCE WORKFLOW FOSS 2009

Foss 2009 Joget Workflow Presentation V1.0e

Embed Size (px)

DESCRIPTION

Presentation slides used for the Joget Workflow session at FOSS 2009 (http://foss.my/2009/schedule/julian-khoo/)

Citation preview

Page 1: Foss 2009 Joget Workflow Presentation V1.0e

MALAYSIAN OPEN SOURCE WORKFLOWFOSS 2009

Page 2: Foss 2009 Joget Workflow Presentation V1.0e

AGENDA Joget Workflow in a Nutshell Quick Demo Technologies

Platform – Java, GlassFish, Tomcat, MySQL, Ubuntu Frameworks and Libraries –Spring, Felix, Hibernate, Enhydra Shark,

JQuery

Development Methodology Continuous Integration –Subversion, Hudson, JUnit Tools – Maven, Archiva, Trac, Netbeans, Eclipse Agile - Scrum!

Open Source Business Models? Challenges and What’s Next? Summary and Q&A

Page 3: Foss 2009 Joget Workflow Presentation V1.0e

JOGET WORKFLOW IN A NUTSHELL

What’s Joget Workflow?

Open source, people-driven, form-based workflow management system.

Page 4: Foss 2009 Joget Workflow Presentation V1.0e

JOGET WORKFLOW IN A NUTSHELL

Why Joget Workflow?Development started about a year agoStarted as a requirement to incorporate

workflow into an enterprise projectCurrent open source products (or even

expensive commercial ones) do not fully solve human workflow problems in a simple enough manner

Opportunity to apply latest technologies and development methodologies

A Malaysian project :)

Page 5: Foss 2009 Joget Workflow Presentation V1.0e

JOGET WORKFLOW IN A NUTSHELL

What’s in Joget Workflow?

Joget Workflow

Workflow Designer

Workflow Management Console

Workflow Monitor

Inbox/Task Manager

Workflow Engine

Form Builder

User Manager

System Settings

Page 6: Foss 2009 Joget Workflow Presentation V1.0e

WORKFLOW DESIGNER

• Graphical tool to visually design process flows

• Launched directly from the web browser using Java Web Start technology

Page 7: Foss 2009 Joget Workflow Presentation V1.0e

WORKFLOW DESIGNER

• Define participants, activities, business rules

• Identify integration to external systems

Page 8: Foss 2009 Joget Workflow Presentation V1.0e

WORKFLOW ENGINE

• Executes processes deployed from the Workflow Designer

• Supports XPDL• Plugin architecture to

extend functionality

Page 9: Foss 2009 Joget Workflow Presentation V1.0e

WORKFLOW MANAGEMENT CONSOLE

• Web-based console consists of the following:• Inbox• Form Builder• Workflow Monitor• User Manager• System Settings

Page 10: Foss 2009 Joget Workflow Presentation V1.0e

INBOX

• Allows users to view relevant process tasks

• Can be embedded into external applications

Page 11: Foss 2009 Joget Workflow Presentation V1.0e

FORM BUILDER

• Graphical tool to design forms

• Vast range of dynamic form elements

Page 12: Foss 2009 Joget Workflow Presentation V1.0e

WORKFLOW MONITOR

• Monitor Running Processes• Monitor Completed

Processes• Real-time Audit Trails• Data Capture for Reporting

and Service Level Monitoring

Page 13: Foss 2009 Joget Workflow Presentation V1.0e

USER MANAGER

• Manage organizational charts, groups and individual users

• Integration to external directory services using Directory Manager plugins

Page 14: Foss 2009 Joget Workflow Presentation V1.0e

JOGET WORKFLOW IN A NUTSHELL How to use Joget Workflow?

Page 15: Foss 2009 Joget Workflow Presentation V1.0e

JOGET WORKFLOWQuick Demo

Page 16: Foss 2009 Joget Workflow Presentation V1.0e

JOGET WORKFLOWTechnologies and Development Methodology

Page 17: Foss 2009 Joget Workflow Presentation V1.0e

WHAT DO ALL THESE HAVE IN COMMON? Java Spring Hibernate Felix Shark JPeD JQuery GlassFish Tomcat MySQL

Ubuntu Maven Archiva Subversion Hudson Ant JUnit Trac Netbeans Eclipse

Page 18: Foss 2009 Joget Workflow Presentation V1.0e

PLATFORM Open Platforms!

Java Vendor neutral, platform independent

Linux Primarily using Ubuntu Linux for development servers. But

Windows is a big focus as well (well, we live in a Windows world like it or not)

MySQL Primary database, evaluating use of embedded Apache

Derby network server as well. Database independence using Hibernate

Tomcat Using Apache Tomcat as the primary web application

server for distribution. GlassFish

Using Sun GlassFish app server as the development build and test server.

Page 19: Foss 2009 Joget Workflow Presentation V1.0e

FRAMEWORKS AND LIBRARIES No need to reinvent the wheel!

Spring Framework One of (if not the most) popular Java development framework. Using

core framework plus modules like Spring MVC, Spring Security, etc. Why Spring? Very powerful using Dependency Injection (DI) and

Aspect Oriented Programming (AOP) Hibernate

Most popular Java persistence framework, using ORM (Object-Relational Mapping)

Why Hibernate? Stability, database independence Felix

OSGI - Dynamic module system for Java, used to implement plugin architecture

Why OSGI? True plug and play! Shark

Enhydra Shark workflow engine Why Shark? Supports XPDL 1.0

JPeD Workflow Editor based on Enhydra JaWE Why JPeD? Supports XPDL 1.0

Page 20: Foss 2009 Joget Workflow Presentation V1.0e

DEVELOPMENT METHODOLOGY How are we doing it?

Page 21: Foss 2009 Joget Workflow Presentation V1.0e

CONTINUOUS INTEGRATION What is CI?

Software development process that rebuilds, integrates and tests applications frequently

Why CI? Reduce risks and improve quality Reduce repetitive manual processes

Practices? Single Source Repository

Source code management system - Subversion Automate Builds

Hudson Automate Testing

JUnit Commit Frequently

Smaller chunks and changesets Keep Builds Fast

Full build in 5-10mins Automate Releases

Maven Ant Plugin, NSIS Windows Installer System, linux packages .deb, .rpm?

Page 22: Foss 2009 Joget Workflow Presentation V1.0e

TOOLS Maven

Popular tool for Java project management and build automation. Project Object Model (POM) defines project, dependencies, etc Similar to Ant, but different… embraces “Convention over

configuration” Archiva

Maven repository management software. Used as a local proxy.

Trac Project management and bug/issue tracking system. Why Trac? Integrated to Subversion, wiki, issue tracking - all-in-

one Netbeans

Great IDE Good integration to Maven and Subversion A bit slow in certain areas e.g. locating files

Eclipse Equally great IDE Maven and Subversion integration not as good. Seems faster and more responsive

Page 23: Foss 2009 Joget Workflow Presentation V1.0e

AGILE DEVELOPMENT WITH SCRUM What is Scrum?

Great iterative framework for managing product development

Why Scrum? Adapt to changing requirements Visibility of progress Happier developers!

Page 24: Foss 2009 Joget Workflow Presentation V1.0e

AGILE DEVELOPMENT WITH SCRUM Sprints

Page 25: Foss 2009 Joget Workflow Presentation V1.0e

JOGET WORKFLOWBusiness Models and Challenges

Page 26: Foss 2009 Joget Workflow Presentation V1.0e

OPEN SOURCE BUSINESS MODELS Open Source License?

GPL Business Models?

Licensing Dual Licensing: A single code base is licensed to different users using either an

open source or a commercial license. Open-core Licensing: The core code is available using an open source license,

but enterprise or professional versions include open source code and closed source extensions and are licensed commercially.

Training Services Public scheduled and ad hoc training

Support Subscription Annual, repeatable support and service agreements — effectively an insurance policy

against the need for ad hoc service and support, which may also provide updates and other services.

Embedded Software The open source software is embedded within a larger commercial software

package. Software as a Service (SaaS)

Users pay to access and use the software via the Internet. Advertising

The software is free to use and is funded by associated advertising. Other Services

Ad hoc support calls, service, training and consulting contracts.

http://blogs.the451group.com/opensource/2009/03/12/a-classification-of-open-source-business-strategies/

Page 27: Foss 2009 Joget Workflow Presentation V1.0e

CHALLENGES AND WHAT’S NEXT

Challenges Going Forward Community building Ongoing innovation Open source as a sustainable business Balancing community and commercial needs

Page 28: Foss 2009 Joget Workflow Presentation V1.0e

Q&AThank You

www.joget.orgJulian [email protected]