Skip to main content
Skip header

Selected Mechanisms of Software Development

Summary

This course deals with software maintenance and configuration management. Students will gain an understanding of the major problems in software maintenance, and techniques to help counter these problems. In addition, students will gain knowledge in the area of configuration management, without which the discipline of software maintenance cannot do without. In this area, the course deals primarily with the identification and management of configurations.
In the area of software testing, the course deals with the issues of software testing and quality assurance throughout the software development life cycle. Students will gain knowledge of the different levels of testing and the techniques used in these levels, how to evaluate software quality and the tests themselves. Integrating these activities into the testing process, which is part of the entire software development life cycle, is also an integral part of the course. In addition, students will gain knowledge of software quality assurance practices. This discipline is very closely related to and makes heavy use of software testing. The course will focus on the quality assurance process itself and its integration into the software development life cycle, verification and validation.
In the area of design, the course focuses on defining the characteristics of large-scale enterprise applications and then explores multi-tier architecture as one of the most widely used architectures for large-scale enterprise systems. The importance of each layer and the use of design patterns in these layers are discussed in turn. In addition, the course explores other approaches and techniques used such as web services, REST architectural style, microservices architecture, and others.

Literature

1. FOWLER, Martin. Patterns of enterprise application architecture: a systematic introduction. Boston: Addison-Wesley, c2003, xxiv, 533 p. ISBN 03-211-2742-0 .
2. Fielding, Roy Thomas. Architectural Styles and the Design of Network-based Software Architectures. Doctoral dissertation, University of California, Irvine, 2000. Dostupný z WWW: https://www.ics.uci.edu/~fielding/pubs/dissertation/fielding_dissertation.pdf
3. Newman, S. Building microservices : designing fine-grained systems. O'Reilly Media, 2015. ISBN 978-1491950357 .
4. Steven R.Rakitin: Software Verification and Validation for Practitioners and Managers, Second Edition, ISBN: 1-58053-296-9
5. HASS, Anne Mette Jonassen. Configuration management principles and practice. Boston, MA: Addison-Wesley, 2003, xiv, 370 p. ISBN 0321117662 .

Advised literature

1. Alur, Deepak, Malks, Dan, Crupi, John. Core J2EE Patterns: Best Practices and Design Strategies Prentice Hall Press, 2013. ISBN 9780133807462 .
2. Core J2EE Patterns: Patterns index page [online]. 2001-2002 [cit. 2014-09-05]. Dostupný z WWW: http://www.corej2eepatterns.com
3. Steven R.Rakitin: Software Verification and Validation for Practitioners and Managers, Second Edition, ISBN: 1-58053-296-9
4. Black, R. Advanced Software Testing - Vol. 1: Guide to the ISTQB Advanced Certification As an Advanced Test Analyst (Rockynook Computing) Rocky Nook, 2008
5. Galin, D. Software Quality Assurance: From Theory to Implementation Addison-Wesley, 2003
6. AIELLO, Bob a Leslie A SACHS. Configuration management best practices: practical methods that work in the real world. Upper Saddle River, NJ: Addison-Wesley, c2011, xxxvii, 229 p. ISBN 0321685865 .
7. BERCZUK, Stephen P a Brad APPLETON. Software configuration management patterns: effective teamwork, practical integration. Boston: Addison-Wesley, c2003, xxxiv, 218 p. ISBN 0201741172 .


Language of instruction čeština, angličtina
Code 460-4155
Abbreviation VMSWV
Course title Selected Mechanisms of Software Development
Coordinating department Department of Computer Science
Course coordinator Ing. David Ježek, Ph.D.