• توضیحات: در میان خطوط برنامه و در هر کجا که لازم باشد، باید توضیحاتی ارائه گردد. این توضیحات عموما”برای مشخص کردن کار ماجول ها، متغیرها و یا روش انجام کار استفاده می شود.
  • ۱-۵-۵ قابلیت استفاده مجدد
    بکارگیری یک برنامه و یا قسمتی از آن را در تولید نرم افزار جدید، امکان استفاده از نرم افزار را گویند. همانطور که در تهیه سخت افزار جدید، تراشه ها باز سازی مجدد نمی شوند و از آنها استفاده می گردد، در مورد نرم افزار نیز چنین نمی باشد. عوامل موثر در قابلیت استفاده مجدد عبارتند از:
    عدم استفاده از متغیرهایی جهانی: استفاده از متغیرهای محلی و پارامترها در برنامه موجب می گردد تا وابستگی به دیگر اجزا و قسمت ها وجود نداشته باشد.
    کتابخانه ها : وجود کتابخانه ها موجب می گردد تا راحت تر و بهتر بتوان از قسمت های مختلف استفاده مجدد نمود. چرا که خاصیت اصلی کتابخانه، استقلال اجرایی می باشد.
    استقلال: استقلال دارای دو جنبه می باشد. یکی استقلال سخت افزاری و دیگر استقلال نرم افزاری است. هیچ وقت نرم افزاری به طور کامل مستقل از سخت افزار نمی باشد. حتی نرم افزارهای تولید شده توسط زبان جاوا نیز دارای استقلال نیستند(زیرا چنین برنامه هایی قابلیت اجرایی ندارند و باید توسط یک مرورگر جاوا به اجرا درآیند).
    پیمانه[۱۴] بهتر است در هر برنامه انجام کارها توسط قسمت ها(رویه ها و یا توابع)انجام شوند. به طوری که بتوان از آن قسمت ها در برنامه های دیگر هم بهره برد. در این مقوله یک سوال مهم این است که اندازه قسمت چقدر باشد؟ هرچه قسمت کوچکتر باشد، به همان نسبت قابل فهم تر نیز هست. ولی قسمت های کوچک در هنگام بسط و تکمیل برنامه در معرض از بین رفتن قرار می گیرند. یک نظریه این است که قسمت نباید بیشتر از یک صفحه(بین ۴۰تا ۵۰خط)باشد. نظریه دیگر این است که باید هر قسمت عموما”هفت خط و در صورت نیاز حداکثر ۹ خط دستور باشد. وجود عدد هفت ریشه روانی دارد. سوال دومی که مطرح است، میزان پیچیدگی قسمت چه مقدار باید باشد؟ منطق موجود در هر قسمت باید تا آنجا که ممکن است ساده و آسان باشد. ولی این سادگی با حجم یک قسمت در تضاد می باشد. بنابراین در هنگام تهیه قسمت ها جواب این دو سوال باید در حالت تعادل باشند. سوال سوم، میزان فعل و انفعالات بین قسمت ها باید چقدر باشد؟ مسلم است که هر چه مقدار ارتباط قسمت ها کم تر باشد، بهتر است. طبق بررسی های انجام شده به این نتیجه رسیده اند که بیشتر از چهار پارامتر به هر قسمت نباید داده شود.
    ۱-۵-۶ انعطاف پذیری نرم افزار
    برای آنکه برنامه یا قسمتی از آن در جای دیگر به کار رود (قابلیت استفاده مجدد) باید تغییراتی صورت گیرد تا برای کار جدید و یا محیط جدید بکار آید. در این حال، انعطاف پذیری روال نقش بسیار مهمی در انجام تغییرات و استفاده مجدد خواهد داشت. از مزایای انعطاف پذیری می توان به بالا رفتن سرعت برنامه نویسی، سادگی نگهداری برنامه، افزایش خوانایی و قابلیت استفاده مجدد نام برد.
    ۱-۵-۷ قابلیت حمل
    امکان جابجایی نرم افزار از یک محیط کاری به محیط کاری دیگر را قابلیت حمل گویند. این محیط می تواند کامپلیر، سیستم عامل و یا سخت افزار باشد. قابلیت حمل در دو سطح کلی مطرح است. یکی قابلیت حمل از یک محیط به محیط هم خانواده و دیگری قابلیت حمل از یک محیط به محیط متفاوت دیگر است. با ظهور زبان های سطح بالا و ایجاد استانداردهای بین المللی، دور نمای روشنی برای تهیه برنامه های کاربردی قابل انتقال ایجاد شده است. عوامل موثر در قابلیت حمل عبارتند از:

    • عدم وابستگی به سیستم عامل: یعنی اگر در برنامه سیستم عامل داس نوشته شده است، بتوان آن را در سیستم عامل دیگری نیز اجرا نمود.
    • عدم استفاده مستقیم از دستورات و عملیات سیستم عامل: اگر در برنامه از دستورات و امکانات خاص سیستم عامل داس استفاده شده است (استفاده از وقفه های داس) ، در سیستم عامل دیگری قابلیت اجرایی نخواهد داشت.
    • عدم وابستگی به سخت افزار: این عدم وابستگی در دو سطح مطرح می گردد. حالت اول در سخت افزارهای هم خانواده است. یعنی اگر بر روی پردازنده ۸۰۲۸۶ اینتل کار کند، بتواند بر روی پردازنده های هم خانواده دیگر مانند ۸۰۴۸۶ و غیر نیز اجرا شود. حالت دوم در سخت افزار های غیر هم خانواده است. بدین معنی که اگر برنامه ای بر روی کامپیوترهای شخصی سازگار با IBM اجرا شد. بتواند بر روی کامپیوترهای دیگر(اعم از شخصی و غیر شخصی) نیز اجرا شود.
    • کامپلیر: برای تهیه برنامه باید از کامپلیرهایی که در تمام محیط هایی که قرار است برنامه در آنها اجرا شود، موجود باشند. همچنین امکان استفاده غیر مستقیم از امکانات سیستم عامل و سخت افزاری را در اختیار قرار دهند.
    • استفاده از زبان های سطح بالاتر: در زبان های سطح پایین وابستگی شدیدی به سخت افزار وجود دارد (مانند زبان اسمبلی). هر چه از زبان سطح بالاتری استفاده نماییم، امکان انتقال آن نرم افزار بیشتر می شود.
    • پیمانه ای بودن نرم افزار: نرم افزار اگر متشکل از قسمت ها (ماجول ها) باشد، می توان اجزایی که وابسته به سخت افزار هستند (از دستورات سخت افزار و یا سیستم عامل بهره می برند) را برای محیط جدید تغییر داد.
    • شرایط محیطی قابل تعریف و مشخص: شرایطی که باید در یک کامپیوتر تعریف نمود تا برنامه اجرا شود.

    ۱-۵-۸ سادگی[۱۵]
    سادگی عبارت است از میزان عدم پیچیدگی در نرم افزا

    برای دانلود فایل متن کامل پایان نامه به سایت ۴۰y.ir مراجعه نمایید.

    ر. هر چقدر برنامه ای راحت تر درک شود، دارای سادگی بیشتری است. سادگی دارای دو جنبه است. یکی در سهولت استفاده و دیگری در ساختمان و برنامه نویسی است. سادگی در استفاده بدین معنی است که کاربر برنامه، به سادگی هرچه تمام تر بتواند از آن استفاده کند(مانند سیستم عامل ویندوز در برابر سیستم عامل داس).سادگی در ساختمان و برنامه نویسی بدین مفهوم است که به سادگی ساختار و نحوه عمل برنامه درک شود و همچنین با منطقی ساده، پیاده سازی شود.
    ۱-۵-۹ قابلیت نگهداری
    میزان تلاشی که لازم است تا اشکالی در برنامه پیدا کرده و تصحیح شود و یا خواسته های جدید در برنامه گنجانده شوند را، قابلیت نگهداری گویند. نگهداری نرم افزار به دو دسته “تکمیلی” و “تصحیحی” تقسیم می شود. در نگهداری تصحیحی، اشکالات موجود در برنامه مشخص شده و رفع می گردند. نگهداری تکمیلی شامل اعمال خواسته های جدید در برنامه است. به مرور زمان شرایط تغییر پیدا می کنند و در نتیجه خواسته ها نیز یا تغییر می یابند و یا خواسته های جدیدی مطرح می شوند. بنابراین برای پوشش دادن به این خواسته های جدید برنامه را به گونه ای تغییر داد که نیازهای مطروحه را برآورده سازد. عمدا” ۷۰% کل هزینه یک سیستم را انواع نگهداری تشکیل میدهد. هرچه هزینه ای که برای ساخت یک نرم افزار صرف می شود بیشتر باشد، هزینه نگهداری آن پایین می آید. از جمله عوامل بالا رفتن هزینه نگهداری، می توان به موارد زیر اشاره نمود:

    • ضعف طراحی
    • کمبود مستندات
    • ناهمگونی مستندات با سیستم پیاده شده
    • عدم ثبت تاریخچه تغییرات

    ۱-۵-۱۰ تحمل اشکال[۱۶]
    این امر که برنامه های کامپیوتری بتوانند در برابر بروز اشکالات احتمالی عکس العمل مناسبی را از خود نشان دهند، مسئله مطرحی است. در اکثر برنامه ها و در هنگام بروز اشکال، ناگهان از برنامه خارج شده و یا کامپیوتر دیگر هیچ کاری انجام نمی دهد(اصطلاحا” قفل می کند). مانند این است که شما در یک هواپیما و در ارتفاع ۱۰۰۰۰ پایی قرار داشته باشید و به طور ناگهانی و بدون هیچ گونه اخطار قبلی، هواپیما منفجر شود.
    حال اگر برنامه طوری نوشته شود که دلیل بروز خطا، و یا شماره خطی از برنامه که خطا در آن رخ داده است اعلام شود، کاربر می تواند خطا را پیگیری و احتمالا” مشکل را حل نماید. حداکثر این که پیغام خطا را به تهیه کننده برنامه اعلام می دارد تا وی بتواند مشکل را حل نماید. بهترین حالت ممکنه این است که برنامه با وجود بروز خطا، به کار خود ادامه دهد و یا بصورت عادی(نه به صورت غیرمنتظره) از برنامه خارج شود(همچنین برنامه می تواند از کاربر بخواهد تا خود وی از برنامه خارج شود). امروزه با وجود ابزارهای جدید، این امر به راحتی امکان پذیر می باشد. به عنوان مثال در ابزار Delphi با استفاده از دستور try except…. و یا در foxpro با استفاده از دستورon error، می توان این کار را انجام داد.
    ۱-۵-۱۱ قابلیت نصب[۱۷]
    تبدیل یک نرم افزار از حالت بسته بندی به حالت در حال اجرا را نصب گویند. حال نرم افزاری که کار نصب آن ساده تر و راحت تر انجام شود، به عنوان نرم افزار قابل نصب شناخته می شود. از جمله عواملی که در ساده شدن نصب برنامه موثر است می توان به عوامل زیر اشاره کرد:

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