Предмет | Развој и одржавање софтвера |
---|---|
Модул | Информациони системи и технологије |
Статус предмета | Изборни предмет |
Катедра | Катедра за софтверско инжењерство |
Број ЕСПБ бодова | 5 |
Упознавање са кључним појмовима, проблемима и решењима развоја и одржавања софтвера. Разумевање и примена принципа и метода развоја и одржавања софтвера.Оспособљавање за:
•развој софтвера: прикупљање захтева, анализирање, пројектовање,имплементирање, тестирање, инсталирање и администрирање апликација;
•евалуацијусофтвера: мерење перформанси апликација и њихова оптимизација; примена основних софтверских метрика.
Предавања: Предавања еx цатхедра и мултимедијална предавања; студијски примери. Вежбе: рад у рачунарској учионици, решавање задатака, програмирање.
Теоријска настава:
1.Системско-теоријски приступ развоју софтвера 1.1. Појам система;Класификација система; Кибернетски (управљани) системи; Дискретни стохастички системи; 1.2. Пословни системи и управљање пословним системима; Моделовање пословних система; Информациони систем; 2.Развој софтвера 2.1. Фазе (концептуализација, спецификација, имплементација, експлоатација) и активности (захтевање, анализирање, пројектовање, имплементирање, тестирање); 2.2. Концептуализација (формулација проблема: прикупљање и анализирање корисничких захтева; модел разматраног система /функције, класе података и процеси/); 2.3. Спецификација (модел решења проблема: спецификација софтверских захтева; спецификација софтвера /структура, процеси, У/И, архитектура/); 2.4. Имплементација (решење проблема, тј. софтвер: инфраструктура /HW, OS, network; PaaS/; физичка и логичка архитектура; имплементација базе података; имплементација програма; имплементација крисничког интерфејса; тестирање софтверских модула/компоненти; тестирање целокупног софтверског система); 2.5. Експлоатација (употреба софтвера: испоручивање, коришћење и унапређивање софтвера); 3.Одржавање софтвера 3.1. Основни појмови; Врсте одржавања; Трошкови одржавања; Еволуција софтвера; 3.2. Процес одржавања; Активности одржавања; 3.3. Технике одржавања: реинжењерство, инверзно инжењерство, миграција, повлачење; 3.4.Алати за одржавање софтвера; 3.5. Одржавање и администрација програма – пример; 3.6. Одржавање и администрација база података – пример; 4.Студијски пример
Практична настава: Вежбе су у потпуности усклађена са предавањима, по структури и по садржај.
1. C. Althoff Self-Taught Programmer: The Definitive Guide to Programming Professionally Triangle Connection LLC 2016
2. M. Keeling Design It!: From Programmer to Software Architect Pragmatic Bookshelf 2017
3. R. C. Martin Agile Software Development, Principles, Patterns, and Practices PNIE, Pearson 2013
4. R. C. Martin, Micah Martin Agile Principles, Patterns, and Practices in C# Prentice Hall 2006
5. R. C. Martin Clean Architecture: A Craftsman’s Guide to Software Structure and Design Prentice Hall 2017
6. R. C. Martin Clean Code: A Handbook of Agile Software Craftsmanship Prentice Hall 2008
7. R. C. Martin Clean Agile: Back to Basics Prentice Hall 2019
8. R. C. Martin Clean Coder: A Code of Conduct for Professional Programmers Prentice Hall 2011
9. Д. Иветић Структурирани приступ програмирању ФТН Издаваштво, Нови Сад 2005
10. B.W. Kernighan, R. Pike The Practice of Programming Addison-Wesley 1999
11. D. Sarka, W. Durkin, M. Radivojević SQL Server 2017 Developer’s Guide: A professional guide to designing and developing enterprise database applications Packt Publishing, 2/e 2018
12. Peter A. Carter Pro SQL Server 2019 Administration: A Guide for the Modern DBA, 2/e Apress 2019
13. Ian Griffiths Programming C# 8.0: Build Cloud, Web, and Desktop Applications O’Reilly Media 2020
14. Holger Schwichtenberg Modern Data Access with Entity Framework Core: Database Programming Techniques for .NET, .NET Core, UWP, and Xamarin with C# Apress 2018
15. Mark J. Price C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development: Build applications with C#, .NET Core, Entity Framework Core, ASP.NET Core, and ML.NET using Visual Studio Code, 4/e Packt Publishing 2019
16. Bipin Joshi Beginning Database Programming Using ASP.NET Core 3: With MVC, Razor Pages, Web API, jQuery, Angular, SQL Server, and NoSQL, Kindle Edition Apress 2019