Subject: Software Design (17 - RI45)


Basic Information

CategoryScientific-professional
Scientific or art field:Applied Computer Science and Informatics
InterdisciplinaryNo
ECTS7
Course specification

Course is active from 01.10.2017..

Students learn about efficient and effective software design. They acquire knowledge and skills for architecture design, implementation and testing of complex software systems. Standardization of implementation, testing, verification and validation of software. Using tools for tracking software faults. Documentation for complex software products. Software characteristics presentation.
A the end of the course the students are able to design complex software systems based on standardized processes of implementation, testing, verification and validation of software and use of available tools for tracking software configuration and software faults. In addition they are also capable of making high quality documentation and presentations related to characteristics of complex software products.
Model based software construction. Aspects of software system design: conceptual and technical design, decomposition and modularity, software architecture, styles and strategies. Aspects of software system construction: organization and structure of software, elements of program solution, construction standards and functionality implementation. User interface design. Software construction procedure: methods and techniques of construction, team work and team software development, X-treem programming, code standard and quality, software testing, software inspection, software integration, verification and validation. Fundamentals of software quality control. Fundamentals of fault tracking and software configuration.
On the basis of specification of event controlled system, developed within the course: Software Specification and Modeling, and working in teams, students work on practical implementation of the knowledge about software construction. Relying on two software inspections during the lectures, students learn about methods and techniques of presenting software solutions, their testing, verification and validation. At the end of the course the students give a class presentation and defense of their project.
AuthorsNameYearPublisherLanguage
Branko PerišićProjektovanje softvera2007Elektronsko izdanje-PDF,PPTSerbian language
Pierre Bourque, Richard E. (Dick) FairleyGuide to the Software Engineering Body of Knowledge Version 3.0 SWEBOK V.3.02014IEEE Computer Society - elektronsko izdanjeEnglish
Matthew Robinson, Pavel VorobievSwing, Second Edition2003Elektronsko izdanje-PDFEnglish
John ZukowskiMajstor za javu, Java J2SE 1.42002Kompjuterska biblioteka ČačakSerbian language
Erich Gamma, Richard Helm, Ralph Johnson i John VlissidesGotova rešenja Elementi objektno orijentisanog softvera2002CET BeogradSerbian language
P.Clements et al Documenting Software Architectures: Views and Beyond, 2nd ed.2010Pearson Education,English
L. Bass, P. Clements, and R. Kazman Software Architecture in Practice, 3rd ed.2013Addison-Wesley ProfessionalEnglish
Ian GortonEssential Software Architecture 2nd ed.2011Springer - elektronsko izdanjeEnglish
L. A. MaciaszekRequirements Analysis and System Design Developing Information Systems with UML2001Addisom WesleyEnglish
Steve McConnellCode Complete A Practical Handbook of software construction2005Microsoft PressEnglish
Course activity Pre-examination ObligationsNumber of points
Praćenje aktivnosti pri realizaciji projekataYesYes10.00
ProjectYesYes40.00
Theoretical part of the examNoYes30.00
Practical part of the exam - tasksNoYes20.00
Name and surnameForm of classes
Missing picture!

Segedinac Milan
Associate Professor

Lectures
Missing picture!

Luburić Nikola
Assistant Professor

Lectures
Missing picture!

Milosavljević Gordana
Full Professor

Lectures
Missing picture!

Marković Marko
Associate Professor

Computational classes
Missing picture!

Ranković Tamara
Assistant - Master

Computational classes
Missing picture!

Matković Jelena
Assistant - Master

Computational classes