Domagoj Tolic Headshot

Domagoj Tolic

Senior Lecturer

RIT Croatia

Domagoj Tolic

Senior Lecturer

RIT Croatia

Currently Teaching

GCIS-123
4 Credits
A first course introducing students to the fundamentals of computational problem solving. Students will learn a systematic approach to problem solving, including how to frame a problem in computational terms, how to decompose larger problems into smaller components, how to implement innovative software solutions using a contemporary programming language, how to critically debug their solutions, and how to assess the adequacy of the software solution. Additional topics include an introduction to object-oriented programming and data structures such as arrays and stacks. Students will complete both in-class and out-of-class assignments.
GCIS-124
4 Credits
A second course that delves further into computational problem solving, now with a focus on an object-oriented perspective. There is a continued emphasis on basic software design, testing & verification, and incremental development. Key topics include theoretical abstractions such as classes, objects, encapsulation, inheritance, interfaces, polymorphism, software design comprising multiple classes with UML, data structures (e.g. lists, trees, sets, maps, and graphs), exception/error handling, I/O including files and networking, concurrency, and graphical user interfaces. Additional topics include basic software design principles (coupling, cohesion, information expert, open-closed principle, etc.), test driven development, design patterns, data integrity, and data security.
ISTE-252
3 Credits
This course is an introduction to designing, prototyping, and creating applications and web applications for mobile devices. These devices include a unique set of hardware and communications capabilities, incorporate novel interfaces, are location aware, and provide persistent connectivity. Topics covered include user interaction patterns, connectivity, interface design, software design patterns, and application architectures. Programming projects are required.
ISTE-341
3 Credits
This course provides in-depth work in server-side programming. Students will develop dynamic, data centric web pages and systems, and server-side information services that will be available to clients implemented in a variety of software technologies. Topics include XML parsing, generation, and consumption; web configuration and security; design patterns; web service structures, and application security. Programming projects are required.
ISTE-612
3 Credits
This course provides students with exposure to foundational data analytics technologies, focusing on unstructured data. Topics include unstructured data modeling, indexing, retrieval, text classification, text clustering, and information visualization.
ISTE-780
3 Credits
Rapidly expanding collections of data from all areas of society are becoming available in digital form. Computer-based methods are available to facilitate discovering new information and knowledge that is embedded in these collections of data. This course provides students with an introduction to the use of these data analytic methods, with a focus on statistical learning models, within the context of the data-driven knowledge discovery process. Topics include motivations for data-driven discovery, sources of discoverable knowledge (e.g., data, text, the web, maps), data selection and retrieval, data transformation, computer-based methods for data-driven discovery, and interpretation of results. Emphasis is placed on the application of knowledge discovery methods to specific domains.
SWEN-383
3 Credits
Quality software designs and architectures reflect software engineering principles that represent best contemporary practice. This course focuses on explicating these fundamental principles, examining a set of design and architecture patterns that embody the principles, and applying patterns appropriate to a design problem in a given context. Restricted to IST majors only.