Ви переглядаєте архівну версію офіційного сайту НУЛП (2005-2020р.р.). Актуальна версія: https://lpnu.ua

Інженерія програмного забезпечення

Спеціальність: Системний аналіз
Код дисципліни: 6.124.01.E.85
Кількість кредитів: 4
Кафедра: Соціальні комунікації та інформаційна діяльність
Лектор: проф. Жежнич П.І.
Семестр: 6 семестр
Форма навчання: денна
Результати навчання:
В результаті вивчення дисципліни "Інженерія програмного забезпечення" студент повинен:
• знати – основні цілі побудови програмного забезпечення, методи проектування та виробництва програмного забезпечення, основні етапи створення програмного забезпечення, моделі життєвого циклу програмного забезпечення, принципи побудови, проектування і тестування програм, програмних систем і комплексів, методи організації роботи в колективах розробників програмного забезпечення
• вміти – практично розв'язувати основні задачі побудови програмного забезпечення, вибирати потрібну методологію розробки програмного забезпечення, застосовувати методи колективної роботи розробників програмного забезпечення, тестувати та оцінювати якість програмного забезпечення.
Вивчення навчальної дисципліни передбачає формування та розвиток у студентів компетентностей:
загальних:
• розуміти й розв’язувати проблеми та задачі побудови програмного забезпечення;
• проводити дослідження в галузі інженерії програмного забезпечення;
• застосовувати знання з побудови програмного забезпечення в практичних ситуаціях системного аналізу;
фахових:
• використовувати знання з побудови програмного забезпечення в галузі системного аналізу для розроблення інформаційних систем;
• формулювати, аналізувати та синтезувати рішення науково-практичних задач з побудови програмного забезпечення;
• будувати моделі інформаційних процесів за допомогою методів структурного моделювання;
• досліджувати та оптимізувати моделі інформаційних процесів для побудови програмного забезпечення;
• розробляти і впроваджувати програмне забезпечення, спроектоване за допомогою методів структурного моделювання;
• формулювати нові наукові та практичні задачі побудови програмного забезпечення в області системного аналізу;
• сприймати здобуті знання з побудови програмного забезпечення та інтегрувати їх з уже наявними з області системного аналізу.
Результати навчання цієї дисципліни деталізують такі програмні результати навчання:
• знання і розуміння основних методологій та підходів до побудови програмного забезпечення;
• знання і розуміння принципів та механізмів побудови програмного забезпечення;
• знання і розуміння теоретичних, методологічних та процедурних основ проведення досліджень в сфері інженерії програмного забезпечення;
• знання і розуміння методик оцінки якості програмного забезпечення;
• знання і розуміння методів структурного моделювання під час побудови програмного забезпечення;
• здатність здійснювати планування, організацію та контроль побудови програмного забезпечення;
• здатність здійснювати обробку інформації, необхідної для побудови програмного забезпечення;
• здатність розробляти практичні рекомендації щодо побудови програмного забезпечення;
• здатність забезпечувати розробку та оцінку характеристик програмного забезпечення, необхідних для його побудови.
Необхідні обов'язкові попередні та супутні навчальні дисципліни:
• Проектування інформаційних систем
• Моделювання бізнес-процесів
• Управління ІТ проектами
Короткий зміст навчальної програми:
Навчальна дисципліна висвітлює питання про: базові поняття інженерії ПЗ, огляд етапів розробки ПЗ, сутність SWEBOK, основні моделі розробки ПЗ: каскадна модель, спіральна, інкрементна, ітераційна модель, порівняння ризиків та позитивних сторін моделей розробки, поняття вимог до ПЗ, керування вимогами, поняття технічного завдання на створення ПЗ, основні елементи мови UML, діаграми варіантів використання, діаграми класів, діаграми кооперації, діаграми послідовності, діаграми стану, діаграми діяльності, діаграми компонент, діаграми розгортання, основні процесів керування проектом, особливості планування робіт по розробці програмного продукту, інструменти для побудови діаграм Ганта та графіку робіт, керування ризиками у процесі розробки, складові частини якості командної роботи з розробки ПЗ, системи підтримки командної роботи з розробки ПЗ, системи контролю версій ПЗ, визначення продуктивності роботи команди, моделі для визначення оцінки, алгоритмічне моделювання загальної вартості проекту, сутність PMBOK, тестування ПЗ, типи тестування, структурне тестування ПЗ, автоматизоване та ручне тестування, поняття якості ПЗ, стандарти якості, стандарт ISO/IEC 25010, контроль та вимірювання показників якості, гнучкі методології розробки програмного забезпечення, аджайл маніфест та його основні принципи у порівнянні з класичною методологією розробки, основні характеристики методології Scrum.
Рекомендована література:
1. Андон Ф.И. Основы инженерии качества программных систем / Ф.И.Андон, Г.И.Коваль, Т.М. Коротун, Е.М.Лаврищева, В.Ю. Суслов – К.: Академпериодика.– 2007. – 678с.
2. Алешин А.В., Безкоровайний В.П., Управління проектами: основи професійних знань і національні вимоги до компетенції спеціалістів / під ред.. Воропаєва ВІ.. М., СОВНЕТ, 2001
3. Бабенко Л. П. Основи програмної інженерії / Лавріщева К.М., Бабенко Л. П. - К.: Знання, 2001. – 269 с.
4. Блэк Р. – Ключевые процессы тестирования. Планирование, подготовка, проведение, совершенствование. – М.: Издательство «Лори», 2006.
5. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений / Энгл М., Янг Б., Буч Г. – М.: ИД «Вильямс», 2008. – 720 с.
6. Буч Г., Якобсон А., Рамбо Дж. UML. Классика CS. 2-е изд./ Пер. с англ.; Под общей редакцией проф. С. Орлова – СПб.:Питер, 2006.- 380с.
7. Винниченко И. В. – Автоматизация процессов тестирования. – Спб.: Питер, 2005. – 203с.
8. Волкова В. Н. Теория информационных процессов и систем : учебник и практикум для академического бакалавриата / В. Н. Волкова. – М.: Издательство Юрайт, 2014. – 502 с.
9. Громов Ю.Ю. Теория информационных процессов и систем : учебник / Ю. Ю. Громов, В. Е. Дидрих, О. Г. Иванова, В. Г. Однолько. – Тамбов : Изд-во ФГБОУ ВПО «ТГТУ», 2014. – 172 с. – http://www.tstu.ru/book/elib/pdf/2014/didrih.pdf
10. Дастин Э., Рэшка Д., Пол Д. Автоматизированное тестирование программного обеспечения: Пер. с англ. – М:, Лори, 2003 – 568с.
11. Жежнич, П. І. Технології інформаційного менеджменту: Навчальний посібник, – Львів: Видавництво Національного університету “Львівська політехніка”, 2010. – 260 с.
12. Жежнич, П. І. Консолідовані інформаційні ресурси баз даних та знань: Навчальний посібник – Львів: Видавництво Національного університету “Львівська політехніка”, 2010. – 212 с.
13. Кобиляцький Л.С. Управліня проектами, навчальний посібник. – К.: МАУП, 2002 – 200с.Гук М. Локальные сети Novell. Карманная энциклопедия.– СПб:Питер, 1996.–288с.
14. Кутідзе, Л. С., Курда Н.М., Головань О.О. та ін. Інформаційні системи в менеджменті Запоріжжя, 2006
15. Лаврищева Е.М. Методы программирования. Теория, инженерия, практика. – К.: Наук. думка, 2006.– 450с.
16. Лавріщева К.М. Программна інженерія. - М.: Академперіодика, 2008, 322 с. - http://csc.knu.ua/uk/library/books/lavrishcheva-6.pdf
17. Ларман, Крэг. Применение UML и шаблонов проектирования.: Пер. с англ..: Уч. Пос. – М.: Издательский дом «Вильямс», 2001. – 496 с.
18. Липаев В. В. Программная инженерия. - М.: ТЕИС, 2006. - 609с.
19. Малько, О. Г. Моделювання інформаційних систем та процесів : конспект лекцій / О. Г. Малько. - Івано-Франківськ : ІФНТУНГ, 2010. - 122 с. http://194.44.112.13/chytalna/2592/index.html
20. Орлов С.А. Технологии разработки программного обеспечения. – СПб: Питер, 2002. – 464 с.
21. Плескач В.Л., Затонацька Т.Г. Інформаційні системи і технології на підприємствах: підручник. – К: Знання, 2011, 718 с. - https://pidruchniki.com/1059110247701/informatika/informatsiyni_sistemi_i_tehnologiyi_na_pidpriyemstvah
22. Сидоров М.О. Вступ до інженерії програмного забезпечення – К.: Вид-во НАУ «НАУ-друк», 2010. – 112 с.
23. Соммервилл, И. Инженерия програмного обеспечения, 6-е издание.: Пер. с англ.. – М.: Издательский дом «Вильямс» 2002. – 624 с.
24. Стотлемайер Д. – Тестирование Web-приложений. Пер. с англ. – М.: КУДИЦ-ОБРАЗ, 2003. – 240 с.
25. Табунщик Г.В. Проектування та моделювання програмного забезпечення сучасних інформаційних систем / Г. В. Табунщик, Т.І. Каплієнко, О.А. Петрова ? Запоріжжя : Дике Поле, 2016. – 250 c. - http://eir.zntu.edu.ua/bitstream/123456789/1824/1/Tabunshchik_Software_Design.pdf
26. Тулашвілі Ю.Й. Командна розробка програмних проектів: Конспект лекцій. - Рівне: НУВГП, 2015. – 102с. - http://ep3.nuwm.edu.ua/2233/1/04-01-06.pdf
27. A Guide to the Project Management: Body of Knowledge (PMBOK Guide) – Project Management Institute, Fifth Edition, 2013, 616p.
28. Guide to the Software Engineering: Body of Knowledge (SWEBOK) – Editors: Bourque P., Fairley R.E., IEEE Computer Society, Version 3.0, 2014, 335p. - https://www.computer.org/education/bodies-of-knowledge/software-engineering
29. Jacobson I. Object-Oriented Software Engineering. A use Case Driven Approach, Revised Printing. – New York: Addison-Wesley Publ. Co., 1994.– 529p.
30. Pfleeger S.L. Software Engineering. Theory and practice. – Printice Hall: Upper Saddenle River, New Jersey, 1998.– 576p.
31. Thayer R.H., ed. Software Engineering Project Management, 2 nd. ed., IEEE CS Press, Los Alamitos, Calif., 1997.– 391p.
Методи і критерії оцінювання:
Діагностика знань відбувається шляхом оцінювання виконаних лабораторних робіт та екзаменаційного контролю (письмової та усної компоненти).