گفتوگو با رئيس هيئتمديره و معاون فني و پژوهشي شركت تتا
انتخاب رویكرد جهت دستیابی به سیستم یكپارچه اطلاعاتی سازمانگفتوگو با سيدجعفر سيدي، رئيس هيئتمديره و معاون فني و پژوهشي شركت تتا
دنياي کامپيوتر و ارتباطات
اجازه دهید بحث را با این سؤال مقدماتی آغاز كنیم كه به نظر شما رویكردهای دستیابی به سیستم یكپارچه اطلاعاتی سازمان را چگونه میتوان طبقهبندی كرد؟
ضمن تشكر از اینكه بحث را از نقطه خوبی آغاز فرمودید باید عرض كنم كه در یك نگاه كلی میتوان سیستمهای یكپارچه اطلاعاتی سازمان را به دو گروه «نرمافزارهای كاربردی یكپارچه» Integrated Applications و «یكپارچهسازی نرمافزارها» Integration Of Applications طبقهبندی كرد. گروه اول كه راهكارهای برنامهریزی منابع سازمان (ERP) و سیستمهای یكپارچه و جامع (Total Systems)، كه برخی آنها را با نام سیستمهای MIS نیز میشناسند، جزو این گروه محسوب میشوند و تمامی یا بخش عمدهای از فرآیندهای سازمان را دربرمیگیرند.
به گونهای كه فرآیندهای اصلی عملیاتی سازمان و ماجولهای مالی و منابع انسانی، برنامهریزی، موجودی و تداركات جزء لاینفك آنها به حساب میآید. همچنین بنا به ماهیت كسبوكار سازمان، ماجولهای فروش، پروژه، تولید، مهندسی، تعمیر و نگهداری و كیفیت نیز، بر حسب مورد از ضروریات این سیستمها محسوب میشود. در این سیستمها فرآیندهای تحت پوشش در حوزههای ذكر شده در یك سیستم و با استفاده از یك پایگاه داده در كل سازمان به صورت یكپارچه و یكنواخت در تعامل هستند. در رویكرد دوم، نرمافزارهای كاربردی مختلف یا مجموعههای نرمافزاری با پوشش عملكردی مكمل یكدیگر با هم یكپارچهسازی شده و نرمافزار یكپارچه سازمان را به دست میدهند. معماری، ابزارها و فناوریهای به كار گرفته شده جهت یكپارچهسازی نرمافزارها، بسیار حائز اهمیت است كه متعاقباً به آنها خواهم پرداخت.
در بسیاری از موارد وقتی سازمانی از راهكار گروه اول یعنی «نرمافزارهای كاربردی یكپارچه» بهره میجوید نیز، برای یكپارچهسازی با بعضی نرمافزارهای اختصاصی و قدیمی سازمان نیاز است كه از تكنیكهای یكپارچهسازی نرمافزارها استفاده كند. همچنین در مورد سازمانهایی كه رویكرد آنها از گروه دوم است یعنی در یك نگاه كلان نمیتوان گفت كه رویكرد آنها استفاده از یك مجموعه یكپارچه و جامع نرمافزاری جهت مكانیزه كردن غالب فرآیندها و وظایف سازمان است نیز، سعی بر آن است كه تا آنجا كه ممكن است مجموعههای نرمافزاری یكپارچهای در حوزههای مختلف تهیه و تشكیل گردد و یكپارچهسازی نرمافزارها بین این مجموعهها به كار بسته شود.
به نظر شما چگونه میتوان در مورد انتخاب رویكرد مناسب، تصمیمگیری كرد؛ ضمن اینكه خواهشمندم به این سؤال نیز پاسخ دهید كه كدام رویكرد ارزشمندتر ارزیابی میشود؟
حتی اگر در انتخاب رویكرد دوم، كلیه نكات یكپارچهسازی نرمافزارها را رعایت كرده باشیم، قطعاً رویكرد اول بسیار ارزشمندتر ارزیابی میشود، اما میتوان گفت كه به هر سازمانی توصیه نمیشود كه از رویكرد اول استفاده كند. از جمله مهمترین عوامل مؤثر در انتخاب رویكرد، میتوان به وضعیت جاری فناوری اطلاعات سازمان، ماهیت كسبوكار سازمان و میزان تأثیر فناوری اطلاعات در عملكرد سازمان، برنامههای آتی و انتظارات سازمان از فناوری اطلاعات، میزان بودجه و زمان و از همه مهمتر ظرفیت و پتانسیل و محدودیتهای منابع از جمله مشاورین و پیمانكاران و مجریان اشاره كرد.
به نظر بنده اغلب سازمانهایی كه رویكرد دوم را برمیگزینند بر اساس اینكه با توجه به وسعت كسبوكار و ذهنیتهایی كه از تجارب منفی دیگر سازمانها یا سازمان خویش به دست آوردهاند، چندان امیدوار به موفقیت در پیادهسازی یك راهكار یكپارچه و جامع نیستند و لذا بر اساس طرح جامع فناوری اطلاعات و مطالعه فرآیندهای سازمان، حوزه وظایف سیستمهای اطلاعاتی را به اجزایی كه كمترین وابستگی و تعامل بین آنها مطرح باشد تقسیم و با تعریف پروژههای متعدد و بر اساس زمانبندی، اجزای سیستمهای اطلاعاتی را تأمین نموده و سعی دارند با استفاده از تكنیكهای یكپارچهسازی نرمافزارها به سیستم جامع و یكپارچه مورد هدف دستیابی پیدا كنند. برخی از سازمانها نیز ممکن است به دلیل صرف زمان و هزینه زیاد جهت تهیه نرمافزارهای موجود، فرصت و بودجه و انگیزه كافی جهت جایگزینی این سیستمها با یك سیستم یكپارچه و جامع جدید همچون به كارگیری یك سیستم برنامهریزی منابع سازمان را نداشته باشند. به طور كلی میتوان گفت كه اگرچه با به كارگیری راهكار برنامهریزی منابع سازمان، سازمانها به صورت همزمان در مسیرهای زیر گام برمیدارند، اما نگرانیهای سازمانها در جایگزینی سیستمها و ریسكهای مربوطه را نیز نباید نادیده انگاشت:
• استانداردسازی فرآیندها، بهینهسازی فرآیندها و استفاده از بهترین رویههای انجام كارها و حذف زواید.
• مستندسازی نظام سازمانی بهینه.
• انتقال بخش زیادی از دانش كاركنان و تصمیمگیریها به سیستم اطلاعاتی.
• بهرهجویی از سیستم اطلاعاتی كه:
• به صورت یكپارچه و یكنواخت و با فناوری همگون كلیه فرآیندهای سازمان را دربرگرفته و خودكارسازی میكند.
• به بهترین نحو استراتژیهای سازمان را در خود فرموله میكند.
• انجام فعالیتها را بر اساس طرحریزیهای صورت پذیرفته هدایت میكند.
• رشد كسبوكار و رشد فناوری را پشتیبانی میكند.
• دارای یك پیادهساز و پشتیبان و با شفافیت مسئولیتها میباشد.
• ابزارهای پیشرفته سفارشیسازی و اختصاصیسازی و بهبود و تغییر و پشتیبانی از سیستمها را در خود دارد.
آیا میتوان این گونه از صحبتهای شما برداشت كرد كه هیچ گونه امتیاز منفی برای رویكرد اول قائل نیستید و همه نگرانیها بر سر این مسئله است كه آیا میتوان به این راهكار دستیابی پیدا كرد یا نه و چگونه میتوان به این امر مهم نایل شد؟ و از طرفی هم این برداشت میشود كه رویكرد دوم سهلالوصولتر، كمریسكتر و كمهزینهتر خواهد بود. آیا این برداشتها درست است؟
اگر چه بسیار خوب نتیجهگیری كردید و اعتراف میكنم كه صحبتهای بنده در پاسخ به سؤال قبلی به این نتیجهگیریها ختم میشود، باید عرض كنم در عین تأکید و تأیید آن صحبتها پاسخ هر دو سؤال شما منفی است و هر دو برداشت اشتباه است. در پاسخ به سؤال اول باید عرض كنم كه در مورد سیستمهای یكپارچه اطلاعاتی سازمان، بر خلاف كلیه عوامل كاهنده هزینههای نگهداری و پشتیبانی سیستمها و بر خلاف تمامی قابلیتهای حمایت كننده رشد و توسعه سیستمها و قابلیتهای پیشرفته سفارشیسازی و پشتیبانی از بهبود و ارتقا یا هر گونه تغییر رویه و خواستهها از سیستم اطلاعاتی، معمولاً انجام تغییرات بسیار پرهزینهتر از زمانی خواهد بود كه سازمانها كارهایشان را به صورت كاغذی صورت میدادند یا از نرمافزارهای ایزوله استفاده میكردند.
لذا قدرت انعطاف سازمان در انجام تغییرات به ناچار كاسته میشود، حال آنكه در رویكرد یكپارچهسازی نرمافزارها با استفاده از مدل SOA و به كارگیری از ابزارهای BPMS تا حدی تغییرات درخواستی با استفاده از ابزار سطح بالای مدلسازی موجود در این سیستمها قابل تغییر خواهد بود و با فرض اینكه از ابزار مناسب و ساده BPMS و معماری مناسب SOA برای این یكپارچهسازی استفاده گردد، و با فرض اینكه تغییرات درخواستی در سطح ارتباط بین سیستمها و نه در سطح قابلیتهای سیستمها باشد، میتوان گفت كه این فناوری به سطح انعطاف نزدیك و با تنها اندكی هزینه بیشتر نسبت به حالتی كه از سیستمهای ایزوله استفاده میشد میتوان نایل شد.
با توجه به این نكته شركت تتا راهكار برنامهریزی منابع سازمانی تدارك دیده است كه نه تنها از ابزار پیشرفته مدیریت جریان كار و BPMS در مدلسازی، شبیهسازی، اجرا، پایش و بهینهسازی فرآیندها استفاده میكند، بلكه سایر اجزای سیستم اطلاعاتی اعم از موجودیتهای اطلاعاتی و روابط آنها تا سطح فیلدهای اطلاعاتی، فرمساز و گزارشساز و روابط كلیه آنها، تعامل بین فرآیندها و بسیاری دیگر از اجزای سیستم اطلاعاتی سازمان را در سطح ابزار مدلسازی در اختیار میگذارد و با پشتیبانی از معماری مدلگرا، اولاً هزینه انجام تغییرات در راهكار برنامهریزی منابع سازمان و یا ماجولهای به كارگرفته شده را كاهش داده و ثانیاً دامنه پشتیبانی از تغییرات درخواستی را به پایینترین سطح جزئیات و قابلیتهای سیستمها با استفاده از این ابزار توسعه داده است.
در مورد سؤال دوم نیز باید به مراحلی كه سازمانها برای یكپارچهسازی سیستمها طی میكنند تا نكات مختلف یكپارچهسازی را در سطوح مختلف (داده-فرآیند-ابزار-كاربری و امنیت- بین سازمانی) رعایت كنند، بپردازیم تا سختیها، ریسكها و هزینههای رویكرد دوم نیز بازگو شود. همچنین نكاتی كه در رویكرد یكپارچهسازی نرمافزارها حل نشده باقی میمانند را نیز میبایست مورد بررسی قرار دهیم. یكپارچهسازی در سطح فرآیند از نگاه سیستمی و نرمافزاری به معنای این است كه فرآیندهای مختلف به صورت خودكار با همدیگر در تعامل باشند و اطلاعات، بین سیستمهای مختلف به صورت خودكار مبادله شود. برای یكپارچهسازی نرمافزارها در سطح فرآیندها از راه حلهای یكپارچهسازی زیر استفاده میشود:
• نقطه به نقطه Point to point integration
• به اشتراك گذاری پایگاه داده Database to database integration
• یكپارچهسازی نرمافزارهای كاربردی توسط میان افزارهاEnterprise Application integration
• معماری سرویسگرا با استفاده از سرویسهای وبService Oriented Architectures & Web services تشریح جزئیات هر یك از این روشها و نقاط ضعف و قوت آنها از حوصله بحث جاری خارج است ولیكن در این حد میتوانم عرض كنم كه راهكار مبتنی بر معماری سرویسگرا مناسبترین و بهترین راهكار از بین راهحلهای فوق است و اكیداً توصیه میشود كه سازمانها از به كارگیری راه حلهای دیگر پرهیز كنند.
برای بیان جریان كار و منطق اجرا در وبسرویسهای لایه كسبوكار یا لایه هماهنگسازی و مشاركت بهتر است از ابزارهای مدیریت فرآیند (ابزارهای BPMS) كه جریانهای كاری را با زبان نمادسازی BPMN مدل میكنند و منطق اجرای آن را با زبان BPEL مدل میكنند و موتورهایی دارند كه این مدلها را به اجرا درمیآورند و یا ابزارها و پلتفرمهای مشابهی چون Microsoft WWF استفاده گردد. مهم آن است كه منطق داخل هر وبسرویس و تبدیل اطلاعات با استفاده از ابزار مدلسازی سطح بالا مدل شود.
در یكپارچهسازی در سطح فرآیند تهیه استانداردهای فنی از نظر پروتكل، كیفیت، امنیت و امثالهم از یك طرف و تهیه استانداردهای محتوایی اطلاعات بین سیستمها از طرف دیگر باید مورد توجه قرار گیرد. یكپارچگی در سطح داده در مرحله اول به تعریف حوزه مسئولیتی سیستمها برمیگردد و در آن نقطه توجه به این است كه تا حد امكان تنها یك كپی از هر اطلاع وجود داشته باشد و در صورت عدم امكان مكانیزم مناسبی جهت هماهنگسازی و تعیین مسئولیت مالك اطلاعات تعیین شود. كدینگ یكسان و یكنواخت مورد استفاده قرار گیرد و توجه به اطلاعات پایه، اطلاعات برپایی سیستمها و اطلاعات طرحریزی در فرآیندها توجه خاص شود.
اما آنچه در اینجا به عنوان یكپارچهسازی سیستمها در سطح داده مطرح است برآوردن نیاز سیستمها و افراد ذینفعی است كه به اطلاعات كلیه سیستمها با یك هدف خاص احتیاج دارند. نمونههایی از این سیستمها عبارتند از سیستمهای گزارشات مدیریتی، سیستمهای تجزیه و تحلیل آمار و اطلاعات مدیریت، هوشمندی كسبوكار، حسابداری و بودجهریزی بر مبنای فعالیت، برنامهریزی و مدیریت راهبردی، پورتال سازمان ...
راهحلهای یكپارچهسازی در سطح داده عبارت است از: ابزارهای گزارشگیری یكپارچه Integrated Report & Query Systems
• انباره دادهها با استفاده از سیستمهای استخراج، تبدیل و بارگزاری اطلاعات ETL & Data warehouse این راه حلها میتوانند به موازات و همزمان مورد استفاده قرار گیرند. سازمانها معمولاً سعی بر آن دارند كه جهت تسهیل در یكپارچهسازی در سطح داده در مورد سیستم مدیریت پایگاه اطلاعات (DBMS) مورد استفاده در نرمافزارهای مختلف یكنواختی ایجاد كنند و تا حد ممكن از یك نوع استفاده كنند. اگر چه ابزارهای موجود جهت هر یك از راه حلهای فوق این مسئله را حل كرده و معمولاً تنوع پایگاه داده را پشتیبانی میكنند و حتی ابزارهای موجود در هر یك از سیستمهای مدیریت پایگاه داده همچون SQL Server 2008 Report Services قابلیت پشتیبانی از دیگر انواع دیتابیس را نیز ارائه میدهند.
جهت یكپارچهسازی در سطح داده مدیریت موجودیتهای اطلاعاتی و فیلدها و روابط اطلاعات نقش اساسی ایفا میكند و باید مورد توجه قرار گیرد. یكپارچهسازی ابزاری به معنای مبادله اطلاعات بین سیستمهای مختلف و تبدیل اطلاعات بین سیستمهاست كه به عنوان مثال تغذیه اطلاعات از طریق اكسل، خروجیهای ورد، اكسل پاور پوینت و پی دی اف نمونههای ساده و یكپارچهسازی با Outlook و Exchange، پشتیبانی از Microsoft Sharepoint business integration model و یا Office business connectivity services model نمونههای پیشرفتهتر این یكپارچهسازیهاست.
باید توجه كرد كه در این نوع یكپارچهسازی، این مسئله به ازای هر یك از سیستمها به صورت مستقل حل میشود و لذا هزینه انجام این گونه یكپارچهسازی برای سیستم یكپارچه سازمان بسیار كمتر خواهد بود و مبادرت به انجام این نوع یكپارچهسازی را منطقی میكند. یكپارچهسازی در سطح كاربری و امنیت، شامل راه حلهای Single Sign on و Single Window میشود كه اگر فرصت شد به تشریح جزئیات این سیستمها نیز خواهم پرداخت. یكپارچهسازی بین سازمانی نیز به تعامل خودكار بین سازمانها و ارائه خدمات سازمانی(Enterprise Services) و خودكارسازی این ارتباطات میپردازد.
در اینجا بنده فقط به ذكر كلید واژههایی در این زمینه اكتفا میكنم و اجازه میخواهم به بحث اصلی برگردم. eb-XML, eb-SOA, B2BeCommerce,STP, Collaborative Engineering, Planning, Supply chain,… معمولاً راهكارهای برنامهریزی منابع سازمان برای این نوع از یكپارچهسازی نیز راه حلها و ابزارهایی در اختیار میگذارند. ضعفها و مشكلات رویكرد یكپارچهسازی نرمافزارها را میتوان بدین صورت برشمرد:
• اغلب، بخش فناوری اطلاعات سازمانهای كارفرما در یكپارچهسازی نرمافزارها درگیر شده و هزینههای زیادی از جنس مالی، زمان و ریسك در این زمینه به سازمان تحمیل میشود.
• ایجاد هماهنگی و همزبانی و مشاركت و همكاری بین ارائه كنندگان نرمافزارهای مختلف معمولاً سخت و پرهزینه برآورد میشود.
• در بعضی موارد، سیستمها قابلیت فنی پشتیبانی از یكپارچهسازیها را ندارند.
• بعضی از ارائه دهندگان ممكن است خدمات مربوطه را ارائه نكنند و مستنداتی هم در مورد جزئیات سیستم در اختیار نباشد، در این صورت انجام یكپارچهسازی سیستمها با مشكل مواجه میشود.
• سطح كیفیت و امنیت بعضی سیستمهای بعضاً كوچك ممكن است در عملكرد كل سیستم، اثر مستقیم بگذارد.
• عدم یكنواختی بزرگترین مسئله حل نشده باقی مانده است. فناوری غیر یكنواخت، ارائه دهندگان خدمات پشتیبانی و سیستمهای پشتیبانی غیر یكنواخت و همگون، رابط كاربری غیر همگون، ابزارهای غیر همگون، مستندات راهنما و روشهای اجرایی ناهمگون هر یك موانع و محدودیتهای بسیاری را ایجاد میكنند.
• هزینههای نگهداری و پشتیبانی رویكرد یكپارچهسازی نرمافزارها و همچنین هزینههای عدم توانایی به جهت موانع و محدودیتها بسیار بالاتر از هزینههای سیستمهای یكپارچه سازمان میباشند.