Technology and Science Division - Available Courses

The courses listed below are expected to be offered at least every two years and a re-evaluation of the entire course curriculum will be carried out every two years in order to maintain an updated list of course offerings.

Computer Science and Mathematics Courses

Computer Science

Computer Science 100: Word Processing

In this non-credit course students acquire accuracy and speed on using the computer - keyboard by learning the “blind typing method”. Students also develop their overall computer literacy by gaining exposure to the Windows operating system, including basic training in word processing (Word).

Computer Science 101: Introduction to Computing

The course aims at making the student an effective computer user within the contemporary networked environment of both the office and the Internet. Students learn the usage of modern programs suitable for composition, calculation and presentation, as well as the facilities available for communicating and researching through the Internet. The fundamentals of how the computer and a network of computers work are discussed in order to provide a basic understanding of the modern computing environment. May be taken as Computer Science GER.

Computer Science 105: Introduction to Programming I – Structured Programming

This is an introduction to computing and computer programming using the Java or C language. Students are introduced to the basic elements of computing hardware, information technology and computer programming. Programming is explained, demonstrated and practiced using the Java or C programing language. Ultimately the course aims to advance beyond basic computing skills towards software engineering, instructing students to develop autonomy as sophisticated computer users and programmers. May be taken as Computer Science GER.

Computer Science 106: Introduction to Programming II – Object oriented programming

The course provides a systematic coverage of Object Oriented Modelling and Applications. Topics include Object Models, Object Class Design, Inheritance and Polymorphism, Software Reuse with Classes, Application Modelling, Simulation with Object Classes, and Business Process Modelling with Objects. Object-oriented programming (OOP) is a revolutionary concept that changed the rules in computer program development. OOP is organized around “objects” rather than “actions”, data rather than logic. Historically, a program has been viewed as a logical procedure that takes input data, processes it, and produces output data. The programming challenge was seen as how to write the logic, not how to define the data. Object-oriented programming takes the view that, “what we really care about:”, are the objects we want to manipulate rather than the logic required to manipulate them.

The course expands on the material covered in CS105 with the following aims:
• Further cultivation of algorithmic thinking and refinement of existing procedural programming skills
• Familiarization with the Object Oriented programming methodology
• Exposure to Java classes for building graphical interfaces and other extensions
May be taken as Computer Science GER. Prereq: Computer Science 105

Computer Science 107: Digital Media Toolkit

This course is an introduction to digital multimedia. All media components (digital images/graphics, text, animation, sound and digital video) are introduced and their parameters defined and studied. Software multimedia development tools necessary for the creation or capture of digital media are presented and students acquire hands-on experience with a package for each media category. Hardware essential for the capture/creation of the media is also presented. Multimedia project design parameters are examined and applied to a student capstone project. The main software used in this course will be Adobe Bridge, Adobe Photoshop, Adobe Premier Pro, Adobe Camera Raw and/ or Lightroom. Other software may be used, which will be announced at the beginning of the course. May be taken as Computer Science GER.

Computer Science 130: Introduction to electronics and robotics programming

The primary difference between robots and other types of computing devices is their ability to have a physical effect on their environment, rather than to simply gather, process and communicate data. This is particularly apparent in the case of autonomous and semi-autonomous mobile robots: they face the challenge of acquiring data from their surroundings, selecting their own navigation waypoints and dynamically altering their course of action to account for obstacles, power supply restrictions and unexpected events. In this introductory experiential learning course, students will work in teams and be challenged to build both the hardware chassis and software algorithms for such robots, using the Lego Mindstorms robotics kit and additional resources. The course will commence with simple sensor data acquisition, proceed with the use of actuators, basic navigation, obstacle avoidance, sensor data fusion and conclude with several robotic team challenges. Prereq: Basic computing, numerical and analytical skills. Previous exposure to programming code considered an advantage but not necessary.

Computer Science 151: Quantitative Computing

The course aims at deepening student quantitative skills by interrelating mathematical modeling and spreadsheet implementation. Students are presented real-world problems encountered in the modern enterprise, with emphasis on spreadsheet computing and are taught both the mathematical background and the necessary structures for tackling the problem with spreadsheets. Emphasis is placed on mutual translation of mathematical model and spreadsheet implementation. Focus is on Business Planning and topics are drawn from Microeconomics, Finance, Marketing, Managerial and Financial Accounting. Mathematical topics covered include: Real numbers and their computer implementation, polynomial, exponential and logarithmic functions, matrices, linear programming and optimization, recursive models, discrete approximation of the derivative and integral. May be taken as Computer Science GER. Prereq: Computer Science 101 or 105, Math 101

Computer Science 201: Business Computing

The course aims at presenting Business majors with the basic computing structures needed to support a company’s management. Students will be exposed to data tables from a variety of business activities as well as the database techniques necessary to model and effectively process these data for the purposes of company assessment and planning. Examples of applications residing in the WWW will be presented, analyzed and subsequently implemented by students with the database medium used in the course. Prereq: Computer Science 151

Computer Science 205: Business Data Management

The purpose of COMP SCI 205 is to introduce the idea of business data management, data modeling, and processing methodologies with the use of standalone design tools and personal databases. It aims at fostering proper data design through the relational methodology and developing all necessary data processing and presentation skills. The aims of this course are to:
• Define the role of Systems Analyst and Database designer.
• Explain System Analysis and interpersonal communication skills that the System Analyst must have
• Explain Project Management and discuss tools that the system analyst must have
• Explain the Methodologies that are used for Systems Analysis and Database Design
• Explain the various tools that certain methodologies use
Provide students the opportunity to work on the most popular database (Oracle), in a project in order to implement the taught methodologies. Prereq: Computer Science 105

Computer Science 206: Web Development

COMP SCI 206 is an introductory course for beginning web designers. We will explore some essential concepts related to the creation of effective web sites. In the last portion of the course we will concentrate on client-side scripting using the programming language JavaScript. This course aims at introducing students the basic web design guidelines, Fundamentals of Hyper Text Markup Language (HTML), and how to use a Simple HTML Editor as well as Web Authoring Tools. Also, one of the main goals of the course will be to understand what scripting languages are and to be able to develop scripts. Prereq. Computer Science 101 or 105

Computer Science 207: Multimedia II

This course is the continuation of CS107. Advanced editing techniques of digital images and digital video will be presented, studied and practiced. Basic animation techniques (using Macromedia Flash) will be presented, studied and practiced. Students will acquire further skills on capture hardware (Photo, Video, Audio). Individual student capstone projects on Video and animation will be assigned at the end of the course. Prereq: Computer Science 107 or permission of instructor

Computer Science 209: 3-D Digital Design I

The focus of this course is the introduction to the 3D workspace, creation tools, and the basics of 3D design. Including modeling 3D geometry, creating material textures and lighting, and rendering output to animation and still image formats. 3D animation techniques will also be presented, studied and practiced. The concepts and interrelationships of developing a story and character from premise to production will be presented, studied and implemented by students on a final capstone project. Students will acquire hands-on experience using 3ds max and will build on their 2D skills with the use of Photoshop as an aid in the creation of texture maps. Prereq: Computer Science 107

Computer Science 215: Data Structures

The purpose of CS215 is to introduce students to the main concepts and implementation principles of object-oriented programming and data structures, using Java as the programming language. This course builds on the knowledge and skills acquired in CS105 – Introduction to Programming I. The course is split in two parts; the first part deals with object-oriented programming using Java, re-enforcing the fundamental concepts learned in CS105. The second part of the course introduces data structures. The data structures examined include arrays, lists, queues, stacks, trees, heaps, hash tables and graphs. Searching, sorting, inserting, deleting and other simple operations on these structures will also be discussed.
Prereq: Computer Science 106

Computer Science 219: Video Game Design

This course introduces the critical study of computer video games and the professional practice of game design. Through readings, discussions, research, and practical “hands-on” projects, students will better understand the current market for games and simulations and develop the fundamental skills necessary to enter the international computer games industry. Although the commercial video game pipeline will be discussed, the actual production framework for the class will mirror a ‘Indie” game team “prototype game level” development. Students will be expected to fill multiple roles in the production process, and gain hands-on experience in the collaborative processes of game design, project management, scripting, content creation pipeline, in game animation, and play-testing. Prereq: Computer Science 107; CS105 recommended or permission by instructor

Computer Science 222: Cisco Networking Fundamentals and Router Configuration

This course offers an introduction to computer systems and networking fundamentals based on the OSI network model and industry standards. The first part teaches the fundamentals of network design and the installation of cabling. Topics covered are network topologies, IP addressing, including subnet masks, networking components, and basic network design. In the second part of the course, students begin simple router configuration exercises and are introduced to LAN switching. Topics covered are routing theory and router technologies, router configuration, routed and routing protocols.
Prereq. Computer Science 101 or 105 or permission by instructor

Computer Science 230: Introductory Systems Programming

The course continues from CS105, Structured Programming, aiming to making students familiar with a variety of fundamental software engineering challenges which can be solved by developing the appropriate software algorithms. The course furthers algorithmic skills with increased emphasis on systems programming. More elaborate data structures are manipulated and the role of libraries accessing Operating System resources (Disk, I/O) is examined. In this manner the course serves as a bridge between the Programming Fundamentals and the Computing Systems programme threads. The course employs a high-level language (C++) and investigates structured programming as follow-up to the introductory course in programming. More elaborate structures are learned and employed, in order to solve a wide range of tasks. Intricacies of the C/C++ languages are investigated and related to computer architecture (pointers, variable addresses, memory allocation). The course, in addition to furthering algorithmic thinking skills, also serves as the introductory course for the Computing Systems programme thread, as the relationship of the high level language with the underlying computer system is investigated and applied to system programming tasks involving I/O with a variety of external devices (user interaction, storage, microcontrollers). Prereq. Computer Science 101 or 105 or permission by instructor

Computer Science 235: Artificial Intelligence

This introduction to the subject of Artificial Intelligence (AI) will have as its central subject the question “Can machines think?” The course considers the history of “thinking machines” and the current state of the art. Typical cognitive tasks performed by machines involve visual perception and recognition, understanding language and translation, diagnosing a patient, and playing games such as chess. The course asks at what point we may say that machines are intelligent (Turing Test); what is computation, what is computable, and what is decidable (Church-Turing Thesis); whether thought is simply a kind of computation and the human mind a kind of computer (Classical symbol-manipulating AI vs. connectionism/neural networks); whether there are aspects of human intelligence that cannot be transformed into algorithms; and the relation between AI and the building of robots and other “autonomous agents.” Prereq: Computer Science 101 or 105, Philosophy 101

Computer Science 250: E-commerce

This course provides students with a broad understanding of the electronic commerce domain. It introduces aspects of ecommerce, and students gain insight into technical, business, legal and policy issues. On completion of the course business students will be able to understand what e-commerce is and how to exploit an e-commerce strategy in an organization. Students will be ready to comprehend the e-commerce domain and apply it technically. Prereq: Computer Science 101 or 105 Computer Science 300: Mobile Application Programming This course focuses on the fundamentals of mobile strategy and development, application architecture and design. Students will have the opportunity to learn the benefits and challenges of mobile application planning, design, development and strategy through real world examples and actual project work. Through readings, discussions, research, and practical “handson” projects, students will better understand the current market for mobile applications and develop the fundamental skills necessary to enter the mobile application industry. This course aims to teach how to build cross-platform mobile solutions to solve complex problems using iOS and Android phones and tablets. The course will teach students how to develop software for iOS and Android mobile devices through real world examples and strategies. Students will be guided through a complete mobile development lifecycle during the semester, and be given the opportunity to develop a series of applications.
Prereq: Computer Science 106 or permission by instructor

Computer Science 304: Introduction to Mobile Device Programming

This course focuses on learning to program small size applications (apps) for Android, the most common open source operating system for smartphone and tablet devices. Students will be introduced to the Android software development kit and learn to write apps that combine sensor readings with user input, deposit and retrieve data from the cloud and publish their creations on the Android app ecosystem. There will be a final app creation competition which will be judged on utility, originality, versatility and coding elegance. Programming experience is recommended for all participants.
Prereq: Computer Science 105

Computer Science 305: Programming in C++ and Matlab

This course builds on the algorithmic skills developed by students, and focuses into materializing this knowledge into developing computer programs to tackle real world problems using the programming language C++. Topics include program structure, functions, arrays, pointers. The course also provides an overview of the top-ranked Mathematics software Matlab. A final integrated project addresses the issues involved into combining C++ and Matlab and helps students appreciate problem solving in the real world environment.

Computer Science 306: Advanced Web Development

This course builds upon the skills and knowledge about creating and publishing Web pages and sites taught in CS 206. It also introduces students to advanced web development areas, required for students interested in pursuing a career in web site design. This course aims mainly on client-side scripting using the programming language JavaScript. The objective will be to understand what scripting languages are and to be able to develop scripts. The course will also offer an introduction to jQuery library, Asynchronous JavaScript and XML (AJAX), basically showing the benefits of their use and applying it to certain programming tasks. In the last portion of the course, students will gain a practical knowledge about the currently most used web content management environments. By combining lectures with seminar discussions and extensive hands-on experiences the course will introduce the students both to the applied aspects of content management technologies but also to the theoretical issues involved. Prereq: Computer Science 105 & 206

Computer Science 309: 3-D Digital Design II

This Course will build on the existing cs209 course and serve as a more in-depth study of 3d digital design in practice and theory. This course will continue development from cs209 topics, and the following intermediate to advanced topics which are beyond the scope of CS209, will be presented, studied and practiced. This includes, Nurbs and Patch surface modeling, advanced Material, Mapping and Lighting techniques and more advanced Rendering methods. Advanced character animation tools will also be covered including Character studio and Max’s character animation tools. It will also cover Dynamic simulations using Reactor and introduces max scripting. Prereq: Computer Science 209

Computer Science 310: Hardware & Computer Architecture

This course addresses the structure and function of modern digital computing devices, ranging from the compilation process down to the hardware level. Despite the pace of change and variability in the fields of informatics, electronics and computer engineering, certain fundamental digital design concepts apply consistently throughout. CS310 students will both gain the relevant theoretical understanding and have a chance to apply it in practice designing, simulating, troubleshooting and optimizing their own combinational and sequential logic circuits. The course concludes with a discussion on system level organization and architecture of modern computing devices. This course builds on knowledge and skills acquired in CS105 – Introduction to Programming I. Upon successful completion of the course students be able to:
• Understand and be able to explain the significance and function of fundamental components within a typical modern
computing device (processor, memory, I/O, operating system), their interconnections with each other and the outside world.
• Comprehend and follow the data flow through the internal structure of a digital microprocessor.
• Understand the importance and function of logic gates as primary building components in digital design.
• Analyse combinational digital circuits and optimize them using Karnaugh maps.
• Be able to design, simulate, troubleshoot and optimize their combinational and sequential digital logic circuits.
• Recognize and understand basic Assembly language and Machine Code.
Prereq: Computer Science 105

Computer Science 312: Database Management Systems

The purpose of the course is to offer a systematic coverage of modern Database Computing theory and technology. Topics include: Relational Algebra, Data Modelling, Database Design, Client-Server Database Management Systems, Interface Design, trends in Database Systems, combination of Object Oriented Modelling and Relational Databases. Prereq: Computer Science 205

Computer Science 321: Operating Systems

This course deepens understanding of how contemporary computing systems are structured and, in particular, supported by an Operating System. It is a culmination course within the Computing Systems programme thread. Operating Systems are the brain of any computing system. They handle the body/DNA (hardware) as well as behaviour (usage of system by user). Following rapid to revolutionary technological developments the field of Operating Systems also undergoes tremendous changes, which constantly evolve the conception of an OS and of course the technological challenges involved in its implementation. The course aims at outlining the role of an OS in a diachronic way while comparing and contrasting design choices spanning the evolution of the field. It aims at defining fundamental needs that a von Neumann machine has from the Operating System in order to be functional, optimal and attractive to the user. The course explains Operating Systems architecture and examines trade-offs involved in different, evolving systems. It further examines diachronic as well as contemporary issues involved in Operating System design by comparing and contrasting relevant design and algorithmic choices. The course involves lab work: Communication with the OS at a low level via a Linux shell and programming tasks addressing aspects of Operating System design and implementation. Prereq: Computer Science 105

Computer Science 322: Network Operating Systems and Administration

This course aims to provide the student with the knowledge of how computer networks are designed, engineered and operated. This includes knowledge of the fundamental algorithms used in the management of both resources and traffic and how these algorithms may interact with application programs. Instruction includes, but is not limited to network terminology and protocols, network standards, LANs, WANs, OSI models, cabling, cabling tools, routers, router programming, star topology, and IP addressing. The student will study and design networks, using Ethernet, TCP/IP Addressing Protocol, and dynamic routing. Particular emphasis is given to the use of decision-making and problem-solving techniques in applying science, mathematics, communication, and social studies concepts to solve networking problems. Prereq: Computer Science 215

Computer Science 323: Java Network Programming

The aims of the course are to provide students with the basic knowledge and understanding of computer networks with Java essentials - how Java language associates with computer networking topics. This ranges from the essential elements of the Java programming language to networking fundamentals and distributed systems’ principles. It will also provide an introduction to the theory, design and implementation of network software. Prereq: Computer Science 105

Computer Science 325: Distributed Applications

The purpose of the course is to examine in detail the software and hardware technologies prevalent in the Internet and provide an introduction to the principles and methods for creating distributed on-line client/server applications that are the basis for electronic commerce as it is conducted over the Internet. Methods and tools such as HTML, the Common Gateway Interface, PHP, database connectivity tools and MySQL are presented. Coverage is also given to emerging standards for information exchange, encryption and validation. Prereq: Computer Science 312

Computer Science 330: Introduction to Mobile Robotics

The primary difference between robots and other types of computing devices is their ability to physically interact with their environment, rather than to simply gather, process, store and communicate data. This is particularly apparent in the case of autonomous and semi autonomous mobile robots: they face the challenge of acquiring data from their surroundings, selecting their own navigation waypoints and dynamically altering their course of action to account for obstacles, power supply restrictions and unexpected events. In this course theoretical instruction is combined with experiential learning and challenge driven software development. Students participating in this course are challenged individually and in teams to build the hardware chassis and software control algorithms for mobile robots. The course assumes a basic background in structured programming and proceeds with an introduction to both visual and text source code robotic programming (C, RobotC); basic electronics circuit design and troubleshooting; microcontroller programming; sensor data acquisition algorithms; actuator control; robotic navigation and obstacle avoidance; basic sensor data fusion; and concludes with a final robotic design challenge which integrates all aforementioned knowledge and skills. This course builds on structured programming skills developed in CS105: Introduction to Programming. Prereq: CS 105: Introduction to Programming or equivalent

Computer Science 333: Cisco Advanced LAN and WAN Design

In the first part of this course, students learn to configure routers and switches and use network management techniques to find and fix network problems. Topics covered include advanced router configuration, LAN switching theory, and VLANs. There is significant emphasis on project-based learning. In the second part of the course, concepts and methods involved in wide area networking (WAN) design and implementation are introduced. Topics include WAN theory and design, WAN technology, PPP, Frame Relay, and ISDN. Numerous topics and issues are covered through the use of threaded case studies. By the end of this course, students complete advanced projects in network design and management. Successful completion of this course prepares students for the Cisco Certified Networking Associate test (CCNA). Prereq: Computer Science 222

Computer Science 412: Object Oriented Programming

The course revisits Object Oriented application development methodology at the Senior level, examining its effectiveness in the life cycle of professional applications and software reuse through the adoption of Object Oriented Design Patterns. It presupposes the knowledge earned through the introductory line of the Programming Fundamentals programme thread and follows level 5 modules relating to Data Modelling (CS 312) and Systems Design (CS450) while specialising them within the context of Web Development. Currently CSC 325 (Distributed Systems) is a necessary prerequisite concerning web deployment technologies. The module mostly emphasizes the employment of OO concepts to Web Development yet it is of general enough nature for a level 6 module as the design patterns examined are applicable to a wide range of technologies and application domains. Prereq: Computer Science C215, CS 312, CS325 or permission by the instructor.

Computer Science 421: Computer Systems Security

This course aims at providing both a theoretical and practical background concerning issues of security in modern, networked systems. Cryptography is covered first (essentially discussions of standard algorithms). The remainder of the module focuses on techniques that can be used to safeguard real systems. Topics that are covered include Key management and credentials, Steganography and watermarking, Network security (VPNs, Firewalls, Intrusion Detection) and System Security Policies. Risk assessment and threat models as well as social engineering will be covered. Prereq: Computer Science 321, CS322 or permission by the Instructor.

Computer Science 422: Advanced DBMS

This course focuses on creating and manipulating databases using SQL and PL/SQL programming languages for Oracle databases. Advanced query capabilities and procedural constructs are described using SQL and PL/SQL. The theoretical foundation for using these capabilities is presented. Performance issues are discussed including indexing, key definitions, and data constraints. The role of application development in ease of use, query optimization, and system performance is discussed. The module aims to teach students to use advanced SQL statements and PL/SQL programming features such as IF statements, Loops, Stored Functions/Procedures, Tables, Cursors, Stored Packages, Stored Triggers and creating and maintaining various databases. SmartDraw and Designer of Oracle is used for ERD’s. APEX, SQL Plus and SQL Navigator, SQL Server Management Studio are used as user interface of the databases. Prereq: Computer Science 312

CS 443 – CS 444: Capstone Project

This is a set of linked courses to be taken in sequence over the course of the senior year. The course aims to give students the opportunity to work in a guided but independent fashion to explore a substantial problem in depth, making practical use of principles, techniques and methodologies acquired elsewhere in the program of studies. It also aims to give experience of carrying out a large piece of individual work and in producing a final project report. It has two distinct phases: the preparatory phase focusing on literature review, assessment of Technologies and Project Specification and the implementation phase focusing on project design, development, documentation and presentation.

Computer Science 450: System Analysis and Design

The module introduces the waterfall model for system/application development and the formal tools employed in its various stages. The objectives of the module are to:
• Provide formal tools for functional and non-functional requirements collection and documentation (ERD, UML, DFD,
• Define the role of the systems analyst and designer.
• Build project management and interpersonal communication skills that the system analyst must have.
• Explain the methodologies that are used for systems analysis and design.
• Follow through the waterfall model (and discuss deviations therefrom), presenting the relevant tools at each stage.
• Provide the problem solving background for resolving trade-offs inherent in design.
• Present principles of quality and correctness testing.
• Provide students the opportunity to work as a team of analysts and designers in a project to implement the taught methodologies.
Students develop technical, analytical and business skills that support the pursuit of professional careers and advanced computer science studies. Prereq: Computer Science 201 or 205

Computer Science 499: Advanced Programming Tools

This course is a complete introduction to .NET and object-oriented programming. This course will help students build a solid foundation in .NET, and show how to apply these skills by using numerous examples. Learning .NET introduces fundamentals like Visual Studio .NET, a tool set for building Windows and Web applications. Students learn about the syntax and structure of the Visual Basic .NET language, including operators, classes and interfaces, structures, arrays, threads, console, passing parameters, sessions, cookies and manipulating all type of strings. Students will also be asked to develop various kinds of applications--including those that work with databases (ADO)--and web services (ASPX) and making use of XML. Finally the course focuses on how to build installable applications using the Setup platform of .NET to create .MSI self installed applications. Prereq: Computer Science 412 or Permission of instructor


Mathematics 100: Mathematics for Decision-Making

An introduction to selected areas of mathematics in familiar settings with the objective of developing students’ conceptual and problem solving skills. The course includes a study of mathematical concepts selected from graph theory, planning and scheduling techniques, statistics, probability, game theory, growth patterns, coding information, voting systems and apportionment. May be taken as a Math and Statistics GER.

Mathematics 101: Elements of Finite Mathematics

This course places an emphasis on the role of functions (coordinate systems, properties, graphs and applications of polynomial, rational, logarithmic and exponential functions), solving systems of linear equations, matrix operations, mathematics of finance, and introductory counting techniques. May be taken as a Math and Statistics GER.

Mathematics 115: Calculus

This course covers: rate of change and introduction of the derivative for functions of one variable; applications of the derivative to graphing one-variable functions and to optimization problems; introduction of functions of several variables and partial derivatives; problems of unconstrained and constrained multivariable optimization; applications of differential equations; integration of functions of one variable and applications, and advanced methods of optimization. Emphasis is placed on applications and problem solving through conventional and computer methods. May be taken as a Math and Statistics GER. Prereq: Math 101

Mathematics 120: Calculus I

This course provides a solid foundation in Calculus concepts, tools and techniques for the student entering Science and Engineering fields.The course covers definition, calculation, and major uses of the derivative, as well as an introduction to integration. Topics include limits; the derivative as a limit; rules for differentiation; and formulas for the derivatives of algebraic, trigonometric, and exponential/logarithmic functions. Also discusses applications of derivatives to motion, density, optimization, linear approximations, and related rates. Topics on integration include the definition of the integral as a limit of sums, anti-differentiation, the fundamental theorem of calculus, and integration by the U-substitution and Integration by parts technique.The course emphasizes conceptualization, modelling, and skills. There is a concentration on multiple ways of viewing functions, on a variety of problems where more than one approach is possible, and on student activity and discussion.

Mathematics 220: Discrete Mathematics for Computer Science

Discrete mathematics can be defined as the study of structures consisting of a sequence of individual, separated steps. As such, they contrast with calculus, the latter describing processes which vary continuously or smoothly. If one can claim that the ideas of calculus were fundamental to the industrial revolution, then one can safely assume that the backbone of the science and technology of the computer age is discrete mathematics.

The purpose of this course is for the students to understand and use the aforementioned discrete backbones of computer science. In particular, this class is meant to introduce logic, proofs, sets, relations, functions, counting, and probability, with an emphasis on applications in computer science. Further, this course will cover fundamental mathematical foundations required for conceiving, proving, and analysing algorithms. Prereq: MATH 101, Computer Science 105


Statistics 205: Statistics I

This course introduces students to basic statistical concepts and techniques. Each technique is illustrated by examples, which help students to understand not only how the statistical techniques are used, but also why decision-makers need to use them. Topics covered include Frequency Distributions, Statistical Descriptions, Introduction to Probability Theory, Discrete Probability Distributions, Continuous Probability Distributions, Sampling and Sampling Distributions. Emphasis is given to problem solving with the use of statistical software. May be taken as a Math and Statistics GER. Prereq: Computer Science 101, Math 101

Statistics 305: Statistics II

Continuing from Statistics 205, this course focuses on Interval Estimation, Hypothesis Testing, Statistical Inference about Means and Proportions with Two Populations, Inferences about Population Variances, Analysis of Variance and Experimental Design, Simple Linear Regression and Correlation, Index Numbers, and Non-parametric Methods. Emphasis is given to problem solving with the use of statistical software. Prereq: Stat 205

Natural and Physical Science

Anatomy and Physiology 115: Integrated Human Anatomy and Physiology I

This course is the first part of a two-part Anatomy & Physiology Course. It is designed to provide an understanding of the anatomical structures, function and regulation of integumentary, muscular, skeletal, nervous and endocrine systems. This course aims to provide students with knowledge of normal function of the organ systems and thereby provide the information base for interpreting data relating to health and disease. For those in health fields, this information will serve as the foundation for most of your courses. Co-requisite: Human Anatomy & Physiology 115 Lab

Biology 101: Introduction to Biology

This course introduces the basic principles of modern biology, the framework within which new discoveries are interpreted and the relations among various branches of biological research. Emphasis is given to mammalian - particularly to human - biology, the genetic revolution, the eukaryotic cell, and multicellular systems. Laboratory included. May be taken as a Natural and Physical Science GER.

Biology 112: Principles of Biology

This course is designed to introduce the basic principles of modern biology, the framework within which new discoveries are interpreted, and the relations among various branches of biological research. The goal of this course is to provide firstyear college students with a firm grasp of the major concepts underlying biological processes. Students who are interested in careers in biological sciences, biomedical sciences, and biotechnology should find that the course provides a firm grasp on an understanding of the concepts that will serve them well in their academic track that lies ahead. The materials covered include the structural and functional aspects at the molecular and cellular level of the following: cell structure and function, cell organelles, cellular reproduction, cellular respiration, photosynthetic pathways, Mendelian inheritance, DNA structure, replication, gene structure, and gene function and expression/control.

Chemistry 101: General Chemistry

Designed for non-science majors, this course presents the basic principles of modern Chemistry within the framework of the modern world and the processes involved in technological developments. Information is first presented at the submicroscopic level of electrons, atoms, and molecules to show how subtle events at this level may be propagated upward to affect organisms, societies, and entire ecosystems. Acids, bases, and their equilibria are treated as basic proton/ electron transfer reactions related to organic and inorganic matter. Laboratory included. May be taken as a Natural and Physical Science GER.

Chemistry 115: Chemistry for the Applied Sciences

This course aims to introduce students to the fundamental principles of chemistry and their applications. Much of the language and fundamental skills of a chemist is applicable to other scientific fields. Students develop, deepen, and broaden their understanding of connections between the underlying structure of matter and the nature of energy. The course will cover the atomic and molecular structure, the naming of ionic and molecular compounds, the description of the behavior and reactivity of these compounds, the application of stoichiometric relationships, and the prediction of the behavior of gases. In addition, you will get to explore and review the role of work and heat flow in chemical systems, the quantum theory, the electronic structure of atoms, the attractive forces holding the atoms together and influencing their physical properties, and the VSEPR Theory and molecular geometry.

Ecology 110: Ecological Principles

The goal of the course is to introduce students to general ecology. It focuses on major ecological concepts in order to provide students with a robust framework of the discipline upon which they can build. Each discussion is organized around two or four major concepts to present the student with a manageable and memorable synthesis of the lecture and it is supported by case histories that provide evidence for the concept and introduce students to the research approaches used in the various areas of ecology. Special emphasis to local environmental problems countries face and the approaches they use in solving these problems. Laboratory included. May be taken as a Natural and Physical Science GER.

Nutrition 130: Fundamentals of Human Nutrition

The course explores basic concepts of the science of nutrition. Topics include description and role of nutrients, their dietary sources and their fate into the human body (digestion, absorption etc.); energy balance and weight control; eating disorders; nutrition at different developmental stages (childhood, pregnancy, lactation, old age); nutrition in the development/ prevention of human diseases. Emphasis will be given in the use of scientific methodology to explain how nutrients and other food constituents contribute to proper growth, development and health. (4 credits)

Physics 120: University Physics I, for Science & Engineering

This course is designed to introduce students to the fundamental principles of Mechanics. Topics to be covered include Dynamics, Work, Kinetic and Potential Energy, Systems of Particles, Momentum, Collisions, Rotation, Torque and Angular Momentum, Statics. As far as specific Systems and Force Laws we will look at Fluids, Oscillations, and Gravity. May be taken as a Natural and Physical Science GER.

Offshore Sailing

Sea Sail 100: Sea Sailing Fundamentals

This practical course is for those with little or no experience. The syllabus includes basic seamanship, helmsman ship, and sail trimming and becoming a confident and competent crew member on board a yacht. The course has both theoretical (In-Class) and practical (On-Board) components; with the latter being the largest part of the course. (1 credit)

Sea Sail 101: Introduction to Sea Sailing

The aim of this course is to provide the basic yachting skills so that successful students will be safety conscious, have a basic knowledge of sailing and be capable of taking a yacht out without an Instructor on board in light to medium winds in protected waters. The course has both theoretical (In-Class) and practical (On-Board) components; with the latter being the largest part of the course. (3 credits)



17 Sevenidi St.
55535, Pylaia
Thessaloniki, Greece
Tel. +30 2310 398398
P.O.Box 21021