Back
Distributed Systems for Information Systems Management
95-702
Units: 12
Description
With the emergence of the Internet as a computing platform, distributed applications are being widely deployed by organizations. Understanding the principles/theory and the technologies underlying distributed computing and systems design is increasingly important. Examples of technologies supporting such deployment include JEE architecture and Web services.
Learning Outcomes
- Describe the non-functional characteristics of distributed applications and differentiate between different types of middleware systems.
- Design, implement, and deploy distributed systems using the prevalent models of web applications, web services, remote objects, and asynchronous messaging.
- Understand the function and interplay of network protocols from ARP to application protocols that enable distributed systems on the Internet.
- Demonstrate the technical ability to code solutions with core networking protocols.
- Program solutions to run on all ranges of devices, including mobile, desktop, and cloud-based servers.
- Understand the Network File System (NFS), the Andrew File System (AFS), and the Hadoop Distributed File System (HDFS)
- Understand the challenge of time in a distributed system, and implement a means of assessing a distributed system's state.
- Understand transactions and implement a two phase commit protocol.
- Describe the difference and similarities between symmetric key and asymmetric key cryptography.
- Describe the reasoning behind each step of several cryptographic protocols including variations on Kerberos and SSL.
- Demonstrate deploying containers to cloud infrastructure
- Understand the problem of distributed consensus and design solutions
Prerequisites Description
Prerequisite: 95-712 Object-oriented programming
Syllabus