Course Information (Spring 2019)¶
|Name||Office Hours||GitHub Id|
|Tejas Parikhfirstname.lastname@example.org||By Appointment Only||tejasparikh|
|Renu Hadkeemail@example.com||renuHadke||Office & Grading Hours|
Steps to add Renu’s caledar to your calendar.
|CRN||Section #||Building & Room #||Day||Time|
|38130||01||Richards Hall 275||Monday||06:00pm - 09:30pm|
Lecture slides will be posted on the course website before the lecture. To view slides, students must login to Office 365 with their Microsoft Student Advantage account. Office 365 (Microsoft Student Advantage) access details can be found here.
Microservices, containers and container orchestration has fundamentally changed how distributed systems are developed. This course covers a collection of repeatable, generic software design patterns such as Sidecar pattern, Ambassador pattern, Adapter pattern, Event Driven, Stream & Batch Processing, Containers & Container Orchestration, Replication, Partitioning, Transactions, Consistency and Consensus to help make the development of reliable distributed systems more approachable and efficient. You will learn the common language and framework these patterns provide. We will try to find useful ways of thinking about distributed system – not just how they work, but also why they work, and what questions we need to ask. After the course, you will be in great position to decide which kind of technology is appropriate of which purpose and understand how these patterns can be combined to form the foundation of a good application architecture. The lectures and assignments aim to help you build skills to develop applications for hybrid cloud, run existing monolithic applications side by side with microservices without complete re-write.
Textbooks & Required Readings¶
Required Tools & Software¶
Students will be assigned 5-7 assignment this semester. Assignment due date will be posted with each assignment. Each assignment will build up on work done in previous assignments so it is important to complete assignment on time.
To learn the material of the course you are expected to attend class and actively participate in group exercises and help your peers by answering their questions on group discussion. Course grades will be based on participation, assignments, exams, and presentation.
Midterm and Final exam must be taken at the time and location determined by the schedule and announced in class. Make up exams will be permitted only for exceptional circumstances in accordance with NEU policy.
Method of Evaluation¶
Grading will be based on absolute grading system. In this grading system, a range of point value is assigned to a letter grade. The grading is absolute, irrespective of the grade of other students in the class. I do not round scores to the closest percentage.
|Presentation / Demo||10%|
For this course we will use following grading scheme to determine your final letter grade.
Students will be automatically enrolled to Piazza at the begining of the semester.
We will use Piazza for class discussion. The system is highly catered for getting you help fast and efficiently from classmates, the TA, and myself. Rather than emailing questions to me, I encourage you to post your questions on Piazza.
Both email and Piazza provide asynchronous forms of communication so don’t expect instant reply. I will do my best to reply to you in 24 hours. Piazza posts about assignments posted night before the assignment is due may not get reply until it is too late.
Piazza Class & Email Settings¶
Announcements will posted on Piazza (and sent out via email) and you will be expected to have read it. For this to function well, it is critical you become aware of new postings to Piazza ASAP. To make sure you get notified in real time, update your class & email setting.
- If you decide to post a question, be sure to search first incase if it has already have been asked and answered. If you do post a new question, provide as much detail as possible, without sharing code from your solution.
- You are encouraged to read others questions and answers for your own benefit.
Post your question about assignments, course material and exams on Piazza. For matters that concern your individual academic performance, please contact me directly via email or in person after lecture.
A commitment to the principles of academic integrity is essential to the mission of Northeastern University. The promotion of independent and original scholarship ensures that students derive the most from their educational experience and their pursuit of knowledge. Academic dishonesty violates the most fundamental values of an intellectual community and undermines the achievements of the entire University.
Some specific guidelines for this course:
- Midterm and Final exams are individual effort and collaboration of any kind would be considered violation.
- For group activities, such as assignments and in class discussion, you are strongly encouraged to work with the other members of your group. You are also encouraged to discuss with others outside your group provided that the discussion does not result in an exchange of solutions or partial solutions. You can talk about the course material, the problem, general approaches to the problem, but not specific details of the solution. You cannot share your code in any form with other teams.
- All code delivered as part of assignments must be “original” i.e. authored by members of your team. You cannot use code found on sites such as stackoverflow.com. You are however permitted to use code snippets that may be used during lectures or 3rd party open source libraries. If you use 3rd party library, it must be listed in the README for your assignment.
You can review NEU’s Academic Integrity policy here.