Технології розроблення програмного забезпечення - Робоча програма навчальної дисципліни (Силабус)

Реквізити навчальної дисципліни

Рівень вищої освіти Перший (бакалаврський)
Галузь знань 12 Інформаційні технології
Спеціальність 126 Інформаційні системи та технології
Освітня програма Інформаційне забезпечення робототехнічних систем
Статус дисципліни Нормативна
Форма навчання очна(денна)
Рік підготовки, семестр 3 курс, осінній семестр
Обсяг дисципліни 120 годин
Семестровий контроль/ контрольні заходи Іспит
Розклад занять http://rozklad.kpi.ua
Мова викладання Українська
Інформація про керівника курсу / викладачів

Лектор: к.т.н., доцент, Мелкумян Катерина Юріївна

e.melkumyan@ukr.net

Комп’ютерний практикум: асистент, Коваль Олександр Сергійович,

t70000s@gmail.com

Розміщення курсу https://campus.kpi.ua

Програма навчальної дисципліни

Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання

Мета навчальної дисципліни - формування у студентів знань вмінь і необхідних професійних навичок для використання на практиці можливостей сучасних систем управління базами даних на прикладі Microsoft SQL Server, написання складних запитів, представлень, збережених процедур, тощо; вивчення технології управління даними ADO.NET, мови запитів LINQ, технології розробки веб-додатків ASP.NET Core, написання програм що ілюструють використання даних технологій.

Навчальна дисципліна призначена для отримання студентом:

Знання

  • Сучасних інструментів розробки додатків від Microsoft

  • Принципів роботи MS SQL Server

  • Особливостей застосування ORM Entity Framework

  • Основ роботи з github

Вміння

  • проектувати логічні, концептуальні та фізичні моделі баз даних, запити до них,

  • здійснювати декомпозицію системи на складові елементи, проектувати додатки,

  • застосовувати інструментальні засоби Microsoft для побудови веб-додатків,

  • створювати та використовувати REST API, LINQ для доступа до даних, використанню лямбда-виразів

Здатність

  • створення простих веб-додатків, їх розгортання на хмарних платформах

  • вести командну розробку складних додатків

Згідно з вимогами освітньо-професійної програми студенти після засвоєння навчальної дисципліни мають продемонструвати такі результати:

Компетенції

  1. Здатність вчитися і бути сучасно навченим

  2. Здатність до пошуку, оброблення та аналізу інформації з різних джерел

  3. Здатність приймати обґрунтовані рішення

  4. Здатність до абстрактного мислення, аналізу та синтезу, до формування системного наукового світогляду, професійної етики та загального культурного кругозору

  5. Здатність застосовувати теоретичні знання у практичних ситуаціях у науковій діяльності.

  6. Здатність виявляти, ставити та вирішувати проблеми, генерувати ідеї та приймати обґрунтовані рішення.

Програмні результати навчання

  1. Застосовувати сучасні програмно-технічні засоби для розв’язання прикладних задач побудови інформаційних систем

  2. Здатність використовувати новітні технології з метою їх запровадження у професійну діяльність, аналізувати та відстежувати якість їх впровадження

  3. Здійснювати оптимізацію програмного забезпечення у відповідності з принципами сервіс-орієнтованої архітектури розподілених програмних систем

  4. Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)

Для успішного засвоєння дисципліни «Технології розроблення програмного забезпечення - 2» студенту необхідні наступні навчальні дисципліни: «Бази даних», «Програмування», «Об’єктно-орієнтоване програмування».

На даній навчальній дисципліні базуються дисципліни: «Проектування інформаційних систем», «Управління проектами».

Зміст навчальної дисципліни

  1. Розділ 1 Інформаційні системи

    1. Вступ. Загальна термінологія

    2. Класифікація ІС

    3. Життевий цикл розробки програмного забезпечення. Стандарти, які регламентують життєвий цикл програмного забезпечення.

    4. Моделі ЖЦ

  2. Розділ 2 Предметна область програмного забезпечення

    1. Поняття предметної області. Опис процесів проектування, розробки. Специфікація вимог. Технічне завдання.

    2. UML як мова моделювання програмного продукту. Діаграми опису поведінки системи

  3. Розділ 3 Інформаційне забепечення ІС

    1. Технології розробки БД. Рівні проектування БД. MS SQL Server

    2. Методологія ERD (сутність-зв'язок)

  4. Розділ 4 Програмне забезпечення ІС

    1. Робота з даними в .NET: технологія ADO.NET (Работа с SqlDataAdapter і DataSet), ORM (Entity Framework)

    2. Використання лямбда виразів. Технологія LINQ

    3. Технологія ASP.NET

    4. Застосування архытектурного шаблону MVC

  5. Розділ 5 Процес розробки програмного забезпечення

    1. Розробка з GIT

    2. Архітектури середовища розгортання

    3. Основи TeamLeading

Навчальні матеріали та ресурси

  1. Джеффри Рихтер CLR via C#. Программирование на платформе

    Microsoft.NET Framework 4.5 на языке C# — СПб.: Питер, 2013. — 896.

  2. Гагарина Л.Г. и др. - Технология разработки программного

    обеспечения. Учебное пособие - 2008

  3. Глоба Л.С. Розробка інформаційних ресурсів та систем: Електронне

    навчальне видання. Конспект лекцій / Л.С. Глоба, Т.М. Кот. - К.: НН ІТС НТУУ “КПІ”, 2012. - 322с.

Навчальний контент

Методика опанування навчальної дисципліни (освітнього компонента)

Під час вивчення дисципліни передбачені наступні форми та методи навчання і викладання, що сприяють досягнення результатів, закладених в робочу програму: лекції, що передбачають викладення теоретичного матеріалу та узагальнення знань; самостійна робота студента за матеріалами лекцій з метою написання модульних контрольних робіт; комп’ютерний практикум за допомогою яких формуються вміння, набувається досвід практичного використання конкретних, обраних програмних інструментів для вирішення поставлених задач.

Самостійна робота студента

  1. Cтворення бази даних, таблиць бази даних та заповнення таблиць даними.

    1. Виконання аудиторної, загальної для всіх частини.

    2. Виконання власного варіанту.

  2. Запити до даних БД.

    1. Виконання аудиторної, загальної для всіх частини.

    2. Виконання власного варіанту.

  3. З’єднання та теоретико-множинні операції над відношенням.

    1. Виконання аудиторної, загальної для всіх частини.

    2. Виконання власного варіанту.

  4. Підзапити до даних БД.

    1. Виконання аудиторної, загальної для всіх частини.

    2. Виконання власного варіанту.

  5. Операції об’єднання результатів декількох запитів. Модифікація даних.

    1. Виконання аудиторної, загальної для всіх частини.

    2. Виконання власного варіанту.

  6. Використання технології ADO.NET у зв’язці з MS SQL Server. Постачальник даних.

    1. Підключення до бази даних.

    2. Виконання основних операцій з базою даних.

    3. Використання транзакцій.

    4. Робота з запитами що повертають значення.

    5. Робота зі збереженими процедурами.

  7. Автономна модель зберігання даних, Entity Framework, LINQ.

    1. Робота з автономною моделлю зберігання даних.

    2. Робота з Entity Framework.

    3. Робота з LINQ.

Політика та контроль

Політика навчальної дисципліни (освітнього компонента)

Вимоги, які виставляються перед студентом:

  • відвідування лекційних занять та комп’ютерних практикумів є обов’язковою складовою вивчення матеріалу;

  • обов’язковою складовою вивчення матеріалу також є самостійне опрацювання матеріалу, написання модульних контрольних робіт, виконання передбачених комп’ютерних практикумів;

  • заохочувальні бали виставляються за: активну участь на лекціях, допомогу в оновленні методичних матеріалів;

  • штрафні бали передбачені за несвоєчасну здачу комп’ютерних практикумів між граничними атестаційними контролями.

Види контролю та рейтингова система оцінювання результатів навчання (РСО)

Рейтинг студента з дисципліни складається з білав, що він отримує за:

Рейтинг студента з дисципліни складається з білав, що він отримує за:

1) Виконання комп’ютерних практикумів - 50 бали

2) Написання модульних контрольних робіт - 30 балів (МКР 1 – 20 балів, МКР 2 – 10 балів)

3) Іспит - 20 балів

Якщо сума балів менша за 60, але модульні контрольні роботи зараховані, студент виконує залікову контрольну роботу. В такому випадку сума балів переводиться до підсумкової оцінки згідно з талицею нижче:

Кількість балів Оцінка
100-95 Відмінно
94-85 Дуже добре
84-75 Добре
74-65 Задовільно
64-60 Достатньо
Менше 60 Незадовільно
Не виконані умови допуску Не допущено

Додаткова інформація з дисципліни (освітнього компонента)

Перелік питань на залік

  1. Визначення термінології: база даних, таблиця, запис таблиці.

  2. Визначення термінології: таблиця, поле, запис таблиці.

  3. Визначення термінології: первинний та зовнішній ключі таблиці.

  4. Визначення термінології: поля таблиці, що обчислюються.

  5. Визначення термінології: відношення між таблицями, типи відношень.

  6. Визначення термінології: цілісність даних, обмеження цілісності даних.

  7. Стандартні команди мови T-SQL: синтаксис команди створення бази даних.

  8. Стандартні команди мови T-SQL: синтаксис команди створення таблиці.

  9. Стандартні команди мови T-SQL: синтаксис команди створення первинного ключа.

  10. Стандартні команди мови T-SQL: синтаксис команди створення зовнішнього ключа.

  11. Стандартні команди мови T-SQL: синтаксис команди створення відношення між таблицями.

  12. Синтаксис та правила застосування IDENTITY

  13. Команда отримання відомості про таблицю бази даних

  14. Типи даних мови T-SQL: цілі числа.

  15. Типи даних мови T-SQL: числа з фіксованою комою.

  16. Типи даних мови T-SQL: числа з плаваючою комою.

  17. Типи даних мови T-SQL: дата та час.

  18. Типи даних мови T-SQL: символьні рядки.

  19. Типи даних мови T-SQL: двійкові дані.

  20. Типи даних мови T-SQL: інші типи даних.

  21. Правила визначення імен об’єктам бази даних

  22. Стандартні команди мови T-SQL: синтаксис команд заповнення таблиць даними, видалення усіх даних, видалення таблиць і баз даних.

  23. Стандартні команди мови T-SQL: синтаксис команди зміни таблиці бази даних.

  24. Стандартні команди мови T-SQL: синтаксис команди запиту до однієї або багатьох таблиць, основні ключові слова.

  25. Стандартні команди мови T-SQL: синтаксис явного внутрішнього з’єднання та принцип його роботи.

  26. Стандартні команди мови T-SQL: синтаксис зовнішнього лівого з’єднання та принцип його роботи.

  27. Стандартні команди мови T-SQL: синтаксис зовнішнього правого з’єднання та принцип його роботи.

  28. Стандартні команди мови T-SQL: синтаксис зовнішнього повного з’єднання та принцип його роботи.

  29. Стандартні команди мови T-SQL: синтаксис явного і неявного з’єднань що утворюють декартововий добуток та принцип його роботи.

  30. Стандартні команди мови T-SQL: синтаксис простого з’єднання двох запитів, правила по яким з’єднуються запити

  31. Стандартні команди мови T-SQL: синтаксис з’єднання двох запитів при яких отримується їх різниця і перетин, правила по яким з’єднуються запити.

  32. Стандартні команди мови T-SQL: синтаксис команди оновлення рядків у таблиці

  33. Стандартні команди мови T-SQL: синтаксис команди видалення рядків із таблиці.

  34. Стандартні команди мови T-SQL: синтаксис команди копіювання даних з однієї таблиці у іншу INSERT INTO.

  35. Стандартні команди мови T-SQL: синтаксис команди копіювання даних з однієї таблиці у іншу SELECT INTO.

  36. Механізми сортування, групування і умови над групуванням у команді запиту до однієї або багатьох таблиць. Порядок виконання цих операцій.

  37. Чотири системні бази даних, їх імена та призначення.

  38. Робота зі змінними у базі даних, їх визначення, команди виводу на екран, тощо.

  39. Логічні оператори у мові T-SQL.

  40. Синтаксис і механізм роботи оператору LIKE у мові T-SQL. Як шукати спеціальні символи у рядках таблиці.

  41. Функції CASE та IIF у мові T-SQL.

  42. Агрегатні функції у мові T-SQL.

  43. Правила використання та особливості роботи функцій COUNT, SUM, MAX, MIN та AVG.

  44. Порядок обробки інструкцій у команді запиту до однієї або багатьох таблиць.

  45. Математичні функції у мові T-SQL.

  46. Функції для роботи з текстом у мові T-SQL.

  47. Функції для роботи з часом у мові T-SQL.

  48. Явні з’єднання таблиць у мові T-SQL.

  49. Неявні з’єднання таблиць у мові T-SQL.

  50. Підзапити у мові T-SQL, визначення, принцип роботи, команди в яких вони використовуються.

  51. Підзапити у мові T-SQL, визначення, порядок виконання, оператори команди SELECT після яких вони використовуються.

  52. Правила застосування псевдонімів у мові T-SQL.

  53. Лямбда-вираз. Визначення, властивості, механізм роботи.

  54. Використання операторів ref, out, кілька параметрів у лямбда-виразах.

  55. Вираз-лямбда. Визначення, відмінність від лямбда-виразів, механізм роботи.

  56. Лямбда-оператори. Визначення, механізм роботи. Лямбда-вирази без параметрів.

  57. Технологія LINQ. Визначення, різновиди.

  58. Структура запиту LINQ. Ключові слова.

  59. Механізм мінімізації запитів LINQ.

  60. Фільтрація та сортування у обох напрямках у LINQ.

  61. Використання агрегатних операцій у LINQ.

  62. Перетворення об’єктів та робота з колекціями у LINQ.

  63. Механізм розширення методів Extension Methods.

  64. Архітектура ADO.NET.

  65. Визначення і призначення об’єктів постачальника даних.

  66. Визначення і призначення об’єктів автономної моделі зберігання даних.

  67. Поняття і механізм роботи пулу підключень.

  68. Рядок підключення до бази даних. Його параметри.

  69. Об’єкт SqlConnecton, його використання.

  70. Об’єкт SqlCommand, його використання.

  71. Об’єкт SqlDataReader, його використання.

  72. Типізація результатів за допомого SqlDataReader. Типи C#, SQL та методи для приведення цих типів які ви пам’ятаєте.

  73. Механізм параметризації запитів. Навіщо потрібен, як працює.

  74. Використання вихідних параметрів запитів.

  75. Використання транзакцій. Об’єкт SqlTransaction.

  76. Об’єкт DataSet. Визначення, складові, як використовується.

  77. Об’єкт SqlDataAdapter. Визначення, як використовується.

  78. Об’єкт SqlCommandBuilder. Визначення, як використовується.

Робочу програму навчальної дисципліни (силабус):

Складено доцент, к.т.н., доцент Мелкумян Катериною Юріївною

асистент Ковалем Олександром Сергійовичем

Ухвалено кафедрою технічної кібернетики (протокол № 10 від 29.04.2020)

Погоджено Методичною комісією факультету (протокол № 10 від 21.05.2020)