افزایش سطح آگاهی متخصصان عرصه فناوری اطلاعات با تکنولوژی روز، استفاده از استانداردهای منسجم و یک دست، رعایت قانون کپیرایت و در نظر گرفتن یک نهاد متمرکز ناظر بر کلیه نهادهای مختلف در برنامهریزی و مدیریت، هم چنین قانونگذاری در زمینه IT راهکارهایی مناسب برای کاهش مشکلات IT در کشور به حساب میآیند.
فرایند تولید نرمافزار یا به طور محدودتر متدولوژی تولید نرم افزار، منحنی شناخته شده برای متخصصین و دست اندرکاران است. در ایران بسیاری از افراد در این زمینه اطلاعات کافی دارند و در جریان آخرین دست آوردها و مقالات روز هستند، اما در پیادهسازی سیستمهای در داخل ایران، ردپای این صحبتها کمتر دیده می شود. چرا؟
عدهای معتقدند کارفرما این اصول را نمیپذیرد یا هزینهاش را پرداخت نمیکند! آیا ممکن است کارفرما در اجرای روش اصولی رسیدن به هدف خویش کوتاهی کند؟ خوشبختانه هم کارفرمایان و هم مجریان پروژههای نرم افزاری متوجه این واقعیت بزرگ شدهاند که امروزه ما نیازمند سرمایه گذاری روی روشهای تولید نرمافزار هستیم.
به گفته کارشناسان، صنعت نرمافزار در ایران با مشکلات زیرساختی عدیدهای روبروست، اما تلاشهای بسیاری برای رفع این مشکلات و رسیدن به ایدهآلها صورت گرفته است. ازمشکلات پیش روی شرکتهای تولیدکننده نرمافزار در ایران میتوان مشکلاتی همچون بالا بودن هزینههای تولید نرم افزار، به طول انجامیدن مدت زمان تولید، عدم حمایتهای دولتی، عدم ارتباط با تولیدکنندگان خارجی، تولیدات سفارشی، خدمات و پشتیبانی پس از فروش، عدم رعایت قانون کپیرایت، کمبود نیروهای متخصص و نبود پشتیبانیهای لازم را نام برد که باعث شده صنعت نرمافزار ایران نتواند به جایگاه واقعی خود دست پیدا کند.
کشور ما هنوز دوران اولیه بلوغ خود را در عرصه IT تجربه میکند، دورهای سرشار از مسایل و چالشهای گوناگون. چالشهایی که برخی از آنها به سیاستهای کلان کشور مرتبط و برخی دیگر زاییده ویژگیهای خاص نرمافزار و دستاندرکاران تولید و توسعه آن است.
یکی از کارشناسان در این ارتباط میگوید: تولید نرمافزار به دلیل عدم استفاده از ابزار و انرژی فیزیکی قابل لمس نیست و از این رو، تولید آن از نگاه عام سهل به نظر میرسد اما در واقعیت تولید یک نرمافزار که حجمی کمتر از یک CD را به خود اختصاص میدهد، بعضاً ماهها کار یا چند سال کار کارشناسان را به خود اختصاص داده است.
شکست در پروژههای نرمافزاری در هر یک از چهار مورد «هزینه»، «زمان»، «کیفیت» و «دستیابی به اهداف» مطرح میشود؛ بدین معنا که اگر پروژهای با صرف هزینه بیشتر یا زمان بیشتر یا با کیفیت پایینتر انجام شود، علیرغم به پایان رسیدن پروژه، آن را توأم با شکست میدانیم.
به طور کلی دلایل اصلی شکست پروژههای IT در ایران را می توان به دو دسته عوامل داخلی و خارجی تقسیم کرد:
عوامل داخلی: مدیران پروژه کمتجربه، ناتوانیهای شرکتهای تولید نرمافزار، قراردادهای ناپخته، کمبود نیروی انسانی متخصص، مقاومتهای کاربران و سازمانها در پذیرش سیستمهای جدید، ارتباط با مشتریان و کاربران و عدم درگیر کردن کاربران در پروژه
عوامل خارجی: نبود سرمایهگذاری مناسب برای پژوهش و تحقیق در حوزه نرمافزار، سرمایهگذاری کم در بخش خصوصی و عدم حمایت دولت، عدم استفاده از یک استاندارد واحد، مشکلات حضور در مناقصات بینالمللی، ارزان بودن نرمافزار و عدم در نظر گرفتن آن بصورت یک کالا، ماههای سال، تعطیلات رسمی و برنامهریزی زمانی، ادغام شوراها، عدم شناسایی حقوق مولفین و قانون کپیرایت و...
فرآیندهای مدیریت پروژه با ۹ توانمندی تعریف میشود که این توانمندیها عبارتند از مدیریت یکپارچگی پروژه، محدوده، زمان، هزینه، کیفیت، منابع انسانی، ارتباطات، ریسک و برون سپاری و از آنجایی که نقش هر یک از عوامل فوق در تولید یک محصول نرم افزاری کلیدی است توانمندی یک مدیر پروژه در تولید نرم افزار یکی از عوامل مهم و حیاتی در موفقیت پروژه به شمار میرود.
اکثر مدیران پروژه نرمافزاری در ایران، برنامهنویسان قدیمیتر و یا قویتر گروه هستند و همین یک نفر در تولید یک نرمافزار نقشهای زیادی از جمله تحلیل، طراحی و برنامهنویسی و ... را برعهده دارد در حالیکه فرآیند مدیریت دانش و توانایی خاص خود را میخواهد و توانمندیهای خاص خود را میطلبد.
ناتوانیهای شرکتهای تولید نرمافزار
دست اندرکاران تولید نرم افزار در کشور ما بیشتر شرکتهای کوچک نرمافزاری با پشتوانههای مالی اندک هستند. این شرکتها عمدتا به دلیل محدودیت منابع از رویکرد توسعه تکنولوژی به منظور آشنایی با ابزار و روشهای نوین تولید نرم افزار غافل میشوند.
قراردادهای ناپخته
بیشترین مشتریان مهم حوزه نرمافزاردر کشور ما را سازمانهای دولتی و نیمهدولتی تشکیل میدهند. قراردادهای تولید نرمافزار، قراردادهایی ناپخته و یک طرفه هستند و مجریان چنین پروژههایی، با وجود آگاهی نسبت به ضعفهای آن بیشتر اوقات به دلایل اقتصادی مجبور به پذیرش آنها هستند.
تجربه های ناکافی تیم پروژه
چالش دیگری نیز پیش روی مدیران شرکتهای کوچک و متوسط وجود دارد، برای تمامی مدیرعاملان مهم است که کارمندانی تیزهوش، خلاق و مستعد استخدام کنند. شاید بتوان یکی از مهم ترین عوامل موفقیت پروژههای نرم افزاری را افراد نام برد. متاسفانه در کشور ما کمبود نیروی متخصص یکی از چالشهای عمده است. عمدتا میتوان عدم بهروز بودن و دسترسی به تکنولوژی روز و اینکه نیروی کار روی تکنولوژی قدیمی با برنامههای آموزشی نامناسب و ناکافی پیوند خورده است را یکی از عوامل ضعف تیم نرمافزاری دانست.
متاسفانه ضعف نظام آموزشی در دانشگاهها و اینکه محتوی آموزشی اکثر دروس دانشگاهی کاربردی و عملی نبوده و صرفا تئوری است و در بازار کار کاربردی ندارد را میتوان یکی از عوامل ضعف متخصصین ایرانی نام برد.
مقاومتهای کاربران و سازمانها در پذیرش سیستمهای جدید
بخشهای IT همچنان در اغلب سازمانها و مراکز صنعتی، خدماتی و بازرگانی سازمان ضعیفی دارند و از دانش و فناوری روز، در عرصههایی که تکامل و تحول در آن، ساعت به ساعت رخ میدهد، به دور هستند. چون پروژههای IT به منظور برآورده ساختن اهداف کلان سازمان آغاز میشوند، نهایتا باید در سطح عملیاتی پاسخگوی نیازهای کاربران باشند.
عدم سرمایه گذاری مناسب برای پژوهش و تحقیق در حوزه نرمافزار
بر اساس این گزارش که اطلاعات آن از پایگاه مقالات علمی مدیریت برگفته شده است اگرچه مساعدتهایی در اختیار بخشهای مختلف خصوصی و دولتی در چارچوب طرحهای مختلف قرار گرفته است، عمده این سرمایهها اغلب به سمت بخشهای سختافزاری سرازیر و در عمل سرمایهگذاری در عرصه تولید و به تناسب آن تحقیق و پژوهش کاربردی حوزه نرمافزار که در زمره سود آورترین عرصههای اقتصادی در دنیا شناخته میشود، بسیار اندک است.
در کشور ما حمایت کافی از بخش خصوصی در زمینهی IT بعمل نمیآید. برخی مشکلاتی که این گروه با ان روبه روهستند عبارتند از:
روند طولانی پیشرفت کار در ادارات دولتی، عدم استفاده از یک استاندارد واحد، یکی از ضعفهای شرکتهای تولیدکننده نرم افزاری این است که تولیدات آنها از استانداردهای لازم برخوردار نیست.
شرکتهای نرم افزاری و مشکلات حضور در مناقصات بین المللی
در حال حاضر مشکلات اجرایی بسیاری بر سر راه حضور شرکتهای نرم افزاری جهت حضور در مناقصات بینالمللی وجود دارد که بخشی از آن به دولت و بخش دیگری از آن به خود شرکتهای نرمافزاری برمیگردد. این مشکلات عبارتند از نبود امکان صدور آسان ضمانت نامههای مختلف ارزی نظیر شرکت در مناقصه، پیش پرداخت و حسن انجام کار برای شرکتهای نرم افزاری، عدم حمایت مناسب بانکها، مشکلات شرکتهای نرم افزاری، عدم شناسایی حقوق مولفین وقانون کپی رایت
محدودیت استفاده افراد از خطوط پرفشار یا اینترنت پرسرعت را میتوان یکی دیگر از مشکلات نام برد. منظور از اینترنت پرسرعت، پهنای باند حداقل ۱ مگابیت در ثانیه است. بسیاری از مفاهیم فن آوریهای نو در حوزه اینترنت و تجربه واقعی از اینترنت متناسب به فهم جهانی ازوضعیت فعلی سرویسهای اینترنتی، تنها زمانی به دست میاد که شما هم همانند پیشتازان این علم، دارای یک حداقلی از پهنای باند که گفتیم باشید.
کسانی که این نوع اینترنت را تجربه کردهاند حتما منظور بحث را به خوبی درک میکنند ممکن است نگرانیهایی در زمینه دسترسی به سایتهای ناسازگار با فرهنگ ما وجود داشته باشد، اما راه چاره، محدود کردن دسترسی نیست، همانطور که تجربههای گذشته در برخورد منفی با پدیدههای تکنولوژیک مانند فکس، ویدئو و ماهواره و... همگی ناموفق بودهاند.
استانداردها
استاندارد کردن و استاندارد از پایههای علم و فناوری است که در پیشرفت صنعت و اقتصاد نقشی به سزا دارد و باید در جهت افزایش سطح کیفیتها تلاش کرد تا به فناوری پیشرفته تولید هر محصول نایل آمد.
یکی از مشکلات شرکتهای نرمافزار ایرانی در بازارهای جهانی عدم آشنایی با استاندارد نرم افزار است، متاسفانه استاندارد نرمافزار هنوز در ایران به درستی تدوین و یا تعریف نشده است و تاکنون هیچ اقدام منسجمی در کشور ما برای تعیین استاندارد تولید نرمافزار صورت نگرفته و هیچ اجباری برای ارایه شناسنامه نرمافزارها وجود نداشته است.
از آنجا که تنوع حوزه عملکرد در زمینه نرم افزار بسیار زیاد است، ادامه حیات این صنعت نمیتواند بینیاز از وجود استانداردهای منسجم و یک دست باشد. با توجه به اینکه هر تولید کننده نرمافزاری یک روش تولید خاص خود اتخاذ میکند و در مراحل ساخت از متدولوژیهای متفاوت استفاده میکند، نتیجه کار شرکتهای مختلف به لحاظ روند کیفی و اجرایی شکل و شمایلی گوناگون خواهد داشت و این امر اصولا یکپارچگی در این بازار را فدای خود خواهد کرد.
اینجاست که لزوم وجود استاندارد نرمافزار به وضوح حس میشود. کارشناسان نرمافزار معتقدند که پشتیبانی قدرتمند محصولات و همچنین مستندسازی و تخمین کیفیت تنها با وجود یک استاندارد منظم مقدور است، وقتی استاندارد صحیح وجود داشته باشد کار گروهی بیشتر معنا پیدا میکند. هم اکنون استانداردهای جهانی زیادی مانند IEEE و ایزو وجود کیفیت و پشتیبانی مناسب در صنعت نرم افزار دنیا را تضمین میکنند.
متأسفانه به علت فقدان استاندارد یا لااقل توصیهای واحد برای مستندسازی محصولات نرمافزاری و بیتوجهی سازندگان نرمافزار و کارفرمایان، نرمافزارهای تولید شده در ایران اکثراً فاقد حداقل مستندات لازم هستند. البته فشار کارفرمایان به پیمانکاران برای کاهش هزینه تولید نرمافزار عموماً منجر به حذف و یا کمرنگ شدن بخش مستندات سیستمهای نرمافزاری شده است.
برای توسعه صنعت نرمافزار باید برروی فرایند و مهندسی کار انرژی زیادی گذاشته شود. تولید نرمافزار بزرگ یک کار گروهی است، یک صنعت است اجرای این کار بدون فرایند ممکن نیست براساس آمارهای موجود عوامل ریسک در یک پروژه نرمافزاری بزرگ و سهم هر یک از آنها عبارتند از نیروی انسانی، فرایند کار و فناوری و ابزار روز.
قسمت عمده از عوامل ریسک در نظر گرفته شده در عامل نیروی انسانی ما فرایند کار قابل کنترل است. بنابراین دیده میشود که نقش فرایند تولید نرم افزار در موفقیت یک پروژه بزرگ نرمافزاری تا چه حد تعیین کننده است.
نکته پایانی که از این اطلاعات استنباط میشود این است که عامل فناوری و ابزار درصد به مراتب پایینتری را به خود اختصاص داده است. بنابراین در آموزشها و برنامهریزیهای کار باید توجه بیشتری به فرایند کار کرد تا به ابزار پیادهسازی؛ متاسفانه این امر در بسیاری از اوقات فراموش میشود.
56503