Borna66
04-01-2011, 12:15 AM
چكيده:
با تخصصي شدن هرچه بيشتر حرفهها، توضيح اين كه يك فرآيند مستلزم چه چيزهايي است، سختتر و سختتر ميشود. Windows Workflow Foundation شركت مايكروسافت (يا به اختصار WF) با فراهم ساختن امكان نمايش فرآيند كار (Business Process) به صورت گرافيكي براي برنامهنويسان، پيچيدگي مذكور را هدف قرار داده است.
ترسيم يك فرآيند كار به صورت نمودار براي ارايه و نمايش به مسئولين ذيربط در سازمانها بسيار راحتتر است. اين ابزار به شيوه مناسبتري به برنامهنويسان و مشتريان ميگويد كه "چه پيش خواهد آمد." WF يكي از چهار محصولي است كه مايكروسافت (http://www.sayan.ir/ViewArticle.aspx?ArticleID=44) در .Net 3.0 ارايه كرده است. ريشه WF در موتور هماهنگكنندهاي كه مايكروسافت در BizTalk Server (http://www.microsoft.com/biztalk/) كار گذاشته است، قرار دارد، كه صرفا با "پيام" سر و كار داشت، در صورتي كه WF بسيار جامعتر ميباشد؛ تا حدي كه نسخه بعدي BizTalk Server موتور خود را كنار گذاشت و براي گردش كار از WF استفاده خواهد نمود.
به گفته مسئولين مايكروسافت، WF براي استفاده در برنامههاي كاربردي بزرگي از قبيل مديريت ارتباطات مشتريان و برنامهريزي منابع ابرسازماني بهترين ابزار ميباشد، در صورتي كه استفاده از اين ابزار براي فرآيندهاي ساده، كار را دشوارتر خواهد نمود.
WF از دو نوع گردش كار پشتيباني ميكند. نوع اول يك گردش كار ترتيبي است كه از يك آغاز، عمليات مياني و يك پايان برخوردار است. در اين مدل هر فعاليتي يك وضعيت از يك كلاس در WF ميباشد. از سوي ديگر، گردش كار مبتني بر وضعيت، نمايشگر يك پروژه در جريان است كه درون آن، سيستم دايما از يك وضعيت به وضعيت ديگري ميرود. در اين صورت فعاليتها به وضعيتها ضميمه نميشوند، بلكه يك وضعيت بايد آغاز، انجام و تمام شود.
WF هم مانند همتاي خود (Windows Presentation Foundation (http://searchvb.techtarget.com/sDefinition/0,290660,sid8_gci1189827,00.html)) به برنامهنويسان امكان ميدهد با ابزار گرافيكي كار كنند و از امكان "بكش و رها كن" بهره ببرند. به علاوه، WF هم يك فايل markup ايجاد ميكند كه اندكي با فايل markup همتايش متفاوت است.
اين ابزار كتابخانه پايه فعاليتها را نيز در اختيار برنامهنويسان قرار ميدهد. اين امر گردش فعاليتها درون يك گردش كار را پوشش ميدهد؛ يعني راهي را كه گردش كار با ميزبانش ارتباط برقرار ميكند و همچنين روشي كه تراكنشها و خطاها را مديريت ميكند. مايكروسافت قصد دارد كه فعاليتهاي ديگري، از قبيل زبان اجراي فرآيند كاري را نيز در صفحه وب مربوط به انجمن برنامهنويسان .Net 3.0 (http://www.netfx3.com/default.aspx) به جريان بياندازد. در ضمن، برنامهنويسان ميتوانند فعاليتهاي سفارشي خود را نيز ايجاد كنند، مشابه آنچه كه به صورت ايجاد فرمها و كنترلهاي سفارشي در .Net 2.0 انجام ميدادند.
بدين ترتيب، هر پردازش از يك برنامه كاربردي .Net (خواهد Windows Form، خواه ASP.Net يا يك برنامه كنسول) ميتواند ميزبان يك گردش كار باشد. البته، بايد توجه داشت كه به ازاي هر app domain (http://www.sayan.ir/ViewArticle.aspx?ArticleID=1) فقط يك بار ميتواند بخش اجرايي WF را بارگذاري نمود. در مورد يك برنامه تحت وب هم، بايد اولين صفحهاي باشد كه پس از بارگذاري سرويسدهنده بايد اجرا شود.
در مورد مدلهاي ارتباطي، برنامهنويسان چند انتخاب دارند: 1- پارامترهاي ورودي / خروجي؛ 2- تبادل خارجي دادهها؛ 3- يك درخواست وبسرويس و يا 4- يك فعاليت سفارشي. با اين حال، يكپارچگي WF و Windows Communication Foundation (http://www.sayan.ir/Local%20Settings/Temp/Rar$DI00.196/msdn2.microsoft.com/en-us/netframework/aa663324.aspx) هنوز فراهم نشده است. اطلاعات بيشتر و نمونه كد را ميتوانيد اينجا (http://www.softinsight.com/bnoyes/PermaLink.aspx?guid=72371a75-34ef-475a-bb9d-99f1025437ff) پيدا كنيد.
با تخصصي شدن هرچه بيشتر حرفهها، توضيح اين كه يك فرآيند مستلزم چه چيزهايي است، سختتر و سختتر ميشود. Windows Workflow Foundation شركت مايكروسافت (يا به اختصار WF) با فراهم ساختن امكان نمايش فرآيند كار (Business Process) به صورت گرافيكي براي برنامهنويسان، پيچيدگي مذكور را هدف قرار داده است.
ترسيم يك فرآيند كار به صورت نمودار براي ارايه و نمايش به مسئولين ذيربط در سازمانها بسيار راحتتر است. اين ابزار به شيوه مناسبتري به برنامهنويسان و مشتريان ميگويد كه "چه پيش خواهد آمد." WF يكي از چهار محصولي است كه مايكروسافت (http://www.sayan.ir/ViewArticle.aspx?ArticleID=44) در .Net 3.0 ارايه كرده است. ريشه WF در موتور هماهنگكنندهاي كه مايكروسافت در BizTalk Server (http://www.microsoft.com/biztalk/) كار گذاشته است، قرار دارد، كه صرفا با "پيام" سر و كار داشت، در صورتي كه WF بسيار جامعتر ميباشد؛ تا حدي كه نسخه بعدي BizTalk Server موتور خود را كنار گذاشت و براي گردش كار از WF استفاده خواهد نمود.
به گفته مسئولين مايكروسافت، WF براي استفاده در برنامههاي كاربردي بزرگي از قبيل مديريت ارتباطات مشتريان و برنامهريزي منابع ابرسازماني بهترين ابزار ميباشد، در صورتي كه استفاده از اين ابزار براي فرآيندهاي ساده، كار را دشوارتر خواهد نمود.
WF از دو نوع گردش كار پشتيباني ميكند. نوع اول يك گردش كار ترتيبي است كه از يك آغاز، عمليات مياني و يك پايان برخوردار است. در اين مدل هر فعاليتي يك وضعيت از يك كلاس در WF ميباشد. از سوي ديگر، گردش كار مبتني بر وضعيت، نمايشگر يك پروژه در جريان است كه درون آن، سيستم دايما از يك وضعيت به وضعيت ديگري ميرود. در اين صورت فعاليتها به وضعيتها ضميمه نميشوند، بلكه يك وضعيت بايد آغاز، انجام و تمام شود.
WF هم مانند همتاي خود (Windows Presentation Foundation (http://searchvb.techtarget.com/sDefinition/0,290660,sid8_gci1189827,00.html)) به برنامهنويسان امكان ميدهد با ابزار گرافيكي كار كنند و از امكان "بكش و رها كن" بهره ببرند. به علاوه، WF هم يك فايل markup ايجاد ميكند كه اندكي با فايل markup همتايش متفاوت است.
اين ابزار كتابخانه پايه فعاليتها را نيز در اختيار برنامهنويسان قرار ميدهد. اين امر گردش فعاليتها درون يك گردش كار را پوشش ميدهد؛ يعني راهي را كه گردش كار با ميزبانش ارتباط برقرار ميكند و همچنين روشي كه تراكنشها و خطاها را مديريت ميكند. مايكروسافت قصد دارد كه فعاليتهاي ديگري، از قبيل زبان اجراي فرآيند كاري را نيز در صفحه وب مربوط به انجمن برنامهنويسان .Net 3.0 (http://www.netfx3.com/default.aspx) به جريان بياندازد. در ضمن، برنامهنويسان ميتوانند فعاليتهاي سفارشي خود را نيز ايجاد كنند، مشابه آنچه كه به صورت ايجاد فرمها و كنترلهاي سفارشي در .Net 2.0 انجام ميدادند.
بدين ترتيب، هر پردازش از يك برنامه كاربردي .Net (خواهد Windows Form، خواه ASP.Net يا يك برنامه كنسول) ميتواند ميزبان يك گردش كار باشد. البته، بايد توجه داشت كه به ازاي هر app domain (http://www.sayan.ir/ViewArticle.aspx?ArticleID=1) فقط يك بار ميتواند بخش اجرايي WF را بارگذاري نمود. در مورد يك برنامه تحت وب هم، بايد اولين صفحهاي باشد كه پس از بارگذاري سرويسدهنده بايد اجرا شود.
در مورد مدلهاي ارتباطي، برنامهنويسان چند انتخاب دارند: 1- پارامترهاي ورودي / خروجي؛ 2- تبادل خارجي دادهها؛ 3- يك درخواست وبسرويس و يا 4- يك فعاليت سفارشي. با اين حال، يكپارچگي WF و Windows Communication Foundation (http://www.sayan.ir/Local%20Settings/Temp/Rar$DI00.196/msdn2.microsoft.com/en-us/netframework/aa663324.aspx) هنوز فراهم نشده است. اطلاعات بيشتر و نمونه كد را ميتوانيد اينجا (http://www.softinsight.com/bnoyes/PermaLink.aspx?guid=72371a75-34ef-475a-bb9d-99f1025437ff) پيدا كنيد.