wiki:Event/2013/GSoC/WorkflowSupport

Version 13 (modified by hardik juneja, 11 years ago) ( diff )

--

Project: Workflow Support

Name : Hardik Juneja
Mentor: Dominic Konig

BluePrints

This project draws ideas from the Blueprints below:

Demo

demo

Meetings And Discussions

Weekly Meeting : Wednesday 8:15 UTC

Venue : IRC (Nick - hardikj)

Google Group Discussions :


Goals -

  • configuration of event handlers (nodes) in a workflow (done)
  • storing and retrieving of workflow instances
  • mapping of instance status + current event to a certain node
  • Interface between workflow engine (=event manager) and workflow nodes (=event handler)
  • Interface between nodes and "actions" (=S3Methods?)
  • Workflow widgets (=widgets for users to perform workflow actions), and how to put them into a page


Project Progress

SMART Goal Measure Status
Designed Workflow Configuration Discussed the design with mentors and we came up with a good design. Completed
Implement Required classes Implemented all required basic classes which were necessary to make a good cofiguration pattern Completed
Testing Test the configuration pattern Completed
Document and make new Blueprint http://eden.sahanafoundation.org/wiki/BluePrint/WorkflowSupport Completed
Discussing design of the data model done successfully Completed
Implement the data model designed the model Completed
Implement functions to store and retrieve status Implemented all basic functions Completed
Testing and documentation Tested the database Complete
Mapping instances We have a working basic Workflow Engine Completed
design wireframes and update wiki http://eden.sahanafoundation.org/wiki/BluePrint/WorkflowSupport#Wireframes Completed
Node and status Matching - Completed
Injecting the Work-flow Id in action buttons and forms Injected Completed
Support the Prep and Postp Injection Configuration support postp and prep Completed
Adding Different buttons - In progress


Proposal Timeline:

May 28th - june 15th (Community Bonding Period)

  • Achieving all the learning goals described in the Outputs and clearing all the doubts with the community.
  • Gathering all my prerequisite about the project and laying down a modular structure of the project.

June 17th - July 29th (Pre Community bonding Period)

Week 1:

  • Discussing the design to save user progress. ( On the Page )
  • Creating models (if required ) to save the user progress so that if a user quit accidently he can restore his work. The saved progress will also be used as step name.
  • Discussing and planning the design of the project with mentors and community.

Week 2 and 3: ( Configuration of event handlers (nodes) in a workflow )

  • Design a configuration pattern (done)
  • Implement the classes for the configuration pattern
  • Testing and documentation
  • Meeting 1 - Code review, Making changes(if suggested), Writing tests , Trunk integration (Wednesday).

Week 4 and 5: ( storing and retrieving of workflow instances )

  • Discussing and plan the Design of the data model
  • Implement the data model
  • Testing and documentation

Week 6 and 7: ( mapping of instance status + current event to a certain node )

  • Design the process
  • Implement the functions
  • Testing & Documentation
  • Mid-Term Evaluation.

July 29th - August 2nd

  • Through revision of what have been done till now and lay a plan for next phase.
  • Fixing all issues/bugs(if any).

August 3rd - September 16th (Post Community Bonding Period )

Week 8 and 9: - interface between workflow engine (=event manager) and workflow nodes (=event handler)

  • Design
  • Implement it
  • Test and document it
  • Meeting 2 - Code review,Suggestions, Applying changes(if any), Trunk Integration.

Week 10 and 11: ( interface between nodes and "actions" (=S3Methods?) )

  • review the configuration pattern
  • design and implement the interface
  • test and document

Week 12 and 13:

  • figure out how to inject the workflow widgets
  • implement it
  • document it

September 17th - September 23rd (Pen down period)

  • Thorough review of all the functionalities.
  • Debugging, Code cleanup, Comments.
Note: See TracWiki for help on using the wiki.