بخشی از مقاله
معیارهای ارزیابی کیفیت داخلی و خارجی ISO/IECYY S Jaco
چکیده
با پیشرفت روز افزون فناوری اطلاعات، سازمانها و شرکتهای تولید کننده و مصرف کننده ی محصولات نرم افزاری به اهمیت غیر قابل انکار کیفیت محصول پی برده اند و مدیران پروژه های فناوری اطلاعات را به استفاده از آن جهت افزایش کارآیی و ماندگاری سیستم و البته رضایت بیشتر مشتریان وادار می نماید. در این میان داشتن یک مدل کیفی مناسب برای تولید کنندگان محصول نرم افزاری ، نقش حیاتی را در پروژه های فناوری اطلاعات ایفا می نماید. بنابراین آشنایی وشناسایی الزامات کیفی یکی از موارد ضروری برای مدیران پروژه می باشد که می توانند با دید بهتری، زمانبندی صحیحی از پروژه ارائه نموده و مانع از فسخ قراردادها در هر مرحله از تولید محصول شوند. ۹۱۲۶ ISO/IEC به منظور دستیابی به هدف ارتقاء سطح کیفیت محصول از تمام دیدگاهها به عنوان استاندارد معتبر در بسیاری از نقاط جهان، مورد استفاده قرار میگیرد. این استاندارد می تواند مرجع کاملی برای پروژههای IT و تیم کنترل کیفی و مدیران پروژه باشد. در این مقاله، نخست حیطهای کاری ۹۱۲۶ ISO/IEC را در چرخه ی حیات نرم افزار مشخص نموده و سپس مدل کیفیت ارائه شده توسط این استاندارد را توصیف نموده و معیارهای مربوط به هر بخش را بررسی می نماید. واژه های کلیدی: معیار، کیفیت داخلی ، کیفیت خارجی ، مدل کیفیت کیفیت محصول نرم افزاری یکی از موارد ضروری در مراحل مختلف تولید و توسعه ی محصولات می باشد ولیکن تولید کنندگان به این مقوله آنچنان که باید اهمیت نداده و یا زمانی به آن می پردازند که بخش اعظم کار انجام شده است و چه بسا هزینه های هنگفتی را متحمل می شوند. یکی از عوامل موثر
در اتمام پروژه ها 9 طولانی نشدن آنها داشتن یک مدل کیفی مناسب با آن محصول است. اغلب تولید کنندگان تنها سعی در اتمام پروژه دارند اما صورت رعایت نکردن مباحث کیفی زمان اتمام پروژه طولانی تراز آنچه که پیش بینی می نمودند، می شود. ۹۱۲۶ ISO/IEC مشخصات وزیر مشخصات و معیارهای مورد نیاز در هر بخش از چرخه حیات را جهت ارزیابی محصول ارائه نموده است.
این استاندارد کیفیت داخلی و کیفیت خارجی و کیفیت در استفاده را بررسی می نماید. مشخصات و زیر مشخصات مربوط به کیفیت داخلی و کیفیت خارجی یکسان است ودر واقع تفاوت آن در برخی از معیارهای مورد بررسی آن در شرایط مختلف از دیدگاههای مختلف میباشد. در این مقاله سعی نموده ایم در ابتدا به معرفی استاندارد، کیفیت داخلی، خارجی و مشخصات آنها پرداخته سپس بخشی از معیارهای مورد نیاز برای هر زیر مشخصه را شرح دهیم .
۲- استانداردهای مورد نیاز چرخه تولید محصول نرم افزاری
دو استاندارد ۱۴۵۹۸ ISO/IEC و ۹۱۲۶ ISO/IEC در چرخه ی تولید محصول نرم افزاری وجود دارد که در شکل(۱) نشان داده شده است.
استاندارد ۹۱۲۶ دارای چهار بخش است که بخش اول آن مدل کیفیت را بیان می نماید و سه بخش بعدی گزارش فنی از معیارهای مربوط به هر زیرمشخصه را شرح می دهد.
۳- کاربرد استاندارد ۹۱۲۹
نمونه هایی از کاربرد این استاندارد در زیر آورده شده است. - اعتبارسنجی تمام الزامات تعریف شده شناسایی نیازهای نرم افزار شناسایی اهداف طراحی نرم افزار شناسایی اهداف تست نرم افزار شناسایی ضوابط تضمین کیفیت یکی از فرایندها در چرخه ی حیات توسعه ی نرم افزار، ارزیابی محصول نرم افزاری جهت برآورده نمودن نیازهای کیفیت نرم افزار می باشد. کیفیت محصول نرم افزاری می تواند توسط اندازه گیری صفات داخلی " یا صفات خارجی" و یا توسط اندازه گیری صفات کیفیت در استفاده " ارزیابی گردد. کیفیت فرایند منجر به بهبود کیفیت محصول، و کیفیت محصول منجر به بهبود کیفیت در استفاده می شود. بنابراین تشخیص وبهبود یک فرایند وسیله ای است جهت بهبود کیفیت محصول و همچنین ارزیابی و بهبود کیفیت محصول، وسیله ای جهت بهبود در کیفیت در استفاده می شود. بطور مشابه، ارزیابی کیفیت در استفاده، میتواند بازخوردی برای بهبود محصول را فراهم نماید و ارزیابی یک محصول می تواند بازخوردی جهت بهبود فرایند را فراهم نماید.۲,۳,۴]
۶- کیفیت داخلی، کیفیت خارجی و کیفیت در استفاده
در استاندارد ۹۱۲۶ سه دیدگاه کیفیت داخلی، کیفیت خارجی و کیفیت در استفاده وجود دارد . شکل (۲) کیفیت داخلی : کل صفات و ویژگی های محصول، که قادر به انجام نیازهای دلالت شده و وضع شده تحت شرایط مشخص می باشد را بیان می نماید. کیفیت خارجی : بیان می نماید که تا چه اندازه نیازهای دلالت شده و وضع شده ی یک محصول تحت شرایط مشخص برآورده شده است. کیفیت در استفاده: بیان می نماید که تا چه اندازه یک محصول استفاده شده توسط کاربران مشخص، با نیازهای آنها در دستیابی به اهداف مشخصی ازجمله اثربخشی و سودمندی منطبق می باشد.
دیدهای کیفیت داخلی، کیفیت خارجی، کیفیت در استفاده در طول چرخه ی حیات نرم افزار تغییر می نماید. s طراحی کیفیت، اساسا از دید توسعه دهندگان و دید داخلی است. بنابراین لازم است که این دیدها و تکنولوژی های وابسته به کیفیت هر مرحله از چرخه ی حیات، توسط راهبر یا اداره کننده ی کیفیت تعریف گردد. ودر واقع هدف، دستیابی به کیفیت لازم و کافی جهت برآوردن نیازهای کاربران است. نیازهای یک کاربر در ابتدا همواره نیازهای واقعی او نیست بدلیل اینکه : - یک کاربر اغلب از نیازهای واقعی اش آگاه نیست. - نیازها پس از شروع ممکن است تغییر نماید. - کاربران مختلف ممکن است محیطهای عملیاتی مختلف داشته باشند. - ممکن است قادر به مشورت با انواع کاربران نباشیم. بنابراین الزامات کیفیت نمی تواند قبل از شروع طراحی تعریف شود. در عین حال باید نیازهای واقعی کاربران به جزیی ترین حد ممکن، درک شده ودر الزامات بیان شود.[۱] سطح کیفیت در محیط کاربران ممکن است با محیط توسعه دهندگان تفاوت داشته باشد و این به دلیل تفاوت بین نیازها و توانایی های کاربران مختلف، همچنین به دلیل تفاوت بین محیطهای پشتیبانی و سخت افزاری مختلف میباشد. کاربران تنها آن قسمت از صفات و خصایص نرم افزاری را که در کارهایشان استفاده میشود، مورد ارزیابی قرار می دهند. برخی مواقع صفات نرم افزاری که توسط یک کاربر در مدت فاز آنالیز نیازها، مشخص می شود، نیازهای کاربر را زمانی که محصول استفاده می شود، براورده نمیکند زیرا نیازهای کاربران درحال تغییر است.[۱]
۵- عناصر ارزیابی شده
ناصر می توانند توسط اندازه گیری مستقیم ارزیابی شود ویا بطور غیر مستقیم توسط نتایج اندازه گیری شده ی آنها ارزیابی شود. نرم افزار هرگز به تنهایی اجرا نمیگردد بلکه همواره به عنوان بخشی از یک سیستم بزرگ که شامل محصولات نرم افزاری دیگر به همراه واسطها، سخت افزار، اپراتورها و جریانهای کاری اش می باشد، اجرا می شود. محصول نرم افزاری تکمیل شده می تواند توسط سطوحی از معیارهای خارجی منتخب ارزیابی گردد. این معیارها عکس العمل محصول نرم افزاری را در محیط توصیف نموده و توسط مشاهده ی نرم افزار در آن محیط ارزیابی می شود. در اوایل مراحل توسعه تنها منابع و فرایندها می توانند اندازه گیری شوند، ولیکن زمانی که محصول میانی (مانند کد) بدست آمد میتوان آنرا توسط سطوحی از معیارهای داخلی منتخب ارزیابی نمود. این معیارها می تواند برای پیش بینی مقادیر معیارهای خارجی استفاده گردند.[۱۲] تمایز دیگری میتواند بین ارزیابی محصول نرم افزاری در حال اجرا با سیستم نرم افزاری در حال اجرا وجود داشته باشد. به عنوان مثال قابلیت اطمینان یک سیستم، با مشاهده ی تمام شکست های ناشی ازخطاهای انسانی، نرم افزاری، سخت افزاری و غیره ارزیابی می شود، در حالی که قابلیت اطمینان محصول نرم افزاری با مشاهده ی شکست هایی که ناشی از نیازها و طراحی و پیاده سازی در نرم افزار است، ارزیابی می گردد.
6- استفاده از مدل کیفیت
کیفیت محصول نرم افزاری باید توسط یک مدل کیفیت تعریف شده، ارزیابی گردد. این استاندارد یک مدل جامع از کیفیت محصول را ارائه می نماید و لازم است که تولید کننده گان با توجه به این مدل یک مدل مناسب برای محصولشان ارائه نموده و ارزیابی های لازم را انجام دهند. مدیران پروژه نیز با مد نظر قرار دادن این مدل می توانند زمانبندی پروژه را با دقت بیشتری انجلم دهند. کیفیت محصول نرم افزاری بطور سلسله مراتبی به مدل کیفیت ترکیب شده از مشخصات " وزیر مشخصات که به عنوان یک چک لیستی از موضوع های مربوط به کیفیت است، تجزیه می شود.
۷- مدل کیفیت برای کیفیت داخلی و خارجی
در این مبحث یک مدل کیفیت برای کیفیت داخلی و خارجی را تعریف می نماییم. این مدل صفات کیفیت نرم افزار را به ۶ مشخصه دسته بندی نموده است. هر کدام از این مشخصات نیز به زیر مشخصه هایی تقسیم می شود. این زیر مشخصه ها می تواند توسط معیارهای داخلی یا خارجی اندازه گیری شود. شکل (۳)
۱ -۷ قابلیت کارکرد
توانایی محصول نرم افزاری برای فراهم نمودن توابعی که بتواند نیازهای ضمنی وجزیی را زمانیکه نرم افزار تحت شرایط مشخص استفاده می شود، برآورده نماید. این مشخصه دارای پنج زیر مشخصه ی برازندگی، صحت، قابلیت تعامل، امنیت، قابلیت کارکرد مطلوب می باشد.
۷-۱-۱ برازندگی
توانایی محصول نرم افزاری برای فراهم نمودن یک مجموعه مناسبی از توابع جهت اهداف کاربران و کارهای مشخص را گوییم. جدول (۱) نمونه ای از معیارهای مربوط به برازندگی آورده شده است.[۲٫۳]
۷-۱-۲ صحت
توانایی محصول نرم افزاری جهت فراهم نمودن نتایج دقیق و صحیح با درجه دقت مورد نیاز می باشد. معیارهای مربوط به این بخش، صحت مورد انتظار، صحت محاسباتی و دقت " می باشد. به عنوان نمونه جدول (۲) را مشاهده نمایید. [۲]
۷-۱-۳ قابلیت تعامل
توانایی تولید نرم افزار جهت تعامل با یک یا چند سیستم مشخص شده است. برخی از معیارهای مربوط به این قسمت را می توان قابلیت تغییر پذیری داده " و پروتکل های واسط نام برد.[۱٫۲]