آیا با چالش‌های تولید یک نرم‌افزار آشنا هستید؟

تولید، نقطه شروع فعالیت‌های اقتصادی و سنگ‌بنای یک اقتصاد پویا است.

 

ما در آوید از آغاز حرکت در حوزه مجازی‌سازی و رایانش‌ابری، مسیر تولید را انتخاب کردیم و به دلیل کم‌سابقه بودن این حرکت در ایران چالش‌های خاصی پیش‌رو داشتیم.

تفسیر نادرست از تولید

ما با دو طیف تفسیر از تولید مواجه بوده و هستیم:

• تفسیری بسیار ساده شده که تولید را در سطحی بسیار نازل و در حد ترجمه قرار می‌دهد.
• تفسیری بسیار سخت‌گیرانه که لازمه تولید را انجام صفر تا صد فعالیت‌ها می‌داند.

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

• دسته اول، با پایین آوردن شأن تولید و ارائه محصولاتی با ظاهری وطنی، فرهنگ تولید در جامعه و در سطح کارفرمایان را با چالش‌های بنیادین مواجه می‌کنند. این‌گونه رفتار که با تبعات ناگوار در پشتیبانی محصول، به دلیل عدم تسلط ارائه‌دهنده محصول به ساختار، مواجه می‌شود، شک‌های فراوانی را در جامعه نسبت به تولید ایجاد می‌کند.
شاید یکی از مهلک‌ترین ضربات را، محصولات وطنی، از سوی اینگونه تفسیرها و اقدامات دریافت کرده‌اند که گاه و بی‌گاه توسط مدیریت‌های مقطعی دولتی و رونمایی‌های عجولانه نیز تقویت شده است.
• دسته دوم، اصولا هر گونه حرکت تولیدی را امری محال در نظر می‌گیرند و به سرانجام رسیدن اینگونه محصولات را با شک نگاه می‌کنند.
البته باید تایید کنیم که تولید، امری سخت و نیازمند ابتکارات و مداومت‌های بسیار است، و البته باید این موضوع را نیز متذکر شویم که اصولا در دنیای حاضر انجام کلیه اقدامات به صورت صفرتاصد در مسیر تولید امری باطل شده محسوب می‌شود. در دنیای فناوری‌اطلاعات مثال‌های متعددی از این موضوع وجود دارد:

o مایکروسافت سرویس ابری خود با نام Azure را بر مبنای لینوکس توسعه داده است.
o گوگل سیستم‌عامل معروف خود به نام Android را بر مبنای لینوکس توسعه داده است.
o شرکت VMWare از لینوکس به عنوان سیستم‌عامل پایه خود استفاده می‌کند.

از این‌گونه مثال‌ها در عرصه فناوری‌اطلاعات بسیار است و البته در دیگر حوزه‌ها نیز این موضوع عینیت دارد. این نگاه نیز به دلیل تیشه بر ریشه زدن و حذف قدرت و قابلیت انجام این‌گونه فعالیت‌ها، با تاثیرگذاری منفی در مسیر تولیدکنندگان واقعی، مشکلات ویژه خود را ایجاد می‌کند.

یک فعالیت تولیدی نه می‌تواند صرفا یک ترجمه رابط کاربری و نه انجام صفر تا صد یک کار باشد! از نظر ما یک تعریف نسبتا جامع از تولید در حوزه نرم‌افزار را می‌توان این‌گونه بیان کرد:

تجمیع و استفاده از اجزای گوناگون (کتابخانه‌ها، ابزارها، استانداردها و …) به منظور دستیابی به محصولی با ارزش‌افزوده و کارکرد مشخص.

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

 

یک مثال

به جهت نزدیکی ذهن این مثال را در نظر بگیرید:
در کشور ما توسعه نرم‌افزارهای اتوماسیون اداری بسیار مرسوم است، این نرم‌افزارها نمونه بسیار خوبی برای بیان یک فرآیند تولید نرم‌افزار می‌باشند.
در این‌گونه نرم‌افزارها از اجزای گوناگونی استفاده می‌شود که به هیچ‌‌عنوان توسط تولیدکننده توسعه نیافته‌اند:

• پایگاه داده (که معمولا از MySQL, Oracle و .. استفاده می‌شود)
• سیستم‌عامل پایه (که ویندوز یا لینوکس است)
• محیط توسعه و کامپایلر (که تماما از محصولات آماده استفاده می‌شود)
ارزش‌افزوده یک نرم‌افزار اتوماسیون (از منظر تولید)، توسعه یک Framework است که به خوبی اجزای گوناگون را در مسیر رسیدن به ارزش‌افزوده مورد نظر، مدیریت و به کار می‌گیرد.

 

اختراع دوباره چرخ

به یاد داریم که در روزهای ابتدایی ارائه PVM، با واژه «اختراع دوباره چرخ» مواجه شدیم. اشخاصی با نگاهی دلسوزانه و هدایت‌گرانه این سوال را می‌پرسیدند: «چرا چرخ را دوباره اختراع کرده‌اید؟»، به عبارتی با توجه به وجود محصولات خارجی چرا شما محصول وطنی تولید کرده‌اید؟!

سوالی به‌ظاهر موجه و البته تاثیرگذار!

این سوال به‌ظاهر موجه، جواب‌هایی بسیار محکم و محکمه‌پسند دارد که امیدواریم پاسخ‌هایی که در ادامه می‌آید بارقه امید و تلاش را در ذهن دوستانی که شور و شوق آنها، توسط دلسوزانی با طرح این سوال، خاموش شده است، دوباره شعله‌ور گرداند:

• می‌توان چرخ را بارها و بارها ساخت و برای آن بازاریابی کرد.
• اگر ساخت مجدد چرخ کار اشتباهی بود، هرگز BMW متولد نمی‌شد چرا که قبلا بنز وجود داشت.
• اگر ساخت مجدد چرخ (نه اختراع آن) کار اشتباهی بود، هرگز برند «شیرینی سنتی» در یزد پا نمی‌گرفت چراکه قبل از آن «حاجی خلیفه» وجود داشت.
لازم است توجه داشته باشیم که ساخت مجدد یک چرخ به معنای اختراع آن نیست، بلکه هر شخص می‌تواند با ایده‌های جدید و با نوآوری چرخ جدیدی ایجاد کند. این حرکت به منزله اختراع چرخ نیست، بلکه به معنای ساخت مجدد چرخی با قابلیت‌های متفاوت و بالطبع مشتریان خاص خود هست.
اصولا هر حرکت اقتصادی تا زمانی که برای آن مشتری وجود داشته باشد، اگر هم از نظر عده‌ای ساخت مجدد چرخ به نظر برسد، کاری درست و اصولی است.
احتمالا این‌گونه دلسوزانی در چین نبودند و یا اگر هم بودند تولیدکنندگان موبایل و خودرو چینی به حرف آنها گوش ندادند، چرا که اگر به حرف آنها گوش می‌دادند و تصور می‌کردند که در حال انجام عمل بیهوده اختراع دوباره موبایل و یا خودرو هستند، هیچ‌وقت قادر نبودند سهم قابل‌توجهی از بازار موبایل و خودرو را، در جهان، به خود اختصاص دهند.

 

نیروی انسانی

احتمالا تصویرهای گوناگون محیط کاری کارمندان شرکت‌های بزرگ آمریکایی در حوزه فناوری‌اطلاعات را مشاهده و یا داستان‌های گوناگون منتشر شده از نحوه فعالیت کارکنان این شرکت‌ها را مطالعه کرده‌اید.

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

 

ایران‌خودرو / سایپا

هر فعالی در عرصه تولید در ایران معمولا با این قیاس مواجه می‌شود: «تولید ایران‌خودرو و سایپا را دیده‌ایم !!!»

بدون شک رقابت، اصل اولیه برای هر پیروزی است و اصولا، یک فعالِ بدون رقیب، ملاکی برای عملکرد تولید داخل نمی‌تواند باشد. باید بپذیریم که حرکت‌های بی‌رقیب به اصالت تولید لطمه اساسی وارد کرده‌اند.
در قیاس در این موارد خوب است که به اصل رقابت توجه کافی داشته باشیم، هر جا که تولیدکننده در فضای رقابتی فعالیت می‌کند می‌توان یک حرکت اصولی و با دوام تولیدی را انتظار داشت.
در حوزه نرم‌افزار و در کشور ما نبود قانون Copy Right فضای رقابتی بسیار شدیدی برای تولیدکننده داخل ایجاد کرده است که رقابت با محصولات خارجی را بسیار سخت می‌کند.
می‌توان گفت عرصه رقابت یک برکت برای یک تولیدکننده واقعی است که تولیدکننده بی‌رقیب از این موهبت بی‌بهره است.

 

مدیریت غیر نرم‌افزاری

یک نرم‌افزار بزرگ و سیستمی همچون PVM (و سایر نرم‌افزارهای در این رده) از منظر تجسم شبیه به یک شهر بسیار بزرگ هست. شاه‌راه، پیاده‌رو، فضای کاری، مجتمع‌های تجاری، سیستم توزیع برق/آب/گاز، سیستم دفع فاضلاب، سیستم اطفاء حریق، سیستم پایش و هزاران زیرسیستم دیگر تشکیل‌دهنده یک شهر بزرگ هستند.

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

 

آوید و تولید

همان‌طور که در مطلع کلام گفته شد، آوید سنگ‌بنای حرکت خود را بر تولید بنا نهاده است و ایمان دارد مسیر پایدار در راستای کسب رضایت کارفرمایان و برپایی یک کسب و کار موفق، از مسیر تولید می‌گذرد.

 

مطالب مرتبط:

با داستان خلقت PVM آشنا شوید.

 

بیشتر بخوانید:

سامانه مجازی‌سازی سرور PVM را بیشتر بشناسید.

با فوائد سامانه میز کار مجازی PVM Desktop آشنا شوید.