SlideShare una empresa de Scribd logo
1 de 42
Разработка приложений с использованием Workflow Foundation Максим Игнатов e-Legion Ltd. mail: maxim.ignatov@e-legion.com www.e-legion.com 1
Human Resource Management System www.e-legion.com 2
Цели Узкие места WF Варианты решений www.e-legion.com 3 http://www.flickr.com/photos/lofink/4501610335/
Ретроспектива ADD Conf Хочется НЕ хочется Готовый продукт Well Done Новая технология How To www.e-legion.com 4 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Коротко о возможностях WF Бизнес-процесс – как отдельная сущность Long running process Гибкий фрэймворк Интеграция с другими технологиями www.e-legion.com 5 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Xaml or Assembly www.e-legion.com 7 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Транзакционность процессов www.e-legion.com 8 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Custom Activity www.e-legion.com 9 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
AppFabric www.e-legion.com 10 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Примеры RSS Reader Factorial Calculator Approval Process Много, много, много других примеров www.e-legion.com 11 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
RSS Reader Xaml WF definition Передача в WF объектов 0 ветвлений бизнес-процесса http://www.techdays.ru/videos/2470.html www.e-legion.com 12 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
www.e-legion.com 13 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
RSS Reader www.e-legion.com 14 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
http://www.flickr.com/photos/lofink/4501610335/
Factorial Calculator Xaml WF definition Передача в WF объектов 0 ветвлений бизнес-процесса http://www.techdays.ru/videos/2470.html www.e-legion.com 16 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
www.e-legion.com 17 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Factorial Calculator www.e-legion.com 18 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Approval process Code WF definition – 2 штука  Передача в WF объектов Разветвленный бизнес-процесс WCF взаимодействие www.e-legion.com 19 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
http://www.flickr.com/photos/lofink/4501610335/
Approval process Typed Arguments WF Transferred objects Database objects Contract types Custom Activities www.e-legion.com 21 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Подходы к проектированию WF Разделить процессы на подпроцессы Единый процесс на все www.e-legion.com 23 23 http://www.flickr.com/photos/lofink/4501610335/
http://www.flickr.com/photos/lofink/4501610335/
http://www.flickr.com/photos/lofink/4501610335/
Процессы на подпроцессы Удачно соотносится с моделью данных Логически понятней Менее “тяжеловесный”WF Нужна логика маршрутизации к нужным WF www.e-legion.com 26 26 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Единый процесс на все Маршрутизация к WF не требуется Модель “размазана”на весь WF Более “тяжеловесный”WF www.e-legion.com 27 27 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Что если? Когда в WF изменилась логика Когда в WF изменились входные или выходные параметры Когда в WF + WCF поменялось OperationName Изменили базу данных Typed Arguments WF Transferred objects Database objects Contract types Custom Activities www.e-legion.com 28 28 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
О чем пойдет речь Версионность процессов Поддержка старых процессов Миграция www.e-legion.com 29 29 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 30 30
ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 31 31
ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 32 32
ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 33 33
ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 34 34
ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 35 35
http://www.flickr.com/photos/lofink/4501610335/
Ограничения WF не должен содержать внутри нестандартных типов данных WF должен уметь перейти в любое из возможных состояний Сборки лучше не подписывать www.e-legion.com 39 39 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Biztalk with HWS www.e-legion.com 40 40 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Sharepoint www.e-legion.com 41 41 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
Спасибо за внимание Максим Игнатов e-Legion Ltd. maxim.ignatov@e-legion.com www.e-legion.com 42 42 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/

Más contenido relacionado

Similar a Максим Игнатов «Windows Worflow Foundation»

About Flink streaming
About Flink streamingAbout Flink streaming
About Flink streaming용휘 김
 
PloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, FuturePloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, FutureSteve McMahon
 
Symfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web developmentSymfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web developmentifour_bhavesh
 
Afik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex IntroAfik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex IntroAlphageeks
 
Register For BOFC Live Webinar – Bulk Clone Operations
Register For BOFC Live Webinar – Bulk Clone OperationsRegister For BOFC Live Webinar – Bulk Clone Operations
Register For BOFC Live Webinar – Bulk Clone OperationsAtocloud
 
Osvrt Na Adobe Max 2009
Osvrt Na Adobe Max 2009Osvrt Na Adobe Max 2009
Osvrt Na Adobe Max 2009Ivan Ilijasic
 
Software Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingSoftware Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingUri Lavi
 
Getting Started with Flex and PHP
Getting Started with Flex and PHPGetting Started with Flex and PHP
Getting Started with Flex and PHPRyan Stewart
 
Introducción a la agilidad
Introducción a la agilidadIntroducción a la agilidad
Introducción a la agilidadAgile Spain
 
Enterprise Flex Using Cairngorm
Enterprise Flex Using CairngormEnterprise Flex Using Cairngorm
Enterprise Flex Using CairngormJaibeer Malik
 
Contextual Tour of Plone - (a top open source web content management system)
Contextual   Tour of Plone - (a top open source web content management system)Contextual   Tour of Plone - (a top open source web content management system)
Contextual Tour of Plone - (a top open source web content management system)Ken Wasetis
 
Toward firefox 4
Toward firefox 4Toward firefox 4
Toward firefox 4dynamis
 
HTML5 & Web Platform
HTML5 & Web PlatformHTML5 & Web Platform
HTML5 & Web PlatformSwapSkills
 
Devoxx2010 - Mobile Development Choices: Native Apps vs Web Apps
Devoxx2010 - Mobile Development Choices: Native Apps vs Web AppsDevoxx2010 - Mobile Development Choices: Native Apps vs Web Apps
Devoxx2010 - Mobile Development Choices: Native Apps vs Web AppsMax Katz
 
Introduction To Adobe Flex And Semantic Resources
Introduction To Adobe Flex And Semantic ResourcesIntroduction To Adobe Flex And Semantic Resources
Introduction To Adobe Flex And Semantic Resourceskeith_sutton100
 
Mastering sp fx in larger projects yannick borghmans
Mastering sp fx in larger projects   yannick borghmansMastering sp fx in larger projects   yannick borghmans
Mastering sp fx in larger projects yannick borghmansYannick Borghmans
 

Similar a Максим Игнатов «Windows Worflow Foundation» (20)

About Flink streaming
About Flink streamingAbout Flink streaming
About Flink streaming
 
PloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, FuturePloneFormGen: Past, Present, Future
PloneFormGen: Past, Present, Future
 
Symfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web developmentSymfony framework-An overview and usability for web development
Symfony framework-An overview and usability for web development
 
Afik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex IntroAfik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex Intro
 
Register For BOFC Live Webinar – Bulk Clone Operations
Register For BOFC Live Webinar – Bulk Clone OperationsRegister For BOFC Live Webinar – Bulk Clone Operations
Register For BOFC Live Webinar – Bulk Clone Operations
 
Osvrt Na Adobe Max 2009
Osvrt Na Adobe Max 2009Osvrt Na Adobe Max 2009
Osvrt Na Adobe Max 2009
 
Flask
FlaskFlask
Flask
 
Software Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingSoftware Craftsmanship - 1 Meeting
Software Craftsmanship - 1 Meeting
 
Velocity Report 2009
Velocity Report 2009Velocity Report 2009
Velocity Report 2009
 
Getting Started with Flex and PHP
Getting Started with Flex and PHPGetting Started with Flex and PHP
Getting Started with Flex and PHP
 
Introducción a la agilidad
Introducción a la agilidadIntroducción a la agilidad
Introducción a la agilidad
 
POS 355 Entire Course NEW
POS 355 Entire Course NEWPOS 355 Entire Course NEW
POS 355 Entire Course NEW
 
Enterprise Flex Using Cairngorm
Enterprise Flex Using CairngormEnterprise Flex Using Cairngorm
Enterprise Flex Using Cairngorm
 
Contextual Tour of Plone - (a top open source web content management system)
Contextual   Tour of Plone - (a top open source web content management system)Contextual   Tour of Plone - (a top open source web content management system)
Contextual Tour of Plone - (a top open source web content management system)
 
Toward firefox 4
Toward firefox 4Toward firefox 4
Toward firefox 4
 
Performance with Selenium2
Performance with Selenium2Performance with Selenium2
Performance with Selenium2
 
HTML5 & Web Platform
HTML5 & Web PlatformHTML5 & Web Platform
HTML5 & Web Platform
 
Devoxx2010 - Mobile Development Choices: Native Apps vs Web Apps
Devoxx2010 - Mobile Development Choices: Native Apps vs Web AppsDevoxx2010 - Mobile Development Choices: Native Apps vs Web Apps
Devoxx2010 - Mobile Development Choices: Native Apps vs Web Apps
 
Introduction To Adobe Flex And Semantic Resources
Introduction To Adobe Flex And Semantic ResourcesIntroduction To Adobe Flex And Semantic Resources
Introduction To Adobe Flex And Semantic Resources
 
Mastering sp fx in larger projects yannick borghmans
Mastering sp fx in larger projects   yannick borghmansMastering sp fx in larger projects   yannick borghmans
Mastering sp fx in larger projects yannick borghmans
 

Más de e-Legion

MBLT16: Elena Rydkina, Pure
MBLT16: Elena Rydkina, PureMBLT16: Elena Rydkina, Pure
MBLT16: Elena Rydkina, Puree-Legion
 
MBLT16: Alexander Lukin, AppMetrica
MBLT16: Alexander Lukin, AppMetricaMBLT16: Alexander Lukin, AppMetrica
MBLT16: Alexander Lukin, AppMetricae-Legion
 
MBLT16: Vincent Wu, Alibaba Mobile
MBLT16: Vincent Wu, Alibaba MobileMBLT16: Vincent Wu, Alibaba Mobile
MBLT16: Vincent Wu, Alibaba Mobilee-Legion
 
MBLT16: Dmitriy Geranin, Afisha Restorany
MBLT16: Dmitriy Geranin, Afisha RestoranyMBLT16: Dmitriy Geranin, Afisha Restorany
MBLT16: Dmitriy Geranin, Afisha Restoranye-Legion
 
MBLT16: Marvin Liao, 500Startups
MBLT16: Marvin Liao, 500StartupsMBLT16: Marvin Liao, 500Startups
MBLT16: Marvin Liao, 500Startupse-Legion
 
MBLT16: Andrey Maslak, Aviasales
MBLT16: Andrey Maslak, AviasalesMBLT16: Andrey Maslak, Aviasales
MBLT16: Andrey Maslak, Aviasalese-Legion
 
MBLT16: Andrey Bakalenko, Sberbank Online
MBLT16: Andrey Bakalenko, Sberbank OnlineMBLT16: Andrey Bakalenko, Sberbank Online
MBLT16: Andrey Bakalenko, Sberbank Onlinee-Legion
 
Rx Java architecture
Rx Java architectureRx Java architecture
Rx Java architecturee-Legion
 
MBLTDev15: Hector Zarate, Spotify
MBLTDev15: Hector Zarate, SpotifyMBLTDev15: Hector Zarate, Spotify
MBLTDev15: Hector Zarate, Spotifye-Legion
 
MBLTDev15: Cesar Valiente, Wunderlist
MBLTDev15: Cesar Valiente, WunderlistMBLTDev15: Cesar Valiente, Wunderlist
MBLTDev15: Cesar Valiente, Wunderliste-Legion
 
MBLTDev15: Brigit Lyons, Soundcloud
MBLTDev15: Brigit Lyons, SoundcloudMBLTDev15: Brigit Lyons, Soundcloud
MBLTDev15: Brigit Lyons, Soundcloude-Legion
 
MBLTDev15: Egor Tolstoy, Rambler&Co
MBLTDev15: Egor Tolstoy, Rambler&CoMBLTDev15: Egor Tolstoy, Rambler&Co
MBLTDev15: Egor Tolstoy, Rambler&Coe-Legion
 
MBLTDev15: Alexander Orlov, Postforpost
MBLTDev15: Alexander Orlov, PostforpostMBLTDev15: Alexander Orlov, Postforpost
MBLTDev15: Alexander Orlov, Postforposte-Legion
 
MBLTDev15: Artemiy Sobolev, Parallels
MBLTDev15: Artemiy Sobolev, ParallelsMBLTDev15: Artemiy Sobolev, Parallels
MBLTDev15: Artemiy Sobolev, Parallelse-Legion
 
MBLTDev15: Alexander Dimchenko, DIT
MBLTDev15: Alexander Dimchenko, DITMBLTDev15: Alexander Dimchenko, DIT
MBLTDev15: Alexander Dimchenko, DITe-Legion
 
MBLTDev: Evgeny Lisovsky, Litres
MBLTDev: Evgeny Lisovsky, LitresMBLTDev: Evgeny Lisovsky, Litres
MBLTDev: Evgeny Lisovsky, Litrese-Legion
 
MBLTDev: Alexander Dimchenko, Bright Box
MBLTDev: Alexander Dimchenko, Bright Box MBLTDev: Alexander Dimchenko, Bright Box
MBLTDev: Alexander Dimchenko, Bright Box e-Legion
 
MBLTDev15: Konstantin Goldshtein, Microsoft
MBLTDev15: Konstantin Goldshtein, MicrosoftMBLTDev15: Konstantin Goldshtein, Microsoft
MBLTDev15: Konstantin Goldshtein, Microsofte-Legion
 
MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank
MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank
MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank e-Legion
 

Más de e-Legion (20)

MBLT16: Elena Rydkina, Pure
MBLT16: Elena Rydkina, PureMBLT16: Elena Rydkina, Pure
MBLT16: Elena Rydkina, Pure
 
MBLT16: Alexander Lukin, AppMetrica
MBLT16: Alexander Lukin, AppMetricaMBLT16: Alexander Lukin, AppMetrica
MBLT16: Alexander Lukin, AppMetrica
 
MBLT16: Vincent Wu, Alibaba Mobile
MBLT16: Vincent Wu, Alibaba MobileMBLT16: Vincent Wu, Alibaba Mobile
MBLT16: Vincent Wu, Alibaba Mobile
 
MBLT16: Dmitriy Geranin, Afisha Restorany
MBLT16: Dmitriy Geranin, Afisha RestoranyMBLT16: Dmitriy Geranin, Afisha Restorany
MBLT16: Dmitriy Geranin, Afisha Restorany
 
MBLT16: Marvin Liao, 500Startups
MBLT16: Marvin Liao, 500StartupsMBLT16: Marvin Liao, 500Startups
MBLT16: Marvin Liao, 500Startups
 
MBLT16: Andrey Maslak, Aviasales
MBLT16: Andrey Maslak, AviasalesMBLT16: Andrey Maslak, Aviasales
MBLT16: Andrey Maslak, Aviasales
 
MBLT16: Andrey Bakalenko, Sberbank Online
MBLT16: Andrey Bakalenko, Sberbank OnlineMBLT16: Andrey Bakalenko, Sberbank Online
MBLT16: Andrey Bakalenko, Sberbank Online
 
Rx Java architecture
Rx Java architectureRx Java architecture
Rx Java architecture
 
Rx java
Rx javaRx java
Rx java
 
MBLTDev15: Hector Zarate, Spotify
MBLTDev15: Hector Zarate, SpotifyMBLTDev15: Hector Zarate, Spotify
MBLTDev15: Hector Zarate, Spotify
 
MBLTDev15: Cesar Valiente, Wunderlist
MBLTDev15: Cesar Valiente, WunderlistMBLTDev15: Cesar Valiente, Wunderlist
MBLTDev15: Cesar Valiente, Wunderlist
 
MBLTDev15: Brigit Lyons, Soundcloud
MBLTDev15: Brigit Lyons, SoundcloudMBLTDev15: Brigit Lyons, Soundcloud
MBLTDev15: Brigit Lyons, Soundcloud
 
MBLTDev15: Egor Tolstoy, Rambler&Co
MBLTDev15: Egor Tolstoy, Rambler&CoMBLTDev15: Egor Tolstoy, Rambler&Co
MBLTDev15: Egor Tolstoy, Rambler&Co
 
MBLTDev15: Alexander Orlov, Postforpost
MBLTDev15: Alexander Orlov, PostforpostMBLTDev15: Alexander Orlov, Postforpost
MBLTDev15: Alexander Orlov, Postforpost
 
MBLTDev15: Artemiy Sobolev, Parallels
MBLTDev15: Artemiy Sobolev, ParallelsMBLTDev15: Artemiy Sobolev, Parallels
MBLTDev15: Artemiy Sobolev, Parallels
 
MBLTDev15: Alexander Dimchenko, DIT
MBLTDev15: Alexander Dimchenko, DITMBLTDev15: Alexander Dimchenko, DIT
MBLTDev15: Alexander Dimchenko, DIT
 
MBLTDev: Evgeny Lisovsky, Litres
MBLTDev: Evgeny Lisovsky, LitresMBLTDev: Evgeny Lisovsky, Litres
MBLTDev: Evgeny Lisovsky, Litres
 
MBLTDev: Alexander Dimchenko, Bright Box
MBLTDev: Alexander Dimchenko, Bright Box MBLTDev: Alexander Dimchenko, Bright Box
MBLTDev: Alexander Dimchenko, Bright Box
 
MBLTDev15: Konstantin Goldshtein, Microsoft
MBLTDev15: Konstantin Goldshtein, MicrosoftMBLTDev15: Konstantin Goldshtein, Microsoft
MBLTDev15: Konstantin Goldshtein, Microsoft
 
MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank
MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank
MBLTDev15: Anna Mikhina, Maxim Evdokimov, Tinkoff Bank
 

Último

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
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
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

Último (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
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
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

Максим Игнатов «Windows Worflow Foundation»

  • 1. Разработка приложений с использованием Workflow Foundation Максим Игнатов e-Legion Ltd. mail: maxim.ignatov@e-legion.com www.e-legion.com 1
  • 2. Human Resource Management System www.e-legion.com 2
  • 3. Цели Узкие места WF Варианты решений www.e-legion.com 3 http://www.flickr.com/photos/lofink/4501610335/
  • 4. Ретроспектива ADD Conf Хочется НЕ хочется Готовый продукт Well Done Новая технология How To www.e-legion.com 4 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 5. Коротко о возможностях WF Бизнес-процесс – как отдельная сущность Long running process Гибкий фрэймворк Интеграция с другими технологиями www.e-legion.com 5 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 6.
  • 7. Xaml or Assembly www.e-legion.com 7 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 8. Транзакционность процессов www.e-legion.com 8 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 9. Custom Activity www.e-legion.com 9 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 10. AppFabric www.e-legion.com 10 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 11. Примеры RSS Reader Factorial Calculator Approval Process Много, много, много других примеров www.e-legion.com 11 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 12. RSS Reader Xaml WF definition Передача в WF объектов 0 ветвлений бизнес-процесса http://www.techdays.ru/videos/2470.html www.e-legion.com 12 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 13. www.e-legion.com 13 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 14. RSS Reader www.e-legion.com 14 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 16. Factorial Calculator Xaml WF definition Передача в WF объектов 0 ветвлений бизнес-процесса http://www.techdays.ru/videos/2470.html www.e-legion.com 16 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 17. www.e-legion.com 17 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 18. Factorial Calculator www.e-legion.com 18 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 19. Approval process Code WF definition – 2 штука  Передача в WF объектов Разветвленный бизнес-процесс WCF взаимодействие www.e-legion.com 19 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 21. Approval process Typed Arguments WF Transferred objects Database objects Contract types Custom Activities www.e-legion.com 21 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 22.
  • 23. Подходы к проектированию WF Разделить процессы на подпроцессы Единый процесс на все www.e-legion.com 23 23 http://www.flickr.com/photos/lofink/4501610335/
  • 26. Процессы на подпроцессы Удачно соотносится с моделью данных Логически понятней Менее “тяжеловесный”WF Нужна логика маршрутизации к нужным WF www.e-legion.com 26 26 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 27. Единый процесс на все Маршрутизация к WF не требуется Модель “размазана”на весь WF Более “тяжеловесный”WF www.e-legion.com 27 27 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 28. Что если? Когда в WF изменилась логика Когда в WF изменились входные или выходные параметры Когда в WF + WCF поменялось OperationName Изменили базу данных Typed Arguments WF Transferred objects Database objects Contract types Custom Activities www.e-legion.com 28 28 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 29. О чем пойдет речь Версионность процессов Поддержка старых процессов Миграция www.e-legion.com 29 29 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 30. ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 30 30
  • 31. ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 31 31
  • 32. ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 32 32
  • 33. ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 33 33
  • 34. ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 34 34
  • 35. ASP Pages DAL Services Get Actions Do Action WF Services Migrate XAML Service Save To DB Load From DB Load WF Persist WF Resume Bookmark WF Loader www.e-legion.com 35 35
  • 37.
  • 38.
  • 39. Ограничения WF не должен содержать внутри нестандартных типов данных WF должен уметь перейти в любое из возможных состояний Сборки лучше не подписывать www.e-legion.com 39 39 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 40. Biztalk with HWS www.e-legion.com 40 40 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 41. Sharepoint www.e-legion.com 41 41 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/
  • 42. Спасибо за внимание Максим Игнатов e-Legion Ltd. maxim.ignatov@e-legion.com www.e-legion.com 42 42 http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/ http://www.flickr.com/photos/lofink/4501610335/