Ali Assi
Assistant Professor of Computing Security
RIT Dubai
Currently Teaching
GCIS-123
Software Development and Problem Solving I
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.
ISTE-230
Introduction to Database and Data Modeling
3 Credits
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.
ISTE-240
Web & Mobile II
3 Credits
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.
ISTE-499
Undergraduate Co-op
0 Credits
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.
SWEN-261
Introduction to Software Engineering
3 Credits
An introductory course in software engineering, emphasizing the organizational aspects of software development and software design and implementation by individuals and small teams within a process/product framework. Topics include the software lifecycle, software design, user interface issues, specification and implementation of components, assessing design quality, design reviews and code inspections, software testing, basic support tools, technical communications and system documentation, team-based development. A term-long, team-based project done in a studio format is used to reinforce concepts presented in class.