Workflow engine only No UI Required!
XML based workflow engine with DB & Web Services interface. Must be written in C# 4 and use NHibernate with SQL Server 2008 as database. This is an engine only all interaction with engine will be via external applications using web service calls or database command queues.
Workflow functionality must include:-
1. support for start, end, milestone, task, If, email, document, sms, meeting, internal process, external process, timer and comment workflow objects. new workflow objects must be easy to plugin ie it must be easy for us to add new work flow objects at a later stage.
2. logical variables (true/false) must be supported (at process level) for each workflow object ie entry and exit criteria for each workflow object based on logical state of one or more variables.
3. object links (from and to) must be supported for each workflow object and the engine must use these to execute individual workflow objects.
4. xml reference data can be attached to each workflow object to link back to external application data ie GUID's, document Id's etc.
5. creation of active workflows (processes) from XML strings (templates) including processes, milestones, tasks and actions
6. execution of processes (start, stop and hold processes, use logical queues to allocate tasks to user roles, execute actions in tasks (emails, sms, url links, ical etc), update status of processes, milestones and tasks based on user interaction, manage call backs from embedded links in emails etc and update processes, milestones and tasks accordingly ie when a user completes a task.
7. monitoring of active processes (evaluate current state of each active process, escalate processes, milestones and tasks outside of defined service levels, produce process current state diagrams in xml for external application rendering.
8. create reporting tables of current workflow engine data set at defined intervals to support reporting in external applications.
Web Service functionality must include:-
1. there is no user interface required all interaction is via web services or DB command queues only.
2. web service calls to support all functionality required for creation, execution and monitoring of processes, milestones, tasks and actions.
3. web service calls to authenticate external application against web service which must use Microsoft [url removed, login to view] SQL Membership provider.
4. roles not users. task queues not users. -> a role can have one or more task queues (db tables) where tasks are sent to be picked up by users for completion.
5. Service levels are required at the process level, milestone level and task level.
6. workflow processes should have grouping functionality to allow departments/teams to report on their particular workflows.
1. full auditing (field level) of all changes to workflow engine data is required - audit active and archived tables required - web service calls to support audit archiving.
2. each engine must be capable of handling 10,000 active processes, 50,000 active milestones, 250,000 active tasks and 250,000 active actions.
3. archiving of non active processes (and child milestones, tasks and actions) must be supported.
4. engine must be scalable ie 1-8 engines must be able to run concurrently on a single server using the same database but different workflow data sets.
5. new XML workflow schema's must be easily added ie adding new fields to workflow XML must not break engine.
6. workflow engine must be fully configurable via external xml config files ie DB connection string, dashboard table production intervals etc
7. workflow engine must run as an installable windows service with extensive logging built in.
Happy to provide further details via pm as required but will only send full details to shortlisted bidders.
Full source, reasonable admin documentation and developers guide must be made available.
Will pay extra for integration with Outlook tasks functionality.