The role of formal method in reaching dependable software (farsi)

A
‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫نقش‬
‫افزار‬ ‫نرم‬ ‫به‬ ‫رسیدن‬
‫اتکاپذیر‬
‫استاد‬
:
‫ازگمی‬ ‫عبداللهی‬ ‫محمد‬ ‫دکتر‬
‫گردآورنده‬ ‫و‬ ‫دهنده‬‫ارائه‬
:
‫بحرانی‬ ‫علی‬
‫فهرست‬

‫اتکاپذیر‬ ‫افزار‬‫نرم‬

‫صوری‬ ‫های‬‫روش‬

‫افزار‬‫نرم‬ ‫در‬ ‫اطمینان‬ ‫قابلیت‬ ‫و‬ ‫اتکاپذیری‬

‫اطمینان‬ ‫قابلیت‬ ‫مفاهیم‬

‫روش‬ ‫جایگاه‬
‫افزار‬‫نرم‬ ‫حیات‬ ‫ی‬‫چرخه‬ ‫صوری‬ ‫های‬

‫نال‬ ِ
‫فانکش‬ ‫های‬‫نیازمندی‬ ‫و‬ ‫اتکاپذیری‬ ‫های‬‫نیازمندی‬

‫اعتبارسنجی‬ ‫و‬ ‫یابی‬‫درستی‬

‫اتکاپذیر‬ ‫های‬‫سیستم‬ ‫طراحی‬ ‫برای‬ ‫چارچوب‬ ‫یک‬

‫صوری‬ ‫توصیف‬

‫مدل‬ ‫بررسی‬

‫اتکاپذیر‬ ‫افزار‬ ‫نرم‬ ‫طراحی‬ ‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫بر‬ ‫وارد‬ ‫ایرادات‬

‫گیری‬‫نتیجه‬
2
‫اتکاپذیر‬ ‫افزار‬ ‫نرم‬

‫اطمینان‬ ‫به‬ ‫نیاز‬ ‫که‬ ‫افرادی‬
(
to rely on
)
‫یک‬ ‫یا‬ ‫افزار‬‫نرم‬ ‫یک‬ ‫به‬
‫تضمینی‬ ‫به‬ ،‫دارند‬ ‫فرآیند‬
(guarantee)
‫نیاز‬ ‫آن‬ ‫درست‬ ‫کارکرد‬ ‫برای‬
‫دارند‬
.

‫های‬‫زیرخوشه‬
(Sub-cluster)
‫افزار‬‫نرم‬ ‫کیفیت‬ ‫سنجش‬ ‫ی‬‫حوزه‬ ‫در‬ ‫زیادی‬
‫دارد‬ ‫وجود‬
.

‫پردازه‬ ‫های‬‫روش‬
-
‫محور‬
(process-based)
‫مثل‬
:
CMMI

‫افزار‬‫نرم‬ ‫آزمون‬ ‫های‬‫روش‬
(Testing)

‫صوری‬ ‫های‬‫روش‬
(Formal)

‫است‬ ‫کیفیت‬ ‫های‬‫شاخص‬ ‫از‬ ‫یکی‬ ‫اتکاپذیری‬
.
3
‫صوری‬ ‫های‬‫روش‬

‫صوری‬ ‫های‬‫روش‬
:
‫مختلف‬ ‫مراحل‬ ،‫ریاضی‬ ‫قوانین‬ ‫کمک‬ ‫به‬ ‫که‬ ‫هایی‬‫روش‬
‫منطق‬ ‫در‬ ‫ناپذیر‬‫خلل‬ ‫ای‬‫شیوه‬ ‫به‬ ‫را‬ ‫افزار‬‫نرم‬ ‫ی‬‫توسعه‬ ‫فرآیند‬
‫کنند‬‫می‬ ‫سازی‬‫پیاده‬ ،‫ریاضی‬
.

‫دارند‬ ‫اصلی‬ ‫ی‬‫دسته‬ ‫چهار‬ ‫صوری‬ ‫های‬‫روش‬

‫صوری‬ ‫توصیف‬
(Formal Specification)

‫صوری‬ ‫اثبات‬
(Formal Proof)

‫مدل‬ ‫بررسی‬
(Model Checking)

‫انتزاع‬
(Abstraction)
4
‫در‬ ‫اطمینان‬ ‫قابلیت‬ ‫و‬ ‫اتکاپذیری‬
‫افزار‬‫نرم‬

‫تعریف‬ ‫گرچه‬
"
‫اطمینان‬ ‫قابلیت‬
"
‫شده‬ ‫ارائه‬ ‫کلی‬ ‫طور‬ ‫به‬ ‫ها‬‫سیستم‬
‫است‬
.
‫ندارد‬ ‫وجود‬ ‫آن‬ ‫برای‬ ‫واحدی‬ ‫تعریف‬ ‫افزار‬‫نرم‬ ‫ی‬‫حوزه‬ ‫در‬ ‫اما‬
.

‫بیرونی‬ ‫کیفی‬ ‫های‬‫شاخصه‬
(
‫کاربر‬ ‫دیدن‬ ‫از‬
)
‫درونی‬ ‫و‬
(
‫دید‬ ‫از‬
‫نویس‬‫برنامه‬
)

‫درستی‬ ‫مفهوم‬ ‫سه‬ ‫اطمینان‬ ‫مفهوم‬
(Correctness)
‫استحکام‬ ،
(Robustness)
‫امنیت‬ ‫و‬
(Security)
‫دهد‬‫می‬ ‫پوشش‬ ‫را‬
.
5
‫اطمینان‬ ‫قابلیت‬ ‫مفاهیم‬

‫درستی‬
:
‫اولیه‬ ‫توصیفات‬ ‫به‬ ‫توجه‬ ‫با‬ ‫اجرا‬ ‫در‬ ‫سیستم‬ ‫یک‬ ‫توانایی‬

‫استحکام‬
:
‫و‬ ‫اشتباه‬ ‫استفاده‬ ‫هنگام‬ ‫آسیب‬ ‫از‬ ‫جلوگیری‬ ‫توانایی‬
‫اولیه‬ ‫توصیفات‬ ‫از‬ ‫خارج‬

‫امنیت‬
:
‫مغرضانه‬ ‫ی‬‫استفاده‬ ‫هنگام‬ ‫آسیب‬ ‫از‬ ‫جلوگیری‬ ‫توانایی‬
(hostile)
‫اولیه‬ ‫توصیفات‬ ‫از‬ ‫خارج‬ ‫و‬
6
‫روش‬ ‫جایگاه‬
‫حیات‬ ‫ی‬‫چرخه‬ ‫صوری‬ ‫های‬
‫افزار‬‫نرم‬

‫حیات‬ ‫ی‬‫چرخه‬ ‫اصلی‬ ‫های‬‫دسته‬
‫افزار‬‫نرم‬
:

‫مثل‬ ‫ترتیبی‬
:
‫مدل‬ ‫و‬ ‫آبشاری‬
V

‫پیمایشی‬ ‫های‬‫روش‬
(iterative)
:
Spiral

‫افزایشی‬ ‫های‬‫روش‬
(Incremental)
:
RUP

‫وجود‬ ‫نیز‬ ‫ترکیبی‬ ‫های‬‫روش‬
‫دارد‬
.

‫جایگاه‬ ‫به‬ ‫رو‬ ‫به‬ ‫رو‬ ‫شکل‬ ‫در‬
‫مدل‬ ‫در‬ ‫صوری‬ ‫های‬‫روش‬
V
‫می‬
‫پردازیم‬
7
‫صوری‬ ‫اعتبارسنجی‬
‫صوری‬ ‫توصیف‬
‫و‬ ‫اتکاپذیری‬ ‫های‬‫نیازمندی‬
‫نال‬ ِ
‫فانکش‬ ‫های‬‫نیازمندی‬

‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬ ‫ی‬‫دسته‬ ‫به‬ ‫اتکاپذیری‬ ‫های‬‫نیازمندی‬
(Functional)
‫است‬
.
‫از‬ ‫مشخصی‬ ‫قابلیت‬ ‫به‬ ‫ها‬‫نیازمندی‬ ‫دسته‬ ‫این‬
‫کند‬‫نمی‬ ‫اشاره‬ ‫افزار‬‫نرم‬
.
‫دادن‬ ‫نشان‬ ‫سایت‬‫وب‬ ‫یک‬ ‫در‬ ‫مثال‬ ‫برای‬
‫است‬ ‫فانکشنال‬ ‫نیازمندی‬ ‫یک‬ ‫پروفایل‬
.
‫و‬ ‫سایت‬ ‫امنیت‬ ‫حفظ‬ ‫اما‬
‫است‬ ‫فانکشنال‬ ‫غیر‬ ‫نیازمندی‬ ‫یک‬ ‫حمالت‬ ‫از‬ ‫جلوگیری‬
.

‫انتزاع‬ ‫سطح‬ ‫کاهش‬ ‫با‬ ‫نیز‬ ‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬ ‫حال‬ ‫این‬ ‫با‬
‫دارند‬ ‫توصیف‬ ‫به‬ ‫نیاز‬
.
‫توصیف‬ ‫ابزار‬ ‫به‬ ‫بیشتر‬ ‫ادامه‬ ‫در‬
‫پردازیم‬‫می‬ ‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬
.
8
‫اعتبارسنجی‬ ‫و‬ ‫یابی‬‫درستی‬

‫یابی‬‫درستی‬
(Verification)
:
‫محصول‬ ‫یک‬ ‫درونی‬ ‫ثبات‬ ‫تصحیح‬ ‫و‬ ‫ارزیابی‬
‫افزار‬ ‫نرم‬ ‫یا‬
(
‫راست‬ ‫سمت‬
v
)

‫اعتبارسنجی‬
(Validation)
:
‫به‬ ‫نسبت‬ ‫محصول‬ ‫یک‬ ‫ثبات‬ ‫تصحیح‬ ‫و‬ ‫بررسی‬
‫بیرونی‬ ‫مالک‬ ‫یک‬
.

‫یابی‬‫درستی‬ ‫مثال‬
:
‫طراحی‬ ‫ی‬‫مرحله‬ ‫در‬ ‫ها‬‫نیازمندی‬ ‫درستی‬ ‫بررسی‬

‫اعتبارسنجی‬ ‫مثال‬
:
‫درست‬ ‫یا‬ ‫طراحی‬ ‫به‬ ‫نسبت‬ ‫سازی‬‫پیاده‬ ‫بودن‬ ‫درست‬
‫بودن‬
UML diagram
‫به‬ ‫نسبت‬
activity diagram
9
‫های‬‫سیستم‬ ‫طراحی‬ ‫برای‬ ‫چارچوب‬ ‫یک‬
‫اتکاپذیر‬
(
‫دارد‬ ‫ادامه‬
)

‫در‬ ‫تغییرات‬
V-Model

‫امنیت‬ ‫صوری‬ ‫توصیف‬ ‫افزودن‬

‫ریسک‬ ‫تحلیل‬ ‫بخش‬ ‫افزودن‬
(risk)

‫کمک‬ ‫به‬ ‫صوری‬ ‫های‬‫روش‬ ‫با‬ ‫سیستم‬ ‫های‬‫نیازمندی‬ ‫توصیف‬
CSP

‫اجرایی‬ ‫محیط‬

‫اپلیکیشن‬ ‫نیازهای‬

‫تهدید‬ ‫تحلیل‬

‫اتکاپذیری‬ ‫های‬‫نیازمندی‬
10
‫های‬‫سیستم‬ ‫طراحی‬ ‫برای‬ ‫چارچوب‬ ‫یک‬
‫اتکاپذیر‬

‫سیستم‬ ‫معماری‬

‫سیستم‬ ‫ساختار‬

‫ها‬‫رابط‬
(Interface)

‫داخلی‬ ‫تهدید‬ ‫تحلیل‬

‫داخلی‬ ‫ریسک‬ ‫تحلیل‬
11
‫قابلیت‬ ‫سنجش‬ ‫های‬‫روش‬ ‫بندی‬‫طبقه‬
‫اطمینان‬
12
‫صوری‬ ‫توصیف‬

‫بالدرنگ‬ ‫های‬‫سیستم‬ ‫برای‬ ‫توصیف‬ ‫زبان‬

‫امنیت‬ ‫ی‬‫الیه‬ ‫وجود‬

‫خطا‬ ‫پذیری‬‫تحمل‬ ‫الیه‬ ‫وجود‬

‫توصیف‬ ‫ابزار‬ ‫برای‬ ‫ای‬‫الیه‬ ‫سیستم‬ ‫از‬ ‫استفاده‬

‫توصیف‬ ‫برای‬ ‫احتماالتی‬ ‫ی‬‫محاسبه‬ ‫درخت‬ ‫منطقی‬ ‫صورت‬ ‫از‬ ‫استفاده‬
‫ایمنی‬ ‫و‬ ‫پذیری‬‫اطمینان‬
13
‫مدل‬ ‫بررسی‬

‫احتمالی‬ ‫مدل‬ ‫بررسی‬ ‫ابزار‬
MRMC

‫ورودی‬
:
‫فرایندهای‬ ‫انواع‬
‫مارکوف‬

‫خروجی‬
:
‫ویژگی‬ ‫بررسی‬
‫اتکاپذیری‬

‫اتوماتا‬ ‫از‬ ‫استفاده‬

‫از‬ ‫استفاده‬
SPIN

‫منطق‬ ‫از‬ ‫استفاده‬
14
‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫بر‬ ‫وارد‬ ‫ایرادات‬
‫اتکاپذیر‬ ‫افزار‬ ‫نرم‬ ‫طراحی‬

‫اتکاپذیر‬ ‫های‬‫سیستم‬ ‫اکثر‬ ‫که‬ ‫صورتی‬ ‫در‬ ‫زیاد‬ ‫محاسباتی‬ ‫پیچیدگی‬
‫دارند‬ ‫بزرگی‬ ‫ساختار‬
.

‫سالیان‬ ‫و‬ ‫است‬ ‫سختی‬ ‫کار‬ ‫صوری‬ ‫های‬‫روش‬ ‫ریاضیات‬ ‫و‬ ‫خواندن‬ ،‫نوشتن‬
‫کند‬ ‫پیدا‬ ‫مهارت‬ ‫آن‬ ‫در‬ ‫شخصی‬ ‫تا‬ ‫کشد‬‫می‬ ‫طول‬
.

،‫است‬ ‫زیاد‬ ‫بسیار‬ ‫افزار‬‫نرم‬ ‫ی‬‫ارائه‬ ‫سرعت‬ ‫که‬ ‫چابک‬ ‫های‬‫روش‬ ‫در‬
‫هستند‬ ‫کند‬ ‫بسیار‬ ‫صوری‬ ‫های‬‫روش‬
.
15
‫گیری‬‫نتیجه‬

‫تضمین‬ ‫ایجاد‬ ‫برای‬ ‫افزار‬‫نرم‬ ‫حیات‬ ‫مختلف‬ ‫مراحل‬ ‫در‬ ‫صوری‬ ‫های‬‫روش‬
‫شوند‬‫می‬ ‫استفاده‬ ‫فانکشنال‬ ‫غیر‬ ‫و‬ ‫فانکشنال‬ ‫های‬‫نیازمندی‬ ‫درستی‬ ‫در‬

‫است‬ ‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬ ‫ی‬‫مجموعه‬ ‫از‬ ‫اتکاپذیری‬
.

‫و‬ ‫صوری‬ ‫توصیف‬ ‫ابزارهای‬ ،‫صوری‬ ‫های‬‫روش‬ ‫از‬ ‫استفاده‬ ‫ی‬‫عمده‬ ‫روش‬ ‫دو‬
‫هستند‬ ‫مدل‬ ‫بررسی‬ ‫ابزارهای‬
.

‫های‬‫گزاره‬ ‫صورت‬ ‫به‬ ‫را‬ ‫اطمینان‬ ‫قابلیت‬ ‫توان‬‫می‬ ‫زمان‬ ‫منطق‬ ‫کمک‬ ‫به‬
‫کرد‬ ‫بیان‬ ‫منطقی‬
.

‫مدل‬ ‫بررسی‬ ‫ابزارهای‬ ‫در‬ ‫که‬ ‫است‬ ‫صوری‬ ‫روش‬ ‫یک‬ ‫خود‬ ‫مارکوف‬ ‫مدل‬
‫مختلف‬
16
‫اول‬ ‫سوال‬

‫سوال‬
:
‫نام‬ ‫مثال‬ ‫با‬ ‫را‬ ‫افزاری‬‫نرم‬ ‫ی‬‫پروژه‬ ‫های‬‫نیازمندی‬ ‫انواع‬
‫ببرید‬
.
‫هاست؟‬ ‫نیازمندی‬ ‫از‬ ‫دسته‬ ‫کدام‬ ‫از‬ ‫اتکاپذیری‬ ‫های‬‫ویژگی‬

‫جواب‬
:
‫مثال‬ ‫فانکشنال‬ ‫های‬‫نیازمندی‬
:
‫ی‬‫مشاهده‬ ‫قابلیت‬ ‫سازی‬ ‫پیاده‬
‫مثل‬ ‫غیرفانکشنال‬ ‫های‬‫نیازمندی‬ ‫و‬ ‫وبسایت‬ ‫یک‬ ‫در‬ ‫کاربر‬ ‫پروفایل‬
:
‫سایت‬ ‫امنیت‬
.
‫های‬‫نیازمندی‬ ‫ی‬‫دسته‬ ‫از‬ ‫اتکاپذیری‬ ‫های‬‫ویژگی‬
‫هستند‬ ‫غیرفانکشنال‬
.
‫شامل‬ ‫را‬ ‫سیستم‬ ‫از‬ ‫مشخصی‬ ‫فیچر‬ ‫زیرا‬
‫شوند‬‫نمی‬
.
17
‫دوم‬ ‫سوال‬

‫سوال‬
:
‫بررسی‬ ‫توانایی‬ ‫که‬ ‫مدل‬ ‫بررسی‬ ‫ابزارهای‬ ‫از‬ ‫نمونه‬ ‫دو‬
‫ببرید‬ ‫نام‬ ‫را‬ ‫دارند‬ ‫را‬ ‫اتکاپذیری‬ ‫های‬‫ویژگی‬
.

1
.
MRMC
‫دریافت‬ ‫ورودی‬ ‫عنوان‬ ‫به‬ ‫را‬ ‫مارکوف‬ ‫فرآیندهای‬ ‫که‬
‫کند‬‫می‬
.
SPIN
‫نام‬ ‫به‬ ‫سازی‬ ‫مدل‬ ‫نویسی‬‫برنامه‬ ‫زبان‬ ‫یک‬ ‫آن‬ ‫ورودی‬ ‫که‬
‫است‬ ‫پرومال‬
.
18
‫سوم‬ ‫سوال‬

‫شکل‬ ‫به‬ ‫توجه‬ ‫با‬
V-Model
‫و‬
‫شکل‬
Spiral
،‫راست‬ ‫سمت‬ ‫در‬
‫صوری‬ ‫های‬‫روش‬ ‫از‬ ‫استفاده‬
‫در‬ ‫افزار‬‫نرم‬ ‫اتکاپذیری‬ ‫برای‬
‫افزار‬‫نرم‬ ‫حیات‬ ‫ی‬‫چرخه‬ ‫کدام‬
‫چرا؟‬ ‫است‬ ‫تر‬‫پیچیده‬

‫مدل‬
Spiral
‫های‬‫روش‬ ‫از‬ ‫زیرا‬ ،
‫دارای‬ ‫و‬ ‫است‬ ‫پیمایشی‬
‫است‬ ‫تر‬‫کوچک‬ ‫های‬‫چرخه‬
.
‫لذا‬
‫باید‬ ‫هم‬ ‫صوری‬ ‫روش‬ ‫سازی‬‫پیاده‬
‫شود‬ ‫انجام‬ ‫بیشتری‬ ‫سرعت‬ ‫با‬
.
‫های‬‫روش‬ ‫اجرای‬ ‫سرعت‬ ‫باید‬ ‫هم‬
‫تا‬ ‫باشد‬ ‫بیشتر‬ ‫صوری‬
‫ارائه‬ ‫مهلت‬ ‫به‬ ‫افزار‬‫نرم‬
‫برسد‬
. 19
‫منابع‬

https://drive.google.com/drive/folders/1HIwkmIpfO10u1V9CsfMlYXXKgfb7DT
k_?usp=sharing
20
‫از‬ ‫تشکر‬ ‫با‬
‫شما‬ ‫توجه‬
21
1 de 21

Recomendados

ارائه سمینار روش های ارزیابی معماری نرم افزار por
ارائه سمینار روش های ارزیابی معماری نرم افزارارائه سمینار روش های ارزیابی معماری نرم افزار
ارائه سمینار روش های ارزیابی معماری نرم افزارArash Bande Khoda
910 vistas18 diapositivas
Software Test por
Software TestSoftware Test
Software TestHossein Fani
2.1K vistas50 diapositivas
Software reliability model(روش های اندازه گیری قابلیت اطمینان نرم افزار) por
Software reliability model(روش های اندازه گیری قابلیت اطمینان نرم افزار)Software reliability model(روش های اندازه گیری قابلیت اطمینان نرم افزار)
Software reliability model(روش های اندازه گیری قابلیت اطمینان نرم افزار)amirbabol
1.6K vistas27 diapositivas
قلاب سازی در تحلیل بدافزارهاHooking in Malware Analysis por
 قلاب سازی در تحلیل بدافزارهاHooking  in Malware Analysis قلاب سازی در تحلیل بدافزارهاHooking  in Malware Analysis
قلاب سازی در تحلیل بدافزارهاHooking in Malware AnalysisM Mehdi Ahmadian
1.1K vistas46 diapositivas
راهکارهای طراحی نرم افزار ها محب الله امان por
راهکارهای طراحی نرم افزار ها   محب الله امانراهکارهای طراحی نرم افزار ها   محب الله امان
راهکارهای طراحی نرم افزار ها محب الله امانMuhibullah Aman
1.9K vistas48 diapositivas
امنیت استفاده از نرم افزارهای متن باز در نیازهای کلان por
امنیت استفاده از نرم افزارهای متن باز در نیازهای کلانامنیت استفاده از نرم افزارهای متن باز در نیازهای کلان
امنیت استفاده از نرم افزارهای متن باز در نیازهای کلانAli Yazdani
341 vistas22 diapositivas

Más contenido relacionado

Similar a The role of formal method in reaching dependable software (farsi)

توسعه امن نرم افزار por
توسعه امن نرم افزارتوسعه امن نرم افزار
توسعه امن نرم افزارMohammad Hamidi Esfahani
1.9K vistas65 diapositivas
Scrum Presentation por
Scrum PresentationScrum Presentation
Scrum PresentationS.Mostafa Sayyedi
334 vistas16 diapositivas
Defeating software analysis using logical anti-debugging technique por
Defeating software analysis using logical anti-debugging technique Defeating software analysis using logical anti-debugging technique
Defeating software analysis using logical anti-debugging technique Nima Nikjoo
190 vistas10 diapositivas
مدل فرایند (Process Model) por
مدل فرایند (Process Model)مدل فرایند (Process Model)
مدل فرایند (Process Model)RayBPMS
687 vistas5 diapositivas
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری por
 ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاریArash Bande Khoda
1.2K vistas133 diapositivas
مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری نویسنده ناص... por
مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری   نویسنده ناص...مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری   نویسنده ناص...
مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری نویسنده ناص...Aidin NaseriFard
228 vistas9 diapositivas

Similar a The role of formal method in reaching dependable software (farsi)(20)

Defeating software analysis using logical anti-debugging technique por Nima Nikjoo
Defeating software analysis using logical anti-debugging technique Defeating software analysis using logical anti-debugging technique
Defeating software analysis using logical anti-debugging technique
Nima Nikjoo190 vistas
مدل فرایند (Process Model) por RayBPMS
مدل فرایند (Process Model)مدل فرایند (Process Model)
مدل فرایند (Process Model)
RayBPMS687 vistas
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری por Arash Bande Khoda
 ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
Arash Bande Khoda1.2K vistas
مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری نویسنده ناص... por Aidin NaseriFard
مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری   نویسنده ناص...مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری   نویسنده ناص...
مقاله بررسی مدل های ارزیابی ریسک امنیت اطلاعات برای رایانش ابری نویسنده ناص...
Aidin NaseriFard228 vistas
Security tools - ابزارهای امنیتی por Mehdi Esmaeilpour
Security tools - ابزارهای امنیتیSecurity tools - ابزارهای امنیتی
Security tools - ابزارهای امنیتی
Mehdi Esmaeilpour25 vistas
صحت جریان کنترل در امنیت اطلاعاتControl Flow Integrity por M Mehdi Ahmadian
صحت جریان کنترل در امنیت اطلاعاتControl Flow Integrityصحت جریان کنترل در امنیت اطلاعاتControl Flow Integrity
صحت جریان کنترل در امنیت اطلاعاتControl Flow Integrity
M Mehdi Ahmadian402 vistas
معرفي فايروال پايگاه داده por Hamid Torkashvand
معرفي فايروال پايگاه دادهمعرفي فايروال پايگاه داده
معرفي فايروال پايگاه داده
Hamid Torkashvand411 vistas
Web Application Security Test por Saeid Sadeghi
Web Application Security TestWeb Application Security Test
Web Application Security Test
Saeid Sadeghi127 vistas
ISO/IEC 15408-Common Criteria: ارزیابی امنیتی محصولات فناوری اطلاعات por Mahdi Sayyad
ISO/IEC 15408-Common Criteria: ارزیابی امنیتی محصولات فناوری اطلاعاتISO/IEC 15408-Common Criteria: ارزیابی امنیتی محصولات فناوری اطلاعات
ISO/IEC 15408-Common Criteria: ارزیابی امنیتی محصولات فناوری اطلاعات
Mahdi Sayyad3.7K vistas
انواع ارزیابی های امنیتی و مراحل تست و نفوذ por saeid ghasemshirazi
انواع ارزیابی های امنیتی و مراحل تست  و نفوذانواع ارزیابی های امنیتی و مراحل تست  و نفوذ
انواع ارزیابی های امنیتی و مراحل تست و نفوذ
مجازي سازي، مجازى سازى por marketingfarkhad
مجازي سازي، مجازى سازىمجازي سازي، مجازى سازى
مجازي سازي، مجازى سازى
marketingfarkhad1.8K vistas
مبانی تعیین نیازمندی ها و الزامات por ali rasouli
مبانی تعیین نیازمندی ها و الزاماتمبانی تعیین نیازمندی ها و الزامات
مبانی تعیین نیازمندی ها و الزامات
ali rasouli31 vistas

The role of formal method in reaching dependable software (farsi)

  • 1. ‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫نقش‬ ‫افزار‬ ‫نرم‬ ‫به‬ ‫رسیدن‬ ‫اتکاپذیر‬ ‫استاد‬ : ‫ازگمی‬ ‫عبداللهی‬ ‫محمد‬ ‫دکتر‬ ‫گردآورنده‬ ‫و‬ ‫دهنده‬‫ارائه‬ : ‫بحرانی‬ ‫علی‬
  • 2. ‫فهرست‬  ‫اتکاپذیر‬ ‫افزار‬‫نرم‬  ‫صوری‬ ‫های‬‫روش‬  ‫افزار‬‫نرم‬ ‫در‬ ‫اطمینان‬ ‫قابلیت‬ ‫و‬ ‫اتکاپذیری‬  ‫اطمینان‬ ‫قابلیت‬ ‫مفاهیم‬  ‫روش‬ ‫جایگاه‬ ‫افزار‬‫نرم‬ ‫حیات‬ ‫ی‬‫چرخه‬ ‫صوری‬ ‫های‬  ‫نال‬ ِ ‫فانکش‬ ‫های‬‫نیازمندی‬ ‫و‬ ‫اتکاپذیری‬ ‫های‬‫نیازمندی‬  ‫اعتبارسنجی‬ ‫و‬ ‫یابی‬‫درستی‬  ‫اتکاپذیر‬ ‫های‬‫سیستم‬ ‫طراحی‬ ‫برای‬ ‫چارچوب‬ ‫یک‬  ‫صوری‬ ‫توصیف‬  ‫مدل‬ ‫بررسی‬  ‫اتکاپذیر‬ ‫افزار‬ ‫نرم‬ ‫طراحی‬ ‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫بر‬ ‫وارد‬ ‫ایرادات‬  ‫گیری‬‫نتیجه‬ 2
  • 3. ‫اتکاپذیر‬ ‫افزار‬ ‫نرم‬  ‫اطمینان‬ ‫به‬ ‫نیاز‬ ‫که‬ ‫افرادی‬ ( to rely on ) ‫یک‬ ‫یا‬ ‫افزار‬‫نرم‬ ‫یک‬ ‫به‬ ‫تضمینی‬ ‫به‬ ،‫دارند‬ ‫فرآیند‬ (guarantee) ‫نیاز‬ ‫آن‬ ‫درست‬ ‫کارکرد‬ ‫برای‬ ‫دارند‬ .  ‫های‬‫زیرخوشه‬ (Sub-cluster) ‫افزار‬‫نرم‬ ‫کیفیت‬ ‫سنجش‬ ‫ی‬‫حوزه‬ ‫در‬ ‫زیادی‬ ‫دارد‬ ‫وجود‬ .  ‫پردازه‬ ‫های‬‫روش‬ - ‫محور‬ (process-based) ‫مثل‬ : CMMI  ‫افزار‬‫نرم‬ ‫آزمون‬ ‫های‬‫روش‬ (Testing)  ‫صوری‬ ‫های‬‫روش‬ (Formal)  ‫است‬ ‫کیفیت‬ ‫های‬‫شاخص‬ ‫از‬ ‫یکی‬ ‫اتکاپذیری‬ . 3
  • 4. ‫صوری‬ ‫های‬‫روش‬  ‫صوری‬ ‫های‬‫روش‬ : ‫مختلف‬ ‫مراحل‬ ،‫ریاضی‬ ‫قوانین‬ ‫کمک‬ ‫به‬ ‫که‬ ‫هایی‬‫روش‬ ‫منطق‬ ‫در‬ ‫ناپذیر‬‫خلل‬ ‫ای‬‫شیوه‬ ‫به‬ ‫را‬ ‫افزار‬‫نرم‬ ‫ی‬‫توسعه‬ ‫فرآیند‬ ‫کنند‬‫می‬ ‫سازی‬‫پیاده‬ ،‫ریاضی‬ .  ‫دارند‬ ‫اصلی‬ ‫ی‬‫دسته‬ ‫چهار‬ ‫صوری‬ ‫های‬‫روش‬  ‫صوری‬ ‫توصیف‬ (Formal Specification)  ‫صوری‬ ‫اثبات‬ (Formal Proof)  ‫مدل‬ ‫بررسی‬ (Model Checking)  ‫انتزاع‬ (Abstraction) 4
  • 5. ‫در‬ ‫اطمینان‬ ‫قابلیت‬ ‫و‬ ‫اتکاپذیری‬ ‫افزار‬‫نرم‬  ‫تعریف‬ ‫گرچه‬ " ‫اطمینان‬ ‫قابلیت‬ " ‫شده‬ ‫ارائه‬ ‫کلی‬ ‫طور‬ ‫به‬ ‫ها‬‫سیستم‬ ‫است‬ . ‫ندارد‬ ‫وجود‬ ‫آن‬ ‫برای‬ ‫واحدی‬ ‫تعریف‬ ‫افزار‬‫نرم‬ ‫ی‬‫حوزه‬ ‫در‬ ‫اما‬ .  ‫بیرونی‬ ‫کیفی‬ ‫های‬‫شاخصه‬ ( ‫کاربر‬ ‫دیدن‬ ‫از‬ ) ‫درونی‬ ‫و‬ ( ‫دید‬ ‫از‬ ‫نویس‬‫برنامه‬ )  ‫درستی‬ ‫مفهوم‬ ‫سه‬ ‫اطمینان‬ ‫مفهوم‬ (Correctness) ‫استحکام‬ ، (Robustness) ‫امنیت‬ ‫و‬ (Security) ‫دهد‬‫می‬ ‫پوشش‬ ‫را‬ . 5
  • 6. ‫اطمینان‬ ‫قابلیت‬ ‫مفاهیم‬  ‫درستی‬ : ‫اولیه‬ ‫توصیفات‬ ‫به‬ ‫توجه‬ ‫با‬ ‫اجرا‬ ‫در‬ ‫سیستم‬ ‫یک‬ ‫توانایی‬  ‫استحکام‬ : ‫و‬ ‫اشتباه‬ ‫استفاده‬ ‫هنگام‬ ‫آسیب‬ ‫از‬ ‫جلوگیری‬ ‫توانایی‬ ‫اولیه‬ ‫توصیفات‬ ‫از‬ ‫خارج‬  ‫امنیت‬ : ‫مغرضانه‬ ‫ی‬‫استفاده‬ ‫هنگام‬ ‫آسیب‬ ‫از‬ ‫جلوگیری‬ ‫توانایی‬ (hostile) ‫اولیه‬ ‫توصیفات‬ ‫از‬ ‫خارج‬ ‫و‬ 6
  • 7. ‫روش‬ ‫جایگاه‬ ‫حیات‬ ‫ی‬‫چرخه‬ ‫صوری‬ ‫های‬ ‫افزار‬‫نرم‬  ‫حیات‬ ‫ی‬‫چرخه‬ ‫اصلی‬ ‫های‬‫دسته‬ ‫افزار‬‫نرم‬ :  ‫مثل‬ ‫ترتیبی‬ : ‫مدل‬ ‫و‬ ‫آبشاری‬ V  ‫پیمایشی‬ ‫های‬‫روش‬ (iterative) : Spiral  ‫افزایشی‬ ‫های‬‫روش‬ (Incremental) : RUP  ‫وجود‬ ‫نیز‬ ‫ترکیبی‬ ‫های‬‫روش‬ ‫دارد‬ .  ‫جایگاه‬ ‫به‬ ‫رو‬ ‫به‬ ‫رو‬ ‫شکل‬ ‫در‬ ‫مدل‬ ‫در‬ ‫صوری‬ ‫های‬‫روش‬ V ‫می‬ ‫پردازیم‬ 7 ‫صوری‬ ‫اعتبارسنجی‬ ‫صوری‬ ‫توصیف‬
  • 8. ‫و‬ ‫اتکاپذیری‬ ‫های‬‫نیازمندی‬ ‫نال‬ ِ ‫فانکش‬ ‫های‬‫نیازمندی‬  ‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬ ‫ی‬‫دسته‬ ‫به‬ ‫اتکاپذیری‬ ‫های‬‫نیازمندی‬ (Functional) ‫است‬ . ‫از‬ ‫مشخصی‬ ‫قابلیت‬ ‫به‬ ‫ها‬‫نیازمندی‬ ‫دسته‬ ‫این‬ ‫کند‬‫نمی‬ ‫اشاره‬ ‫افزار‬‫نرم‬ . ‫دادن‬ ‫نشان‬ ‫سایت‬‫وب‬ ‫یک‬ ‫در‬ ‫مثال‬ ‫برای‬ ‫است‬ ‫فانکشنال‬ ‫نیازمندی‬ ‫یک‬ ‫پروفایل‬ . ‫و‬ ‫سایت‬ ‫امنیت‬ ‫حفظ‬ ‫اما‬ ‫است‬ ‫فانکشنال‬ ‫غیر‬ ‫نیازمندی‬ ‫یک‬ ‫حمالت‬ ‫از‬ ‫جلوگیری‬ .  ‫انتزاع‬ ‫سطح‬ ‫کاهش‬ ‫با‬ ‫نیز‬ ‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬ ‫حال‬ ‫این‬ ‫با‬ ‫دارند‬ ‫توصیف‬ ‫به‬ ‫نیاز‬ . ‫توصیف‬ ‫ابزار‬ ‫به‬ ‫بیشتر‬ ‫ادامه‬ ‫در‬ ‫پردازیم‬‫می‬ ‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬ . 8
  • 9. ‫اعتبارسنجی‬ ‫و‬ ‫یابی‬‫درستی‬  ‫یابی‬‫درستی‬ (Verification) : ‫محصول‬ ‫یک‬ ‫درونی‬ ‫ثبات‬ ‫تصحیح‬ ‫و‬ ‫ارزیابی‬ ‫افزار‬ ‫نرم‬ ‫یا‬ ( ‫راست‬ ‫سمت‬ v )  ‫اعتبارسنجی‬ (Validation) : ‫به‬ ‫نسبت‬ ‫محصول‬ ‫یک‬ ‫ثبات‬ ‫تصحیح‬ ‫و‬ ‫بررسی‬ ‫بیرونی‬ ‫مالک‬ ‫یک‬ .  ‫یابی‬‫درستی‬ ‫مثال‬ : ‫طراحی‬ ‫ی‬‫مرحله‬ ‫در‬ ‫ها‬‫نیازمندی‬ ‫درستی‬ ‫بررسی‬  ‫اعتبارسنجی‬ ‫مثال‬ : ‫درست‬ ‫یا‬ ‫طراحی‬ ‫به‬ ‫نسبت‬ ‫سازی‬‫پیاده‬ ‫بودن‬ ‫درست‬ ‫بودن‬ UML diagram ‫به‬ ‫نسبت‬ activity diagram 9
  • 10. ‫های‬‫سیستم‬ ‫طراحی‬ ‫برای‬ ‫چارچوب‬ ‫یک‬ ‫اتکاپذیر‬ ( ‫دارد‬ ‫ادامه‬ )  ‫در‬ ‫تغییرات‬ V-Model  ‫امنیت‬ ‫صوری‬ ‫توصیف‬ ‫افزودن‬  ‫ریسک‬ ‫تحلیل‬ ‫بخش‬ ‫افزودن‬ (risk)  ‫کمک‬ ‫به‬ ‫صوری‬ ‫های‬‫روش‬ ‫با‬ ‫سیستم‬ ‫های‬‫نیازمندی‬ ‫توصیف‬ CSP  ‫اجرایی‬ ‫محیط‬  ‫اپلیکیشن‬ ‫نیازهای‬  ‫تهدید‬ ‫تحلیل‬  ‫اتکاپذیری‬ ‫های‬‫نیازمندی‬ 10
  • 11. ‫های‬‫سیستم‬ ‫طراحی‬ ‫برای‬ ‫چارچوب‬ ‫یک‬ ‫اتکاپذیر‬  ‫سیستم‬ ‫معماری‬  ‫سیستم‬ ‫ساختار‬  ‫ها‬‫رابط‬ (Interface)  ‫داخلی‬ ‫تهدید‬ ‫تحلیل‬  ‫داخلی‬ ‫ریسک‬ ‫تحلیل‬ 11
  • 12. ‫قابلیت‬ ‫سنجش‬ ‫های‬‫روش‬ ‫بندی‬‫طبقه‬ ‫اطمینان‬ 12
  • 13. ‫صوری‬ ‫توصیف‬  ‫بالدرنگ‬ ‫های‬‫سیستم‬ ‫برای‬ ‫توصیف‬ ‫زبان‬  ‫امنیت‬ ‫ی‬‫الیه‬ ‫وجود‬  ‫خطا‬ ‫پذیری‬‫تحمل‬ ‫الیه‬ ‫وجود‬  ‫توصیف‬ ‫ابزار‬ ‫برای‬ ‫ای‬‫الیه‬ ‫سیستم‬ ‫از‬ ‫استفاده‬  ‫توصیف‬ ‫برای‬ ‫احتماالتی‬ ‫ی‬‫محاسبه‬ ‫درخت‬ ‫منطقی‬ ‫صورت‬ ‫از‬ ‫استفاده‬ ‫ایمنی‬ ‫و‬ ‫پذیری‬‫اطمینان‬ 13
  • 14. ‫مدل‬ ‫بررسی‬  ‫احتمالی‬ ‫مدل‬ ‫بررسی‬ ‫ابزار‬ MRMC  ‫ورودی‬ : ‫فرایندهای‬ ‫انواع‬ ‫مارکوف‬  ‫خروجی‬ : ‫ویژگی‬ ‫بررسی‬ ‫اتکاپذیری‬  ‫اتوماتا‬ ‫از‬ ‫استفاده‬  ‫از‬ ‫استفاده‬ SPIN  ‫منطق‬ ‫از‬ ‫استفاده‬ 14
  • 15. ‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫بر‬ ‫وارد‬ ‫ایرادات‬ ‫اتکاپذیر‬ ‫افزار‬ ‫نرم‬ ‫طراحی‬  ‫اتکاپذیر‬ ‫های‬‫سیستم‬ ‫اکثر‬ ‫که‬ ‫صورتی‬ ‫در‬ ‫زیاد‬ ‫محاسباتی‬ ‫پیچیدگی‬ ‫دارند‬ ‫بزرگی‬ ‫ساختار‬ .  ‫سالیان‬ ‫و‬ ‫است‬ ‫سختی‬ ‫کار‬ ‫صوری‬ ‫های‬‫روش‬ ‫ریاضیات‬ ‫و‬ ‫خواندن‬ ،‫نوشتن‬ ‫کند‬ ‫پیدا‬ ‫مهارت‬ ‫آن‬ ‫در‬ ‫شخصی‬ ‫تا‬ ‫کشد‬‫می‬ ‫طول‬ .  ،‫است‬ ‫زیاد‬ ‫بسیار‬ ‫افزار‬‫نرم‬ ‫ی‬‫ارائه‬ ‫سرعت‬ ‫که‬ ‫چابک‬ ‫های‬‫روش‬ ‫در‬ ‫هستند‬ ‫کند‬ ‫بسیار‬ ‫صوری‬ ‫های‬‫روش‬ . 15
  • 16. ‫گیری‬‫نتیجه‬  ‫تضمین‬ ‫ایجاد‬ ‫برای‬ ‫افزار‬‫نرم‬ ‫حیات‬ ‫مختلف‬ ‫مراحل‬ ‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫شوند‬‫می‬ ‫استفاده‬ ‫فانکشنال‬ ‫غیر‬ ‫و‬ ‫فانکشنال‬ ‫های‬‫نیازمندی‬ ‫درستی‬ ‫در‬  ‫است‬ ‫فانکشنال‬ ‫غیر‬ ‫های‬‫نیازمندی‬ ‫ی‬‫مجموعه‬ ‫از‬ ‫اتکاپذیری‬ .  ‫و‬ ‫صوری‬ ‫توصیف‬ ‫ابزارهای‬ ،‫صوری‬ ‫های‬‫روش‬ ‫از‬ ‫استفاده‬ ‫ی‬‫عمده‬ ‫روش‬ ‫دو‬ ‫هستند‬ ‫مدل‬ ‫بررسی‬ ‫ابزارهای‬ .  ‫های‬‫گزاره‬ ‫صورت‬ ‫به‬ ‫را‬ ‫اطمینان‬ ‫قابلیت‬ ‫توان‬‫می‬ ‫زمان‬ ‫منطق‬ ‫کمک‬ ‫به‬ ‫کرد‬ ‫بیان‬ ‫منطقی‬ .  ‫مدل‬ ‫بررسی‬ ‫ابزارهای‬ ‫در‬ ‫که‬ ‫است‬ ‫صوری‬ ‫روش‬ ‫یک‬ ‫خود‬ ‫مارکوف‬ ‫مدل‬ ‫مختلف‬ 16
  • 17. ‫اول‬ ‫سوال‬  ‫سوال‬ : ‫نام‬ ‫مثال‬ ‫با‬ ‫را‬ ‫افزاری‬‫نرم‬ ‫ی‬‫پروژه‬ ‫های‬‫نیازمندی‬ ‫انواع‬ ‫ببرید‬ . ‫هاست؟‬ ‫نیازمندی‬ ‫از‬ ‫دسته‬ ‫کدام‬ ‫از‬ ‫اتکاپذیری‬ ‫های‬‫ویژگی‬  ‫جواب‬ : ‫مثال‬ ‫فانکشنال‬ ‫های‬‫نیازمندی‬ : ‫ی‬‫مشاهده‬ ‫قابلیت‬ ‫سازی‬ ‫پیاده‬ ‫مثل‬ ‫غیرفانکشنال‬ ‫های‬‫نیازمندی‬ ‫و‬ ‫وبسایت‬ ‫یک‬ ‫در‬ ‫کاربر‬ ‫پروفایل‬ : ‫سایت‬ ‫امنیت‬ . ‫های‬‫نیازمندی‬ ‫ی‬‫دسته‬ ‫از‬ ‫اتکاپذیری‬ ‫های‬‫ویژگی‬ ‫هستند‬ ‫غیرفانکشنال‬ . ‫شامل‬ ‫را‬ ‫سیستم‬ ‫از‬ ‫مشخصی‬ ‫فیچر‬ ‫زیرا‬ ‫شوند‬‫نمی‬ . 17
  • 18. ‫دوم‬ ‫سوال‬  ‫سوال‬ : ‫بررسی‬ ‫توانایی‬ ‫که‬ ‫مدل‬ ‫بررسی‬ ‫ابزارهای‬ ‫از‬ ‫نمونه‬ ‫دو‬ ‫ببرید‬ ‫نام‬ ‫را‬ ‫دارند‬ ‫را‬ ‫اتکاپذیری‬ ‫های‬‫ویژگی‬ .  1 . MRMC ‫دریافت‬ ‫ورودی‬ ‫عنوان‬ ‫به‬ ‫را‬ ‫مارکوف‬ ‫فرآیندهای‬ ‫که‬ ‫کند‬‫می‬ . SPIN ‫نام‬ ‫به‬ ‫سازی‬ ‫مدل‬ ‫نویسی‬‫برنامه‬ ‫زبان‬ ‫یک‬ ‫آن‬ ‫ورودی‬ ‫که‬ ‫است‬ ‫پرومال‬ . 18
  • 19. ‫سوم‬ ‫سوال‬  ‫شکل‬ ‫به‬ ‫توجه‬ ‫با‬ V-Model ‫و‬ ‫شکل‬ Spiral ،‫راست‬ ‫سمت‬ ‫در‬ ‫صوری‬ ‫های‬‫روش‬ ‫از‬ ‫استفاده‬ ‫در‬ ‫افزار‬‫نرم‬ ‫اتکاپذیری‬ ‫برای‬ ‫افزار‬‫نرم‬ ‫حیات‬ ‫ی‬‫چرخه‬ ‫کدام‬ ‫چرا؟‬ ‫است‬ ‫تر‬‫پیچیده‬  ‫مدل‬ Spiral ‫های‬‫روش‬ ‫از‬ ‫زیرا‬ ، ‫دارای‬ ‫و‬ ‫است‬ ‫پیمایشی‬ ‫است‬ ‫تر‬‫کوچک‬ ‫های‬‫چرخه‬ . ‫لذا‬ ‫باید‬ ‫هم‬ ‫صوری‬ ‫روش‬ ‫سازی‬‫پیاده‬ ‫شود‬ ‫انجام‬ ‫بیشتری‬ ‫سرعت‬ ‫با‬ . ‫های‬‫روش‬ ‫اجرای‬ ‫سرعت‬ ‫باید‬ ‫هم‬ ‫تا‬ ‫باشد‬ ‫بیشتر‬ ‫صوری‬ ‫ارائه‬ ‫مهلت‬ ‫به‬ ‫افزار‬‫نرم‬ ‫برسد‬ . 19