Upon successful completion of this course, students are expected to be able to compare the operation, implementation, and performance of Cloud Computing systems, and the relative merits and suitability of each for complex data-intensive applications; explain and characterize different Cloud Computing models, namely, infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS); identify security implications in Cloud Computing and analyze the trade-offs inherent in Cloud Computing; identify appropriate design choices when solving real-world Cloud Computing problems and make recommendations about Cloud Computing solutions for an enterprise; apply different distributed application development methods and techniques, including the use of Cloud administration and application development tools and API; and work in teams to contribute, evaluate, and provide feedback on case studies on different Cloud Computing solutions.
This course is designed to introduce the principles of Distributed Systems. The most important principles covered in class are communication, processes, naming, synchronization, consistency and replication, fault tolerance, and security. Cloud Computing systems today, whether open-source or used inside companies, are built using a common set of core techniques, algorithms, and design philosophies—all centered on distributed systems. Students learn about such fundamental distributed computing “concepts” for Cloud Computing. This course covers Internet technology and network-based computing systems, including Clouds, clusters, datacenters, grids/P2P, and the ‘Internet of Things’ (IoT).
Published at :