SlideShare a Scribd company logo
1 of 48
Download to read offline
Implementing eGovernment Portal
 Powered by Alfresco and Orbeon
      Oksana Kurysheva   Alexey Ermakov
Agenda
Part I – Problem definition and brief overview of the approach
   • Local eGovernment Portals – Russian experience – current state
     and the most challenging problems
   • Technical requirements – what do we need, what Alfresco provided
     and where 3rd party solution help was required
   • Overall architecture of the system based on Alfresco and Orbeon



Part II – Implementation details
   • Integrating Alfresco and Orbeon in less then a month – detailed
     architecture, configs, key sources snippets
   • Workflows implementation – theory and practice – what we needed
     in real life in addition to Alfresco out-of-the-box capabilities
Part I:
Problems faced and approach chosen
The aim


Make government services available for citizens
   and businesses online in electronic form
The aim


Make government services available for citizens
   and businesses online in electronic form
 • Information about government services and ways of obtaining
Typical local eGov portal: information web site
    Static information about eGov services is available
The aim


Make government services available for citizens
   and businesses online in electronic form
 • Information about government services and ways of obtaining
 • Ability to submit a request to receive government services online
 • Full back-office integration, including inter-agency cooperation
Main problems to address

     Convert existing paper forms into electronic format

      Establish workflows to execute submitted forms
Addressing electronic forms creation

 Creating forms sounds simple. But it is not:
   • Forms can be really huge and complicated
   • Forms change time to time (monthly update for some of them)
   • List of forms to be available online is not fixed — it is regulated by
     federal and local laws, updates happen few times a year
   • Each agency has its own requirements


 Bottom line: there is no way to create forms definitions once
Addressing electronic forms creation

 The only possible solution: government employees can create
 and edit forms definitions themselves
   • It means creation and editing of dozens of complicated forms by
     non-technical users (including auto-checking configuration, mapping
     to templates for printing, etc)


 We need visual form authoring tool
Electronic forms management: finding the tool

What Alfresco is:                  What Alfresco is not:
  • Document management               • Form authoring tool that
  • Forms storage and                   allows non-technical users to
    management                          create complicated forms
                                        visually
  • Workflow automation
    platform (discussed further)
  • Open and flexible ECM that
    creates the basis for future
    inter-agency cooperation
    and systems integration


           Approach: integrate Alfresco and Orbeon
What is Orbeon?

 • Orbeon Forms – open source forms solution
   • Based on XForms and Ajax
   • Implemented in Java
   • Integration-friendly (discussed further)


 • Orbeon consists of 2 modules:
   • Forms Builder – visual form authoring tool
   • Forms Runner – runtime for deployed forms
Form definition creation in Orbeon Builder
             Visual form definition editor
Form definition creation in Orbeon Builder
          Adding auto-checking rules to control
Form definition creation in Orbeon Builder
   Uploading PDF template for printing according with local
   regulation (prepared in usual OpenOffice.org/LibreOffice)
Published form
example
Solution: forms authoring and submission
Addressing workflows: basic diagram
Addressing workflows: basic diagram




        The issue:
        Step 8 is actually a monstrous non-formalized process
Addressing workflows

The issue: internal workflows are not fixed strictly
  • Each basic 'atomic' internal workflow can be described in details but
   throughout form execution can not:
    • There are a lot of optional stages that can be included or not
    • Single form execution can trigger lots of internal processes to request
     additional papers, approvals, notifications an so on
    • Each sub-process can trigger even more child processes
    • Yeh, Russia is a very bureaucratic country after all
Addressing workflows

Solution: create workflows relations
  • Create basic 'atomic' workflows definitions
  • Allow users to associate these simple workflows with each other to
   build complex processes on demand
Solution: complete architecture
Part II:
Implementation details
Orbeon Integration: Approach
Orbeon Integration: Implementation
Persistence API Implementation


REST Web Scripts


  • PUT: add new file to repository
  • GET: return file from repository
  • POST: perform a search in repository
  • DELETE: remove file from repository
PUT Request

persistence.put.desc.xml
<webscript>
  <shortname>Persistence Layer</shortname>
  <description>Web script implementing Orbeon Forms
Persistence Layer put request</description>
  <url>/persistence/crud/{app_name}/{form_name}/data/
{form_data_id}/{file_name}</url>
  <authentication runas="orbeon">user</authentication>
  <transaction>required</transaction>
  <format default="html">argument</format>
</webscript>
PUT Request
persistence.put.js
// create/get file
var file = folder.childByNamePath(file_name);
if (!file && folder.hasPermission("CreateChildren")){
  file = folder.createNode(file_name, "form:formType");
  file.addAspect("cm:versionable");
  file.addAspect("cm:auditable");
  file.properties["cm:created"] = new Date();
  ...
  file.properties["form:id"] = form_data_id;
}
else
  file.properties["cm:modified"] = new Date();
file.save();
var copy = file.checkout();
copy.properties.content.write(requestbody);
file = copy.checkin("modified by orbeon forms", true);
file.mimetype = requestbody.mimetype;
file.save();
Persistence API problems


  • Forms definitions are stored in eXist
  • Content-type mismatch problem
Problem: content type mismatch
Solution: define two different scripts
<!-- web script to return application/octet-stream -->
<webscript kind="org.alfresco.repository.content.stream">
...
  <url>/persistence/crud/{app_name}/{form_name}/data/
{form_data_id}/{file_name}.pdf</url>
  <format default="">argument</format>
...
</webscript>

<!-- web script to return application/xml -->
<webscript>
...
  <url>/persistence/crud/{app_name}/{form_name}/data/
{form_data_id}/{file_name}.xml</url>
  <format default="_xml">argument</format>
</webscript>
Orbeon Integration: Persistence Layer Complete
Submitted forms execution


  • Content model to store form metadata
  • Workflow to automate form execution
  • Java class to send e-mails to client
Content model
<type name="form:formType">
 <title>Content class representing submitted form</title>
 <parent>cm:content</parent>
   <properties>
     <property name="form:id">
       <type>d:text</type>
       <mandatory>true</mandatory>
     </property>
   <property name="form:submitDate">...
   <property name="form:checkDate">...
   <property name="form:isCorrect">...
   <property name="form:executeDate">...
   <property name="form:checker">...
   <property name="form:executor“>
 </properties>
</type>
Workflow
Workflow model

formWorkflowModel.xml: type definition
<type name="formwf:checkTask">
  <parent>bpm:workflowTask</parent>
  <overrides>
    <property name="bpm:packageItemActionGroup">
      <default>read_package_item_actions</default>
    </property>
  </overrides>
  <mandatory-aspects>
    <aspect>formwf:formaspect</aspect>
    <aspect>formwf:assignee</aspect>
    <aspect>formwf:commentAspect</aspect>
  </mandatory-aspects>
</type>
Workflow model

formWorkflowModel.xml: form aspect definition
<aspect name="formwf:formaspect">
  <properties>
    <property name="formwf:email">
      <type>d:text</type>
    </property>
    <property name="formwf:checker">...
    <property name="formwf:previewlink">...
    <property name="formwf:statuslink">...
  </properties>
</aspect>
Workflow model


formWorkflowModel.xml: comment aspect definition
<aspect name="formwf:commentAspect“>
  <properties>
    <property name="formwf:comments">
      <type>d:text</type>
      <mandatory>false</mandatory>
      <multiple>false</multiple>
    </property>
  </properties>
</aspect>
Workflow model
formWorkflowModel.xml: assignee aspect definition
<aspect name="formwf:assignee“>
  <associations>
    <association name="formwf:assignee">
      <source>
        <mandatory>false</mandatory>
        <many>false</many>
      </source>
      <target>
        <class>cm:person</class>
        <mandatory>false</mandatory>
        <many>false</many>
      </target>
    </association>
  </associations>
</aspect>
Java mailer
public class Notifier extends BaseProcessorExtension {
  ...
  public boolean send(String to, String subject, String content) {
    ...
    Properties props = new Properties();
    props.setProperty("mail.transport.protocol", "smtp");
    ...
    Session mailSession = Session.getDefaultInstance(props, null);
    Transport transport = mailSession.getTransport();
    MimeMessage message = new MimeMessage(mailSession);
    ...
    message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));

        transport.connect();
        transport.send(message);
        transport.close();
    }
}
Orbeon Integration: Workflows Complete
Additional Alfresco extensions developed


  • Custom file uploader
  • Related workflows extension
Custom file uploader


  • Attach files from local drive directly to workflow
  • Intuitive 'Google-style' end-user experience
  • Uses YUI Uploader: no third party libraries are needed
Custom file uploader
Related workflows

  • Creates relations between workflows
  • Start new workflow from task edit page
  • View all related workflows of current task from task page
  • Easy to see which process blocks current task
  • Easy to get process «dependencies» for stats


  • Bottom line: no «mega workflow» is required, allows to
    build execution paths from «basic blocks» on demand
Related workflows
Summary: Current project state


  • Orbeon and Alfresco integration allows non-technical
    users to create and edit form definitions easily
  • Forms are stored and processed in Alfresco, creating a
    basement for managing all documents in one system
  • Forms execution became more intuitive and simple
    compared with legacy document management system
Roadmap: Features planned


 • Statistics module to report on workflows execution for
   management
 • Organizational chart extension to pick employees from
   orgchart, assign tasks to organizational roles, manage
   tasks access control, get statistics on departments
 • Replace eXist completely, move everything to Alfresco
You can find this presentation and more details about this
          implementation on blog.ossgeeks.org


                  Contact us at
    okurysheva@vdel.com and aermakov@vdel.com

      And follow us on twitter: @aviriel and @fufler

More Related Content

What's hot

Migração: Soluções WCM 2007 para SharePoint 2010
Migração: Soluções WCM 2007 para SharePoint 2010Migração: Soluções WCM 2007 para SharePoint 2010
Migração: Soluções WCM 2007 para SharePoint 2010Joao Livio
 
Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...AEM HUB
 
Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Jeff Haynie
 
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...Amit Singh
 
JSF On Rails - Devoxx 2008
JSF On Rails - Devoxx 2008JSF On Rails - Devoxx 2008
JSF On Rails - Devoxx 2008Lucas Jellema
 
SharePoint 2013, Powershell Install from Development to Production.
SharePoint 2013, Powershell Install from Development to Production.SharePoint 2013, Powershell Install from Development to Production.
SharePoint 2013, Powershell Install from Development to Production.Joao Livio
 
WebSphere Portal Business Overview
WebSphere Portal Business OverviewWebSphere Portal Business Overview
WebSphere Portal Business OverviewJoel Demay
 
Customize the login homepage For Oracle EBS R12
Customize the login homepage For Oracle EBS R12Customize the login homepage For Oracle EBS R12
Customize the login homepage For Oracle EBS R12Ahmed Elshayeb
 
Managing Content In Portal Wcm
Managing Content In Portal WcmManaging Content In Portal Wcm
Managing Content In Portal Wcmtchaitanya
 
IBM WebSphere Portal References Education
IBM WebSphere Portal References EducationIBM WebSphere Portal References Education
IBM WebSphere Portal References EducationDvir Reznik
 
oracle oa framework training | oracle oa framework training courses | oa fram...
oracle oa framework training | oracle oa framework training courses | oa fram...oracle oa framework training | oracle oa framework training courses | oa fram...
oracle oa framework training | oracle oa framework training courses | oa fram...Nancy Thomas
 
Greate Introduction to Oracle Fusion Middleware and ADF
Greate Introduction to Oracle Fusion Middleware and ADFGreate Introduction to Oracle Fusion Middleware and ADF
Greate Introduction to Oracle Fusion Middleware and ADFMohamed Shahpoup
 
The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca Jon Phillips
 

What's hot (20)

Migração: Soluções WCM 2007 para SharePoint 2010
Migração: Soluções WCM 2007 para SharePoint 2010Migração: Soluções WCM 2007 para SharePoint 2010
Migração: Soluções WCM 2007 para SharePoint 2010
 
Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...
 
Java ee introduction
Java ee introductionJava ee introduction
Java ee introduction
 
IBM WebSphere Portal
IBM WebSphere PortalIBM WebSphere Portal
IBM WebSphere Portal
 
An Oracle ADF Introduction
An Oracle ADF IntroductionAn Oracle ADF Introduction
An Oracle ADF Introduction
 
Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...
 
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...
 
Resume
ResumeResume
Resume
 
Extensions in OAF
Extensions in OAF Extensions in OAF
Extensions in OAF
 
JSF On Rails - Devoxx 2008
JSF On Rails - Devoxx 2008JSF On Rails - Devoxx 2008
JSF On Rails - Devoxx 2008
 
SharePoint 2013, Powershell Install from Development to Production.
SharePoint 2013, Powershell Install from Development to Production.SharePoint 2013, Powershell Install from Development to Production.
SharePoint 2013, Powershell Install from Development to Production.
 
Oracle application framework (oaf) online training
Oracle application framework (oaf) online trainingOracle application framework (oaf) online training
Oracle application framework (oaf) online training
 
WebSphere Portal Business Overview
WebSphere Portal Business OverviewWebSphere Portal Business Overview
WebSphere Portal Business Overview
 
Customize the login homepage For Oracle EBS R12
Customize the login homepage For Oracle EBS R12Customize the login homepage For Oracle EBS R12
Customize the login homepage For Oracle EBS R12
 
Managing Content In Portal Wcm
Managing Content In Portal WcmManaging Content In Portal Wcm
Managing Content In Portal Wcm
 
IBM WebSphere Portal References Education
IBM WebSphere Portal References EducationIBM WebSphere Portal References Education
IBM WebSphere Portal References Education
 
oracle oa framework training | oracle oa framework training courses | oa fram...
oracle oa framework training | oracle oa framework training courses | oa fram...oracle oa framework training | oracle oa framework training courses | oa fram...
oracle oa framework training | oracle oa framework training courses | oa fram...
 
Greate Introduction to Oracle Fusion Middleware and ADF
Greate Introduction to Oracle Fusion Middleware and ADFGreate Introduction to Oracle Fusion Middleware and ADF
Greate Introduction to Oracle Fusion Middleware and ADF
 
The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca
 
Oracle ADF Case Study
Oracle ADF Case StudyOracle ADF Case Study
Oracle ADF Case Study
 

Similar to CASE-5 Using Alfresco and Orbeon to Implement a Local eGovernment Portal

Building Workflow Applications Through the Web
Building Workflow Applications Through the WebBuilding Workflow Applications Through the Web
Building Workflow Applications Through the WebT. Kim Nguyen
 
SenchaCon 2016: Oracle Forms Modernisation - Owen Pagan
SenchaCon 2016: Oracle Forms Modernisation - Owen PaganSenchaCon 2016: Oracle Forms Modernisation - Owen Pagan
SenchaCon 2016: Oracle Forms Modernisation - Owen PaganSencha
 
Drew madelung sp designer workflows - sp-biz
Drew madelung   sp designer workflows - sp-bizDrew madelung   sp designer workflows - sp-biz
Drew madelung sp designer workflows - sp-bizDrew Madelung
 
Webservices Workshop - september 2014
Webservices Workshop -  september 2014Webservices Workshop -  september 2014
Webservices Workshop - september 2014clairvoyantllc
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...Mark Leusink
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...Mark Roden
 
Deploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePointDeploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePointDenny Lee
 
Angular - Chapter 3 - Components
Angular - Chapter 3 - ComponentsAngular - Chapter 3 - Components
Angular - Chapter 3 - ComponentsWebStackAcademy
 
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...ddrschiw
 
Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!
Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!
Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!ifPeople
 
Displaying google maps in mobileapplication.pptx
Displaying google maps in mobileapplication.pptxDisplaying google maps in mobileapplication.pptx
Displaying google maps in mobileapplication.pptxsanaiftikhar23
 
How to – wrap soap web service around a database
How to – wrap soap web service around a databaseHow to – wrap soap web service around a database
How to – wrap soap web service around a databaseSon Nguyen
 
Cetas - Application Development Services
Cetas - Application Development ServicesCetas - Application Development Services
Cetas - Application Development ServicesKabilan D
 
Professionalizing the Front-end
Professionalizing the Front-endProfessionalizing the Front-end
Professionalizing the Front-endJordi Anguela
 
Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Ben Robb
 
Oracle Forms to APEX conversion tool
Oracle Forms to APEX conversion toolOracle Forms to APEX conversion tool
Oracle Forms to APEX conversion toolScott Wesley
 
Advanced web application architecture - Talk
Advanced web application architecture - TalkAdvanced web application architecture - Talk
Advanced web application architecture - TalkMatthias Noback
 
Angular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP ServicesAngular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP ServicesWebStackAcademy
 
Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and ReactMike Melusky
 

Similar to CASE-5 Using Alfresco and Orbeon to Implement a Local eGovernment Portal (20)

Building Workflow Applications Through the Web
Building Workflow Applications Through the WebBuilding Workflow Applications Through the Web
Building Workflow Applications Through the Web
 
SenchaCon 2016: Oracle Forms Modernisation - Owen Pagan
SenchaCon 2016: Oracle Forms Modernisation - Owen PaganSenchaCon 2016: Oracle Forms Modernisation - Owen Pagan
SenchaCon 2016: Oracle Forms Modernisation - Owen Pagan
 
Drew madelung sp designer workflows - sp-biz
Drew madelung   sp designer workflows - sp-bizDrew madelung   sp designer workflows - sp-biz
Drew madelung sp designer workflows - sp-biz
 
Webservices Workshop - september 2014
Webservices Workshop -  september 2014Webservices Workshop -  september 2014
Webservices Workshop - september 2014
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...
 
Deploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePointDeploying and Managing PowerPivot for SharePoint
Deploying and Managing PowerPivot for SharePoint
 
Angular - Chapter 3 - Components
Angular - Chapter 3 - ComponentsAngular - Chapter 3 - Components
Angular - Chapter 3 - Components
 
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
 
Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!
Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!
Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!
 
Displaying google maps in mobileapplication.pptx
Displaying google maps in mobileapplication.pptxDisplaying google maps in mobileapplication.pptx
Displaying google maps in mobileapplication.pptx
 
How to – wrap soap web service around a database
How to – wrap soap web service around a databaseHow to – wrap soap web service around a database
How to – wrap soap web service around a database
 
Cetas - Application Development Services
Cetas - Application Development ServicesCetas - Application Development Services
Cetas - Application Development Services
 
Professionalizing the Front-end
Professionalizing the Front-endProfessionalizing the Front-end
Professionalizing the Front-end
 
Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010
 
Oracle Forms to APEX conversion tool
Oracle Forms to APEX conversion toolOracle Forms to APEX conversion tool
Oracle Forms to APEX conversion tool
 
George Jordanov CV
George Jordanov CVGeorge Jordanov CV
George Jordanov CV
 
Advanced web application architecture - Talk
Advanced web application architecture - TalkAdvanced web application architecture - Talk
Advanced web application architecture - Talk
 
Angular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP ServicesAngular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP Services
 
Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and React
 

More from Alfresco Software

Alfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Software
 
Alfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management applicationAlfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management applicationAlfresco Software
 
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion HogescholenAlfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion HogescholenAlfresco Software
 
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente AmsterdamAlfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente AmsterdamAlfresco Software
 
Alfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of AlfrescoAlfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of AlfrescoAlfresco Software
 
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo GroupAlfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo GroupAlfresco Software
 
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About FlowAlfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About FlowAlfresco Software
 
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...Alfresco Software
 
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...Alfresco Software
 
Alfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest APIAlfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest APIAlfresco Software
 
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-KonsoleAlfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-KonsoleAlfresco Software
 
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit AlfrescoAlfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit AlfrescoAlfresco Software
 
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...Alfresco Software
 
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: WesternacherAlfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: WesternacherAlfresco Software
 
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...Alfresco Software
 
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novumAlfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novumAlfresco Software
 
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...Alfresco Software
 
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...Alfresco Software
 
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - SafranAlfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - SafranAlfresco Software
 
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital BusinessAlfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital BusinessAlfresco Software
 

More from Alfresco Software (20)

Alfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossier
 
Alfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management applicationAlfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management application
 
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion HogescholenAlfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
 
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente AmsterdamAlfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
 
Alfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of AlfrescoAlfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of Alfresco
 
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo GroupAlfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
 
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About FlowAlfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
 
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
 
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
 
Alfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest APIAlfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest API
 
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-KonsoleAlfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
 
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit AlfrescoAlfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
 
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
 
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: WesternacherAlfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
 
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
 
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novumAlfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
 
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
 
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
 
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - SafranAlfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
 
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital BusinessAlfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
 

Recently uploaded

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 

Recently uploaded (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 

CASE-5 Using Alfresco and Orbeon to Implement a Local eGovernment Portal

  • 1. Implementing eGovernment Portal Powered by Alfresco and Orbeon Oksana Kurysheva Alexey Ermakov
  • 2. Agenda Part I – Problem definition and brief overview of the approach • Local eGovernment Portals – Russian experience – current state and the most challenging problems • Technical requirements – what do we need, what Alfresco provided and where 3rd party solution help was required • Overall architecture of the system based on Alfresco and Orbeon Part II – Implementation details • Integrating Alfresco and Orbeon in less then a month – detailed architecture, configs, key sources snippets • Workflows implementation – theory and practice – what we needed in real life in addition to Alfresco out-of-the-box capabilities
  • 3. Part I: Problems faced and approach chosen
  • 4. The aim Make government services available for citizens and businesses online in electronic form
  • 5. The aim Make government services available for citizens and businesses online in electronic form • Information about government services and ways of obtaining
  • 6. Typical local eGov portal: information web site Static information about eGov services is available
  • 7. The aim Make government services available for citizens and businesses online in electronic form • Information about government services and ways of obtaining • Ability to submit a request to receive government services online • Full back-office integration, including inter-agency cooperation
  • 8. Main problems to address Convert existing paper forms into electronic format Establish workflows to execute submitted forms
  • 9. Addressing electronic forms creation Creating forms sounds simple. But it is not: • Forms can be really huge and complicated • Forms change time to time (monthly update for some of them) • List of forms to be available online is not fixed — it is regulated by federal and local laws, updates happen few times a year • Each agency has its own requirements Bottom line: there is no way to create forms definitions once
  • 10. Addressing electronic forms creation The only possible solution: government employees can create and edit forms definitions themselves • It means creation and editing of dozens of complicated forms by non-technical users (including auto-checking configuration, mapping to templates for printing, etc) We need visual form authoring tool
  • 11. Electronic forms management: finding the tool What Alfresco is: What Alfresco is not: • Document management • Form authoring tool that • Forms storage and allows non-technical users to management create complicated forms visually • Workflow automation platform (discussed further) • Open and flexible ECM that creates the basis for future inter-agency cooperation and systems integration Approach: integrate Alfresco and Orbeon
  • 12. What is Orbeon? • Orbeon Forms – open source forms solution • Based on XForms and Ajax • Implemented in Java • Integration-friendly (discussed further) • Orbeon consists of 2 modules: • Forms Builder – visual form authoring tool • Forms Runner – runtime for deployed forms
  • 13. Form definition creation in Orbeon Builder Visual form definition editor
  • 14. Form definition creation in Orbeon Builder Adding auto-checking rules to control
  • 15. Form definition creation in Orbeon Builder Uploading PDF template for printing according with local regulation (prepared in usual OpenOffice.org/LibreOffice)
  • 17. Solution: forms authoring and submission
  • 19. Addressing workflows: basic diagram The issue: Step 8 is actually a monstrous non-formalized process
  • 20. Addressing workflows The issue: internal workflows are not fixed strictly • Each basic 'atomic' internal workflow can be described in details but throughout form execution can not: • There are a lot of optional stages that can be included or not • Single form execution can trigger lots of internal processes to request additional papers, approvals, notifications an so on • Each sub-process can trigger even more child processes • Yeh, Russia is a very bureaucratic country after all
  • 21. Addressing workflows Solution: create workflows relations • Create basic 'atomic' workflows definitions • Allow users to associate these simple workflows with each other to build complex processes on demand
  • 26. Persistence API Implementation REST Web Scripts • PUT: add new file to repository • GET: return file from repository • POST: perform a search in repository • DELETE: remove file from repository
  • 27. PUT Request persistence.put.desc.xml <webscript> <shortname>Persistence Layer</shortname> <description>Web script implementing Orbeon Forms Persistence Layer put request</description> <url>/persistence/crud/{app_name}/{form_name}/data/ {form_data_id}/{file_name}</url> <authentication runas="orbeon">user</authentication> <transaction>required</transaction> <format default="html">argument</format> </webscript>
  • 28. PUT Request persistence.put.js // create/get file var file = folder.childByNamePath(file_name); if (!file && folder.hasPermission("CreateChildren")){ file = folder.createNode(file_name, "form:formType"); file.addAspect("cm:versionable"); file.addAspect("cm:auditable"); file.properties["cm:created"] = new Date(); ... file.properties["form:id"] = form_data_id; } else file.properties["cm:modified"] = new Date(); file.save(); var copy = file.checkout(); copy.properties.content.write(requestbody); file = copy.checkin("modified by orbeon forms", true); file.mimetype = requestbody.mimetype; file.save();
  • 29. Persistence API problems • Forms definitions are stored in eXist • Content-type mismatch problem
  • 30. Problem: content type mismatch Solution: define two different scripts <!-- web script to return application/octet-stream --> <webscript kind="org.alfresco.repository.content.stream"> ... <url>/persistence/crud/{app_name}/{form_name}/data/ {form_data_id}/{file_name}.pdf</url> <format default="">argument</format> ... </webscript> <!-- web script to return application/xml --> <webscript> ... <url>/persistence/crud/{app_name}/{form_name}/data/ {form_data_id}/{file_name}.xml</url> <format default="_xml">argument</format> </webscript>
  • 32. Submitted forms execution • Content model to store form metadata • Workflow to automate form execution • Java class to send e-mails to client
  • 33. Content model <type name="form:formType"> <title>Content class representing submitted form</title> <parent>cm:content</parent> <properties> <property name="form:id"> <type>d:text</type> <mandatory>true</mandatory> </property> <property name="form:submitDate">... <property name="form:checkDate">... <property name="form:isCorrect">... <property name="form:executeDate">... <property name="form:checker">... <property name="form:executor“> </properties> </type>
  • 35. Workflow model formWorkflowModel.xml: type definition <type name="formwf:checkTask"> <parent>bpm:workflowTask</parent> <overrides> <property name="bpm:packageItemActionGroup"> <default>read_package_item_actions</default> </property> </overrides> <mandatory-aspects> <aspect>formwf:formaspect</aspect> <aspect>formwf:assignee</aspect> <aspect>formwf:commentAspect</aspect> </mandatory-aspects> </type>
  • 36. Workflow model formWorkflowModel.xml: form aspect definition <aspect name="formwf:formaspect"> <properties> <property name="formwf:email"> <type>d:text</type> </property> <property name="formwf:checker">... <property name="formwf:previewlink">... <property name="formwf:statuslink">... </properties> </aspect>
  • 37. Workflow model formWorkflowModel.xml: comment aspect definition <aspect name="formwf:commentAspect“> <properties> <property name="formwf:comments"> <type>d:text</type> <mandatory>false</mandatory> <multiple>false</multiple> </property> </properties> </aspect>
  • 38. Workflow model formWorkflowModel.xml: assignee aspect definition <aspect name="formwf:assignee“> <associations> <association name="formwf:assignee"> <source> <mandatory>false</mandatory> <many>false</many> </source> <target> <class>cm:person</class> <mandatory>false</mandatory> <many>false</many> </target> </association> </associations> </aspect>
  • 39. Java mailer public class Notifier extends BaseProcessorExtension { ... public boolean send(String to, String subject, String content) { ... Properties props = new Properties(); props.setProperty("mail.transport.protocol", "smtp"); ... Session mailSession = Session.getDefaultInstance(props, null); Transport transport = mailSession.getTransport(); MimeMessage message = new MimeMessage(mailSession); ... message.setRecipient(Message.RecipientType.TO, new InternetAddress(to)); transport.connect(); transport.send(message); transport.close(); } }
  • 41. Additional Alfresco extensions developed • Custom file uploader • Related workflows extension
  • 42. Custom file uploader • Attach files from local drive directly to workflow • Intuitive 'Google-style' end-user experience • Uses YUI Uploader: no third party libraries are needed
  • 44. Related workflows • Creates relations between workflows • Start new workflow from task edit page • View all related workflows of current task from task page • Easy to see which process blocks current task • Easy to get process «dependencies» for stats • Bottom line: no «mega workflow» is required, allows to build execution paths from «basic blocks» on demand
  • 46. Summary: Current project state • Orbeon and Alfresco integration allows non-technical users to create and edit form definitions easily • Forms are stored and processed in Alfresco, creating a basement for managing all documents in one system • Forms execution became more intuitive and simple compared with legacy document management system
  • 47. Roadmap: Features planned • Statistics module to report on workflows execution for management • Organizational chart extension to pick employees from orgchart, assign tasks to organizational roles, manage tasks access control, get statistics on departments • Replace eXist completely, move everything to Alfresco
  • 48. You can find this presentation and more details about this implementation on blog.ossgeeks.org Contact us at okurysheva@vdel.com and aermakov@vdel.com And follow us on twitter: @aviriel and @fufler