Page 188 - University Bulletin
P. 188
CS340 Introduction to Database Systems
Credits: 3(3,1,0) Prerequisites: CS210
This course provides a solid background in database systems and modeling. Following an overview
of database systems (definitions, evolution, architecture and applications), data models are
examined. Topics discussed include entity-relationship and relational data models; database
query languages and standards; and database design: theory and methodology.
CS381 Systems Programming
Credits: 3(2,0,2) Prerequisites: CS330
The course covers the following topics: systems programming at hardware or OS levels; software
for systems programming (e.g., C++ builder); Shell/ Windows Interface programming; design and
implementation of applications/ system's functions; and debugging tools.
CS387 Mobile Applications Development
Credits: 3(3,0,1) Prerequisites: SE371
This course examines the principles of mobile application design and development. Students will
learn application development on the Android platform. Topics will include characteristics of
Mobile Applications; Designing user interfaces; Displaying multimedia contents such as pictures,
menus, audio and video; data handling; network techniques and location-based services. Students
are expected to work on a project that produces a professional-quality mobile application.
Projects will be deployed in real-world applications.
CS415 Internet of Things (IoT)
Credits: 3(3,0,1) Prerequisites: Senior Level and CS331
The course on Internet-of-Things (IoT) aims at preparing students to the IoT market in Saudi
Arabia, given the increasing demand for engineers on this hot emerging area. The course presents
the latest technologies, architecture, communication protocols and trends that are contributing
to the evolution of the Internet-of-Things (IoT). It will provide an overview of IoT applications and
its impact on the world economy. The course will also cover the technologies and cyber-physical
platforms that transform the physical world into digital data thus allowing to connect physical
things to the Internet. We will also cover networking and communication protocols (LoRa,
SigFox, NarrowBand IoT, 5G, IEEE 802.15.4) that represent the major actors in the IoT ecosystem.
IoT streaming applications used in IoT will be reviewed such as Apache Kafka and MQTT protocol.
A major part of the course will deal with developing real-world applications prototypes for the
Internet-of-Things from the sensor design to the end-user applications to solve existing problems
in the society. At the end of this course, the student will be ready to enter the IoT market or making
his own startup.
CS435 Distributed Systems
Credits: 3(3,0,1) Prerequisites: CS330 and CS331
This course introduces students to distributed and parallel systems. It covers process distribution
and communication, data distribution, scheduling, concurrency, resource sharing,
synchronization, naming, abstraction and modularity, failure handling, distributed programming
models, distributed file systems, virtualization, and the use of instrumentation, monitoring and
debugging tools in problem solving. Students will learn the design and implementation of today’s
popular distributed system paradigms, such as Google File System and MapReduce.
176 PSU UNDERGRADUATE BULLETIN

