پنجشنبه, ۲۰ اردیبهشت, ۱۴۰۳ / 9 May, 2024
مجله ویستا

در طراحی نرم‌‏افزار کیفیت را در اولویت قرار دهیم


در طراحی نرم‌‏افزار کیفیت را در اولویت قرار دهیم
از سیستم‌‏های پیشرفته سرگرمی‌‏های خانگی گرفته تا سیستم‌‏های پیچیده مالی و تجاری كه معاملات چند میلیاردی را در سراسر جهان سازمان‌‏دهی می‌‏كنند، همگی با نرم‌‏افزار سر و كار دارند، به عبارت دیگر نرم‌‏افزار بخش جذایی ناپذیری از فعالیت‌‏های انسان مدرن است.
این میزان وابستگی انسان‌‏ها به محصولات نرم‌‏افزاری و استفاده این دستاورد بزرگ در دنیای الكترونیك تاثیر نارسایی‌‏های نرم‌‏افزاری را افزایش می‌‏دهد. امروزه تولید كنندگان و طراحان نرم‌‏افزار با طیف گسترده‌‏ای از مخاطبان روبرو هستند كه از آنها به عنوان كاربر یاد می‌‏شود. این كاربرها نمی‌‏توانند وجود نارسایی در محصولات نرم‌‏افزاری را تحمل كنند, در حالی كه شخصی كه دارای دانش تخصصی است و با ویژگی‌‏های نرم‌‏افزار آشنا است، نواقص و كاستی‌‏ها را پدیده‌‏ای عادی تلقی می‌‏كند. با وجود اینكه ریسك از دست دادن اعتماد مشتریان در نتیجه نارسایی‌‏های موجود در محصولات نرم‌‏افزاری در فضای كنونی فناوری افزایش یافته است، شركت‌‏هایی كه در حوزه طراحی نرم‌‏افزار فعالیت می‌‏كنند اساساً همان راه سنتی خود را می‌‏روند.
فرایند كنونی حاكم در طراحی نرم‌‏افزار به گونه‌‏ای نیست كه با تضمین كیفیت محصول در راستای كاهش نارسایی‌‏ها و بهبود بخشیدن تجربه كاربر از آن عمل كند. از سوی دیگر؛ فشار فزاینده بازاریابی و تلاش شركت‌‏ها برای عرضه سریع‌‏تر محصول، مهندسان را مجبور می‌‏كند زمان كمتری را صرف طراحی محصول یا ارتقای نسخه‌‏های جدید آن كنند كه این امر خود شرایط را بدتر می‌‏كند. عوامل مذكور باعث می‌‏شود مجموعه‌‏ای از نارسایی‌‏ها در طراحی نرم‌‏افزار به وجود بیاید؛ هزینه‌‏های پشتیبانی پس از فروش افزایش یابد و سابقه بدی كه كیفیت پایین‌‏ نرم‌‏افزار بر جا می‌‏گذارد تشدید شود. پژوهش‌‏های دانشگاهی نشان می‌‏دهد كه تنها در سال ۲۰۰۲ , صنعت فناوری رقم سرسام‌‏آوری معادل ۶۰ میلیارد دلار را صرف تشخیص و ترمیم نارسایی‌‏های موجود در محصولات نرم‌‏افزاری كرد. شمار زیادی از شركت‌‏ها در گزارش‌‏های خود گفته‌‏اند حدود ۵۰ درصد هزینه‌‏های طراحی نرم‌‏افزار را به تشخیص و ترمیم نارسایی‌‏های موجود در محصولات خود اختصاص می‌‏دهند.
بدیهی است كه وقت آن رسیده تغییراتی بنیادین در نحوه طراحی نرم‌‏افزارها ایجاد شود تا منابع با ارزش شركت‌‏ها صرف كار مجدد بر روی محصولاتی كه می‌‏توانست از اول با دقت بیشتری طراحی شود نگردد.
آزمایش؛ مرحله‌‏ای كه در طراحی نرم‌‏افزار نادیده گرفته شده است.
نتایج یك نظرسنجی از مدیران ارشد فناوری شركت‌‏های فروشنده نرم‌‏افزار و مدیران اطلاعات شركت‌‏های IT نشان می‌‏دهد بیشتر مدیران در این مورد اجماع دارند كه صنعت فناوری مساله تضمین كیفیت نرم‌‏افزار را نادیده گرفته و سرمایه‌‏گذاری در این زمینه كمتر از میزان بایسته است.
این پدیده غالباً به صورت‌‏های زیر نمود می‌‏كند:
- شركت‌‏ها در برنامه خود یك مرحله آزمایش رسمی را در پایان چرخه طراحی نرم‌‏افزار می‌‏گنجانند. بیشتر آزمایش‌‏هایی كه قبل از این مرحله انجام می شود غیر رسمی و موقتی است و در آنها بسیار به جنبه‌‏های مهندسی توجه می‌‏شود تا شرایط و نیازهای كاربر.
- بعضی از آزمایش‌‏ها تا اواخر چرخه مهندسی نرم‌‏افزار كاملاً نادیده گرفته می‌‏شوند، آزمایش‌‏هایی كه غالباً نادیده گرفته می‌‏شوند از نوع WHITE - BOX ( آزمایش انطباق عملكرد بازدهی نرم افزار با توجه به ساختار درونی و كد دهی آن) و تست عملكرد هستند. این نادیده گرفتن و اهمال در آزمایش‌‏های لازم باعث بروز نارسایی در نرم‌‏افزار و مشكلات عملكردی در مواقعی می‌‏شود كه به تصور مهندسان در مرحله طراحی توجه لازم به آن شده است.
- نبود برنامه‌‏ریزی رسمی برای آزمایش نرم‌‏افزار؛ مشخص نبودن و ناهماهنگی روش‌‏ها و ابزار آزمایش نظیر نرم‌‏افزارهای موجود, خدمات حرفه‌‏ای كارشناسان تست نرم‌‏افزار و چهارچوب‌‏های آزمایش.
- نبود معیارهای رسمی سنجش كیفیت كه باعث كاهش كارایی تصمیم‌‏گیری‌‏های مدیریتی می‌‏شود. تصور كنید شركت از یك طرف باید نرم‌‏افزار را به موقع در اختیار مشتری مهم خود قرار دهد و از طرف دیگر نیازمند سرمایه‌‏گذاری بیشتر بر روی آزمایش محصول خود است؛ حال آن كه اهداف كیفی مشخصی برای محصول خود ندارد. چنین شركتی تلاش می‌‏كند اعتبار خود را نزد مشتری از دست ندهد؛ اما عدم وجود معیارهای كیفی باعث می‌‏شود مدیران این شركت در تصمیم‌‏گیری‌‏های خود دچار ناتوانی و سرگردانی شوند. مهمترین پیامد اجرای یك پروژه طراحی نرم‌‏افزار كه از كاستی‌‏های فوق رنج می‌‏برد این است كه تیم مهندسی اهداف كیفی را نمی‌‏شناسد و در راستای آنها عمل نمی‌‏كند. این امر باعث می‌‏شود میزان سرمایه‌‏گذاری بر روی آزمایش محصول با اهداف كاربردی نرم‌‏افزار سازگار نباشد و ریسك توان نرم‌‏افزار در تامین نیازهای كاربر افزایش یابد.
الگوی برنامه‌‏ریزی كیفیت؛
سازمان‌‏هایی كه به كمك متخصصان تست نرم‌‏افزار فعالیت‌‏های خود را به بهترین وجه ممكن انجام می‌‏دهند برنامه‌‏های عمده طراحی نرم‌‏افزار را با صرف زمان برابر برای تعیین اهداف كیفی و كاربرد محصول خود آغاز می‌‏كنند. در این نوع برنامه‌‏ریزی در درجه اول مجموعه‌‏ای از معیارها مشخص می‌‏شود كه بخش‌‏های مهندسی, مدیریت محصول و مدیریت اجرایی می‌‏توانند از آنها برای نظارت بر پیشرفت كیفی نرم‌‏افزار در دست طراحی كمك بگیرند. این معیارها امكان كنترل نارسایی, اندازه‌‏گیری ریسك نارسایی‌‏ها, بسامد نارسایی‌‏ها, عملكرد و هزینه آزمایش را فراهم می‌‏كند. سپس, به عنوان بخشی از برنامه‌‏ریزی اولیه پروژه تیم مهندسی توجه خود را روی جنبه‌‏های اساسی هماهنگ كردن مدیریت آزمایش و كیفیت نظیر برنامه تست واحد, برنامه تست عملكرد, قابلیت اتوماسیون تست, برنامه تست پس‌‏رفت, فرایندهای نظارت بر آزمایش و گزارش‌‏دهی و فرایندهای مهندسی متمركز می‌‏كند تا نارسایی‌‏های شناسایی شده را برطرف كند. این برنامه‌‏ریزی و سازمان‌‏دهی فرایند آزمایش به مدیران و مهندسان این توان را می‌‏دهد كه در تعیین میزان سرمایه‌‏گذاری بر روی منابع آزمایش, نرم‌‏افزارهای لازم, خدمات حرفه‌‏ای كارشناسان آزمایش نرم‌‏افزار و زیرساخت با دانش و دقت بیشتری عمل كنند. یكی از جنبه‌‏های كیفیت نرم‌‏افزار كه غالباً نادیده گرفته می‌‏شود امكان ردیابی و پی‌‏گیری نرم‌‏افزار بعد از رسیدن به دست مشتری است. داشتن ارتباط مستقیم و پیوسته با مشتری می‌‏تواند به شركت در تشخیص و رفع سریع نواقص عملكردی محصول آن كمك كند. تیم‌‏های مهندسی كه بر روی كیفیت سرمایه‌‏گذاری می‌‏كنند باید بر روی سیستم‌‏های ردیابی محصول نیز سرمایه‌‏گذاری كافی انجام دهند. تا بتوانند با تحلیل و بررسی نواقص, عوامل اصلی تضعیف كننده و تقویت كننده كارایی نرم‌‏افزار را شناسایی كنند. ردیابی كارآمد به مهندسان اجازه می‌‏دهد با تشخیص به موقع از عوامل اصلی عملكرد خوب یا بد نرم‌‏افزار درس بگیرند. تیم مهندسی باید در تعیین سیستم مدیریت كیفیت چارچوب انعطاف‌‏پذیری را ایجاد كند تا با پیشرفت پروژه متناسب با شرایط در روش‌‏ها و معیارها تغییراتی ایجاد كند. سازمان‌‏هایی كه غالباً در اجرای پروژه‌‏های بزرگ نرم‌‏افزاری با كیفیت بالا موفق بوده‌‏اند آنهایی هستند كه برای درسی كه از نتایج پروژه
می‌‏گیرند اهمیت خاصی داده‌‏اند. در پایان هر پروژه حقایقی آشكار می شود كه می‌‏تواند در افزایش كارآیی پروژه‌‏های آینده شركت تاثیر به سزایی داشته باشد. تیم مدیریت اجرایی اصولاً تلاش می‌‏كند با مرور نتایج پروژه قوانینی را برای فعالیت موفق‌‏آمیزتر در پروژه‌‏های آینده استخراج كند.
نتیجه‌‏گیری؛
شركت‌‏هایی كه رویكرد كارآمدتر و آزموده‌‏تری به مدیریت كیفیت دارند دستاوردهای برتری خواهند داشت؛ به این معنی كه ثبات عملكرد سیستم آنها بالاتر و هزینه‌‏های پشتیبانی پس‌ از ‏فروش آنها پایین‌‏‌‏تر خواهد بود.و نهایتاً این كه هر موفقیتی هزینه خاص خود را دارد. سازمان‌‏هایی كه به دنبال تغییر اساسی در مدیریت كیفیت محصولات خود هستند باید راه درازی را طی كنند و در درجه اول سرمایه‌‏گذاری‌‏های لازم را انجام دهند. شركت‌‏هایی كه دست به چنین سرمایه‌‏گذاری‌‏های می‌‏زنند نه تنها هزینه پشتیبانی پس از فروش را كاهش می‌‏دهند؛ بلكه می‌‏توانند محصولات نرم‌‏افزاری جدید خود را در زمان كوتاه‌‏تری طراحی و عرضه كنند. بدیهی است كه كاهش زمان طراحی نرم‌‏افزار می‌‏تواند موفقیت شركت‌‏ها را در بازار رقابتی امروز تضمین كند.
منبع CNET
منبع : خبرگزاری ایلنا