UIAIC/UQB huggingface dataset:
هدف درس زبان تخصصی
هدف از این درس ایجاد مهارت در خواندن روان و درک صحیح متون زبان انگلیسی در حوزه ی مهندسی کامپیوتر و فن آوری اطالعات 
و نیز تا حدودی درک سخنرانی های علمی در این حوزه است. این درس با تکیه بر تمرینات مستمر هفتگی در خواندن و نوشتن و نیز 
گوش دادن به سخنرانی های علمی به زبان انگلیسی سعی در ارتقای مهارت های دانشجو دارد
درس معماری کامپیوتر
هدف از ارایه این درس آشنایی با ساختار و سازمان کامپیوتر، واحدهای حافظه، پردازنده و دستگاههای ورودی/خروجی است. در این 
درس دانشجویان با ساختار داخلی پردازنده، زبان انتقال ثبات (RTL(، طراحی واحد حسابی/منطقی، الگوریتمهای جمع، تفریق، ضرب 
و تقسیم، نمایش اعشاری ممیز ثابت و شناور، الگوریتم فون -نیومن، طراحی مسیر داده، طراح ی واحد کنترل، خط لوله، دستگاههای 
ورودی/خروجی، سلسله مراتب حافظه، محاسبه کارآیی آشنا خواهند شد. در این درس دانشجویان برای طراحی و شبیهسازی طرحها 
از یکی از زبان های توصیف سختافزار استفاده میکنند.
منابع درس معماری کامپیوتر
[1] Patterson, D. Hennessy, J. (2013) Computer Organization and Design: The Hardware/Software 
Interface, (5th edition) Morgan Kaufmann.
[2] Mano, M. (1992) Computer System Architecture (3rd edition) Prentice Hall. 
[3] Mano, M. Kime, C.R. (2004) Logic and Computer Design Fundamentals (3rd edition), PrenticeHall.
[4] Stalling, W. S. (2003) Computer Organization and Architecture (6th edition) Prentice-Hall.
[5] Hamacher, V. C. Vrasenic, Z. G. Zaky, S. G. (1990) Computer Organization (3rd edition) McGrawHill
آزمایشگاه معماری کامپیوتر
هدف این آزمایشگاه آشنایی عملی دانشجویان با مفاهیم ارایه شده در درس معماری کامپیوتر مانند طراحی مدارهای دیجیتال، نحوه 
تحلیل و اشکال زدایی آن ها، طراحی بخش های منطقی و حسابی یک پردازنده، طراحی واحدهای حافظه، ورودی/خروجی، مسیر داده 
و واحد کنترل در یک پردازنده نوعی، با استفاده از زبان های توصیف سختافزار همچون Verilog و VHDL برای توصیف ساختاری 
آن ها، سنتز و در نهایت پیادهسازی روی بوردهای FPGA است
درس نظریه زبان ها و ماشین ها
• مفاهیم پایه در نظریه زبان ها و ماشین ها 
• نظریه زبان های منظم 
o پذی رنده برای زبان های منظم 
o عبارات منظم
o خصوصی ات بستاری زبان های منظم
o مسایل قابل تصمیم گیری برای زبان های منظم 
• نظریه زبان های مستقل از متن 
o ساده سازی گرامرهای مستقل از متن 
o فرمهای نرمال برای گرامرهای مستقل از متن 
o پذیرنده برای زبان های مستقل از متن 
o خصوصی ات بستاری زبان های مستقل از متن 
o مسایل قابل تصمیم گیری برای زبانهای مستقل از متن 
• نظریه زبان های نوع یک و صفر 
o ماشین تورینگ استاندارد 
o ماشین های تورینگ غی ر استاندارد 
o پذیرنده برای زبان های حساس به متن
منابع درس نظریه زبان ها و ماشین ها
[1] Linz, P. (2017) Introduction to Formal Languages and Automata (6th edition) Jones & Bartlet 
Learning.
[2] Hopcroft, J. E. Motwani, R. Ullman, J. D. (2006) Introduction to Automata Theory, Languages, 
and Computation (3rd edition) Addison-Weley.
[3] Sudkamp, T. A. (2006) Languages and Machines (3rd edition) Pearson Education Inc
درس طراحی الگوریتم ها
o مفهوم الگوریتم، انگیزه مطالعه تحلیل و طراحی الگوریتم ها و معرفی مفاهیم پایه 
o مرور جبر مجانبی 
o مقدمه ای بر تحلیل سرشکن 
• اثبات درستی الگوریتم ها 
o الگوریتمهای جستجوی سریع و ادغامی 
o الگوریتم استراسن برای ضرب ماتریس های بزرگ 
o الگوریتمی از نوع تقسیم و غلبه برای مسأله ای دیگر به انتخاب استاد 
• برنامه ریزی پویا 
o الگوریتمهایی برای مسائل بزرگترین زیررشته مشترک و هم تراز کردن دنباله ها 
o ضرب زنجیره ای ماتریس ها 
o درخت جستجوی بهینه
منابع درس طراحی الگوریتم ها
[1] T. Cormen, C. Leiserson, R. Rivest. Introduction to Algorithms, MIT Press, 2009.
[2] R. Neopolitan. Foundations of algorithms. Jones & Bartlett Learning, 2015.
[3] E. Horowits, S. Sahni and S. Rajasekaran. Fundamentals of computer algorithms, Galgotia Pub., 2008
درس ریزپردازنده و زبان اسمبلی
در این درس دانشجویان با معمار ی یک ری زپردازنده )با انتخاب ی ک معماری مانند ARM)، تشکیالت نرم افزاری، سختافزاری و اجزاء 
میکروکنترلرها )با انتخاب یک م یکروکنترلر از خانواده AVR، ARM و مانند آن( ، برنامه نوی سی به زبان اسمبل ی و سطوح بالتر، 
نحوه اتصال و ارتباط پردازنده با حافظهها و ادوات جانب ی آشنا می شوند. همچنین در این درس دانشجویان می آموزند که چگونه از 
زیرپردازنده و میکروکنترلرها در ساخت سیستم های نهفته، اینترنت اشیاء و مانند آن استفاده نمایند
منابع اصلی درس ریزپردازنده و زبان اسمبلی
]1[ م. هما یون پور و همکاران، ری زپردازنده و زبان اسمبل ی، انتشارات شیخ بهایی، 1394
[2] M. A. Mazidi, S. Naimi, S. Naimi, The AVR Microcontroller and Embedded Systems using 
Assembly and C, 1st Edition, Prentice Hall, 2010 .
[3] M. A. Mazidi, D. Causey, R. D. McKinlay, PIC Microcontroller and Embedded Systems using 
Assembly and C for PIC18, Prentice Hall, 2008 .
[4] R. H. Barnett, S. Cox, L. O'Cull, Embedded C Programming and the Atmel AVR, Delnmar Cengage 
Learning Publishing, 2011.
[5] B. van Dam, Microcontroller System Engineering, 45 projects for PIC, AVR and ARM, 2008.
[6] T. Wilmshurst, Designing Embedded Systems with PIC Microcontrollers, Principles and 
Applications, 2nd Edition, Newnes, 2010.
[7] Atmel and ARM Microcontrollers’ Datasheets.
درس آزمایشگاه ریزپردازنده و زبان اسمبلی
آشنایی با یک نرم افزار شبیه سازی )مانند Proteus )برای شبیهسازی و تست، آشنایی با یک نرمافزار ساخت طراحی بورد 
مدار چاپی )مانند نرمافزار آلتیوم( برای طراحی شماتیک و PCB و نهایتا انجام یک پروژه ساده الکترونیکی. این پروژه به 
عنوان مثال می تواند طراحی و شبیهسازی یک مدار چشمک زن با دو LED( مدار مولتی ویبراتور بی استابل( و طراحی 
شماتیک و PCB آن، سفارش بورد و مونتاژ قطعات بر روی PCB و لحیم کاری و تست آن باشد. از آموخته های حاصل از 
انجام این پروژه در انجام پروژه نهایی آزمایشگاه استفاده خواهد شد. 
• آشنایی با یک اسمبلر و کمپایلر میکروکنترلر )مثل Studio AVR و CodeVision برای خانواده AVR )
• تهیه یا ساخت پروگرامر، راه اندازی مدار بازنشان ی، برنامه ریزی بیت های فیوز، تولید سیگنال ساعت (clock (برای 
میکروکنترلر
درس سیستم های عامل
رئوس مطالب: 
• مقدمه و ساختارهای سیستم عامل 
• مدیریت فرآیندها 
• ریسمان ها 
• زمان بندی پردازنده 
• همگامسازی فرآیندها 
• مدیریت بن بست 
• مدیریت حافظه اصلی 
• مدیریت حافظه ثانویه 
• مدیریت ورودی/خروجی 
• ساختار حافظه انبوه )دیسک، زمان بندی، RAID و مسائل مرتبط( 
• محافظت و امنیت 
• سیستمهای عامل نهفته، ماشین های مجازی
منابع اصلی درس سیستم های عامل
[1] A. Silberschatz, P.B. Galvin, G. Gagne, Operating System Concepts, 9th Edition, Wiley, 2013.
[2] W. Stallings, Operating Systems: Internal and Design Principles, 9th Edition, Pearson, 2015.
[3] A.S. Tanenbaum, Modern Operating Systems, 4th Edition, Pearson, 2014
درس شبکه های کامپیوتری
رئوس مطالب: 
• مقدمه )مروری بر سرویس های شبکه های کامپیوتری، تعریف شبکه های کامپیوتری، سرویس، کیفیت سرویس دهی و 
پروتکل( 
• شبکه اینترنت و اجزای تشکیل دهنده آن )تعریف اجزاء شبکه های اینترنت، مدل Server-Client، شبکه های 
دسترسی و رسانههای فیزیکی، سوئیچینگ بسته ای و سوئیچینگ مداری، پارامترهای کیفیت سرویس در شبکه های 
سوییچینگ بسته ای(
• معماری الیهای شبکه های کامپیوتری )مدل مرجع OSI، دید واحد به لیه ها، پروتکل ها و سرویس ها، مدل های 
سرویس اتصال گرا و سرویس بدون اتصال، قطعهسازی و بازسازی، مالتی پلکسینگ و دی مالتی پلکسینگ، مدل IP/TCP )
• الیه کاربرد )اصول کاربردهای شبکه ای، وب و پروتکل HTTP، انتقال فایل و پروتکل FTP، پست الکترونیکی و 
پروتکل SMTP، سرویس دایرکتوری در اینترنت و پروتکل DNS، کاربردهای نظیر به نظیر، برنامه نویسی سوکت با 
TCP، برنامه نویسی سوکت با UDP )
• الیه انتقال )معرفی سرویس های لیه انتقال، سرویس بدون اتصال لیه انتقال و UDP، اصول انتقال مطمئن داده 
)پروتکل های کنترل خطای ARQ)، سرویس اتصال گرا لیه انتقال و TCP، اصول کنترل ازدحام، کنترل ازدحام در 
 )TCP
 الیه شبکه )معرفی وظایف لیه شبکه )مسیریابی و جلورانی(، شبکه های داده نگار و مدار مجازی، معماری مسیریاب، 
مدیریت ترافیک در شبکه های سوئیچینگ بسته ای )مدیریت ترافیک در سطح بسته )مدیریت صف و زمان بندی بسته ها(، 
مدیریت ترافیک در سطح جریان )کنترل ازدحام(، مدیریت ترافیک در سطح تجمیع جریان ها )مهندسی ترافیک((، پروتکل 
اینترنت )پروتکل های 4IPv، 6IPv، ICMP، ARP)، پروتکل های DHCP و IP Mobile، الگوریتمهای مسیریابی 
)الگوریتم های بردار فاصله و وضعیت پیوند(، پروتکل های مسیریابی در اینترنت )تعریف AS و پروتکل های IGP و EGP، 
و پروتکل RIP، پروتکل OSPF، پروتکلBGP)، مسیریابی چند پخشی و همه پخشی( 
• الیه پیوند داده و شبکه های محلی )معرفی لیه پیوند داده و سرویس های آن، کلیات روشهای تشخیص و تصحیح 
خطا، کلیات روش های کنترل دسترسی به رسانه، کلیات شبکه های محلی Ethernet و LAN Wireless
منابع اصلی درس شبکه های کامپیوتری
[1] J. F. Kurose, K. W. Ross, Computer Networking: A Top-Down Approach, 7th Edition, Pearson, 
2016.
[2] A. Leon-Garcia, I. Widjaja, Communication Networks, 2nd Edition, McGraw-Hill, 2003.
[3] A. S. Tanenbaum, Computer Networks, 5th Edition, Pearson, 2010.
[4] B. A. Forouzan and DeAnza College, Data Communications and Networking, 5th Edition, 
McGraw-Hill, 2012.
[5] W. Stallings, Data and Computer Communications, 10th Edition, Pearson, 2014
درس آزمایشگاه شبکه های کامپیوتری
رئوس مطالب: 
• مقدمه )آشنایی دانشجویان با قوانین و مقررات آزمایشگاه، نحوه تهیه پیش گزارش، انجام آزمایش ها و تهیه گزارش کار( 
• ابزارهای ساده مدیریت شبکه و انجام آزمایشات الزم )ابزارهای Ping، TraceRoute، MRTG و موارد 
مشابه دیگر به منظور عیب یابی، اندازه گیری پهنای باند و تأخیر شبکه(
• ابزارهای Capturing Packet و انجام آزمایشات الزم )ابزارهای TCPDUMP، Wireshark و موارد 
مشابه دیگر به منظور درک اولیه عملکرد مدل لیه ای و پروتکل های شبکه( 
• ابزارهای شبیه سازی شبکه و تجهیزات آن و انجام آزمایشات الزم )ابزارهای Tracer Packet، 3GNS، 
و موارد مشابه دیگر به منظور درک عملکرد تجهیزات شبکه( 
• انجام آزمایشات برای درک پروتکل های الیه کاربرد ) HTTP، SMTP، FTP، DNS و پروتکل های دیگر 
لیه کاربرد( 
• انجام آزمایشات برای درک پروتکل های انتقال ) TCP و UDP )
• انجام آزمایشات برای درک عملکرد جلورانی بسته ها )IP، ARP، ICMP، DHCP، NAT )
• انجام آزمایشات برای درک مسیریابی ایستا و پویا، و پروتکل های مسیریابی )RIP، OSPF و پروتکل های 
مسیریابی دیگر(
درس تحلیل و طراحی سستم ها
رئوس مطالب: 
o موضوع تحلیل و طراحی سامانه ها 
o مولفه های سامانه های اطالعاتی و ابعاد تحلیل و طراحی سیستم و چرخه حیات نرم افزار
o اصول راهنما در تمامی فعالیت ها ی تولید نرمافزار 
o فرایندهای ساخت یافته 
o فرایند های چابک 
o مهندسی نیازمندی ها
o مدل سازی سناریو و موارد کاربری 
o تحلیل و مدل سازی داده 
o تحلیل و مدل سازی فرآیند 
o تحلیل و مدل سازی شیئ گرا 
o مستند سازی با استفاده از زبان UML 
o امکان سنجی بر مبنای مهندسی نیازمندی ها
o رویکردهای متفاوت طراحی 
o معماری سیستم 
o طراحی ساخت یافته مبتنی بر مدل 
o طراحی شیئ گرا 
o ساخت نرمافزار 
o آزمون: رویکردهای متفاوت و مراحل متفاوت طراحی و اجرای آزمون نرم افزار
o مدیریت پروژه: آشنایی مقدماتی با مدیریت پروژه 
o مدیریت پی کربندی و مستندات
منابع اصلی درس تحلیل و طراحی سیستم ها
[1] R. S. Presman, Software Engineering: A Practitioner’s Approach, McGrawHill, 7th Edition, 2011.
[2] J. Whitten, L. Bentley, Systems Analysis and Design Methods, McGraw-Hill.
[3] R. S. Pressman, Software Engineering: A Practitioner’s Approach, 7th Edition, McGraw-Hill.
[4] M. Fowler, UML Distilled, 3nd Edition, OMG Standard Group
درس روش پژوهش و ارائه
o هدف و اهمیت درس، پژوهش در مهندسی، ارائه مطلوب و عوامل مؤثر در آن، جنبه های دانش، فن و هنر ارائه. 
o تعاریف و مفاهیم اولیه مرتبط با پژوهش، انواع پژوهش، اخالق در پژوهش 
o اهداف و سؤالت پژوهش، نقشه ذهن، دیاگرام استخوان ماهی، تعریف موضوع پژوهش و انتخاب عنوان 
o روش پژوهش در مهندسی، روش علمی، مدلسازی و شبیهسازی
o تهیه طرح پژوهش، پیشنهاد پروژه کارشناسی و کارشناسی ارشد، زمان بندی و تخمین بودجه طرح
o کسب اطالعات از اینترنت، اعتبارسنجی و انتخاب انواع منابع پژوهش، بررسی سوابق موضوع، مطالعه و یادداشت-
برداری 
o روشها و نکات مهم در انجام بخش عملی- تجربی پژوهش 
o نگارش گزارش اولیه 
o معرفی نرم افزارهای کمکی در پژوهش مانند وان نوت، اندنوت، زوترو، فری مایند. 
• ارائه گفتاری 
o سازماندهی و زمان بندی ارائه گفتاری، طرح ارائه. 
o موضوعات حساس مربوط به قبل از زمان ارائه، تهیه اسالید. 
o نکات کلیدی مربوط به زمان ارائه.
o جنبههای مهم در انواع خاص از ارائههای گفتاری مانند سمینار دانشجوئی، دفاع از پایاننامه، ارائه مقاله و پوستر 
در کنفرانس ها 
o آشنائی با مطالب مطرح در مصاحبهها. 
o معرفی مختصر نرم افزارهای کمکی در ارائه گفتاری مانند پاورپوینت و فوکاسکی. 
o اجزاء یک گزارش مهندسی)عنوان، تقدیر و تشکر، چکیده، واژه های کلیدی، فهرستها، مقدمه، بدنه اصلی، تهیه 
شکل و جدول، نتیجهگیری، مراجع، پیوستها(، 
o سبک نگارش مراجع و ارجاع در متن، سرقت علمی. 
o ویژگی های متن علمی، اصالح ادبی متن، نشانهگذاری. 
o درست نویسی در فارسی. 
o ویرایش گزارش، ویرایش محتوائی، ویرایش غیرمحتوائی. 
oنکات مهم در انواع خاص از ارائههای نوشتاری : سمینار، پروژه دانشجوئی، کارآموزی، مقاله، حرفهنامه
منابع درس و پژوهش و ارائه
]1[ ر. صفابخش، پژوهش و ارائه در مهندسی، تهران: انتشارات دانشگاه صنعتی امیرکبیر، .1392 
]2[ س. شیری و ع. خلیلی، شیوه ارائه مطالب علمی و فنی، تهران: انتشارات دانشگاه صنعتی امیرکبیر، .1390 
]3[ م. ت. روحانی رانکوهی، شیوه ارائه مطالب علمی و فنی، انتشارات علمی، .1382 
]4[ ع. علیاحمدی، توصیفی جامع از روش های تحقیق، انتشارات تولید دانش، .1386 
]5[ غ. خاکی، روش تحقیق با رویکرد به پایان نامه نویسی، انتشارات بازتاب، .1382 
]6[ س. ج. طبیبی، م. ر. ملکی، ب. دلگشائی، تدوین پایان نامه، رساله، طرح پژوهشی، و مقاله علمی، انتشارات فردوس، .1
درس اصول طراحی پایگاه داده
o مقدمه و معرفی، تاریخچه، مفاهیم و تعاریف پایگاه داده ها 
o مقدمه ای بر مدل رابطه ای
o زبان های فرمال )جبر رابطه ای، حساب رابطهای(
SQL •
o زبان SQL مقدماتی 
o مباحث تکمیلی زبان SQL
o شاخصگذاری داده 
o بهینهسازی پرسوجو 
• مدل نهاد ارتباط 
o طراحی پایگاه داده ها: مدل نهاد -ارتباط (Relationship Entity (
o نرمال سازی سطوح اول، دوم، سوم،BCNF
93 / 254
o نرمال سازی سطوح بالتر 
o پایگاه داده های شی گرا 
o پایگاه داده های XML
o پایگاهداده های غیررابطهای
OLAP o
Data Warehouse o
درس اصول طراحی کامپایلر
• مقدمه 
• انواع زبان ها و ماشین ها 
• تحلیل واژهای و اصالح خطاهای واژهای
• تحلیل نحوی 
• روشهای تجزیه بال به پایین 
• روشهای تجزیه پایین به بال 
97 / 254
• تقدم عملگر 
• تقدم ساده 
CLR(1) و LALR(1) ،SLR(1) شامل LR(1) تجزیه• 
• تحلیل معنایی 
• مدیریت جدول عالیم 
• روشهای تخصیص حافظهی زمان اجرا
منابع درس اصول طراحی کامپایلر
[1] A. V.Aho, R. Sethi, J. D. Ullman, Compilers: Principles, Techniques, and Tolls. 2nd Edition, 
Addison-Wesley, 2007.
[2] D. Grune, H. Bal, C. Jacobs, K.Langendoen, Modern Compiler Design. JohnWiley & Sons, 2000.
درس زبان های برنامه نویسی
• مقدمه )تعریف زبان برنامهنویسی، مدلهای محاسباتی، انواع زبان ها، زبان و محاسبهپذیری( 
• نحو )نحو صوری، نحوهای عینی و انتزاعی( 
• معناشناسی پویا ) معناشناسی عملیاتی، دللتی، اصلموضوعی( 
• حساب لمدا )نحو، معناشناسی، توابع بازگشتی در حساب لمدا( 
• زبان های تابعی )Lisp، ML، و Haskell )
• معناشناسی ایستا )سامانههای نوع، زبان های ایمن، ایمنی نوع، حساب لمدای نوعدار، استنتاج نوع(
• گستره، توابع، و مدیریت حافظه )زبان های بلوکساختیافته، رکوردهای فعالسازی، بستارها( 
• کنترل در زبان های ترتیبی )کنترل ساختیافته، استثناها، ادامهسازی، توابع و ترتیب ارزیابی ها( 
• پودمانگی، انتزاع، و برنامهنویسی شیءگرا )برنامهنویسی ساختیافته، پودمان ها، مفاهیم شیء گرایی، Simula، 
 )Java ،C++ ،Smalltalk
• برنامهنویسی همروند و توزیع شده )مفاهیم پایه همروندی، مدل Actor، حساب هسته همروندی، ML همروند، همروندی 
در Java )
• برنامه نویس ی منطق ی ) مفاهی می از منطق مرتبه اول، حل کردن فرمول ها، Prolog
درس مهندسی نرم افزار
• مقدمه 
• فرآیندها و مدل های توسعه نرمافزار
• متدولوژی های توسعه نرم افزار
o توسعه با ذهنیت ساخت یافته
o توسعه با ذهنیت شیءگرا 
o Agile توسعه با ذهنیت
• مرور مفاهیم تحلیل و طراحی نرمافزار
o تعریف نیازمندی 
o طبقهبندی نیازمندی ها 
o مراحل مهندسی نیازمند ی ها
o تکنیکهای مهندسی نیازمندی ها 
o مرور مفاهیم تحلیل و طراحی شیءگرا 
o زبان مدلسازی UML
o معماری سیستم های نرم افزاری
• طراحی برنامه های کاربردی تحت وب
• طراحی برنامه های کاربردی موبایل 
• کیفیت نرم افزار
o مفاهیم کیفیت نرم افزار
o بررسی مدلهای کیفی گوناگون 
o تکنیکهای مرور 
o کنترل و تضمین کیفیت نرم افزار
o بهبود فرآیند توسعه نرمافزار
• تست و ارزیابی نرم افزار
o استراتژی تست نرمافزار
o تست برنامههای conventional
o تست برنامههای کاربردی شیءگرا 
o تست برنامههای کاربردی تحت وب
o تست برنامههای کاربردی موبایل 
• صحت سنجی و اعتبار سنجی نرمافزار
• مدیریت پیکر بندی نرمافزار
• اندازه گیری نرم افزار
o متریک های اندازهگیری محصول
o متریک های اندازهگیری فرآیند و پروژه
• اصول مدیریت پروژه های نرمافزاری
• تخمین نرم افزار
• زمان بندی پروژه 
• مدیریت ریسک 
• نگهداری نرم افزار، مهندسی مجدد، مهندسی معکوس
درس آزمایشگاه مهندسی نرم افزار
• آشنایی با نحوه تهیه RFP و پیشنهادیه 
• آشنایی با نحوه انتخاب متدولوژی مناسب برای یک پروژه نرم افزاری 
• آشنایی با برنامه ریزی و تهیه طرح مدیریت پروژه 
• آشنایی با نمونه سازی در پروژه های نرم افزاری 
• آشنایی با مدیریت پیکربندی در یک پروژه نرمافزاری 
• مهندسی خواسته ها و مدیریت ریسک در پروژه
• آشنایی با طراحی و مدل سازی سیستم نرمافزاری
• آشنایی با ایجاد آزمون در فرآیند توسعه نرمافزار 
• آشنایی با تحلیل و بررسی عملکرد نرم افزار
• آشنایی با مستندسازی سیستم و پروژه نرمافزاری
• آشنایی با نگهداری و استقرار در توسعه نرمافزار
درس آزمون نرم افزار
رئوس مطالب: 
• مقدمه ای بر روش های آزمون 
• معیارهای پوشش 
• معیارهای مبتنی بر گراف 
• معیارهای مبتنی بر منطق 
• معیارهای مبتنی بر افراز فضای ورودی 
• معیارهای مبتنی بر نحو 
• مالحظات عملی آزمون نرم افزار
• ابزارهای آزمون و تنظیم نرمافزار برای آزمون
درس طراحی واسط کاربر
رئوس مطالب: 
• مقدمه ای بر طراحی واسط کاربر )معرفی طراحی واسط کاربر ی، سیر تکامل ی واسط کاربری، گرای ش های حال حاضر در 
طراحی واسط کاربری( 
• اصول طراح ی واسط کاربر )قابلی ت استفاده، قابلیت یادگیری، کارایی و ...( 
مفاهیم بنیادی واسط کاربر ) شما های رنگ ی و تون ها، تیپوگراف ی، طرح بندی، وایرفریم و موکاپ، ناوش( 
• فرآیند طراح ی واسط کاربر )متدولوژی طراح ی واسط کاربر، طراح ی تک راری، طراح ی کاربر محور( 
• تکنیکهای طراحی واسط کاربر )نگاره نمایی، سناریوها، استوری بورد، الگوهای طراحی ، ساخت پروتوتایپ( 
• صحت سنجی و اعتبار سنج ی واسط کاربر 
• تکنیکهای ارزی ابی واسط کاربر 
• ابزارهای واسط کاربر
منابع اصلی درس طراحی واسط کاربر
[1] H. R. Hartson, P. S. Pyla, The UX Book: Process and Guidelines for Ensuring a Quality User 
Experience, Morgan Kaufmann / Elsevier, 2012.
[2] B. Shneiderman, C. Plaisant. Designing the User Interface: Strategies for Effective HumanComputer Interaction, 4th Edition, Addison Wesley, 2004. 
[3] J. Preece, Y. Rogers, H. Sharp, Interaction design: Beyond human-computer interaction, 4th
Edition, John Wiley & Sons Ltd. ISBN 978-1-119-02075-2.
[4] D. A. Norman, The Design of Everyday Things. Basic Books, 2002. ISBN: 9780465067107.
[5] A. J. Dix, J. E. Finlay, G. D. Abowd, R. Beale, Human-Computer Interaction. 2nd Edition. Prentice 
Hall, 1998.
[6] D. R. Olsen, Developing User Interfaces (Interactive Technologies). Morgan Kaufmann, 1998
درس آمار و احتمال مهندسی
رئوس مطالب: 
• آمار توصیفی : ارائه دادهها توسط نمودار و جدول –شاخص های مرکزی ، پراکندگی و موقعیت )ترجیحا با نرم افزار( 
• آنالیز ترکیباتی : جایگشت ، ترکیب ، مدل های توپ و جعبه. 
• احتمال : فضای احتمال ، اعمال روی پیشامدها ، قضایای احتمال ، احتمال شرطی ، قانون بیز و استقلال پیشامدها. 
• متغیرهای تصادفی و توضیع آنها: متغیرهای تصادفی گسسته و پیوسته ، تبدیل متغیرها ، توزیع احتمال توام ، توزیع های 
کناری ، توزیع های شرط ی و استقلال. 
• امید ریاضی و گشتاورها ، تابع مولد احتمال ، تابع مشخصه : نامساوی چبیشف ، گشتاور های دو یا چند متغیر تصادفی ، ضریب 
همبستگی و امید ریاضی شرطی .
• توزیع های گسسته و پیوسته معروف. 
• توزیع های نمونه گیری میانگین و واریانس نمونه ، آماره های ترتیبی. 
• نظریه برآورد یابی: برآورد نقطه ا ی و فاصله ای ، روش گشتاورها و ماکزیمم درست نمایی. 
• آزمون فرض های آماری : مفاهیم اولیه ، آزمون های مربوط به میانگین ، نسبت و واریانس جامعه ، آزمون های مقایسه میانگین 
و نسبت دو جامعه نرمال مستقل ، آزمون های زوجی . 
• جدول توافقی ، رگرسیون و ضریب همبستگی.
منابع درس آمار و احتمال مهندسی
1. Miller & Freund`s Probability and Statistics for Engineers (9
2. Freund, John E. ” Johnson, Richard Arnold” Miller, Irwin, 2017
Edition) th 3. Probability and Statistics for Engineers &scientists (9
4. Ronald E. Walpole, Raymond H. Myers, Sharon L. Myers, keying E. ye, 2011
درس بازیابی اطلاعات
رئوس مطالب: 
• مقدمه 
تعریف مسأله بازیابی اطالعات، معرفی کاربردها 
• پیش پردازش متن و ساخت فرهنگ لغات 
مرزبندی اسناد، مرزبندی کلمات، حذف کلمات بدون استفاده، یکسان سازی، ریشه یابی، تصحیح اشتباهات نگارشی 
• نمایه سازی متن 
ساخت نمایه، فشردهسازی نمایه 
• مدلهای بازیابی و رتبه بندی 
بولی، برداری و احتمالتی 
• معیارهای ارزیابی کارآیی روش های بازیابی اطالعات 
صحت، دقت، پوشش، معیار F، منحنی ROC
• زبان ها و عملگرهای پرسمان 
• خوشهبندی و دسته بندی اسناد متنی 
• جستجو در وب
مبانی، خزش وب و تحلیل لینک
• معرفی سامانههای کاربردی مبتنی بر بازیابی اطالعات 
پرسش و پاسخ، کتابخانه های دیجیتال، و کاربردهای مشابه
درس برنامه نویسی وب
رئوس مطالب: 
• پروتکل ارتباط سرور و کاربر در وب: HTTP
• توسعه سمت کاربر 
o توصیف ساختار صفحات وب با HTML
o توصیف نحوه ارایه صفحات وب با CSS
o توسعه صفحات پویا با SCRIPT JAVA
o مکانیزمهای تبادل داده با سرور از طریق XML و JSON
o به روزرسانی صفحات با داده های جدید از طریق AJAX
o امکانات نسخه جدید 5HTML
o الگوی طراحی MVC
o یک چارچوب سمت کاربر )مثال AngularJS )
• توسعه سمت سرور 
o معرفی یک زبان برای side server( مثال PHP )
o پردازش ورودی ها 
o مدیریت نشست
o دسترسی به پایگاه داده و O
منابع اصلی درس برنامه نویسی وب
[1] R. W. Sebesta, “Programming the World Wide Web.” 7
th Edition, Prentice Hall, 2012.
[2] J. Duckett, Beginning HTML, XHTML, CSS, and JavaScript, Wiley, 2010.
[3] P. B. MacIntyre, PHP: The Good Parts, O’Reilly, 2010
درس برنامه نویسی دستگاه های سیار
رئوس مطالب: 
• مقدمات، دستگاه های سیار، برنامههای کاربردی آن ها و نحوه استفاده 
• معرفی محیط تولید و توسعه برنامههای اندروید 
• مبانی اولیه برنامه نویسی روی دستگاههای اندروید 
• طراحی واسط کاربری، دید ها، ویجت ها )Widgets )
• مفهوم Intentها، دسترسی ها (Permissions(، مفهوم قطعه (Fragment(
• ذخیره و بازیابی اطالعات، مدیریت داده 
• ریسمان ها، وظیفه های ناهمگام، مدیریت آن ها
• اطلاع رسانی و ارایه هشدار 
• فراهم کننده های محتوا 
• مدیریت و پردازش رویدادها 
• دوربین و پردازش آن 
• برنامههای کاربردی با/بدون انتقال حالت 
• سرویس ها 
• شبکه سازی برنامه، دریافت همه پخشی 
• کارهای گرافیکی و پویانمایی 
• چند رسانهای
• حسگر ها و موقعیت یابی و پردازش نقشه 
• قطعات شخصی سازی شده
منابع اصلی درس برنامه نویسی دستگاه های سیار
[1] D. Griffiths, D. Griffiths, Head First Android Development: A Brain-Friendly Guide, 1st Edition, 
O’Reilly, 2015.
[2] Z. Mednieks, L. Dornin, Programming Android: Java Programming for the New Generation of 
Mobile Devices, O’Reilly, 2012.
[3] M. L. Murphy, The Busy Coder's Guide to Advanced Android Development, 8th Edition. ISBN: 
978-0-9816780-0-9 .
[4] J. Iversen, M Eierman, Learning Mobile App Development, Addison-Wesley, 2011.
درس معماری سیستم های نرم افزاری
رئوس مطالب: 
• یادآوری اصول طراحی نرم افزار
• معماری نرمافزار 
• الگوهای طراحی نرمافزار 
• مهندسی نرمافزار مبتنی بر سرویس 
• اصول کدنویسی تمیز 
• تکنولوژیهای پیشبرد پروژه گروهی 
• معماری سیستم های توزیع شده 
• معماری سیستم های نهفته، بی درنگ و تحمل پذیر خطا
منابع اصلی درس معماری سیستم های نرم افزاری
[1] McLaughlin, Brett, Gary Pollice, and David West. Head First Object-Oriented Analysis and Design: A Brain Friendly Guide to OOA&D. " O'Reilly Media, Inc.", 2007.
[2] Bass, Len, Paul Clements, and Rick Kazman. Software Architecture in Practice. Addison-Wesley Professional, 2003.
[3] Freeman, Eric, et al. Head First Design Patterns. " O'Reilly Media, Inc.", 2008
[4] Fowler, Martin. Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, 2018.
[5] Martin, Robert C. Clean Code: A Handbook of Agile Software Craftsmanship. Pearson Education, 2009.
[6] McConnell, Steve. Code Complete. Pearson Education, 2004.
[7] Gomaa, Hassan. Real-time Software Design for Embedded Systems. Cambridge University Press, 2016
درس مقدمه ای بر علم داده
رئوس مطالب: 
• آشنایی با ابزارهای تجزیه و تحلیل داده ها در پایتون 
• آمار توصیفی 
• آزمون فرضیه مقدمات ی و استنتاج آماری 
• کاوش وب و اکتساب داده از طریق API
• تمیز کردن داده ها 
• رگرسیون خطی 
• روشهای طبقه بندی، از جمله رگرسیون لجستیک، k-نزد یک ترین همسایه، درخت تصمیم، ماشینهای بردار 
پشتیبان و شبکه های عصبی 
• تجسم داده ها
• روشهای خوشه بندی 
• تجزیه و تحل یل شبکه 
• رتبه بندی و انتخاب 
• اخلاق کلان داده
منابع اصلی درس مقدمه ای بر علم داده
[1] Wes McKinney, Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython, 2nd 
edition, O’Reilly Media, 2017.
[2] Aurélien Géron, Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, 
and Techniques to Build Intelligent Systems, O’Reilly Media, 2017.
[3] Joel Grus, Data Science from Scratch: First Principles with Python, O’Reilly Media, 2015.
درس سیگنال ها و سیستم ها
هدف از ارایه این درس آشنایی دانشجویان با روش های توصیف و تحلیل سیگنال های گسسته- زمان و پیوسته-زمان و سیستم های 
)غیرخطی و نامتغیر با زمان( شامل روش های کانولوشن )در حوزه زمان( و روش های سری فوریه و تبدیل فوریه، تبدیل لپالس و 
تبدیل Z( در حوزه فرکانس( است. آشنایی دانشجویان با کاربردهای روش های مذکور در سیستمهای کامپیوتری، مخابراتی و کنترلی 
نظیر نمونهبرداری و فیلترها نیز از دیگر اهداف ارایه درس است.
درس طراحی مدار های واسط
رئوس مطالب: 
• آشنایی با مدارهای واسط، انواع و دستهبندی آن ها 
• معرفی مفهوم باس و مبانی نظری آن، انواع باس ها، بررسی پارامترهای مهم در آن ها، مقایسه مزایا و معایب هر یک، و 
شرایط استفاده از آن ها 
Direct Memory Access (DMA) و ،I/O Bus ،CPU-Memory Bus معرفی• 
• باس USB، توضیح کلیات، توضیح تفاوت های بین 1 USB، 2 USB، و 3 USB
IEEE 1394 (Firewire) باس• 
• باس APB/AHB AMBA با تمرکز بر باس درون تراشه های قابل بازپیکربندی )FPGA )به عنوان نمونه عملی 
PCI Express و PCI باسهای• 
• یکی از باسهای مورد استفاده د ر ادوات ذخیره اطالعات مانند SCSI یا SATA( به انتخاب مدرس( 
• یکی از باسهای ارتباط با حافظه مانند DDR( به انتخاب مدرس(
• یکی از باسهای ارتباطات چند رسانهای مانند HDMI( به انتخاب مدرس( 
• استانداردهای SPI و C2I به عنوان باس های انتقال داده سرعت پایین و debugging
IEEE 1149.1 (JTAG) استاندارد• 
• Driver Device به عنوان یک واسط میان افزاری
درس طراحی سیستم های دیجیتال برنامه پذیر
رئوس مطالب: 
• جریان طراحی سیستمهای دیجیتال
• توصیف سختافزار: اصول کلی و کاربردها 
• سطوح تجرید )رفتاری، انتقال ثبات، گیت( 
• آشنایی با یکی از زبان های توصیف سختافزار ) VHDL، Verilog یا SystemVerilog)
• مفهوم سنتز و سنتزپذیری توصیف سختافزار 
• طراحی در سطح انتقال ثبات، توصیف مسیر داده و مسیر کنترل 
• نحوة درستیسنجی و شبیهسازی طرح 
• مفهوم جایابی و مسیریابی طرح 
• تحلیل سیستمهای دیحیتال )تحلیل زمانی، تحلیل توان مصرفی(
• فنون طراحی با هدف بهینهسازی طرح و کارامدی فرایند طراحی )خط لوله، باززمان بندی، فنون موردی( 
• آشنایی مقدمانی با طراحی توأم سختافزار و نرمافزار 
• آشنایی با تراشه های برنامه پذیر صنعتی و معماری داخلی آن ها
منابع اصلی درس طراحی سیستم های دیجیتال برنامه پذیر
[1] P. Simpson, FPGA Design: Best Practices for Team-based Reuse, Springer, 2015.
[2] P. Chu, RTL Hardware Design Using VHDL: Coding for Efficiency, Portability, and Scalability, 
Wiley, 2006.
[3] P. Wilson, Design Recipes for FPGAs, 2nd Edition, Elsevier Science & Technology, 2015.
[4] C. Maxfield, The Design Warrior’s Guide to FPGA, Elsevier, 2004.
[5] http: //www.xilinx.com
[6] http: //www.altera.co
درس الکترونیک دیجیتال
رئوس مطالب: 
• معرفی ساختار فیزیکی ترانزیستور های MOSFET، منحنی مشخصه رفتاری، پارامترهای مهم آن ها، و مروری کلی بر 
فرایند ساخت این ترانزیستورها 
• معرفی، تحلیل عملکرد، و ارزیابی وارون کننده NMOS( در دو حالت با بار مقاومتی و بار افزایشی( 
• معرفی، تحلیل عملکرد، و ارزیابی وارون کننده CMOS شامل رفتار ایستا، رفتار پویا، خازن های پارازیتیک، انواع مصرف 
توان و روابط مربوطه 
• دروازههای ترکیبی CMOS، معرفی CMOS استاندارد و ویژگی های آن 
• مفهوم درایور ها در فناوری CMOS، تحلیل کمّی و کیفی مدارهای بافر 
• وارون کننده CMOS با خروجی State-Tri، وارون کننده CMOS با ورودی Trigger Schmitt
• منطقهای مبتنی بر ترانزیستور عبور و دروازه انتقال 
• مدارهای ترتیبی CMOS 
• مدارهای CMOS پویا، منطق تفاضلی 
• مباحث منتخب
منابع اصلی درس الکترونیک دیجیتال
]1[ م. صدی ق ی، ع. ول ی زاده، الکترونیک تراشههای د یجیتال، انتشارات دانشگاه صنعتی امیرکبیر، .1394 
[2] N. Weste, D. Harris, CMOS VLSI Design: A Circuits and Systems Perspective, 4th Edition, AddisonWesley Pr
درس سیستم های نهفته و بی درنگ
سیستمهای نهفته نقش بارزی در کاربردهای سالمت، حمل و نقل، کنترل ترافیک هوشمند، سیستمهای بانکی و اطالعاتی و لوازم 
خانگی یافته اند. این درس به طراحی، پیاده سازی و تحلیل سیستمهای نهفته و بی درنگ میپردازد. درس شامل بیان اجزای 
سختافزاری سیستمهای نهفته، روش های زمان بندی، مدیریت فرآیندها و منابع و ارتباطات در سیستم بیدرنگ و نیز تکنیک های 
برنامهنویسی این سیستم ها می شود. این درس به صورت تئوری -عملی ارائه می شود. 
دانشجویانی که این درس را با موفقیت پشت سر بگذارند بینش مناسبی در موارد زیر خواهند داشت: 
• مشخصات و اجزای سیستم نهفته
• ایجاد تعادل مناسب با تفکیک نرمافزار و سخت افزار سیستم
• برنامهنویسی در سیستم های نهفته
• مدیریت منابع در یک سیستم عامل نهفته 
• شبکه سازی و تجمیع سیستم ها
منابع اصلی درس سیستم های نهفته و بی درنگ
[1] E. A. Lee, S. A. Seshia, Introduction to Embedded Systems – A Cyber-Physical System Approach. 
MIT Press, 2016.
[2] P. Marwedel, Embedded System Design (Embedded System Foundation of Cyber-Phisical System), 
Springer, 2011.
[3] R. Love, Linux Kernel Development, 2nd Edition, Novell, 2005.
[4] S. Seiwert, Real-Time Embedded System and Components, Thomson Learning Inc, Charles River 
Media, 2007
درس برنامه نویسی چند هسته ای
رئوس مطالب: 
• آشنایی با معماری سیستم های چند هستهای و مدل های حافظه اعم از حافظه مشترک و حافظه توزیعی 
• آشنایی با برنامه نویسی چندنخی، مدل های برنامه نویسی آن و زبان های برنامه نویسی مرتبط با آن 
• آشنایی با مفاهیم پردازش برداری، SIMD، SSE، AVX و نحوه استفاده از آن در برنامهنویسی برداری 
• پیاده سازی الگوریتم ها به صورت چند نخی و برداری با استفاده از زبان های برنامه نویسی چند هستهای )OpenMP )
• آشنایی با روش های متداول همگامسازی نخ، قفل، مانع و ... 
• ارائه مثالهایی از پیاده سازی کاربردهای معمول به صورت چند نخی )عملیات ماتریسی، مرتب سازی و ...( 
• آشنایی با معماری پردازنده های گرافیکی، سلسله مراتب حافظه در GPU
• آشنایی با مفهوم برنامه نویسی چندنخی برای پیاده سازی کاربردهای همه منظوره در GPU
• آشنایی با برنامه نویسی GPU و زبان برنامه نویسی CUDA
• ارائه مثالهایی از پیاده سازی کاربردهای معمول در GPU( عملیات ماتریسی، شبیه سازی body-n و ...(
منابع اصلی درس برنامه نویسی چند هسته ای
[1] T. Rauber, G. RüngerParallel, Programming for Multicore and Cluster Systems, Springer, 2013.
[2] N. Wilt, The CUDA Handbook: A Comprehensive Guide to GPU Programming, Addison-Wesley, 
2013.
[3] D. Kirk, Programming Massively Parallel Processors: A Hands-on Approach, Elsevier, 2010.
[4] J. Sanders, E. Kandrot, CUDA by Example: An Introduction to General –Purpose GPU 
Programming, Addison-Wesley, 2010.
برنامه نویسی تجهیزات اینترنت اشیا
رئوس مطالب: 
• معرفی اینترنت اشیاء و جایگاه تجهیزات سخت افزاری در آن 
• تاریخچه بوردهای آردوینو 
• نرم افزار آردوینو 
• ورودی/خروجی در آردوینو 
• افزونههای بوردهای آردوینو 
• ارتباط با شبکه با استفاده از آردوینو 
• تاریخچه بوردهای رسپری 
• سیستم عامل رسپین 
• برنامه نویسی ورودی/خروجی ها 
• نصب Qt 
• کراس کامپایل برنامه برای بورد رسپری 
• برنامه نویسی پایتون برای بورد 
• ارتباط با شبکه 
• راه اندازی بورد رسپری به عنوان یک نود اینترنت اشیاء 
• انجام یک پروژه اینترنت اشیاء
منابع اصلی درس برنامه نویسی تجهیزات اینترنت اشیا
[1] C. Crowell, Internet of Things for Beginners: An Easy-to-Understand Introduction to IoT, McGrawHill Education, 2020.
[2] R. Jameters, Arduino: 2020 Beginners Guide on How to Learn Arduino Step-by-Step, Apress, 2020.
[3] J. Purdum, Beginning C for Arduino, Second Edition: Learn C Programming for the Arduino 2nd ed., 
Apress, 2015.
[4] S. Monk Programming the Raspberry Pi, Second Edition: Getting Started with Python Paperback, 
McGraw-Hill Education, 2015.
[5] D. Molloy, Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux 1st Edition, 
Wiley, 2016
درس مبانی رایانش ابری
رئوس مطالب: 
o مفهوم رایانش ابری و مزایا و معایب آن 
o تاریخچه رایانش ابری، انگیزه ایجاد و سیر تکاملی آن 
o فناوریهای مرتبط با رایانش ابری
o مدلهای سرویس ابری 
o استانداردهای مرتبط با مدیریت رایانش ابری )ITIL )
• مدیریت ابر )ارائه نمونه کاربردی مبتنی بر OpenStack )
o معماری منطقی OpenStack
o معماری محاسباتی 
 )Console and Controller ،Scheduler ،Nova Cert ( OpenStack کننده کنترل o
o معماری ذخیره ساز بلوکی )Service Cinder )
o ذخیره ساز شیء )Swift )
 )Neutron ،Open Switch ( شبکه معماری o
 )Keystone to handle AAA, tokens, users, … ( شناسه معماری o
o معماری سرویس تصویر )Glance )
o معماری تنظیم و مدیریت ابر ) Heat )
• بستر ابر )ارائه نمونه کاربردی مبتنی بر Hadoop )
o سیستم فایل توزیع شده ) HDFS)
o مدلهای برنامه نویسی توزیع شده برای رایانش ابری 
o توسعه سرویس های مقیاس پذیر )Thrift )
MapReduce الگوی o
روش ارزشیابی: 
ارزشیابی مستمر میان ترم آزمون نهایی پروژه
دارد دارد دارد دارد 
بازدید: ندارد 
 )YARN( MapReduce وظایف تخصیص o
o تحمل پذیری اشکال در MapReduce
o تئوری Cap و پایگاه داده ابر ) HBase، MongoDB، Cassandra )
 )Hive QL ،Hive ( NoSQL داده سازی ذخیره سیستم o
o وارد کردن داده از منبع خارجی ) Sqoop، Flume )
o همگام سازی توزیع شده )Zookeeper )
o سیستم زمان بندی جریان کار ) Oozie )
منابع اصلی درس مبانی رایانش ابری
[1] K. Chandrasekaran, Essentials of cloud computing, CRC Press, 2014
[2] N. B. Ruparelia, Cloud Computing, MIT Press, 2016
[3] T. Erl, Z. Mahmood, R. Puttini, Cloud Computing, Concepts, Technology and Architecture, 
Prentice Hall, 2013.
[4] I. Ganelin, E. Orhian, K. Sasaki, B. York, Spark: Big Data Cluster Computing in Production, 
Wiley, 1st Edition, 2016. ISBN-13: 978-1119254010
[5] T. White, Hadoop: The Definitive Guide: Storage and Analysis at Internet Scale, 4
th Edition. 
O'Reilly Media, 2015. ISBN-13: 978-1491901632
[6] H. Geng, Data Center Handbook. Wiley, 1st Edition, 2014. ISBN-13: 978-1118436639
[7] S. Adkins , J. Belamaric, V. Giersch. OpenStack Cloud Application Development. Wrox, 1st
Edition, 2015. ISBN-13: 978-1119194316
Edition, 2016. ISBN-13: 978-
st [8] B. Antony, K. Boudnik, C. Adams. Professional Hadoop. Wrox, 1
1119267171
درس مدار های مجتمع پر تراکم
رئوس مطالب: 
-1 مروری بر مدارهای VLSI
• آشنایی با مدارهای طراحی شده با ترانزیستورهای ماسفت 
• بررسی قوانین جریان و تحلیل مدارهای ترازیستوری 
• بررسی و تحلیل نمودارهای ولتاژ – جریان 
• اصول طراحی مدارهای مجمتع با توجه به پارامترهای طراحی مختلف 
-2 مروری بر پورسه ساخت و طراحی لی اوت 
• قوانین طراحی 
• نمودارهای میله ای 
• تحلیل و استراخ مدار از نمودار میله ای 
• تخمین مساحت و تعداد تراشههای ویفر و محاسبه ی بازده 
• قوانین مقیاس پذیری 
-3 آشنایی با روند طراحی و سنتز خودکار مدارهای مجتمع 
• مفاهیم سنتز در سطح ترانزیستور
• مقاهیم جایابی و مسیریابی 
• آشنایی با الگوریتم های جایابی و مسیریابی 
• تحلیل سرعت و مصرف توان 
• آشنایی با ابزارهای دانشگاهی و صنعتی طراحی خودکار مدارهای مجتمع
منابع درس مدار های مجتمع پر تراکم
[1] T. Dillinge, VLSI Design Methodology Development, Prentice Hall, 2019.
[2] R.Jacob Baker, CMOS: Circuit Design, Layout, and Simulation (IEEE Press Series on 
Microelectronic Systems), 2019.
[3] D. Harris, N. Weste, CMOS VLSI Design: A Circuits and Systems Perspective, Pearson, 2015.
[4] A. Kahng, J. Lieniq, VLSI physical design, Springer, 2017.
[5] S.K. Lim, VLSI physical design automation, Springer, 2010
درس جبر خطی کاربردی
رئوس مطالب: 
• معادلت خطی )دستگاه های خطی و روش های حل، بردارها، ماتریس ها، معادله ماتریسی، استقالل خطی، تبدیل های 
خطی( 
• جبرماتریسی )عملیات ماتریسی، معکوس ماتریس، تجزیه ماتریس، دترمینان ماتریس، کاربردهای نمونه و فعالیت 
آزمایشگاهی: کدهای تصحیح خطا و تبدیل در هندسه دو بعدی( 
• فضای برداری )معرفی فضای برداری و زیر فضا، فضای پوچ، فضای ستون ها، پایه های فضا، بعد فضا، رتبه ماتریس، 
تغییر پایه، کاربردهای نمونه و فعالیت آزمایشگاهی: ترسیم و اصالح پرسپکتیو( 
• بردارها و مقادیر ویژه )معرفی بردارها و مقادیر ویژه، معادله مشخصه، قطری کردن، کاربردها ی نمونه و فعالیت 
آزمایشگاهی: رتبه صفحه ( 
• تعامد و کمترین مربعات )ضرب داخلی، مجموعه های متعامد، روش Schmidt-Gram، کمترین مربعات، کاربردها( 
• تجزیه مقدار منفرد، تحلیل مولفه های اساسی 
• بهینهسازی )معرفی توابع برداری، مشتق مرتبه اول و دوم، معرفی مسائل بهینه سازی و انواع آن، بهینه سازی خطی، 
الگوریتم simplex
منابع اصلی درس جبر خطی کاربردی
[1] Lay, D. C. S. Lay, R. McDonald, J. J. (2015) Linear Algebra and its applications (5th edition) 
Pearson.
[2] Klein, P. N. (2013) Coding the Matrix: Linear Algebra through Applications to Computer Science 
(1st edition) Newtonian Press.
[3] Noble, B. Daniel, J. W. (1987) Applied Linear Algebra (3rd edition) Pearson.
درس مبانی و کاربرد های هوش مصنوعی
رئوس مطالب: 
• مقدمهای بر هوش مصنوعی 
• عاملها 
o عاملهای هوشمند، عقالنیت، محیط عامل ها، معماری عامل ها 
• الگوریتمهای جستجو 
o الگوریتمهای جستجوی آگاهانه، غیر آگاهانه، فراابتکاری و خصمانه، مسائل ارضای قیود 
• منطق و استنتاج 
o عاملهای منطقی، منطق گزارهای، منطق مرتبه اول، استنتاج 
• ارائه دانش و سیستمهای مبتنی بر قانون 
o انواع ارائه دانش، سیستمهای تصمیمگیری 
• پردازش متن، گفتار و زبان های طبیعی 
o الگوهای زبانی، دستورزبان، تجزیه و تحلیل، دسته بندی و خوشه بندی متن، ترجمه ماشینی، پردازش گفتار 
• ادراک بصری 
o اطالعات تصویر، عملیات سطح پائین تصویری، شناسائی اشیاء 
• رباتیک
o اجزاء سخت افزاری، ادراک ربات، طرحریزی حرکت، معماری های نرمافزار ربات، کاربردها
درس مبانی هوش محاسباتی
رئوس مطالب: 
• مقدمهای بر هوش محاسباتی 
• روشهای فازی 
o مقدمه، مبانی نظری مجموعه های فازی )توابع تعلق، عملگرهای فازی( 
o روابط فازی و استنتاج در منطق فازی )قوانین فازی، اصل گسترش(
o سیستمهای مبتنی بر دانش فازی
• روشهای تکاملی 
o مقدمه، الگوریتم ژنتیک )بازنمائی، بازترکیبی، جهش، و انتخاب( 
o استراتژیهای تکامل )تطبیقی، خود -تطبیقی، بازنمائی، بازترکیبی، جهش، و انتخا ب( 
o بهینهسازی گروه ذرات )بهترین عمومی، بهترین محلی، وزن اینرسی( 
o الگوریتمهای مورچه )سیستمهای مورچه، کلونی مورچه، مورچه بیشینه-کمینه( 
• روشهای شبکه عصبی 
o مقدمه، نورون های مصنوعی )تابع فعالیت، یادگیری، پرسپترن، آدالین( 
o شبکههای عصبی با نظارت )شبکههای جلورو( 
o شبکههای عصبی بدون نظارت )نقشههای خود-سازمانده، شبکه های یادگیری کوانتیزاسیون برداری( 
• الگوریتمهای ترکیبی هوش محاسباتی
منابع اصلی درس مبانی هوش محاسباتی
[1] J. M. Keller, D. Liu and D. B. Fogel, Fundamentals of Computational Intelligence: Neural 
Networks, Fuzzy Systems and Evolutionary Computation, Wiley, 2016.
[2] P. Engelbrecht, Computational Intelligence: An Introduction, Wiley, 2007.
[3] Konar, Computational Intelligence: Principles, Techniques and Applications, Springer, 2007.
درس اصول علم ربات
رئوس مطالب: 
• مقدمه )بازوهای رباتیک، رباتهای سیار( 
• معرفی یک شبیه ساز ربات 
• طراحی ربات ها 
• توصیف موقعیت و تبدیالت همگن 
• سینماتیک ربات 
• سنسورهای ربات )انواع سنسورها، اندازه گیری و کالیبراسیون( 
• محرکها، درایوها و موتورها )موتورهایDC ، موتورهای پلهای، سرو موتورها(، چرخ دنده ها، مدولسیون PWM
• اصول و مبانی کنترل ربات، کنترلکننده هایPID
• ادراک ربات 
• مکانیابی و نقشهسازی 
• برنامه ریزی حرکت و ناوبری ربات
• برنامهنویسی ربات با استفاده ازR
منابع اصلی درس اصول علم ربات
[1] R. Siegwart, I., Nourbakhsh, D. Scaramuzza, Introduction to Autonomous Mobile Robots, The 
MIT Press, 2004.
[2] G. McComb, Robot builder's bonanza. 4th Edition. New York, McGraw-Hill, 2011. 
[3] T. Braünl, Embedded robotics: mobile robot design and applications with embedded systems, 3rd
Edition, Springer, 2008.
درس مقدمه ای بر بیوانفورماتیک
رئوس مطالب: 
• مقدمه 
o تعریف بیوانفورماتیک 
o حوزه های اصلی بیوانفورماتیک 
o مرور مفاهیم پایه در زیست شناسی 
• تحلیل توالی های DNA، RNA و پروتئینی 
o دسترسی به داده های توالی و اطالعات مربوطه 
o تطابق جفت توالی 
BLAST o
o جستجوی پیشرفته داده پایگاه ها
o تطابق چند توالی 
o فیلوژنی مولکولی و تکامل 
• تحلیل ژنوم کامل توالی های DNA، RNA و پروتئینی 
o DNA: کروموزوم یوکاریوتی 
o تحلیل داده های نسل بعد 
168 / 254
o روشهای بیوانفورماتیکی مرتبط با RNA
o بیان ژن : تحلیل داده های میکروآرایه و seq-RNA
o تحلیل پروتئین و پروتئومیکس 
o ساختار پروتئین 
o ژنومیک عملکردی 
• مقدمه ای بر زیست شناسی سیستمی
منابع اصلی درس مقدمه ای بر بیوانفورماتیک
منابع اصلی: 
[3] M. Zvelebil, J. Baum. Understanding bioinformatics. Garland Science, 2007.
[1] J. Pevsner. Bioinformatics and functional genomics. John Wiley & Sons, 2015.
[2] A. Lesk. Introduction to bioinformatics. Oxford University Press, 2013.
درس داده کاوی
رئوس مطالب
• معرفی داده کاوی )انگیزه ها و چالش ها( 
• انبار داده ها
• پیش پردازش و آماده سازی دادهها )پاک سازی، کشف داده های پرت، نرمال سازی، گسسته سازی و کاهش بعد( 
• کاوش قوانین رابطهای )الگوریتم های Apriori و growth-FP )
• رگرسیون )رگرسیون خطی و گرادیان نزولی، رگرسیون چند جمله ای و مفهوم مصالحه بایاس و واریانس( 
• دسته بندی )الگوریتم های نزدیکترین k همسایه، درخت تصمیم و بیز ساده + معیارهای ارزیابی( 
• خوشه بندی )الگوریتم های مبتنی بر تقسیم فضا، سلسله مراتبی و مبتنی بر چگالی( 
• سیستمهای پیشنهاد دهنده مبتنی بر filtering Collaborative و based-Content
• خالصه سازی و نمایش نتایج
درس سیستم های چند رسانه ای
رئوس مطالب: 
• مبانی ت صاویر دیجیتال و نمایش رنگ 
• مبانی فشردهسازی بدون خطا )روشهای مبتنی بر کدگذاری آنتروپی نظیر هافمن و کدگذاری محاسباتی، فشرده سازی مبتنی 
 )Run Length Coding،LZ77 و LSW نظیر دیکشنری بر
• مبانی فشرده سازی با خطا ) quantization Vector، رابطهی Distortation-Rate )
• مبانی استانداردهای فشرده سازی )2000JPEG,DWT,JPEG,DCT )
• اختصاص نرخ )Allocation Rate )
• مبانی ویدئوی دیجیتال 
• مبانی فشرده سازی ویدئو )کد گذاری در فضای تبدیل ) coding Transform)، کد گذاری مبتنی بر تخمین 
 ))Predictive coding(
 )MPEG-1, MPEG-2, MPEG-4 ،H.261, H.263, H264 ( نظیر ویدئو سازی فشرده استانداردهای
منابع اصلی درس سیستم های چند رسانه ای
منابع اصلی: 
]5[ مقالات، مسنتدات استاندارد و سایر منابع مرتبط با هر یک از سرفصل های درسی که توسط سایر مراجع معرفی شده پوشش داده 
نمی شود. 
[1] M. Ghanbari, Standard Codecs: Image Compression to Advanced Video.
[2] Coding. 3rd Edition., Institution of Engineering and Technology, 2011.
[3] R. Steinmetz, K. Nahrrstedt. Multimedia Systems. Springer, 2010.
[4] T. E. Richardson. The H.264 Advanced Video Compression Standard, 2nd Edition, Willey, 2010
درس مبانی بینایی کامپیوتر
رئوس مطالب: 
-1 مقدمات، تعریف بینائ ی کامپیوتر و پردازش تصویر و تفاوت های آنها- تاری خچه و کاربردها ی بینائی کامپیوتری 
-2 اصول پایه تصاوی ر رقمی : عناصر درک بصری - نور و طیف الکترومغناطیس- حس تصویر و تصویربرداری- نمونه برداری و 
چندی سازی - روابط بین نقاط تصوی ر- عملیات خط ی و غیر خطی- اصول و مدل های رنگ - تصاوی ر شبه رنگی 
-3 بهسازی تصاوی ر: تبدی الت سطح خاکستری- اصالح هیستوگرام- فیلترهای قلمرو مکان - هموار سازی و واضح سازی تصاوی ر 
-4 عملیات مورفولوژیکی: مورفولوژی ریاضی با ینری - اپراتورها ی خوردگی ، گسترش، بازشدن، و بسته شدن- الگوریتم های پایه  
-5 تقطیع تصاویر : تقطیع براساس تشخیص لبه، آستانه سازی، و رشد ناحیه - تعیین پیرامون 
-6 ارائه: ارائه اشیا با کدهای زنجیره ای، نماها، و اسکلت- توصیفگر های مرز- توصیف گرهای ناحیه
174 / 254
-7 شناسائی اشیاء: روش های تصمیم گیری مانند دسته بندی آمار ی و شبکه عصبی
درس مبانی پردازش زبان و گفتار
رئوس مطالب: 
• مقدمه )شامل دانش پردازش گفتار و زبان، ابهام، مدل ها و الگوریتم ها، زبان، فکر، درک، وضعی ت موجود( 
• عبارات منظم وآتوماتون ها )الگوهای پایه عبارات منظم، آتوماتون های با حالت محدود، زبان های منظم وآتوماتون های با 
حالت محدود( 
• کلمات و مبدل ها )مرور ی بر ریخت شناس ی، تجز یه ری خت شناخت ی حالت محدود، ساخت یک واژگان حالت محدود، مبدل های 
حالت محدود برای تجزیه ریخت شناسی، مبدل ها و قوانین ریخت شناسی ، مبدل های با حالت محدود مستقل از واژگان، 
واحد ساز ی کلمه و جمله، تشخی ص و تصحیح خطاهای امالیی، فاصله حداقل ویرا یش، پردازش ریخت شناسی در انسان( 
• n تایی ها )شمارش کلمات در پی کره، n تایی ساده، مجموعه داده آموزش و تست، ارزی ابی n تایی ها، هموارسازی، درونیابی، 
بک آف، ابزارها و قالب ها، سا یر نکات عمل ی( 
• مدل مخفی مارکف و مدل ب ی نظمی بیشینه )زنجیره مارکف، مدل مخفی مارکف، محاسبه درست نمایی ) الگوریتم رو به 
جلو(، رمزگشایی )الگور یتم ویترب ی (، آموزش مدل مخفی مارکف، مدل های ب ی نظمی بیشینه، مدل مخف ی مارکف- آنتروپی 
بیشینه( 
176 / 254
• مقوله واژگان ی )نقش نحوی ( کلمات و برچسب زن ی آن ) مقوله واژگانی کلمات، برچسب زنی مقوله واژگانی کلمات با استفاده 
از روش های مبتنی بر قانون، مبتنی بر مدل مخف ی مارکف و مبتن ی بر تبد یل، ارزیاب ی و آنالیز خطا ی برچسب زن ی( 
• آواشناسی ) اصوات گفتار و نگارش آوایی، واجهای زبان فارس ی، آواشناسی تولی دی، مقوله های واجی و تنوعات تلفظی ، 
آواشناسی صوت ی و سیگنال ها، واج شناسی تولیدی و رفتاری (
• گرامرهای رسمی ) حوزه ای، گرامرهای مستقل از بافت، قواعد گرامری، بانک درخت گرامری( 
• شنوایی، مدل های شنیداری و درک گفتار ) زنجیره گفتاری، آناتومی و عملکرد گوش، ادراک صدا، مدل های شنیداری (
منابع اصلی درس مبانی پردازش زبان و گفتار
[1] Daniel Jurafsky and James H. Martin, Speech and Language Processing: An Introduction to Natural 
Language Processing, Computational Linguistics, and Speech Recognition, Third Edition, 2019.
[2] Lawrence R. Rabiner and Ronals W. Schafer, Theory and Applications of Digital Speech Processing, 
Pearson 2011.
[3] Christopher D. Manning and Henrich Schutze, Foundations of Statistical Natural Language 
Processing, MIT Press, 1999.
[4] Frederick Jelinek, Statistical Methods for Speech Recognition (Language, Speech, and 
Communication), MIT Press, 1998.
درس مبانی یادگیری ماشن
رئوس مطالب: 
• مقدمه: چالشها، کاربردها، و مفاهیم پایه یادگیری ماشین، مروری بر ریاضیات مورد نیاز 
• دسته بندی خطی، رگرسیون منطقی، رگرسیون خطی، نزول در امتداد گرادیان 
• یادگیری آماری، تخمین پارامتری و غیر پارامتری، بیشترین شباهت، بیشترین پسین، و بیزی 
• دسته بندی چند دسته ای، روش K نزدیکترین همسایه، درختهای تصمیم 
• آشنایی با دسته بندی احتمالی، بیز ساده، ماشین بردار پشتیبان، و روشهای هسته 
• معرفی مبحث تحلیل مؤلفه اصلی، و سایر روشهای کاهش بعد 
• شبکههای عصبی چند لیه پیشخور، پس انتشار خطا 
• آشنایی با شبکه های عصبی عمیق، و شبکه های عصبی پیچشی 
• معرفی شبکه های عصبی پسخور و بازگشتی، خود کد کننده ها، شبکههای تولیدی 
• آشنایی با یادگیری جمعی ) Ensemble )
• مدل ترکیب گاسیها، خوشه بندی
منابع اصلی درس مبانی یادگیری ماشین
[1] C. Bishop, Pattern Recognition and Machine Learning, 2006.
[2] I. Goodfellow, Y. Bengio and A. Courville, Deep Learning, 2016. 
[3] H. Daume III, A Course in Machine Learning, 2017. 
[4] K. Murphy, Machine Learning: A Probabilistic Perspective, 2012.
[5] M. Mohri, A. Rostamizadeh, A. Talwalkar, Foundations of Machine Learning, 2012.
[6] S. Shalev-Shwartz, S. Ben-David, Understanding Machine Learning: From Theory to Algorithms, 2014. 
[7] S. Marsland, Machine Learning: An Algorithmic Perspective, 2nd Edition, 2015
درس مهندسی اینترنت
رئوس مطالب: 
• مقدمه ای بر انواع ارتباطات در شبکه، انواع پروتکلهای انتقال، انواع مدلهای توسعه کاربردهای تحت شبکه شامل 
 P2P و client/server
• برنامه نویسی سوکت 
• پروتکلهای لیه کاربرد در اینترنت )پروتکلهای ایمیل، انتقال فایل، پروتکل HTTP 
• مقدمه ای بر اصول طراحی کاربردهای وب، نحوه عملکرد سرورهای وب، تفاوت کدهای اجرا شده سمت سرور و 
سمت مشتری 
• ایجاد کاربردهای وب ساده، اصول طراحی واسط کاربری 
• آشنایی با مفاهیم caching و proxy در تکنولوژی وب 
• شبکههای اجتماعی، وب 2 و وب معنایی 
• سیستمهای وب توزیع شده، سرویس های وب و اهم پروتکلهای مربوطه
منابع اصلی درس مهندسی اینترنت
[1] Andrew Tanenbaum, Computer Networks, 5th ed., Pearson, 2010.
[2] Behrouz Forouzan, Data Communications and Networking, 5th Ed., McGraw-Hill, 2012.
[3] M. Fowler, Patterns of Enterprise Application Architecture, Addison- Wesley,2003.
[4] M. Hall and L. Brown, Core Servlets and JavaServer Pages. 2nd ed, Prentice – Hall 2003.
[5] M.Harwood, M.Goncalves, and M. Pemble, Security Strategies in Web Applications and Social 
Networking, Jones & Bartlett Learning, 2010.
درس انتقال داده ها
• مقدمه )مروری بر شبکه های کامپیوتری، شبکه های اینترنت، مدلهای لیه ای OSIو IP/TCP )
• اصول انتقال دیجیتال )بازنمایی دیجیتال اطالعات، مشخصه های کانالهای دیجیتال، نرخ ارسال سیگنال نایکویست، ظرفیت 
کانال شأنون، مدولسیون دیجیتال، ویژگی های رسانهها و سیستمهای انتقال دیجیتال( 
• روشهای تشخیص و تصحیح خطا )روش های کنترل خطای FEC و ARQ، کدهای تشخیص و تصحیح خطا، 
پروتکل های کنترل خطای ARQ )
• لیه پیوند داده )معرفی سرویس های لیه پیوند داده، پروتکل Point-to-Point، پروتکل HDLC )
• کنترل دسترسی به رسانه )معرفی کانال های مشترک و کانال های نقطه به نقطه، روش های دسترسی تصادفی، روش های بر 
مبنی زمان بندی، روش های کانالسازی ثابت( 
• شبکههای محلی )استانداردهای سری 802 IEEE برای پیادهسازی شبکه های محلی، شبکه های Ethernet، شبکه های 
محلی بی سیم، پل های شبکه های محلی، سوییچ های Ethernet و VLAN )
• معماری های پیشرفته شبکه های کامپیوتری )سوئیچینگ برچسب و MPLS، شبکه های نرم افزار محور(
منابع اصلی درس انتقال داده ها
[1] A. Leon-Garcia, I. Widjaja, Communication Networks, 2nd Edition, McGraw-Hill, 2003.
[2] W. Stallings, Data and Computer Communications, 10th Edition, Pearson, 2014.
[3] J F. Kurose, K. W. Ross, Computer Networking: A Top-Down Approach, 7th Edition, Pearson, 
2016.
[4] A. S. Tanenbaum, Computer Networks, 5th Edition, Pearson, 2010.
[5] B. A. Forouzan, D. College, Data Communications and Networking, 5th Edition, McGraw-Hill, 2012
درس رمزنگاری و امنیت شبکه
رئوس مطالب: 
• مفاهیم و اصول رمزنگاری و امنیت  اطلاعات 
o مفهوم امنیت، تهدیدات امنیت ی، اصول مهندسی امنیت، استانداردهای امنیت ی و دیگر موارد مربوط 
• سیستمهای رمز متعارف 
o سیستمهای کالسیک، سیستم ها ی رمز متقارن، DES, AES، مدهای رمزنگار ی 
• سیستمهای رمز کلید عمومی 
o مفاهیم رمز نامتقارن، RSA، دیفی هلمن، امضاء رقم ی 
• روشها و پروتکل های احراز اصالت
o کدهای احراز اصالت، توابع در هم سازی، پروتکل های احراز اصالت
• روشهای مد یریت کلید 
o متمرکز، تقطه به نقطه، پروتکل های تبادل/توافق کلید 
• امضاء رقمی و زیرساخت کلید عمومی 
o گواه ی کلید عمومی و CA، استاندارد های 509X و PKCS
• پروتکل ها و فناوری رمزنگاری در امنیت شبکه 
SET ،Kerberos ،PGP ،SSL/TLS ،IPSec o
• روشهای سیستم ی تأمین امنیت در شبکه ها 
o مقابله با ویروس ها، روش های تشخیص و مقابله با نفوذ، دیواره آتش، VPN
• کاربردهای امنیتی
منابع اصلی درس رمزنگاری و امنیت شبکه
[1]W. Stallings, Cryptography and Network Security: Principles and Practice, 7th Edition, Prentice Hall, 
2019.
[2] M. Stamp, Information Security: Principles and Practice, John Wiley & Sons, 2011.
[3] C. Kaufman, R. Perlman, M. Speciner, Network Security. Private Communication in a Public World, 
Prentice Hall, 2002.
[4] J. Pieprzyk, T. Hardjono and J. Seberry, Fundamentals of Computer Security, New York, NY: 
Springer, 2003.
[5] A. Menezes, P. Van Oorschot, S. Vanstone, Handbook of Applied Cryptography, CRC Press, 1997.
[6] W. Trappe, L. C. Washingotn, Introduction to Cryptography with Coding Theory, Pearson-Prentice 
Hall, 2006.
[7] D. Stinson, Cryptography. Theory and Practice, 2nd Edition, CRC Press, 2002.