توان‌مندی‌های پنهان (؟) صنعت نرم‌افزار ایران

در کامنت‌های پستی که چند وقت پیش به صورت مهمان از من در وبلاگ دوست خوبم امیر مهرانی منتشر شد، گفتگوهای بسیار جالبی در مورد وضعیت صنعت آی‌تی در ایران در گرفت. من آن‌جا به چند نکته در مورد صنعت نرم‌افزار ایران اشاره کردم که بعد از دیدن این خبر عجیب به نظرم رسید شاید بد نباشد در قالب یک پست مستقل درباره آن‌ها بنویسم. خبر کوتاه و جالب است: قرار است استفاده از نرم‌افزارهای تولید خارج در دستگاه‌های دولتی ممنوع شود!

شاید بدیهی‌ترین و خنده‌دارترین اشکال این تصمیم طبق معمول “کارشناسی!” این باشد که در صورت اجرای آن، احتمالا از این به بعد باید استفاده از هر گونه نرم‌افزار تولید بلاد کفر از ویندوز و آفیس مایکروسافت گرفته تا نرم‌افزارهای تخصصی مثل اتوکد ممنوع شود! (خوب یک دفعه قانون کپی‌رایت را هم قبول کنید دیگه! شما که نمی‌خواهید از نرم‌افزارهای “آن‌ها” استفاده کنید!)

اما بیایید فرض را بر این بگذاریم که منظور استاد، نرم‌افزارهای سازمانی و شرکتی بوده است. خوب بازار نرم‌افزار ما در این حوزه چگونه است و چه ظرفیت‌ها و توان‌مندی‌هایی داریم؟ ابتدا به  چند نمونه زیر توجه کنید:

الف ـ ۴-۵ سالی است که طرح‌های جامع فناوری اطلاعات و معماری سازمانی در ایران مد شده. اما به‌عنوان کسی که ۴ سال است دارم در این حوزه فعالیت می‌کنم به جرأت می‌گویم هیچ وقت خروجی‌های این پروژه‌ها به درد کارفرما نخورده است! چرا؟ به دو دلیل: ۱- مشاورین ما از وضعیت واقعی و توان موجود در بازار فناوری اطلاعات خبر نداشته‌اند و راه‌حل‌های‌شان فاصله زیاد با تکنولوژی موجود در دسترس داشته است.۲- فعالان بخش نرم‌افزار ایران به تولید نرم‌افزار براساس نیازهای مشتری اهمیتی نمی‌دهند!

ب ـ ۴ سال است که قرار است نرم‌افزار جامع سازمان مالیاتی از شرکت بول فرانسه خریداری شود. اتحادیه تولیدکنندگان نرم‌افزار با دستور مستقیم رئیس‌جمهور جلوی این کار را گرفتند. اما اگر از شرایط عجیب و غریب مناقصه‌ای که توسط سازمان مالیاتی برگزار شد بگذریم، حقیقتا اگر این حضرات می‌توانستند این کار را انجام دهند، تا الان ازشان خبری می‌شد. لازم نبود که نرم‌افزاری در حد بول تولید کنند؛ اگر می‌توانستند لااقل باید یک پروتوتایپ از نرم‌افزار جامع مالیاتی کشور درست می‌کردند! (فکر می‌کنم هفته پیش بود که خبر نهایی شدن قرارداد سازمان مالیاتی با شرکت بول منتشر شد.)

ج ـ همین اواخر شرکت ما در طرح پیاده‌سازی سیستم‌های BPMS در سازمانی ناظر بود. پیمان‌کار محترم که یک شرکت معروف نرم‌افزاری است بدون شناخت از فرایندهای موجود سازمان، می‌خواست سیستم‌اش را بدون هیچ تغییری در سازمان پیاده کند و انتظار هم داشتند سازمان قبول کند که کارشان درست است! حالا این‌که BPMS اصلا ابزاری است که به جای سیستم‌های غیرمنعطفی مثل ERP آمده و قرار است سازمان با استفاده از آن بتواند هر فرایند دانش ـ محور را به صورت الکترونیکی مدل‌سازی و اجرا کند هم لابد مهم نیست!

د ـ شرکتی را دیدم که مدعی ارایه سیستم مدیریت دانش به سازمان بود؛ اما اصلا نمی‌دانست که سیستم‌های نرم‌افزاری مدیریت دانش هدف‌شان و کاربردشان چیست و سیستم مدیریت دانش‌شان هر چیزی بود الا مدیریت دانش! (در واقع یک سیستم ساده گردش مستندات را داشتند به کارفرماهای بدبخت‌شان قالب می‌کردند!)

از این مثال‌ها تا بخواهید در بازار نرم‌افزار ایران پیدا می شود. در عمل ما ده‌ها شرکت نرم‌افزاری داریم که تمام تمرکزشان بر تولید نرم‌افزارهای اداری، دفتری و حسابداری است. ده‌ها شرکت دیگر داریم که دارند مثلا پورتال و نرم‌افزارهای سازمانی تولید می‌کنند و می‌فروشند. اما از همین بین هم اگر بررسی دقیقی کنید، می‌بینید چیزی بین ۶۰ تا ۷۰ درصدشان نرم‌افزارهای اوپن سورسی هستند که صرفا فارسی‌سازی شده‌اند (و متأسفانه اغلب‌شان هم این‌قدر صداقت ندارند که به این موضوع اعتراف کنند و مدعی تولید یک نرم‌افزار از ابتدا هستند.)

فاجعه این‌جا است که شرکت‌های ایرانی تمرکزشان را بر روی تولید پکیج‌های نرم‌افزاری گذاشته‌اند و می‌خواهند هر قفلی را با یک کلید ـ نرم‌افزارشان ـ باز کنند. سفارشی‌سازی با متناسب با نیازهای سازمان و این‌ها را باور نکنید! تا جایی که من دیده‌ام بسیاری از این شرکت‌ها علی‌رغم داشتن عناوین پرطمطراق تحلیل‌گر سیستم و … از تهیه یک مستند ساده براساس اصول مهندسی نرم‌افزار عاجزند (کافی است به سازمان‌های متعددی دولتی و حتی غیردولتی که با هزینه‌های کلان، نرم‌افزاری را به صورت سفارشی یا پکیج خریداری کرده‌اند مراجعه کنید تا این موضوع را در عمل مشاهده کنید. در بسیاری از موارد شرکت فروشنده که ممکن است شرکتی معروف یا ناشناخته باشد حتی یک راهنمای کاربری ساده هم برای سیستم‌اش در اختیار کارفرمای بنده خدا نگذاشته است؛ چه برسد به مستندات تحلیل و طراحی سیستم که به‌ویژه در مورد نرم‌افزارهای سفارشی باید حتما به کارفرما تحویل داده شوند.) این‌جا هم درست همان آفت تضمین کیفیت و ایزو خودنمایی می‌کند: وجود تحلیل‌گر و استفاده از متدولوژی‌ها برای این است که اگر کسی مدعی شد، یک کتاب‌چه قطور مستندات تحلیل و طراحی را به او نشان بدهیم! یعنی صرف وجود مستندات کفایت می‌کند و کاربرد عملی آن‌ها مهم نیست!

حالا بگذریم از این‌که هیچ شرکتی در ایران به تولید نرم‌افزاری غیر از نرم‌افزارهای حسابداری و دفتری و انواع و اقسام پکیج‌های به درد نخور اصلا فکر نمی‌کند!

برگردیم به سراغ خبر. متن خبر به شکلی است که به نظر می‌رسد ممنوعیت شامل هر گونه نرم‌افزاری که کدنویسی‌اش در خارج از کشور انجام شده می‌شود. بنابراین نرم‌افزارهای اوپن‌سورس فارسی شده هم از این به بعد ممنوع هستند! اگر از این‌که من نمی‌دانم MIS تولید شده در خارج از کشور یعنی چه و این‌که اساسا وزارت صنایع و معادن چرا در حوزه نرم‌افزار دخالت می‌کند هم بگذریم؛ چند نکته به نظر من باید در این ماجرا مورد توجه قرار گیرد:

۱٫ بدنه‌ کارشناسی صنعت نرم‌افزار آدم‌های ضعیفی نیستند و ما کدنویس‌های بسیار خوبی داریم. اما اشکال کار در این است که اولا: فرایند مهندسی نرم‌افزار در کشور ما خیلی جدی گرفته نمی‌شود و ثانیا: همه فعالان این صنعت، در حال کپی پیست کردن ایده‌های نخ‌نما و تکراری دیگران هستند (آخر ما چند نرم‌افزار حسابداری و اتوماسیون می‌خواهیم؟ چرا کسی روی نوشتن یک واژه‌پرداز فارسی خوب مثل زرنگار سرمایه‌گذاری نمی‌کند؟‍)

۲٫ اصولا ارتباط خوبی میان مشاوران مدیریت آی‌تی و شرکت‌های کدنویس ما وجود ندارد. در واقع این‌جا باز می‌خواهم بر نکته‌ای که در مورد کیس اینفوسیس برای من جالب بود تأکید کنم: اینفوسیس نیاز کارفرما را از شناخت و تحلیل مسئله تا ارایه Solution نرم‌افزاری پوشش می‌دهد. ما چنین شرکتی در ایران نداریم. این مشکل را در مثال طرح‌های جامع فناوری اطلاعات که بالا زدم می‌بینیم: RFPهای ما مشاوران آی‌تی، برای یک شرکت کدنویس اجرایی نیست و از سوی دیگر، خود شرکت‌های کدنویس هم تمایلی به نوشتن نرم‌افزار براساس سفارش مشتری ندارند. حالا ممکن است گفته شود که شرکت‌های بزرگ غربی ـ مثل SAP و اوراکل ـ هم همین‌جوری هستند؛ اما انصافا آیا راه‌حل‌های ارایه شده توسط شرکت‌های نرم‌افزاری ایرانی بلوغ محصولات این شرکت‌های معظم را دارند؟ فرق است بین راه‌حلی که در هزاران شرکت سراسر دنیا طراحی و آزمایش شده و بهبود یافته و برای ده‌ها شکل مختلف کسب و کار، فرایندها و گردش اطلاعاتی استاندارد را شناسایی و در راه حل خود منظور کرده است با راه‌حل‌هایی که اغلب براساس مطالعه چند کتاب مثلا حسابداری یا منابع انسانی یا حداکثر مطالعه چند شرکت محدود یا بهره‌گیری از نظرات چند مشاور تهیه شده‌اند. اصلا حتی اگر انعطاف‌پذیری اولی را هم در نظر نگیریم، شرکت‌های داخلی اصرار دارند که راه‌حل‌های خود را به زور به خورد کارفرمای بدبخت بدهند و انتظار دارند کارفرما خودش را با محصول آن‌ها وفق بدهد و نه برعکس!  (این مشکل سر دراز دارد: چند وقت پیش اعلام شد که قرار است برای BPMS توسط دولت! استاندارد تهیه شود. حالا براساس کدام تجربه و دانش می‌خواهند این کار را انجام بدهند، خودشان می‌دانند!)

۳٫ و چند علامت سؤال بزرگ در این زمینه: چرا تفکر “اختراع دوباره چرخ” این‌قدر در ذهن مسئولین دولتی ما وجود دارد؟ چرا باید بودجه و زمان محدودمان را صرف ساختن دوباره نرم‌افزارهایی کنیم که بقیه ساخته‌اند؟ (راستی سیستم عامل ملی به کجا رسید؟) بحث مزیت نسبی کشور چطور؟ ما در تولید چه نرم‌افزارهایی توان‌مند هستیم و سراغ کدام حوزه‌ها نباید برویم؟ آیا کسانی که این تصمیم را گرفته‌اند، قابلیت پنهان و عجیب و غریبی در صنعت نرم‌افزار ایران کشف کرده‌اند که ما خبر نداریم؟ و چندین سؤال‌ بی‌جواب دیگر!

از آن‌جایی که زور ما به دولت نمی‌رسد و بنده هم اساس کدنویس نیستم، فکر می‌کنم فعلا به‌تر است به  همان ایده اینفوسیس بچسبم و برای کاهش شکاف بین کار مشاوران آی‌تی و  مهندسان آی‌تی تلاش کنم. اگر توهم نزده باشم، این یکی از دستم بر می‌آید!

دوست داشتم!
۰

در کامنت‌های پستی که چند وقت پیش به صورت مهمان از من در وبلاگ دوست خوبم امیر مهرانی منتشر شد، گفتگوهای بسیار جالبی در مورد وضعیت صنعت آی‌تی در ایران در گرفت. من آن‌جا به چند نکته در مورد صنعت نرم‌افزار ایران اشاره کردم که بعد از دیدن این خبر عجیب به نظرم رسید شاید بد نباشد در قالب یک