Course Sem. Cr. Hrs.
First Year
IGME-101
New Media Interactive Design and Algorithmic Problem Solving I
This course provides students with an introduction to problem solving, abstraction, and algorithmic thinking that is relevant across the field of new media. Students are introduced to object-oriented design methodologies through the creation of event-driven, media-intensive applications. Students will explore the development of software through the use of a range of algorithmic concepts related to the creation of applications by writing classes that employ the fundamental structures of computing, such as conditionals, loops, variables, data types, functions, and parameters. There is an early emphasis on object oriented concepts and design. (This course is restricted to students in NWMEDID-BS or NMDE-BFA with at least 2nd year standing or GAMED-MN students.) Lec/Lab 6.
4
MATH-131
General Education - Mathematical Perspective A: Discrete Mathematics
This course is an introduction to the topics of discrete mathematics, including number systems, sets and logic, relations, combinatorial methods, graph theory, regular sets, vectors, and matrices. Lecture 4 (Fall).
4
MATH-161
Applied Calculus
This course is an introduction to the study of differential and integral calculus, including the study of functions and graphs, limits, continuity, the derivative, derivative formulas, applications of derivatives, the definite integral, the fundamental theorem of calculus, basic techniques of integral approximation, exponential and logarithmic functions, basic techniques of integration, an introduction to differential equations, and geometric series. Applications in business, management sciences, and life sciences will be included with an emphasis on manipulative skills. Prerequisite: C- or better in MATH-101, MATH-111, MATH-131, NMTH-260, NMTH-272 or NMTH-275 or Math Placement Exam score greater than or equal to 45.
4
ISTE-140
Web & Mobile I
This course provides students with an introduction to internet and web technologies, and to development on Macintosh/UNIX computer platforms. Topics include HTML and CSS, CSS3 features, digital images, web page design and website publishing. Emphasis is placed on fundamentals, concepts and standards. Additional topics include the user experience, mobile design issues, and copyright/intellectual property considerations. Exercises and projects are required. Lec/Lab 3 (Fall).
3
ISTE-230
Introduction to Database and Data Modeling
A presentation of the fundamental concepts and theories used in organizing and structuring data. Coverage includes the data modeling process, basic relational model, normalization theory, relational algebra, and mapping a data model into a database schema. Structured Query Language is used to illustrate the translation of a data model to physical data organization. Modeling and programming assignments will be required. Note: students should have one course in object-oriented programming. (Prerequisites: ISTE-120. Lec/Lab Spring).
3
ISTE-240
Web & Mobile II
This course builds on the basics of web page development that are presented in Web and Mobile I and extends that knowledge to focus on theories, issues, and technologies related to the design and development of web sites. An overview of web design concepts, including usability, accessibility, information architecture, and graphic design in the context of the web will be covered. Introduction to web site technologies, including HTTP, web client and server programming, and dynamic page generation from a database also will be explored. Development exercises are required. Prerequisites: (ISTE-120 or CSCI-140 or CSCI-141 or NACA-161 or IGME-105 or IGME-101 or NMAD-180 or GCIS-123) and (ISTE-140 or NACA-172 or IGME-230 or IGME-235) or equivalent course.
3
UWRT-100
General Education Elective: Critical Reading and Writing
This course is designed to help students develop the literacy practices they will need to be successful in their First-Year Writing course. Students will read, understand, interpret, and synthesize a variety of texts. Assignments are designed to challenge students intellectually, culturally and rhetorically. Through inquiry-based assignment sequences, students will improve their writing by developing academic research and literacy practices that will be further strengthened in First-Year Writing. Particular attention will be given to critical reading, academic writing conventions, and revision. Small class size promotes frequent student-instructor and student-student interaction. The course also emphasizes the principles of intellectual property and academic integrity in academic writing.
3
UWRT-150
General Education Elective; Writing Intensive: FYW: Writing Seminar
Writing Seminar is a three-credit course limited to 19 students per section. The course is designed to develop first-year students’ proficiency in analytical and rhetorical reading and writing, and critical thinking. Students will read, understand, and interpret a variety of non-fiction texts representing different cultural perspectives and/or academic disciplines. These texts are designed to challenge students intellectually and to stimulate their writing for a variety of contexts and purposes. Through inquiry-based assignment sequences, students will develop academic research and literacy practices that will be further strengthened throughout their academic careers. Particular attention will be given to the writing process, including an emphasis on teacher-student conferencing, critical self-assessment, class discussion, peer review, formal and informal writing, research, and revision. Small class size promotes frequent student-instructor and student-student interaction. The course also emphasizes the principles of intellectual property and academic integrity for both current academic and future professional writing.
3
YOPS-10
RIT 365: RIT Connection
RIT 365 students participate in experiential learning opportunities designed to launch them into their career at RIT, support them in making multiple and varied connections across the university, and immerse them in processes of competency development. Students will plan for and reflect on their first-year experiences, receive feedback, and develop a personal plan for future action in order to develop foundational self-awareness and recognize broad-based professional competencies. Lecture 1 (Fall, Spring).
0
GCIS -123
Software Development and Problem Solving I
<p>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.</p>
4
GCIS -124
Software Development and Problem Solving II
<p>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 &amp; 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.</p>
4
Second Year
ISTE-99
School of Information Second Year Seminar
This course helps students prepare for cooperative employment by developing job search approaches and material. Students will explore current and emerging aspects of IST fields to help focus their skill development strategies. Students are introduced to the Office of Career Services and Cooperative Education, and learn about their professional and ethical responsibilities for their co-op and subsequent professional experiences. Students will work collaboratively to build résumés, cover letters, and prepare for interviewing. (Prerequisites: This class is restricted to students with at least 2nd year standing.) Lecture 1 (Fall).
0
ISTE-222
Computational Problem Solving in the Information Domain III
The third course in the programming sequence expanding the student’s knowledge base of higher level programming concepts including data structures, algorithm development and analysis, Big-O notation, directed graphs, priority queues, performance, and a greater understanding of how complex software can more easily be designed. Programming assignments are required. (Prerequisites: ISTE-121 or ISTE-200 or CSCI-142 or CSCI-140 or IGME-106 or CSCI-242 or equivalent course.) Lecture 3 (Fall, Spring).
3
ISTE-252
Foundations of Mobile Design
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. (Prerequisites: ISTE-24. Lec/Lab 3 (Spring).
3
ISTE-260
Designing the User Experience
The user experience is an important design element in the development of interactive systems. This course presents the foundations of user-centered design principles within the context of human-computer interaction (HCI). Students will explore and practice HCI methods that span the development lifecycle from requirements analysis and creating the product/service vision through system prototyping and usability testing. Leading edge interface technologies are examined. Group-based exercises and design projects are required. (Prerequisite: ISTE-140) Lec/Lab 3 (Spring).
3
ISTE-330
Database Connectivity and Access
In this course, students will build applications that interact with databases. Through programming exercises, students will work with multiple databases and programmatically invoke the advanced database processing operations that are integral to contemporary computing applications. Topics include the database drivers, the data layer, connectivity operations, security and integrity, and controlling database access. (Prerequisites: ISTE-230) Lec/Lab 3 (Spring).
3
ISTE-340
Client Programming
This course will explore the analysis, design, development, and implementation of client-side programming in the context of Internet technologies, mobile devices, Web-based client systems and desktop applications. Students will learn to design and build usable and effective interactive systems, clients, and interfaces. Key features addressed will include browser and platform compatibility, object reusability, bandwidth and communications issues, development environments, privacy and security, and related technologies and APIs. Programming is required. (Prerequisites: (STE-240 and ISTE-121) Lec/Lab 3 (Spring).
3
NSSA-290
Networking Essentials for Developers
This is a course in the basics of network communication for software developers. Topics will include the OSI 7-layer model and its realization in the TCP/IP protocol stack. Students will also learn about naming and name resolution as it is used in the internet, plus the basics of routing and switching. The focus in all of this will be on an analysis of how name resolution, routing and switching operate at the developer's perspective. The specifics of how the socket transport layer appears to the programmer and operates will be a key topic. Finally, an overview of authentication mechanisms and number of examples of the security vulnerabilities of existing communication protocols will be provided to instruct students on the inherent risks of communication via the INTERNET. (Prerequisites: ISTE-121) Lecture 3 (Fall).
3
SWEN-383
Software Design Principles and Patterns
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. (Prerequisites: ISTE-240 or equivalent course. Co-requisite: ISTE-340 or equivalent course.) Lec/Lab 3 (Spring).
3
ISTE-499
Undergraduate Co-op (summer)
Students perform paid, professional work related to their program of study. Students work full-time during the term they are registered for co-op. Students must complete a student co-op work report for each term they are registered; students also are evaluated each term by their employer. A satisfactory grade is given for co-op when both a completed student co-op report and a corresponding employer report that indicates satisfactory student performance are received. (Enrollment in this course requires permission from the department offering the course.) CO OP (Fall, Spring, Summer)
0
Third Year
ISTE-341
Server Programming
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. (Prerequisites: ISTE-340 and STE-230 and SWEN-383) Lec/Lab 3 (Fall, Spring).
3
ISTE-422
Application Development Practices
In this course, students will gain experience with the processes, practices, and tools professional developers use to deliver robust and maintainable applications. Students will apply these practices and tools to build smaller-scale production-quality applications and systems. Topics include development life cycles, version control, test bed development and use, build utilities, error handling, deployment tools, and documentation. (Prerequisites: ISTE-121 or ISTE-200 or CSCI-142 or CSCI-140 or IGME-106 or CSCI-242 or equivalent course.) Lec/Lab 3 (Fall, Spring).
3
ISTE-499
Undergraduate Co-op (summer)
Students perform paid, professional work related to their program of study. Students work full-time during the term they are registered for co-op. Students must complete a student co-op work report for each term they are registered; students also are evaluated each term by their employer. A satisfactory grade is given for co-op when both a completed student co-op report and a corresponding employer report that indicates satisfactory student performance are received. (Enrollment in this course requires permission from the department offering the course.) CO OP (Fall, Spring, Summer)
0
ENVS-150
General education Elecive;Natural Science Inquiry Perspective; Scientific Principles Perspective;Science / Math Literacy: Ecology of the Dalmatian Coast
This course is an introduction to population, community, and ecosystem ecology; stressing the dynamic interrelationships of plant and animal communities of the Dalmatian Coast. The course includes such ecological concepts as energy flow and trophic levels in natural communities, population and community dynamics, biogeography and ecosystem ecology. Field trips to local Croatian ecosystems are included.
4
ISTE-144
Design for Developers
<p>This is a production-based course that introduces the basic elements, principles, and methods of visual design for digital applications. Students will experiment with design thinking, ideation, and concept development techniques as they explore the computer as an illustrative and image generation tool. Emphasis is on effective visual communication and design skills through digital image creation, graphic organization, and typography for screen-based output.</p>
3
Fourth Year
ISTE-500
Senior Development Project I
The first course in a two-course, senior level, system development capstone project. Students form project teams and work with sponsors to define system requirements. Teams then create architectures and designs, and depending on the project, also may begin software development. Requirements elicitation and development practices introduced in prior coursework are reviewed, and additional methods and processes are introduced. Student teams are given considerable latitude in how they organize and conduct project work. (This class is restricted to WMC-BS, HCC-BS, CMIT-BS students with a minimum of 2 terms of co-op completed.) Lecture 3 (Fall, Spring).
3
STE-501
Senior Development Project II (WI-PR)
The first course in a two-course, senior level, system development capstone project. Students form project teams and work with sponsors to define system requirements. Teams then create architectures and designs, and depending on the project, also may begin software development. Requirements elicitation and development practices introduced in prior coursework are reviewed, and additional methods and processes are introduced. Student teams are given considerable latitude in how they organize and conduct project work. Lecture 3 (Fall).
3
ISTE-454
Mobile Application Development I
This course extends the material covered in the Foundations of Mobile Design course and provides students with the experience of creating interesting applications for small-size form factor mobile devices such as smartphones These devices are exceptionally portable, have unique sets of hardware and communications capabilities, incorporate novel interfaces, are location aware, and provide persistent connectivity. Students are encouraged to make creative use of these unique device characteristics and operating properties to develop innovative applications. Programming projects are required. (Prerequisites: (ISTE-252 and ISTE-340) Lec/Lab 3 (Fall).
3
ISTE-456
Mobile Application Development II
This course extends the Foundations of Mobile Design course in that students will learn to apply mobile design skills to develop applications in the Android platform. Students will design, develop, and test mobile applications using the Android Studio IDE. This course covers the major components such as activities, receivers, content providers, permissions, intents, fragments, data storage, and security. Programming projects are required (Prerequisites: (ISTE-252 and ISTE-340). Lec/Lab 3 (Spring).
3
ENVS-151
General Education - Scientific Principles Perspective,Scientific Inquiry in Environmental Science
This course is part of a two-semester course that combines an integrated approach to interconnected, interdisciplinary principles of environmental science through case studies, site visits and fieldwork. Through the given literature, discussion at lectures and case studies dealing with global environmental problems, as well as environmental problems related to the Dalmatian coast, students will learn how to critically analyze environmental problems from a multidisciplinary perspective and propose solutions.
4