The data center is increasingly virtual. In this class, students will explore “cloud”-based services, ranging from “Software as a Service”—using internet-based software suites such as Google Docs or Salesforce.com, through platform-based systems (PaaS) such as Microsoft’s Azure environment that make it easy to focus on developing new apps or services, to complete cloud-based infrastructure (IaaS) such as Amazon’s Web Services.
The class also explores how use of the cloud also changes how we “do” IT. Cloud-based services are especially well-suited to Agile development and Lean Startup thinking. This leads to new ideas such as DevOps and “continuous deployment.” In addition, use of SaaS security systems changes how we integrate systems, how we handle identity and access management (IAM), opening up new threats—and new opportunities—to keep data secure. Finally, we will look at how the cloud enables us to work with more data than ever before, “Big Data”—NoSQL databases and scalable infrastructure (e.g., Hadoop).
Students will learn how to evaluate the various cloud-based services and how to communicate that evaluation to decision-makers in the organization.
There will also be a hands-on practicum using Amazon Web Services (AWS) and exploring the most common features of Infrastructure as a Service (IaaS), and how IaaS, overall, differs from older paradigms of systems management and program architecture.
• Students must know how to install software and to deploy a website from the command line.
• Students must either understand web programming in PHP (the language in which the sample code is written), or be comfortable translating sample code into another environment. Students may use use either Linux or Windows for programming assignments.
• Exceptions to the above requirements are allowed at the discretion of the instructor.
At the end of the course, students will be able to:
• Describe the major categories of cloud-based services and the major trends in cloud computing and be able to explain the impact of cloud computing on the role of corporate IT;
• Describe new roles and approaches to software development tuned to the cloud, starting with DevOps and the idea of continuous development;
• Assess specific services, evaluate whether or not they are appropriate to specific challenges, and plan their implementation, where relevant;
• Describe how the Cloud has enabled Enterprises to rethink how data are gathered, analyzed, and processed, using NoSQL databases, and scalable infrastructure such as Hadoop;
• Evaluate security challenges in the Cloud (and affordances), and understand current best practices;
• Successfully carry out backup, system imaging, disaster recovery;
• Successfully set up, monitor, and maintain a reasonably complex web-based service on Amazon Web Services (the course practicum).