***5
- ورودی:
یک الگوریتم می تواند هیچ یا چندین کمیت ورودی داشته باشد که از محیط خارج تامین می شود.
***6
خروجی:
الگوریتم بایستی حداقل یک کمیت بعنوان خروجی ایجاد کند.
۳- قطعیت:
هر دستورالعمل باید واضح و بدون ابهام باشد.
***7
- محدودیت:
اگر ما دستورالعملهای یک الگوریتم را دنبال کنیم برای تمام حالات باید پس از طی مراحل محدودی الگوریتم خاتمه یابد.
***8
۵- کارایی:
تنها قطعیت کافی نیست بلکه هر دستورالعمل نیز باید انجام پذیر باشد.
پایان پذیری تفاوت میان یک برنامه و یک الگوریتم است.
***9
nپیچیدگی فضای لازم
میزان حافظه یا پیچیدگی فضای یک برنامه مقدار حافظه مورد نیاز برای اجرای کامل یک برنامه است.
***12
نیازمندیهای فضای متغیر:
این مورد شامل فضای مورد نیاز متغیرهای ساخت یافته استکه اندازه آن بستگی به نمونه ای از مساله ای که حل می شود دارد.
***17
روش آبشاری:
این روش فرایند نرم افزار را متشکل از چند مرحله می داند. پس از تعریف هر مرحله توسعه نرم افزار به سمت مرحله بعدی پیش می رود
***18
۲- برنامه نویسی اکتشافی:
در این روش در حداقل زمان ممکن سیستمی ایجاد می شود و سپس اصلاحات لازم در آن بوجود می آید تا به درستی عمل کند.
***19
طراحی شی گرا:
طراحی شی گرا بر مبنای پنهان سازی اطلاعات و نهادها است که دارای یک حالت اختصاصی و اعمالی بر روی آن حالت است.
***20
ویژگیهای طراحی شی گرا:
۱- ناحیه مشترک داده ها حذف می شود.
۲- اشیا نهادهای مستقلی هستند که قابل تغییر می باشند.
۳- اشیا ممکن است توزیع شده باشند و بصورت موازی یا ترتیبی اجرا شوند.