SlideShare a Scribd company logo
1 of 9
patterns by example - workflow design
               jss 2011-06-09
Workflows
Workflows ctd.

•   [Business] Process Modeling

•   State Machines [vs. sequential models]

•   Directed Graph

    •   Advanced: WF patterns, branching, concurrency, etc.

    •   (c.f. http://www.workflowpatterns.com/)
Wish List

•   Workflow on top of existing instances:

    WF(Instance).state_change(‘newstate’)

•   No dependencies

•   No assumptions about underlying representation - just Python objects

•   Hooks for transitions (one is enough, do not need registry)
repoze.workflow
legacy repoze
itools.workflow
Implementations

•   N Python implementations w/ slightly different ideas

•   Framework specific: django-workflows, {plone,hurry,repoze}.workflow

•   Zope stuff: Nice adaptation interface

•   Framework agnostic: itools.workflow - but inheritance based interface

•   Plus some state-machine libs
Usage

More Related Content

Viewers also liked

Best selling ufo books reviewed
Best selling ufo books reviewedBest selling ufo books reviewed
Best selling ufo books reviewedgorin2008
 
I_Zone overview
I_Zone overviewI_Zone overview
I_Zone overviewCodeZone
 
Pets company
Pets companyPets company
Pets companykysjw24
 
The modern age marina
The modern age marinaThe modern age marina
The modern age marinalola caravaca
 
дикие животные2
дикие животные2дикие животные2
дикие животные2khandka
 
Where do we live henar
Where do we live                     henarWhere do we live                     henar
Where do we live henarlola caravaca
 
Ardora tutorial sopa de letras
Ardora tutorial sopa de letrasArdora tutorial sopa de letras
Ardora tutorial sopa de letrasUNICIENCIA
 
Living things maria moya
Living things maria moyaLiving things maria moya
Living things maria moyalola caravaca
 
By elena and maria teresa
By elena and maria teresaBy elena and maria teresa
By elena and maria teresalola caravaca
 
Cost-Benefit Analysis of Sydney's Second Airport
Cost-Benefit Analysis of Sydney's Second AirportCost-Benefit Analysis of Sydney's Second Airport
Cost-Benefit Analysis of Sydney's Second AirportJonathon Flegg
 
Radiation exposure
Radiation exposureRadiation exposure
Radiation exposuregorin2008
 
Presentación aurelio
Presentación aurelioPresentación aurelio
Presentación aureliolola caravaca
 
Ontario Interactive Digital Media Tax Credit
Ontario Interactive Digital Media Tax Credit   Ontario Interactive Digital Media Tax Credit
Ontario Interactive Digital Media Tax Credit rkun
 

Viewers also liked (20)

Ns4 presentation-u1
Ns4 presentation-u1Ns4 presentation-u1
Ns4 presentation-u1
 
Best selling ufo books reviewed
Best selling ufo books reviewedBest selling ufo books reviewed
Best selling ufo books reviewed
 
I_Zone overview
I_Zone overviewI_Zone overview
I_Zone overview
 
Pets company
Pets companyPets company
Pets company
 
The modern age marina
The modern age marinaThe modern age marina
The modern age marina
 
Cartografia
CartografiaCartografia
Cartografia
 
дикие животные2
дикие животные2дикие животные2
дикие животные2
 
Where do we live henar
Where do we live                     henarWhere do we live                     henar
Where do we live henar
 
Ardora tutorial sopa de letras
Ardora tutorial sopa de letrasArdora tutorial sopa de letras
Ardora tutorial sopa de letras
 
Living things maria moya
Living things maria moyaLiving things maria moya
Living things maria moya
 
Articles
ArticlesArticles
Articles
 
By elena and maria teresa
By elena and maria teresaBy elena and maria teresa
By elena and maria teresa
 
Cost-Benefit Analysis of Sydney's Second Airport
Cost-Benefit Analysis of Sydney's Second AirportCost-Benefit Analysis of Sydney's Second Airport
Cost-Benefit Analysis of Sydney's Second Airport
 
Economy jesus
Economy jesusEconomy jesus
Economy jesus
 
Wow
WowWow
Wow
 
Radiation exposure
Radiation exposureRadiation exposure
Radiation exposure
 
Presentación aurelio
Presentación aurelioPresentación aurelio
Presentación aurelio
 
Nazi
NaziNazi
Nazi
 
Ccss dominios
Ccss dominiosCcss dominios
Ccss dominios
 
Ontario Interactive Digital Media Tax Credit
Ontario Interactive Digital Media Tax Credit   Ontario Interactive Digital Media Tax Credit
Ontario Interactive Digital Media Tax Credit
 

More from rocketcircus

More from rocketcircus (9)

Pytables
PytablesPytables
Pytables
 
Descriptor Protocol
Descriptor ProtocolDescriptor Protocol
Descriptor Protocol
 
Descriptor Protocol
Descriptor ProtocolDescriptor Protocol
Descriptor Protocol
 
Python Academy
Python AcademyPython Academy
Python Academy
 
intro to scikits.learn
intro to scikits.learnintro to scikits.learn
intro to scikits.learn
 
AWS Quick Intro
AWS Quick IntroAWS Quick Intro
AWS Quick Intro
 
PyPy 1.5
PyPy 1.5PyPy 1.5
PyPy 1.5
 
Message Queues
Message QueuesMessage Queues
Message Queues
 
Rocket Circus on Code Review
Rocket Circus on Code ReviewRocket Circus on Code Review
Rocket Circus on Code Review
 

Recently uploaded

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Recently uploaded (20)

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

patterns by example - workflow design

  • 1. patterns by example - workflow design jss 2011-06-09
  • 3. Workflows ctd. • [Business] Process Modeling • State Machines [vs. sequential models] • Directed Graph • Advanced: WF patterns, branching, concurrency, etc. • (c.f. http://www.workflowpatterns.com/)
  • 4. Wish List • Workflow on top of existing instances: WF(Instance).state_change(‘newstate’) • No dependencies • No assumptions about underlying representation - just Python objects • Hooks for transitions (one is enough, do not need registry)
  • 8. Implementations • N Python implementations w/ slightly different ideas • Framework specific: django-workflows, {plone,hurry,repoze}.workflow • Zope stuff: Nice adaptation interface • Framework agnostic: itools.workflow - but inheritance based interface • Plus some state-machine libs