سه شنبه, ۱۱ اردیبهشت, ۱۴۰۳ / 30 April, 2024
مجله ویستا

تولید نرم افزار و چالش های آن


تولید نرم افزار و چالش های آن
برخی بر این باورند که تولید نرم افزار نوعی هنر است و همه با این نکته موافق هستند که «تولید نرم افزار کاری خلاق است». با این همه در کشور ما ساخت نرم افزار حتی در زمره کارهای تولیدی نیز به شمار نمی رود. مهم ترین ویژگی تولید نرم افزار که آن را از دیگر فعالیت های تولیدی یا خدماتی متمایز می کند، خلق و ایجاد دنیایی مجازی است که از طریق واسطه های مناسبی با دنیای واقعی مرتبط شده و بخشی از نیازهای ما را برطرف می سازد.
گسترده شدن استفاده از فناوری اطلاعات تقریباً در تمامی عرصه های زندگی و حیات انسان، اهمیت و نقش تولیدکنندگان محصولات نرم افزاری را به شدت افزایش داده است. در اینجا لفظ تولیدکنندگان به مجموعه افرادی اطلاق می شود که در طول چرخه حیات یک سیستم نرم افزاری در ساخت، توسعه و نگهداری آن مشارکت دارند.کشور ما هنوز دوران اولیه بلوغ خود را در عرصهIT تجربه می کند، دوره ای سرشار از مسائل و چالش های گوناگون. چالش هایی که برخی از آنها به سیاست های کلان کشور مرتبط و برخی دیگر زاییده ویژگی های خاص نرم افزار و دست اندرکاران تولید و توسعه آن است.
این چالش ها به اشکال مختلف در مقابل تمامی دست اندرکاران این حوزه و به ویژه مدیر یک پروژه نرم افزاری عرض اندام می کنند. عوامل زیر را می توان سرچشمه بخش بزرگی از مشکلات این حوزه به شمار آورد:
- تکمیل نکردن زیرساخت های ضروری IT، فراگیر نشدن فرهنگ استفاده از این فناوری در بخش وسیعی از حوزه ها، ارزان بودن نرم افزار برخلاف هزینه تولید بالای آن و رعایت نکردن حقوق تولیدکنندگان محصولات نرم افزار به شکلی که بسیاری از نرم افزارها (چه نرم افزارهای تولید داخل و چه تولید خارج) به راحتی و با قیمتی بسیار اندک در دسترس همگان است. نبود سرمایه گذاری مناسب برای پژوهش و تحقیق در حوزه نرم افزار. اگرچه مساعدت هایی در اختیار بخش های مختلف خصوصی و دولتی در چهارچوب طرح های مختلف قرار گرفته است، عمده این سرمایه ها اغلب به سمت بخش های سخت افزاری سرازیر شده و در عمل سرمایه گذاری در عرصه تولید و به تناسب آن تحقیق و پژوهش کاربردی حوزه نرم افزار که در زمره سودآورترین عرصه های اقتصادی در دنیا شناخته می شود، بسیار اندک است.- ناتوانی های شرکت های تولید نرم افزار- دست اندرکاران تولید نرم افزار در کشور ما بیشتر شرکت های کوچک نرم افزاری با پشتوانه های مالی اندک هستند. شرکت هایی که هنوز بلوغ سازمانی کافی نیافته اند، قادر نیستند متناسب با متحول ترین عرصه تکنولوژیک رشد کنند و قراردادهای ناپخته بیشتر این مشتریان مهم حوزه نرم افزار را سازمان های دولتی و نیمه دولتی تشکیل می دهند. قراردادهای تولید نرم افزار، قراردادهایی ناپخته و یک طرفه هستند و مجریان چنین پروژه هایی، با وجود آگاهی نسبت به ضعف های آن بیشتر اوقات به دلایل اقتصادی مجبور به پذیرش آنها هستند.در چنین فضایی مدیران پروژه های نرم افزاری با چالش ها، مسائل و مشکلات بسیاری روبه رو هستند که بخش عمده آن به ارتباط با سه گروه اصلی کارفرمایان (مشتریان)، اعضای تیم یا کارکنان بخش نرم افزار و مدیر شرکت های نرم افزاری بازمی گردد.
● کارفرمایان و مشتریان
گروه اصلی و ذی نفع مرتبط با یک محصول نرم افزاری را مشتریان یا کاربران آن تشکیل می دهند؛ کسانی که در حقیقت تامین کننده منابع مالی لازم برای تولید آن به شمار می روند. شاید به جرات بتوان گفت که بیشترین چالش ها در تقابل با این گروه - که عمده ترین تامین کننده منابع مالی بخش های تولید نرم افزار هم هستند- رخ می نماید. در عرصه ارتباط مدیران پروژه با این گروه مسائلی وجود دارد که ریشه آن را می توان در میان موارد زیر جست وجو کرد:
- بخش هایIT همچنان در اغلب سازمان ها و مراکز صنعتی، خدماتی و بازرگانی سازمان ضعیفی دارند و از دانش و فناوری روز، در عرصه ای که تکامل و تحول در آن، ساعت به ساعت رخ می نماید، به دور هستند.
- کاربران، مدیران و ذی نفعان یک سیستم نرم افزاری دید روشنی از نرم افزار و قابلیت های آن ندارند.
- نرم افزار هنوز به عنوان کالایی ارزشمند شناخته نشده و کارفرمایان و مشتریان نرم افزار اگرچه حاضر هستند بهای بالایی را برای یک سخت افزار برای مثال یک مانیتور بپردازند، در صرف هزینه برای نرم افزار به شدت خوددار هستند.
- در مزایای خرید، تولید و استفاده از نرم افزار تردید دارند.
- دید روشنی از نیازهای خود و قابلیت مکانیزاسیون آنها ندارند.
- دید روشنی از حجم تلاش لازم برای تولید یک نرم افزار ندارند.
- به ویژه در موازنه طرف های قرارداد ساخت و تولید نرم افزار، خود را طرف قدرتمند محسوب می کنند. حاصل چنین موازنه ای قراردادهایی غیرواقع بینانه و یک طرفه است.
- به فرهنگ و دانش لازم برای استفاده از خدمات مکانیزه و الزامات، محدودیت ها و توانایی های آن کم بها می دهند . از فناوری تولید نرم افزار، روش های تولید و توسعه، کیفیت در نرم افزار و به طور کلی مباحث تکنیکی و مدیریتی این حوزه کم تر آگاه هستند. برای نمونه در بسیاری از پروژه ها در حالی که برای مثال فرآیندی تکرارپذیر مانند RUP را به عنوان روش تولید نرم افزار در متن قرارداد بیان می کنند، مراحل تحویل فرآورده های پروژه را آبشاری مشخص می کنند.
به هر حال هر مدیر پروژه بسته به ویژگی های سازمان کارفرما یا مشتریان خود، می تواند اقلام جدیدی به فهرست بالا اضافه کند.
نویسنده: حمید مشرف
منبع : شبکه فن آوری اطلاعات ایران


همچنین مشاهده کنید