Faculty of Technical Sciences

Subject: Software Configuration Management (17.E2510)

Native organizations units: Sub-department for Applied Computer Science and Informatics
General information:
 
Category Scientific-professional
Scientific or art field Applied Computer Science and Informatics
Interdisciplinary No
ECTS 6
Educational goal:

To make students capable of applying best practice, methods, techniques and tools in the domain of Software Configuration Management (SCM) with the emphasis on the SCM process introduction and improvement.

Educational outcome:

At the end of the course students are capable of: introducing SCM best practice, methods and tools in the software development process, improve existing SCM process, analyze available tools and identify advantages and disadvantages of each, understand pros and cons of different version control systems, change management systems, build and release management systems, systems for managing alternative lines of development etc. By using modern SCM tools and by the development and documentation of SCM process and the development of supporting application, students acquire a broad range of practical skills.

Course content:

Theoretical lectures: Basic definitions and historical development of Configuration Management - CM. Traditional notion of CM; Identification of configuration, change control, status accounting, audit and verification. Configuration management in the context of software development (Software Configuration Management - SCM). Source code management; Version Control System - VCS; architectures, advantages and disadvantages : social coding; repository models; concurrent change management models; alternative development courses. Dependency management. Build management, automation, tools. Change Management; Events; Requests for change tracking; support systems. Issue management; identification; traceability; automation. Deployment: identification, authentication, security, planning. Industrial standards and frameworks. Models of maturity. Practical classes: file compare tool patch and diff. Centralized version control systems (Subversion). Distributed version control systems (Git, Mercurial). Tools to support issue tracking (Trac). Code review (ReviewBoard, Rietveld, Gerrit, barkeep). Tools for automated build (Apache Ant + Ivy, Maven). Systems for continuous integration (Jenkins). The design and documentation of the SCM process in accordance with the recommended practice. Creating Web applications to support the proposed SCM process.

Teaching methods:

Lectures, Computer exercises; Consultation. Design and implementation of project assignment by working within project teams. At the end of the semester, public presentations of the most successful teams are organized with the discussion of the obtained results. The defense of project assignment is oral. The final exam is oral. Final grade is based on the score from the final exam and project defense.

Literature:
Authors Title Year Publisher Language
Scott, Ch., Straub, B. Pro Git (second edition) 2014 Apress, Berkley English
Gupta, A. Docker for Java Developers: Package, Deploy, and Scale with Ease 2016 O Reilly English
A. Mette, J. Hass Configuration Management Principles and Practice 2003 Addison Wesley English
Ott, B., Pham, J., Saker, H. Enterprise DevOps PlayBook: A Guide to Delivering at Velocity 2017 O Reilly English
DoD USA Configuration management guidance 2001 Department of Defense--United States of America English
Rensin, D.K. Kubernetes : Scheduling the Future at Cloud Scale 2015 O Reilly English
Berczuk, S. & Appleton, B. Software configuration management patterns: effective teamwork, practical integration 2003 Addison-Wesley Professional English
Aiello, R. & Sachs, L. Configuration Management Best Practices: Practical Methods that Work in the Real World 2010 Addison-Wesley Professional English
Goasguen, S. Docker in the Cloud: Recipes for AWS, Azure, Google, and More 2016 O Reilly English
Reed, J.P. DevOps in Practice 2014 O Reilly English
Chacon, S.; Hamano, J. & Pearce, S. Pro Git 2009 APress English
Knowledge evaluation:
Course activity Pre-examination Obligations Number of points
Theoretical part of the exam No Yes 50.00
Project Yes Yes 50.00
Lecturers:

Asistent Vejnović Mina

Assistant - Master

Computational classes
API Image

prof. dr Dejanović Igor

Full Professor

Lectures

Asistent Mandić Nikola

Assistant - Master

Computational classes

Faculty of Technical Sciences

© 2024. Faculty of Technical Sciences.

Contact:

Address: Trg Dositeja Obradovića 6, 21102 Novi Sad

Phone:  (+381) 21 450 810
(+381) 21 6350 413

Fax : (+381) 21 458 133
Emejl: ftndean@uns.ac.rs

© 2024. Faculty of Technical Sciences.