رضا کرمی
مشاور معماری سازمانی و مدیریت فناوری اطلاعات
داستان «نماتن»
متن مصاحبه با نشریه «تکفا» در مورد «تاریخچه نظام مهندسی و استانداردهای تولید و توسعه نرمافزار» (نماتن) که در شماره شهریور و مهر ۹۰ این نشریه به چاپ رسیده است.
«نماتن» یا همان «نظام مهندسی و استانداردهای تولید و توسعه نرم¬افزار» از مهمترین و تاثیرگذارترین اقداماتی بوده است که تا کنون برای استانداردسازی در حوزه نرمافزار در کشور ما صورت گرفته است. اقدامی که البته با عدم حمایت سازمانهای متولی استمرار نیافت و اجرای آن در فاز ۳ متوقف ماند.
برای اطلاع از پیشینه و چندوچون این پروژه، با آقای رضا کرمی، عضو کمیسیون نرمافزار سازمان نظام صنفی رایانهای استان تهران که خود از مجریان و دستاندرکاران نماتن بوده است مصاحبهای انجام دادهایم که در ادامه میخوانید.
تکفا: برای شروع، بفرمائید چه زمینههایی منجر به شکلگیری «نماتن» شد و این پروژه چه سوابقی داشت؟
کرمی: ببینید، سابقه اقداماتی که برای نظامبخشی به پروژههای نرمافزار در کشور شده به سالهای خیلی قبل برمیگردد. تقریباً از اولین سالهای شکلگیری شورایعالی انفورماتیک یعنی از اوایل دهه شصت این بحث وجود داشته است که در مورد پروژههای انفورماتیکی بهخصوص پروژههای نرمافزاری باید استانداردها و ضوابط مدونی وجود داشته باشد. میدانید که دبیرخانه شورایعالی انفورماتیک از همان ابتدا در سازمان برنامه و بودجه وقت شکل گرفت و در سازمان برنامه از سالهای قبل از انقلاب هم یک سنت قوی تدوین معیارها و ضوابط فنی وجود داشته که تا امروز هم ادامه پیدا کرده است. به این معنی که از قدیم در سازمان برنامه واحدهایی وجود داشته که برای کارهای عمرانی در رشتههای مختلف ضوابط و استانداردهای فنی تدوین و منتشر میکرده است، مثل قراردادهای تیپ، شرح خدمات همسان و مواردی از این دست. از ابتدا هم در دبیرخانه شورا این بحث مطرح بوده که باید برای پروژههای نرمافزاری هم مشابه چنین ضوابطی داشته باشیم. اما اولین اقدامی که سابقه مکتوب آن وجود دارد پروژهای است که در سال ۱۳۶۸ در شورا انجام شده. ظاهراً تیمی مرکب از آقایان رضوی، خوشآموز، محوری و فلاحی مجری آن بودهاند. هدف این پروژه این بوده که اقدامات لازم برای بهبود وضعیت صنعت نرمافزار را تعیین کنند، یعنی بهاصطلاح امروز، نقشه راهی برای توسعه این صنعت دربیاورند. در انتهای این گزارش، ۲۱ پروژه تعریف شده بود که بعضی از آنها موضوعشان به نظامدهی قراردادهای نرمافزاری مربوط میشد. مثل «تهیه قرارداد نمونه برای فعالیتهای مختلف نرمافزاری» یا «تهیه و تدوین راهنمای برآورد هزینه و زمان پروژههای نرمافزاری» و از این قبیل.
– این پروژهها اجرا شدند؟
– خیر، اما تلاشهایی که برای نظامبخشی به پروژههای نرمافزاری شروع شده بود ادامه پیدا کرد و در بررسی سوابق، هر چند سال به کاری برمیخوریم که در همین زمینه و عمدتاً هم توسط دبیرخانه شورا انجام شده است. مثلاً در سال ۷۰ بعضی از کارشناسان سازمان برنامه و بودجه قرارداد تیپی برای پروژههای نرمافزاری تهیه کردند که چون با الگوبرداری محض از قراردادهای عمرانی تهیه شده بود چندان مورد استقبال قرار نگرفت. در سال ۷۱ هم دبیرخانه شورا پروژهای را تعریف کرد با عنوان «تدوین مقررات پیمانهای نرمافزاری» یا بهاختصار «مپنا». تا جایی که میدانم یکی از افراد موثر در اجرای این پروژه آقای مهندس پرویز ناصری بوده است. این پروژه حدود ۳ سال طول کشید و بعضی از نتایج آن هم توسط شورا منتشر شد اما بهدلیل عدم حمایت کافی دستگاههای متولی و اطلاعرسانی ناکافی، این نتایج مورد استفاده عملی قرار نگرفت. از نتایج این پروژه از جمله «آئیننامه ارجاع کارهای نرمافزاری» در دست است که آخرین اصلاح آن در تاریخ تیرماه ۱۳۸۲ صورت گرفته است. باز از اقداماتی که در همین راستا انجام شد، گزارشی بود که سرکار خانم مهندس شنتیایی در سال ۷۹ به سفارش دبیرخانه شورا تهیه کرد و عنوان آن «تدوین و مدیریت پروژههای انفورماتیکی» بود.
همزمان با این تلاشها در سال ۷۸ انجمن شرکتهای انفورماتیک پروژهای را با عنوان «نظام مهندسی نرمافزار ایران (نمنا)» تعریف کرد که دامنه اولیه آن خیلی وسیع بود، اما در فاز اول تدوین ۵ آئیننامه پایه مثل طبقهبندی کارهای نرمافزاری، آئیننامه ارجاع کار و پیماننامه تیپ و از این قبیل در دستور کار قرار گرفته بود.
– چه تعداد از این آئیننامهها تهیه شدند؟
– در آن زمان بنده عضو کمیته نرمافزار انجمن بودم و آقای مهندس ذوالفقاریان هم رئیس کمیته نرمافزار بودند. بهواسطه ایشان و همینطور آقای مهندس ناصری که عضو کمیته نرمافزار و اگر اشتباه نکنم مدیر پروژه بودند در جریان پیشرفت کار قرار میگرفتیم. تا جایی که بنده میدانم از مجموعه اسنادی که پیشبینی شده بود تنها پیشنویس «آئیننامه طبقهبندی پیمانهای نرمافزاری» تهیه و منتشر شد، و پروژه بهدلیل عدم تامین منابع مالی لازم ادامه نیافت. اما بهدلیل ترکیب تخصصی تیم مجری این پروژه و اینکه از تجربیات قبلی سعی شده بود استفاده شود، بهنسبت اقدامات قبلی جامعیت و دقت بیشتری داشت و بعداً هم تعاریفی که در این پروژه شده بود، پایه کار در تعریف استانداردهای نماتن قرار گرفت.
– ایده نماتن از چه زمانی شکل گرفت؟
– در واقع شکلگیری ایده نماتن به شروع طرح تکفا برمیگردد. همانطور که میدانید در طرح تکفا با استراتژی تحریک تقاضا که طراحان طرح داشتند و با تزریق اعتباراتی که به سازمانهای دولتی انجام شد، ناگهان سازمانها با حجم زیادی از پروژهها و قراردادهای انفورماتیکی و بهخصوص نرمافزار و مشاوره مواجه شدند. توجه کنید که بعضی از کارفرماهای دولتی مثل وزارت نیرو و توانیر یا وزارت کشاورزی از خیلی قبل تجربه اجرای این پروژهها را داشتند و حتی استانداردهای داخلی هم برای اینکار تدوین کرده بودند، اما برای خیلی از سازمانهای دولتی این نوع پروژهها آن هم در این حجم تازگی داشت و کسانی که در این سازمانها با فرآیند تعریف و ارجاع و نظارت کارهای نرمافزاری سروکار داشتند، اعم از بخشهای IT، حقوقی و ذیحسابها و … با خلاء ضوابط و استانداردهای قراردادی مواجه بودند. این بود که تقاضا برای تدوین یک مجموعه ضوابط پایه برای قراردادهای نرمافزاری بهیکباره افزایش یافت.
کمیته نرمافزار انجمن شرکتهای انفورماتیک در اواسط سال ۸۱ پیشنهادی تهیه کرد برای اجرای پروژهای با عنوان «نظام مهندسی و استانداردهای تولید و توسعه نرمافزار» یا همان نماتن. فکر میکنم آقای مهندس ذوالفقاریان در تعریف این پروژه نقش اساسی داشت. مطابق تعریفی که شده بود این نظام میبایست در سه فاز تهیه شود:
فاز اول، استانداردهای تعریف و ارجاع کار مثل RFP و برگزاری مناقصه و ارزیابی پیشنهادها و … فاز دوم، استاندارهای تولید و توسعه نرمافزار، یعنی مراحل بعد از قرارداد و فاز سوم هم انتخاب و تشریح یک متدولوژی منتخب. در آن زمان دید غالب این بود که برای اجرای پروژههای نرمافزاری کشور حداقل در بخش دولتی باید یک متدولوژی واحد و استاندارد داشته باشیم. چیزی شبیه الگوی SSADM در انگلستان.
بههرحال در سال ۸۲ دبیرخانه شورا قراردادی با انجمن بست برای اجرای فاز اول این پروژه. در آن زمان آقای مهندس داداشزاده رئیس کمیته نرمافزار انجمن بودند و تهیه استانداردها هم تقریباً بهطور کامل توسط آقای مهندس اعلایی انجام شد. البته نتایج بهصورت تدریجی در کمیته هم مطرح میشد و احیاناً نظرات کمیته هم لحاظ میشد. نهایتاً هم کمیته یک کارگروه سه نفره مرکب از آقایان ذوالفقاریان، یوسفیان و کتانچی را مامور کرد که دقیقتر و نزدیکتر بر اجرای پروژه نظارت کنند. بههرحال نتایج کار که شامل ۶ سند میشد و مراحل تعریف و ارجاع پروژههای نرمافزاری را از انتخاب مشاور تا بستن قرارداد پوشش میداد، شهریور ماه سال ۸۲ ارائه شد و در آذرماه سال ۸۳ از طرف دبیرخانه شورا همراه با بخشنامه رئیس سازمان مدیریت و برنامهریزی وقت منتشر شد. این همان بخشنامهای است که به «نماتن-۱» معروف شد.
– پروژه «نماتن-۲» چگونه شروع شد؟
– همانطور که گفتم، در طرح اولیهای که انجمن آماده کرده بود، سه فاز برای نماتن پیشبینی شده بود. بعد از انتشار نتایج فاز اول و استقبال نسبی که از آن شد، هم شورا و هم کمیته نرمافزار انجمن دنبال این بودند که فاز دوم را اجرا کنند. البته با توجه به تجربیاتی که در ضمن اجرای فاز ۱ به دست آمده بود، انجمن قصد داشت که اجرا و نظارت کار را بهصورت دقیقتری پیگیری کند. البته بعد از اجرای فاز ۱ توجه شرکتها هم به این پروژه جلب شده بود و یادم هست که جلساتی در کمیته نرمافزار انجمن با بعضی از شرکتهای مطرح نرمافزاری برگزار شد که بعضاً نسبت به نتایج فاز ۱ انتقاداتی هم داشتند. بههر حال اواخر سال ۸۲ قرارداد اجرای فاز ۲ نماتن با شرکت مهندسی نرمافزاری گلستان بسته شد. در انجمن هم کارگروه ویژهای برای نظارت و راهبری پروژه تشکیل شد مرکب از سرکار خانم داننده (همکاران سیستم)، آقایان یوسفیان (حساب و اندیشه)، ذوالفقاریان (نظام اندیشه)، کتانچی (پارس سیستم)، شیردل (داتا) و رشیدصفری (ثنارای). آقای مهندس صابری هم که در آن زمان دبیر انجمن بودند در جلسات شرکت میکردند. خاطرم هست که جلسات مفصلی برای تعریف محدوده پروژه و بعد مرور و بررسی تک تک خروجیها برگزار شد. بعضی از خروجیها تا ۴ بار اصلاحیه خورد. در کل هم کار از ابتدا تا تائید نهایی از فروردین تا آذر ماه ۸۳ طول کشید.
– نماتن ۲ شامل چه اجزایی بود؟
– تعریف کلی که از این فاز شده بود این بود که شامل استانداردهای اجرای پروژههای نرمافزاری باشد، یعنی مراحل بعد از انعقاد قرارداد تا تحویلگیری پروژه. فهرستی از استانداردهایی که باید تهیه شود هم در طرح اولیه بود که ما در ابتدای پروژه در جلساتی که با کارگروه نظارتی داشتیم، این لیست را اصلاح کردیم. یکی دو تا از استانداردها هم در حین اجرای پروژه کم و زیاد شد. آنچه که در نهایت بهعنوان استانداردهای نماتن-۲ در سال ۸۴ از طرف شورا بخشنامه و منتشر شد، شامل ۹ قالب استاندارد بود. مواردی مثل طرح مدیریت پروژه، طرح کیفیت، طرح پیکربندی، طرح نظارت و از این قبیل. هر استاندارد هم شامل قالب و هم شامل راهنماییهای لازم برای تهیه مطالب بود. از جمله یک نمونه هم در همه استانداردها وجود داشت.
– این استانداردها را بر مبنای چه مراجع و منابعی تهیه کردید؟
– ببینید، در ابتدای کار ما توافق کردیم که در تدوین این استانداردها چند اصل را رعایت کنیم. اول اینکه این استانداردها با استانداردهای جهانی که در حوزه نرمافزار وجود دارند مثل استانداردهای IEEE یا ISO/IEC مطابقت و سازگاری داشته باشند. دوم اینکه وابستگی به یک متدولوژی خاص نداشته باشند. سوم اینکه برای همه پروژهها اعم از کوچک و بزرگ و متوسط کاربرد داشته باشند و چهارم اینکه با شرایط داخلی کشور هم تطابق داشته باشند. الزام به رعایت همزمان این چهار اصل در عمل خیلی کار را مشکل میکرد. مثلاً اگر فقط میخواستیم با استانداردهای جهانی سازگار باشد، کار ترجمه چند استاندارد چندان مشکل نبود، یا اگر میتوانستیم یکی از متدولوژی مطرح مثل RUP یا CDM را مبنا قرار بدهیم، میدانید که مستندات خوب و جامعی در مورد این متدولوژیها وجود دارد که میشد همانها را ترجمه کنیم. اما بهدلیل اینکه میخواستیم آن اصول را رعایت کنیم، نمیتوانستیم صرفاً به الگوبرداری و ترجمه از منابع خارجی اکتفا کنیم. در مورد بعضی از استانداردها هم اصولاً هیچ نمونه خارجی نداشتیم، مثل طرح نظارت. بنابراین برای تدوین هر استاندارد اول همه منابع و مراجع در دسترس را مقایسه میکردیم، بعد فهرست مطالب پیشنهادی خودمان را به کمیته نظارت ارائه میکردیم و بعد از اینکه این فهرست مطالب با چندبار رفتوآمد نهایی میشد، متن نهایی استاندارد را تهیه میکردیم. انتهای همه استانداردها هم جدولی گذاشتیم که تطابق یا بهاصطلاح mapping آن استاندارد را به استانداردها و نمونههای مرتبط نشان میداد. بهطور کلی از استانداردهای IEEE، ISO/IEC و الگوهای RUP و CDM استفاده کردیم.
– خوب به این ترتیب میرسیم به فاز ۳ نماتن که گویا در سال ۸۵ اجرا شد. درست است؟
– داستان فاز ۳ تا حدی متفاوت است. بعد از اینکه خروجیهای فاز ۲ تحویل داده شد، این ایده در کمیته نرمافزار انجمن شکل گرفت که بهجای آنکه هر از گاهی بهصورت مقطعی نیازی مطرح شود و ما برویم دنبال اینکه برای آن نیاز خاص بخشی از استانداردهای نرمافزاری را تهیه کنیم، یکبار برای همیشه طرح جامعی برای کار دربیاوریم که از این پس نقشه راهنمای فازهای بعد باشد. اسمش را هم گذاشتیم «نظام مهندسی نرمافزار». منتها برای اینکه پیوستگیاش با فازهای قبل حفظ شود، همان عنوان «نماتن» را برایش نگه داشتیم. این شد که اواسط سال ۸۴ پیشنهاد اجرایی فاز ۳ نماتن را تهیه کردیم و برای دبیرخانه شورا فرستادیم.
البته در اصل شرح خدمات اولیه که تهیه شده بود، شامل چهار مرحله بود: اول تهیه طرح جامع نظام مهندسی نرمافزار، دوم طراحی و پیادهسازی یک نرمافزار مدیریت تغییرات برای اسناد نماتن، یعنی یک پایگاه وب که استفاده کنندگان بتوانند نظرات و سئوالات خودشان را مطرح کنند و تغییرات این اسناد هم به اطلاع آنها برسد، سوم بازنگری و اصلاح نتایج فازهای ۱ و ۲ و چهارم اطلاعرسانی، یعنی برگزاری سمینار و کارگاه و … برای اینکه جامعه هدف بیشتر با این طرح آشنا شوند. همان موقع دبیرخانه شورا موظف شده بود برای دو ماده از قانون برگزاری مناقصات که تازه ابلاغ شده بود، آئیننامه اجرایی بنویسد. فکر کنم مواد ۱۲ و ۲۷ قانون که قرار بود آئیننامه اجرایی این مواد در حوزه پروژههای انفورماتیکی را شورا تهیه کند. بههرحال این تقاضا هم از طرف دکتر سپهری به انجمن ارائه شد.
مجموعاً با رفتوبرگشتی که انجام شد، در قرارداد فاز ۳ نماتن فقط همان تدوین طرح جامع نظام مهندسی باقیماند. قرارداد این فاز را ما در مرداد ماه ۸۴ با دبیرخانه شورا بستیم. کل پروژه هم ۶ ماه پیشبینی شده بود. گزارش پایانی پروژه را هم نیمه اسفندماه ۸۴ برای شورا فرستادیم.
– انجمن چه نقشی در این فاز داشت؟ بحث نظارت در مورد این فاز هم دنبال شد؟
– اتفاقی که همزمان با شروع فاز ۳ افتاد این بود که در این فاصله سازمان نظام صنفی رایانهای تشکیل شد. یعنی بعد از تصویب اساسنامه، اولین انتخابات سازمان تهران اواسط سال ۸۴ برگزار شد و کل نیمه دوم سال هم صرف انتقال ساختار انجمن به سازمان شد. یعنی در دورهای که ما مشغول اجرای پروژه بودیم، سازمان عملاً دوران تاسیس و شکلگیری را میگذراند. کمیته نرمافزار انجمن هم تبدیل شد به کمیسیون نرمافزار سازمان نظام صنفی و بعضی اعضای جدید هم به آن اضافه شده بودند. ریاست کمیسیون نرمافزار هم بهعهده آقای مهندس خوانساری بود. بههر حال، در این دوره کمیسیون فرصت پیدا نکرد که به پروژه بپردازد. تازه بعد از شروع به کار کمیسیون بود که فکر کنم در فروردین ماه سال ۸۵ یعنی یکماه بعد از ارائه گزارش نهایی پروژه، کمیسیون کارگروهی برای نظارت بر پروژه تشکیل داد.
– اعضای این کارگروه همان اعضای قبلی بودند؟
– نه کاملاً. بعضی از اعضا در ترکیب کارگروه حفظ شده بودند، مثل سرکار خانم داننده و آقای مهندس یوسفیان. بعضی هم جدید اضافه شده بودند مثل آقای مهندس فولادی از همکاران سیستم یا آقای مهندس زنگنه که از اعضای کمیسیون نرمافزار بودند. بههرحال بازهم مسئولیت کارگروه بهعهده آقای مهندس یوسفیان بود. کارگروه خیلی مفصل گزارش پایانی پروژه را مرور کرد. فکر میکنم حدود ۱۸ جلسه برگزار شد و ما هم گزارش را ۸ بار اصلاح کردیم تا نهایتاً در شهریور ماه ۸۵ گزارش مورد تائید کارگروه قرار گرفت.
– در مورد روش اجرای این فاز هم توضیح میفرمائید؟
– هدف فاز ۳ طراحی یک نظام جامع مهندسی نرمافزار برای کشور بود. ما برای اجرای پروژه کار مطالعاتی مفصل و جامعی انجام دادیم. به این معنی که اول همه کارهایی را که در ۲۰-۳۰ سال اخیر در زمینه صنعت نرمافزار در کشور انجام شده بود را جمع آوری و خلاصه کردیم. یعنی همه کارهایی که در شورا و انجمن و جاهای دیگر مثل وزارت صنایع و … انجام شده بود. یک کتابخانه مفصل از سوابق مطالعاتی در این زمینه درست شد که خود این سوابق چیز ارزشمندی شد. دوم اینکه نظامهای مشابه را در ایران و جهان شناسایی و مطالعه کردیم. در داخل ما همه اسناد نظام مهندسی ساختمان، نظام پزشکی، نظام کشاورزی و چند نمونه دیگر را بررسی کردیم.
– در مورد نمونههای خارجی چطور؟
– در مورد سازمانهای خارجی ما نظامی که صددرصد منطبق بر نیازهای ما و قابل الگوبرداری باشد پیدا نکردیم. اما فهرستی درست کردیم از همه سازمانها و انجمنهایی که حداقل در یک مورد یا یک مؤلفه با نظام مورد نظر ما مشابهت و اشتراک داشتند. این فهرست شامل حدود ۱۲ سازمان بینالمللی میشد. بعد با یک فرمت واحد اطلاعات این سازمانها را استخراج و خلاصه کردیم.
– چقدر توانستید از اطلاعات این سازمانها استفاده کنید؟
– ببینید، برای اینکه نظامی وجود نداشت که ما دقیقاً از آن الگوبرداری کنیم، چه نظامهای داخلی و چه سازمانهای خارجی، ما مجبور بودیم برگردیم و ببینیم ذینفعان یا به اصطلاح stakeholder های چنین نظامی چه انتظارات و نیازهایی از آن دارند. بنابراین با یک تعریف اولیه از نظام مهندسی نرمافزار شروع کردیم و فهرستی درست کردیم از انواع ذینفعان این نظام. در کل ۶ دسته از ذینفعان را شناسایی کردیم مثل تولیدکنندگان، مصرفکنندگان، نیروی کار و …. بعد تعیین کردیم هر ذینفع در هر مرحله از فرآیند تولید و مبادله و مصرف محصولات نرمافزاری چه نیازهایی دارد. چیزی حدود ۸۰ نیاز در این مرحله شناسایی شد. بعد عناصر و اجزایی برای نظام طراحی کردیم که همه این نیازها را برآورده کند. به این ترتیب به یک معماری برای نظام مهندسی نرمافزار رسیدیم که شامل ۹ مؤلفه اصلی و ۲۶ مؤلفه فرعی بود.
در نهایت با توجه به وضع موجود و وضع مطلوب هر مؤلفه، تعدادی پروژه تعریف کردیم که باید در ۷ فاز اجرا میشدند، البته با احتساب ۳ فازی که از نماتن اجرا شده است.
– میتوانید این اجزا را تشریح کنید؟
– البته جزئیات نتایج مفصل است و چون در دسترس عموم هم قرار گرفته، نیازی نیست اینجا همه جزئیات را تکرار کنم. اما بهطور خلاصه نظام مهندسی نرمافزار باید شامل این اجزا باشد:
اول مؤلفهای برای استانداردگذاری و تدوین مقررات که ما اسم آن را گذاشته بودیم «تدوین معیارها». البته خود این مؤلفه اجزای فرعی دارد. بهعنوان مثال همه آنچه در فازهای اول و دوم انجام شده زیر این مؤلفه قرار میگیرد.
دوم مؤلفهای برای شناسایی و تشخیص صلاحیت و رتبهبندی. میدانید که الان هم شورا دارد تشخیصصلاحیت و رتبهبندی شرکتها را انجام میدهد. اما پیشنهاد ما این بود که این فرآیند برای همه بازیگران صنعت اعم از تامینکنندگان یا همان شرکتها، کارفرماها، محصولات و نیروی کار هم انجام شود.
سومین مؤلفه بحث ارجاع کار است یا همان مناقصات نرمافزاری. در این حوزه هم سازوکارهایی وجود دارد که خیلی ناقص است و باید تکمیل شود.
مؤلفه چهارم که مکمل مؤلفه ارجاع کار است، بحث کنترل ظرفیت است که آن هم اخیراً مورد توجه قرار گرفته. البته در مورد اینکه آیا اساساً نیازی به کنترل ظرفیت هست یا نه آرا و عقاید متفاوت و متضادی وجود دارد. خود من شخصاً از کسانی هستم که اعتقادی به کنترل ظرفیت بهصورت کاملاً متمرکز ندارم و فکر میکنم معایب آن از منافع آن بیشتر است. ولی بههرحال این مؤلفه هم در معماری نظام مهندسی نرمافزار پیشبینی شده است.
مؤلفه پنجم ارزیابی است که به مرحله اجرا و پس از اجرای پروژهها برمیگردد. همینطور مؤلفه ششم یعنی داوری که به بحث اختلافات در حین اجرای پروژهها برمیگردد.
مؤلفه هفتم، اطلاعرسانی و مدیریت دانش نظام است که به همه حوزههای بالا مربوط میشود. یک مؤلفه هشتم هم وجود دارد که بحث اخلاق حرفهای در مهندسی نرمافزار است.
نهایتاً یک مؤلفه نهم هم پیشبینی شده است که همان مدیریت نظام مهندسی نرمافزار است، یا بهعبارتی که معروفتر است، بحث متولیگری نظام.
– در مورد این مؤلفهها در طرح جامع چه پیشنهادهایی ارائه شده است؟
– محدوده کار ما این بود که این مؤلفهها و ارتباطات اینها را با همدیگر شناسایی کنیم، یعنی به اصطلاح معماری نظام مهندسی نرمافزار را. بعد هم با توجه به وضعیتی که در حال حاضر در این حوزهها وجود دارد و وضعیت مطلوبی که باید داشته باشند، پروژهها یا اقدامات لازم را پیشنهاد دهیم. به اعتقاد من آن چیزی که در طرح جامع نظام مهندسی نرمافزار یا همان نماتن-۳ آمده نقشه راهی است که هر کسی بخواهد وضعیت صنعت نرمافزار کشور را سروسامانی بدهد، باید آن را دنبال کند.
– یعنی شما میفرمائید همه مشکلات صنعت نرمافزار کشور با اجرای این طرح حل میشود؟
– خیر، منظورم این نبود. ببینید صنعت نرمافزار سه بعد دارد: تولید، مصرف و مبادله. در طرح جامع نظام مهندسی نرمافزار ما وجه مبادله را هدفگذاری کردیم، یعنی آنجایی که محصولات نرمافزاری بین تولیدکننده و مصرفکننده مبادله میشود. یعنی قراردادها یا خریدهای نرمافزاری. بنابراین در مورد دو وجه یا دو بعد دیگر هیچ راهحلی ارائه نشده است. خیلی از مشکلاتی که در مورد صنعت نرمافزار مطرح میشود مثل خیلی از خواستههای صنفی، مشکلاتی است که مثلاً در بعد تولید وجود دارد، یعنی مشکلات داخلی شرکتهای نرمافزاری است. اما دیدگاه ما این بود که با ساماندهی مبادله، خیلی از مشکلات دیگر در دو بعد دیگر صنعت هم حل میشود یا حداقل راه برای حل آنها باز میشود. نکته در اینجاست که آنچه در نماتن-۳ ارائه شده جامعترین و دقیقترین راهحلی است که تا امروز برای ساماندهی بازار صنعت نرمافزار ارائه شده است.
– اما نماتن-۳ برخلاف دو فاز قبلی هیچوقت ابلاغ نشد؟
– ماهیت خروجی فاز ۳ با دو فاز ۱ و ۲ فرق میکرد. خروجی فازهای ۱ و ۲ استانداردها یا دستورالعملهایی بود که باید توسط کارفرماها یا تولیدکنندگان نرمافزار اجرا میشد، بنابراین لازم بود که رسماً ابلاغ شود. اما خروجی فاز ۳ طرح جامع نظام مهندسی نرمافزار کشور است، یعنی مخاطب اصلی آن دستگاههای متولی و کسانی است که باید این طرح را اجرایی کنند. نیازی به ابلاغ این طرح نبود.
– حداقل نیاز به اطلاعرسانی نداشت؟
– متن گزارش نهایی پروژه از همان سال ۸۵ هم روی سایت شورا و هم روی سایت سازمان نظام صنفی منتشر شد و از همان موقع در دسترس همه بوده. البته قبول دارم که در اطلاعرسانی آن کوتاهی شده است و جامعه به اندازه دو فاز قبلی از نتایج آن اطلاع ندارند.
– چرا نتایج فاز ۳ به این سرنوشت دچار شد؟ اشکال از کجا بود؟
– درست همزمان با ارائه و تائید طرح دبیر شورا تغییر کرد، یعنی آقای دکتر محمودی به جای آقای دکتر سپهری دبیر شورا شدند. ایشان ایدههای زیادی برای تغییر و تحول در بازار نرمافزار داشت و در ابتدا جلسات زیادی هم با سازمان برگزار شد. ما هم از طرف کمیسیون نرمافزار چندین بار نتایج نماتن-۳ را برای ایشان دمو کردیم و فکر کنم قانع شده بودند که برای اجرای فازهای بعدی اقدام عملی کنند، اما متاسفانه درست زمانی که قرار بود کارهای اجرایی شروع شود، قضیه انحلال شورای عالی انفورماتیک پیش آمد و کارها مدتی تعطیل شد. بد از مدتی بلاتکلیفی آقای دکتر محمودی از شورا تشریف بردند و بعد از آن هم سرپرستان بعدی دبیرخانه شورا ترجیح دادهاند در چارچوب وظایف کارهای عادی و روتین فعالیت کنند. البته ما در کمیسیون نرمافزار سازمان از هر فرصتی سعی کردهایم موضوع را دوباره زنده کنیم، اما خوب تا بهحال که میسر نشده است.
– می¬فرمائید نماتن-۳ مخاطب عمومی نداشت، اما در مورد فازهای ۱ و ۲ چطور؟ الان حدود ۵ سال از ابلاغ فازهای ۱ و ۲ نماتن می¬گذرد. شما میزان موفقیت این استانداردها را چطور ارزیابی می-کنید؟
– متاسفانه ما اطلاعات دقیق و جامعی در مورد بازار نداریم که بتوانیم در این مورد قضاوت دقیقی بکنیم. یکی از پیشنهادهای ما در کمیسیون نرمافزار هم همیشه این بوده که با کمک شورا بتوانیم سازوکار مناسبی برای گرفتن فیدبک از بازار و جامعه پیاده کنیم و نتایج را بهصورت مستمر اصلاح کنیم. اما آنچه شخصاً و به اتکای تجارب خودم میتوانم بگویم این است که این استانداردها تاثیر مثبت خودشان را روی بازار گذاشتهاند. من بهعنوان مشاور و ناظر از دور و نزدیک در جریان خیلی از پروژههای نرمافزاری کشور هستم و میبینم که الان کارفرماها دیگر حداقل تمایز بین مراحل مشاوره و ارجاع کار یا ضرورت تهیه RFP یا موضوعاتی از این قبیل را رعایت میکنند. چیزی که قبل از نماتن-۱ عمومیت نداشت. از بعضی از قالبها هم عملاً استفاده زیادی شده مثل قالب RFP، پروپوزال یا قرارداد. بگذریم که بعضی از کارفرماها از این قالبها بهصورت مکانیکی استفاده میکنند. اما همین مقدار هم که یک حداقلی در پروژهها رعایت میشود دستاورد بزرگی است. در مورد نماتن-۲ ماهیت خروجیهای آن طوری است که جا افتادن آنها زمان بیشتری میبرد اما آنها هم عملاً دارد استفاده میشود.
اگر شاخص ما برای ارزیابی موفقیت این طرح میزان استفاده عمومی از این قالبها و استانداردها باشد باید به سه نکته توجه کنیم: اول اینکه اینطور حرکتها برای اینکه به ثمر بنشیند نیازمند زمان است و کاری نیست که بهمحض ابلاغ یک بخشنامه حل شود. دوم اینکه همین مقدار هم که از نتایج نماتن استفاده میشود عملاً بدون فشار و پیگیری متمرکزی بوده و در واقع بهصورت داوطلبانه استقبال شده است. سومین نکته این است که این استانداردها، بهخصوص نتایج فاز ۱ نیاز به تغییر و اصلاح داشته که متاسفانه آن هم انجام نشده. بههمین دلیل مغایرت جزئی بعضی از بخشهای نماتن-۱ با مقررات جاری هم خودش مانعی برای همهگیر شدن آن شده است.
– چه مغایرتی؟ در این مورد بیشتر توضیح میدهید؟
– ببینید، نماتن-۱ در اواخر سال ۸۳ ابلاغ شد و چند ماه بعد در اسفند ماه ۸۳ قانون برگزاری مناقصات ابلاغ شد. البته یکی دو سال طول کشید تا آئیننامههای اجرایی این قانون تصویب و ابلاغ شد، اما با ابلاغ این آئیننامهها بعضی از بخشهای نماتن-۱ که مربوط به روش ارجاع کار پروژههای نرمافزاری است، باید تغییر کند، چون در بعضی از جزئیات مغایرتهایی با قانون و آئیننامههای آن دارد.
– هیچ اقدامی برای رفع این مغایرتها نشده است؟
– چرا در سال ۸۶ آقای دکتر محمودی کاری را تعریف کردند برای بازنگری و اصلاح خروجیهای نماتن-۱، بهخصوص برای تطبیق با قانون مناقصات. این کار هم به آقای مهندس اعلایی ارجاع شد و ایشان هم متن استانداردهای اصلاحشده را تهیه کردند. بعد این متنها برای اظهارنظر به کمیسیون نرمافزار سازمان تهران ارجاع شد. ما هم کارگروهی برای بررسی این اصلاحات تشکیل دادیم که بنده و خانم داننده و آقایان یوسفیان، شیردل و زنگنه عضو آن بودیم. دو سه جلسه کار فشرده روی متنهای اصلاحشده انجام دادیم و اظهارنظر مفصلی هم تهیه کردیم که برای شورا ارسال شد. متاسفانه همزمان شد با همان قضیه انحلال شورا و تعطیلی موقت کارها. بعد از آن هم دیگر خبری از این اصلاحات نشد.
– بهنظر شما چرا اجرای نماتن بعد از چند سال متوقف شد و حتی فازهای قبلی هم اصلاح نشده است؟
– ببینید، وقتی که به عقب برمیگردیم میبینیم در یک فاصله دو سه ساله ۳ فاز از نماتن اجرا شد که تاثیر مثبت و سازندهای روی بازار نرمافزار گذاشته است. اما اینکار ادامه پیدا نکرد. وقتی تحلیل میکنیم میبینیم مجموعهای از عوامل در آن دوره با همدیگر ترکیب شده بود که بعد از آن ادامه پیدا نکرد. بهنظر من برای اینکه اینگونه حرکتها به نتیجه برسد سه عامل باید همزمان و در هماهنگی با هم وجود داشته باشند. اول بازار پررونق و فعال که هم سمت عرضه و هم سمت تقاضا را به جوشش درمیآورد و دنبال کارهای نو میفرستد. واقعیت این است که در شرایط کسادی بازار نمیشود انتظار داشت کسی از این طور حرکتها استقبال کند. عامل دوم عزم و اعتقاد دولت و دستگاههای متولی است که باید پشت قضیه بایستند. سوم هم مشارکت صنف و بخش خصوصی است که توان فنی و اجرایی لازم را دارد. در زمان تکفا این سه عامل با همدیگر ترکیب شده بود. از یک طرف شورای عالی اطلاعرسانی و ستاد تبصره ۱۳ در سازمان برنامه و خلاصه تیم آقای مهندس جهانگرد بودند که هم بودجه متمرکزی برای توسعه IT تامین کرده بودند و هم سازمانهای دولتی را تشویق و ترغیب میکردند که پروژههای توسعهای و جدید تعریف کنند. یک نظارت حداقلی هم داشت شکل میگرفت که رفتهرفته بازار و کارها را داشت واقعیتر میکرد. از طرف دیگر دبیرخانه شورایعالی انفورماتیک و شخص آقای دکتر سپهری بودند که هماهنگی خوبی با تکفا داشتند و به انجام و ارائه کار جدید هم اعتقاد داشتند. پشتیبانی نسبتاً خوبی هم از طرف رئیس سازمان میشدند که منجر به ابلاغ همان بخشنامهها شد. عامل سوم هم صنف بود که در آن زمان از طرف انجمن شرکتهای انفورماتیکی نمایندگی میشد. روابط این سه ضلع هم با هم خوب بود و کارها را هماهنگ پیش میبردند. بعد از تغییراتی که پیش آمد دیگر هیچ وقت این سه عامل با همدیگر هماهنگ نشد. مثال میزنم. هم قبل از نماتن و هم بعدش حرکتهایی توسط دولت انجام شده بود و شد برای سازماندهی بازار و صنعت. اما چون مشارکت جدی صنف را نداشت به نتیجهای نرسید. در دوره دولت نهم یعنی در سال¬های ۸۶ تا ۸۷، وزارت ICT دنبال این بود که طرح جامع نظام مهندسی فناوری اطلاعات را دربیاورد. فکر میکنم حداقل با دو تیم جداگانه هم چیزهایی تهیه شد، اما چون اعتقاد جدی به مشارکت سازمان نظام صنفی نداشتند و فضا، فضا تقابل و تعارض بود، هیچ کدام به نتیجهای نرسید. ببینید، مفهوم کار بهنظر ساده میرسد، اما وقتی وارد اجرا میشوید باید حتماً سطحی از مشارکت صنفی و ارتباط صنف و دولت را داشته باشید. مثلاً آن جمعی را که انجمن برای نظارت و هدایت نماتن ۲ و ۳ جمع کرده بود و تقریباً همه از شرکتهای معتبر و سابقهدار نرمافزاری بودند، هیچ نهاد دولتی به تنهایی نمیتوانست جمع کند. از آن طرف هم هست، یعنی حمایت و محوریت جاهایی مثل شورا هم لازم است. نهایتاً شرایط کسبوکار و رونق بازار هم ضروری است. در چند ساله گذشته ما این عوامل را کنار هم نداشتهایم.
– پیشبینی شما از آینده نماتن چیست؟
– خوب در یکی دو ساله اخیر آن فضای تقابلی که گفتم تا حدی رقیقتر شده. موقعیت شورا هم نسبت به آن تزلزلی که دچارش شده بود بهتر شده. اخیراً تمایل به همکاری با صنف هم در بدنه دولت و بهخصوص در دبیرخانه شورا بیشتر شده. بهعنوان نمونه همین تجدیدنظر در رتبهبندی شرکتها که به سازمان ارجاع شده است. اینها نشانههای خوبی است که امیدوارم ادامه پیدا کند و تقویت شود. البته خود سازمان هم اگر بنیه مالی و انسجام سازمانیاش بیشتر و بهتر شود بهنظرم میتواند بهعنوان محور و شروعکننده عمل کند، البته با هماهنگی سازمانهای متولی. همانطور که گفتم، هر نهادی که بخواهد سامانی به وضعیت بازار بدهد، ناگزیر است مسیری را که در طرح جامع نظام مهندسی نرمافزار ترسیم شده دنبال کند. ممکن است جزئیات این طرح نیاز به تجدیدنظر و اصلاح داشته باشد، اما کلیاتش هنوز معتبر است و ما هنوز منتظریم که این وقفهای که به آن دچار شده بشکند و فازهای بعدی هم اجرایی شود.
دریافت اصل مصاحبه
نظرات و دیدگاه های خود را با دیگران به اشتراک بگذارید!