منابع کارشناسی ارشد با موضوع طراحی و پیادهسازی ... - منابع مورد نیاز برای پایان نامه : دانلود پژوهش های پیشین |
زبانهای خاص دامنه بنا به تعریف به زبانهایی گفته میشود که حیطه خاصی از محاسبات را هدف گرفتهاند. این زبانها اگر به درستی انتخاب و بهکاربرده شوند، میتوانند در حوزه کاربردی خود، کدهای پیچیده زبانهای دیگر را به کدهای ساده و خوانا تبدیل کرده، ارتباط مؤثرتر با مشتریان را فراهم کرده، بهرهوری را بالاتر برده و گلوگاههای فرایند کد نویسی را از بین ببرند. این زبانها معمولاً کوچک هستند و بر جنبه خاصی از یک سیستم نرمافزاری متمرکزشدهاند. با این زبانها نمیتوان یک برنامه کامل نوشت، بلکه معمولاً در یک سیستم نرمافزاری که خودش با یک زبان همه منظوره نوشته شده است، از چندین زبان خاص دامنه استفاده میشود (تفکر برنامهنویسی زبان گرا) [۶].
برای کارشناسان دامنه سادهتر است که از زبانهای خاص دامنه استفاده کنند تا از زبانهای خصوصیات رسمی، همچنین دقت بالاتر در زبانهای خاص دامنه نسبت به زبانهای طبیعی، ساخت ابزار را برای آن آسان تر میکند و این ساده شدن به کمک محدود کردن زبانهای خاص دامنه به دامنه خط محصول نرمافزار در حال توسعه به دست آمده است [۷].
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
به رغم اینکه مدت مدیدی از پدیدار شدن زبانهای خاص دامنه میگذرد، اما فقدان دانش برنامهنویسی با این زبانها مانع بزرگی در توسعه و فراگیری آنها است و به همان میزان در کاهش سرعت و بهرهوری پروژههای خاص نرمافزاری مؤثر است. معمولاً بر استفاده از زبانهای خاص دامنه به عنوان لایهای روی یک کتابخانه معمولی تأکید فراوانی شده است. به این ترتیب، برنامهنویس این دو مورد را باهم پیش برده و روشهایی را نیز در زمینه تولید کد[۱۲] یاد خواهد گرفت [۸].
در بسیاری از زبانهای خاص دامنه برای رسیدن به درک آنها نیاز به مهارت های برنامهنویسی است و توسط متخصصین حرفهای فناوری اطلاعات و نرمافزار در کارهای روزانه، ساختار و سیستمهای حفظ و مدیریت استفاده می شود. آنها برای یک جنبه فنی ویژه از توسعه سیستم خاص هستند؛ بنابراین حوزه CSS[13] به عنوان یک زبان خاص دامنه و به طور کلی توسعه وب و به خصوص سبک نگارش و طرحبندی است. بسیاری از توسعهدهندگان وب از یک پس زمینه طراحی گرافیکی شروع و تبدیل به متخصصینی به عنوان کد نویسان HTML، CSS و جاوا اسکریپت میشوند، تنها به این دلیل که این کار به آنها کنترل ریزدانهی بهتری در فرایند طراحی میدهد. بسیاری از طراحان گرافیک، به همین دلیل، در نهایت خود را به گونه ای در مییابند که برای بهتر شدن کد از ابزارهای گرافیکی مانند دریمویور[۱۴] اجتناب می کنند. هدف در زندگی این نیست که همه به یک کد نویس تبدیل شوند. با اینکه بسیاری از زبانهای خاص دامنه در قلمرو برنامهنویس باقی میمانند، موارد بسیاری وجود دارند که در آن یک زبان خاص دامنه که به خوبی طراحی شده، می تواند با سایر کسانی که در فرایند توسعه سهم دارند، به غیر از توسعهدهندگان حرفهای استفاده شود. در برخی موارد، زبانهای خاص دامنه میتوانند آنهایی که در فرایند توسعه سهم دارند را قادر سازند باعث به وجود آمدن قسمت هایی از سیستم شوند به گونهای که این قسمت ها را قادر سازند که خودشان، خود را کد نویسی کنند. در موارد دیگر، زبان خاص دامنه می تواند یک نمایش از سیستم شود که به اشتراک گذاشته شده است. اگر هدف یک زبان خاص دامنه ویژه، پیادهسازی قوانین کسبوکار است، به صورت ایدهآل، آن زبان خاص دامنه باید قانون کسبوکار را به گونهای بیان کند که هم ذینفعان کسبوکار که آن را مشخص کردهاند و هم برنامهنویسی که آن را نوشته است وقتی آن را میخوانند به طور واضح آن را درک کنند [۹].
در اصل، زبان خاص دامنه یک نام جدید برای چیزی است که ما هر روز در زندگی برنامهنویسی حرفهای خود از آن استفاده میکنیم. برنامه های کاربردی زیادی وجود ندارند که بتوانند به طور کامل در یک زبان همه منظوره واحد نوشته شوند. به این ترتیب ما همهروزه مصرفکنندگان تعداد زیادی از زبانهای خاص دامنه مختلف هستیم که هر کدام از آنها مختص یک هدف خاص است. اصطلاح زبان خاص دامنه فقط چند سال است که وجود دارد. این اصطلاح یک زبان برنامهنویسی را توصیف می کند که مختص یک دامنه مسئلهی خاص است. زبانهای خاص دامنه مدت زمان زیادی است که در اطراف ما هستند. یکی از ویژگیهای هیجانانگیز یونیکس همیشه زبانهای مینی آن بوده است. زبانهای خاص دامنه شامل مجموعه ای غنی از زبانهای حروفچینی (troff, eqn, pic)، ابزارهای shell(awk, sed and so on) و ابزارهای توسعه نرمافزار (make, yacc, lex) میشوند. [۱۰]
۲-۵-۱ طراحی و پیادهسازی زبان خاص دامنه
زبانهای خاص دامنه اشکال مختلفی دارند. برخی از زبانهای خاص دامنه، مانند مینی زبانهای یونیکس (sed awk, troff)، ساختاری نحوی دارند که برای آن زبان خاص، یکتا است. برای اجرای چنین زبانهای خاص دامنهای، باید قادر به تجزیه این ترکیب نحوی به چیزی غیر از فایلهای متنی بود که حاوی کد منبع آن زبان خاص باشد تا بتوان زبان خاص دامنه خود را در این سبک (که شامل پیادهسازی یک مترجم کوچک است که از lexing و ابزار تجزیه مانند LEX، YACC و یا antlr استفاده می کند)، پیادهسازی کرد [۵].
نوشتن مترجم یک مهارت خاص است که خارج از مجموعه مهارت های اکثر گروه های توسعه نرمافزار است. نوشتن تجزیه کنندهای اختصاصی و یا مترجم دستور زبان، نیازمند تلاش قابلتوجهی است، مگر اینکه زبان خاص دامنه بخواهد به صورت کلی استفاده شود که این فراتر از محدوده بسیاری از زبانهای خاص دامنه خاص برنامه است.
بسیاری از زبانهای خاص دامنه که استفاده میشوند، در زبانهای دیگر جاسازیشدهاند. نمونه آن اکثر اسکریپتهای پیکربندی XML در پلت فرم جاواست. این مینی زبانهای خاص دامنه بر پشت نحو XML سوار شده اند و به صورت اختیاری میتوانند از یک تعریف شِما[۱۵] برای تعریف نحو خاص خودشان استفاده کنند.
۲-۵-۲ انواع زبانهای خاص دامنه
زبانهای خاص دامنه به سه دسته اصلی تقسیم میشوند: زبانهای خاص دامنه خارجی، زبانهای خاص دامنه داخلی و میز کار زبان[۱۶]: [۶]
زبان خاص دامنه خارجی، یک زبان جدا از زبان اصلی برنامهی کاربردی است که برنامه با آن کار می کند و معمولاً یک نحو سفارشی دارد، اما استفاده از نحو یک زبان دیگر نیز رایج است (XML انتخابی مکرر است). یک اسکریپت، زبان خاص دامنه خارجی است که معمولاً توسط یک کد در برنامهی میزبان بررسی و تفسیر خواهد شد (با بهره گرفتن از فنون تجزیه متن). سنت یونیکس با زبانهای کوچک، مطابق با این سبک است. نمونههایی از زبانهای خاص دامنه خارجی عبارتاند از عبارات منظم، SQL، AWK و فایلهای پیکربندیXML برای سیستمهایی مانندStruts و هایبرنیت.
زبان خاص دامنه داخلی روشی خاص برای استفاده از یک زبان همه منظوره است. یک اسکریپت در یک زبان خاص دامنه داخلی، کدی معتبر در زبان همه منظورهی خود است، اما تنها از یک زیرمجموعه از ویژگیهای این زبان در یک سبک خاص استفاده می کند که جنبه کوچکی از سیستم کلی را لمس می کند. نتیجه باید به جای اینکه زبان میزبان خود را نشان دهد، احساس یک زبان سفارشی را بدهد. مثال کلاسیک این سبک، لیسپ[۱۷] است. برنامهنویسان لیسپ اغلب از این برنامهنویسی به عنوان ایجاد و استفاده از زبانهای خاص دامنه یاد می کنند. روبی[۱۸] نیز فرهنگی قوی برای زبان خاص دامنه دارد. بسیاری از کتابخانه های روبی به سبک زبانهای خاص دامنه هستند. به طور خاص، معروفترین چارچوب روبی، یعنی ریلز[۱۹]، اغلب به عنوان مجموعه ای از زبانهای خاص دامنه دیده می شود.
میز کار زبان یک محیط توسعه یکپارچه تخصصی برای تعریف و ایجاد زبانهای خاص دامنه میباشد. به طور خاص، یک میز کار زبان فقط برای تعیین ساختار یک زبان خاص دامنه استفاده نمی شود بلکه به عنوان یک محیط ویرایش سفارشی برای مردم استفاده می شود که اسکریپتهای زبانهای خاص دامنه را بنویسند. اسکریپتهای به دست آمده محیط ویرایش و زبان را صمیمانه باهم ترکیب می کنند [۶].
هنگامی که صحبت از زبانهای خاص دامنه باشد، تصور می شود ساخت زبان خاص دامنه کاری دشوار است. در واقع، معمولاً کار سخت، ساخت مدل است. زبانهای خاص دامنه پس از آن فقط در بالای آن لایهبندی میشوند. هنوز تلاش لازم است تا زبان خاص دامنهای به دست آورد که خوب کار کند، اما این تلاش معمولاً از تلاشی که برای ساخت مدل اساسی می شود بسیار کمتر است. [۱۱]
به طور کلی به زبانهای خاص دامنه به این صورت اشاره شد که آنهایی که با نحو منحصربهفرد خود پیادهسازی شده اند، به عنوان زبانهای خاص دامنه خارجی معرفی میشوند و زبانهای خاص دامنه که در نحو یک زبان میزبان پیادهسازی شده اند، جاسازیشده، و یا زبانهای خاص دامنه داخلی هستند. در حالت ایده آل، هر زمان یک زبان خاص دامنه جدید ساخته شد، بهترین چیز می تواند این باشد که به آن نحو یکتا و فردی خودش داده شود؛ بنابراین میتوان ساختارهای زبانی تعریف کرد که هم با دامنه مسئله طراحی شدهاند و هم با مخاطبان هدف در ذهن [۵].
اگر کاربری که برای زبان خاص دامنه در نظر گرفته شده است، غیر برنامهنویس باشد، توسعه یک نحو بر پایه XML می تواند مشکلساز باشد. XML در باز و بسته شدن و درست خاتمه دادن به برچسبها دارای قوانین خاص خود است که برای هر کس به جز یک برنامهنویس، محرمانه به نظر میرسد. در هنگام کار با زبانهای خاص دامنه که جاسازیشده/داخلی در زبان دیگر هستند، یک محدودیت طبیعی وجود دارد. یک زبان خاص دامنه مبتنی برXML نمیتواند کمک کند که شبیه به XML باشد.
با توجه به محدودیتهای زبان میزبان، زبانهای خاص دامنه جاسازیشده/داخلی، هرگز به اندازهای که یک زبان خاص دامنه خارجی سفارشی آزاد است، آزاد نخواهند بود. خوشبختانه، زبانهای خاص دامنه مبتنی بر گرووی، قادرند در قالبی ساختار دهی شوند که برای انسان خواناتر است. با این حال، آنها همیشه نیاز دارند تا از نحوی که به خوبی شکل گرفته است، استفاده کنند و همیشه در هنگام طراحی زبانهای خاص دامنه مبتنی بر گرووی که برای مخاطبانتان قابل خواندن هستند، وضعیت رو به مصالحه پیش میرود.
با بهره گرفتن از برنامهنویسی زبان گرا، هدف باید ساخت زبانهای خاص دامنهای باشد که میتوانند توسط همه ذینفعان خوانده و درک شوند. به این ترتیب، این زبانهای خاص دامنه باید تبدیل به خصوصیات به اشتراک گذاشتهی زندگی سیستم شوند، حتی اگر در پایان آنها ضرورتاً باید توسط یک برنامهنویس با درک فنی زبانهای خاص دامنه نوشته شوند.
با اینکه زبانهای خاص دامنه، بسیاری از چالشهای فعلی توسعه نرم افزار را حل می کنند، ادبیات مربوطه ادعا می کند که زبانهای خاص دامنه معمولاً یک ایراد دارند و آن تلاش های بالای مورد نیاز برای پیادهسازی و استفاده از آنهاست. با این حال، زبانهای خاص دامنه داخلی با تلاش کمتری توسعه مییابند، چرا که بر روی یک زبان برنامه نویسی موجود ساخته شده و میتوانند از تمام زیرساختهای زبان که شامل مفسر، کامپایلر، و یا مترجم می شود، استفاده کنند. [۱۲]
۲-۶ گرووی[۲۰]، زبان میزبان
جاوا و پلت فرم جاوا با همه چارچوبها و کتابخانههای آن، در حال حاضر به یک جهان همهجانبه برای توسعهدهنده نرمافزار تبدیل شده است. ماشین مجازی جاوا بر روی همه چیز قابلاجراست، از بزرگترین پردازنده مرکزی گرفته تا کوچکترین ریزتراشه و هر برنامهی کاربردی قابل تصوری را پشتیبانی می کند. برای اولین بار وسعت کل حوزه نرمافزار، از بازیهای تلفن همراه بر روی تلفن گرفته تا مأموریت برنامه های سازمانی حیاتی، توسط این پلت فرم زبان پشتیبانی میشوند.
تاکنون، زبان برنامهنویسی جاوا جایگاه خود را به عنوان زبان برنامهنویسی استاندارد پلت فرم جاوا، به دست آورده است. این زبان به مدت تقریباً نه سال، نیازهای برنامهنویسان را به بهترین شکل ممکن برطرف کرده است، اما جاوا نمیتواند و نباید تمام نیازهای همه گروههای برنامهنویسان را که پروژهها و اهداف متفاوتی را دنبال میکنند برآورده سازد. چرا که زبانی با این مشخصات بخش بزرگی از قابلیتهای خود را به نفع پاسخگویی به همه کاربران از دست میدهد و تضعیف میشود. زبان جاوا مانند زبانهایC++ ، C#، به شدت ساخت یافته است. این نوع زبانها که گاه زبانهای قراردادی نامیده میشوند، برای حل بسیاری از مسایل مناسب هستند اما پاسخگوی همه مشکلات نیستند. زبانهای قراردادی بسیار نکتهسنج و خردهگیر هستند به این معنی که کوچکترین اشکال در نوشتن برنامه، ترجمه کردن کد را ناممکن میسازد. اگرچه این دقت بیش از حد، نتیجه اجرای کد را قابل پیشبینی میسازد، اما از سوی دیگر از سرعت کار برنامهنویس میکاهد.
در هنگام توسعه با جاوا، به خاطر در دسترس بودن کتابخانه ها و یا چارچوبها هرگز محدودیتی وجود ندارد. مسلماً تنها محدودیتی که باقی میماند خود زبان است؛ مانند تمام زبانهای شیءگرای سنتی، حتی جاوا نیاز به حجم زیادی متن استاندارد و تنظیم صحنه در هنگام برنامهنویسی دارد. در جاوا، به عنوان یک زبان همه منظوره، هیچ مسئلهای وجود ندارد که نتوان یک راه حل برای آن کد کرد. گاهی اوقات، با این حال، بهتر است راهحل در شکل کوتاهتری از کد بیان شود که توسط زبانهای پویایی مانند روبی و پایتون[۲۱] پشتیبانی می شود [۵].
با آمدن این زبانها و بعدها زبانهای اسکریپتی پویا یا دینامیک (دینامیک معنی گستردهای دارد، به شکل خلاصه میتوان گفت توانایی گسترش نحو و یا پشتیبانی یک فناوری در سطح زبان نه رابط برنامه کاربردی و یا نوع دهی خودکار) مثل روبی نیاز به افزوده شدن امکانات جدید به دستور زبان جاوا هر روز بیشتر و بیشتر احساس می شود. مخصوصاً اینکه رقیب تجاری جاوا یعنی .Net با پشتیبانی از تعدادی زبان برنامهنویسی برای پلت فرم آن، در برنامهنویسها ایجاد کشش می کند. همان طور که اشاره شد اضافه کردن موارد جدید به جاوا مثل چیزهایی که در C یا C ++ و یا روبی و غیره هست با فلسفه وجودی جاوا سازگار نیست [۱۳].
اکنون زمان آن رسیده است که پلت فرم جاوا یک زبان سریع را برای پیشبرد اهداف خود به کار گیرد. جواب جاوا به این تناقضات (ارائه امکانات جدید جالب و جذاب و ایجاد زبانی به غیر از جاوا برای برنامهنویسی پلت فرم جاوا در مقابل فلسفه و مدل پیشرفت و مقاومتهایی که در مقابل امکانات جدید هست) و به شکل استاندارد و مورد تأیید سان، گرووی است. گرووی اکنون زمینه لازم برای این کار را دارد و نشاندهنده یک دوران جدید برای پلت فرم جاوا است. دورانی که در آن جامعه برنامهنویسان جاوا از گوناگونی و تنوع ایجادشده بهره فراوانی خواهند برد و قادر به استفاده از تمام پتانسیلهای پلت فرم جاوا هستند. تشخیص هوشمندانه این مسئله که جاوا چیزی بیش از یک زبان برنامهنویسی است و درک این نکته که پلت فرم جاوا قدرت کافی برای اینکه چند زبان همزمان روی آن کار کنند و به حیات خود ادامه دهند را دارد، از عوامل مهم در موفقیت طرح ایجاد زبان گرووی هستند. امروزه زبانهای متعددی برای اجرا روی ماشین مجازی جاوا طراحی شدهاند. گرووی به این دلیل بهترین انتخاب است که از پایه و اساس برای پلت فرم جاوا طراحی شده است. از سوی دیگر، دستور زبان آن برای توسعهدهندگان برنامههای جاوا آشناست. گرووی برخی از بهترین ویژگیهای پایتون، روبی و اسمالتاک[۲۲] را پیادهسازی میکند. جیتون[۲۳] و جیروبی نمونههای بسیار درخشانی از پشتیبانی پلت فرم جاوا از دیگر زبانهای برنامهنویسی موجود هستند. با این وجود جیتون و جیروبی تنها درگاههایی[۲۴] هستند که ارتباط جاوا را با زبانهای دیگر ممکن میسازند. دستور زبان این درگاهها برای طراحان جاوا ایجاد نشده است و حتی مجموعه کتابخانههای استفادهشده برای پیادهسازی آنها با آنچه که برای برنامهنویسی جاوا استفاده میشود متفاوت است. در مقابل گرووی برای توسعهدهندگان جاوا طراحی شده است و پایه و اساس آن بر مبنای رابطهای برنامه کاربردی استاندارد پلت فرم جاوا استوار است [۱۴].
گرووی، یک زبان شیءگرا است که برای پلت فرم جاوا نوشته شده است. گرووی زبانی پویاست و ویژگیهایی مشابه پایتون، روبی، پرل[۲۵] و اسمالتاک دارد. همچنین میتواند بعنوان یک زبان اسکریپتنویسی برای پلت فرم جاوا استفاده شود. دستور زبان گرووی مشابه جاوا است و کدها درون کروشه قرار میگیرند. این کدها به صورت بایت کد ترجمه میشوند و سپس توسط ماشین مجازی جاوا اجرا میشوند. کدهای گرووی میتوانند به سادگی با دیگر کدهای جاوا و همچنین با کتابخانههای جاوا کار کنند. از دیگر ویژگیهای مترجم گرووی این است که میتواند بایت کدهای استاندارد جاوا تولید کند. به این ترتیب کدهای گرووی را میتوان در هر پروژه جاوا مورد استفاده قرارداد. بیشتر کدهای جاوا در مترجم گرووی شناخته میشوند. به این ترتیب انتقال کد بین دو زبان بسیار ساده است. توضیحات کاملتر در ضمیمهی یک ذکر شده است.
۲-۷ آزمون نرمافزار
اهمیت آزمایش نرمافزار و اثرات آن بر کیفیت نرمافزار نیاز به تأکید بیشتری ندارد. داچ[۲۶] دراینباره اینگونه بیان مینماید:
توسعه سیستمهای نرمافزاری شامل یک سری فعالیتهای تولید میباشد که امکان اشتباهات انسانی در آن زیاد است. خطاها در ابتدای یک فرایند و مراحل توسعه بعدی آن ظهور مینمایند. به دلیل عدم توانایی انجام کارها و برقراری ارتباط به صورت کامل، توسعه نرمافزار همواره با فعالیت تضمین کیفیت همراه است. آزمایش نرمافزار عنصری حیاتی از تضمین کیفیت نرمافزار میباشد و مرور تقریبی مشخصه، طراحی و تولید کد را نشان میدهد.
آزمایش، مجموعه فعالیتهایی است که می تواند از قبل به صورت ساماندهی شده برنامه ریزی و هدایت شود. به این دلیل، باید الگویی برای آزمایش نرمافزار تعریف شود. این الگو شامل مجموعه مراحلی است که میتوان فنون خاص طراحی نمونههای آزمایش و روشهای آزمایش را در آن قرارداد.
چند راهبُرد آزمایش نرمافزار در این رابطه پیشنهاد شده است. همه آنها برای توسعهدهنده نرمافزار، الگویی را به منظور آزمایش فراهم میکنند و همگی دارای خصوصیات زیر هستند:
آزمایش از سطح مؤلفه شروع می شود به سمت خارج در جهت مجتمع سازی کل سیستم رایانهای پیش میرود.
فنون متفاوت آزمایش، در نقاط زمانی مختلف مناسب میباشند.
آزمایش توسط توسعهدهنده نرمافزار و برای پروژه های بزرگ توسط گروه مستقل آزمایش، هدایت می شود.
آزمایش و اشکالزدایی فعالیتهای متفاوتی هستند، اما اشکالزدایی باید با هر راهبُرد آزمون همراه باشد.
یک راهبُرد برای آزمایش نرمافزار باید آزمایشهای سطح پایینی را هدایت کند که برای بازبینی صحت پیادهسازی یک قطعه کد کوچک لازم میباشند. همچنین این راهبُرد باید آزمایشهای سطح بالایی را سازماندهی کند که اکثر توابع سیستم را در رابطه با نیازهای مشتری اعتبارسنجی مینمایند. یک راهبُرد باید راهنماییهایی را برای مجری و مجموعه ای از علائم نشاندهنده را برای مدیر فراهم نماید. چون این مراحل راهبُرد آزمایش، زمانی انجام میشوند که فشار مربوط به پایان مهلت، شروع به افزایش مینماید، پیشرفت باید قابل اندازه گیری باشد و مشکلات باید تا حد امکان به سادگی برطرف شوند [۱۵].
۲-۷-۱ اهداف آزمون
در مورد آزمایش نرمافزار، میر[۲۷] چند قانون زیر را بیان میکند که اهداف مناسبی برای آزمایش هستند: [۱۵]
آزمایش فرآیندی است شامل اجرای برنامه باهدف یافتن خطا.
یک نمونه آزمایش خوب، نمونهای است که با احتمال بالایی خطاها را بیابد.
آزمایش موفق، آزمایشی است که خطاهای یافت نشده تاکنون را بیابد.
این اهداف تغییری اساسی در دیدگاه ایجاد مینمایند. این اهداف باعث تغییر در دیدگاه متداولی میشوند که آزمایش موفق را آن نوع آزمایشی میداند که در آن خطایی یافت نشود. هدف، طراحی آزمایشهایی است که به طور سامانبخش ردههای متفاوتی از خطاها را آشکار نمایند و این عمل را با حداقل مقدار زمان و فعالیت انجام دهند
۲-۷-۲ انواع آزمون
آزمون نرمافزار به گونههای مختلفی انجام میشود که در ادامه بررسی خواهند شد.
۲-۷-۲-۱ آزمون جعبه سفید
آزمایش جعبه سفید، که گاهی آزمایش جعبه شیشه ای نامیده می شود، یک روش طراحی نمونههای آزمایش است که از ساختار کنترل طراحی رویهای برای هدایت نمونههای آزمایش استفاده می کند. با بهره گرفتن از روشهای آزمایش جعبه سفید، مهندس نرمافزار می تواند نمونههای آزمایشی را به دست آورد که: [۱۶]
تضمین نمایند که تمام مسیرهای مستقل داخل پیمانه حداقل یک بار آزمایش شوند.
فرم در حال بارگذاری ...
[جمعه 1401-04-17] [ 09:43:00 ب.ظ ]
|