Laboratory in software engineering

Bachelor's degree

In Maynard (USA)

Price on request

Description

  • Type

    Bachelor's degree

  • Location

    Maynard (USA)

  • Start date

    Different dates available

This course introduces concepts and techniques relevant to the production of large software systems. Students are taught a programming method based on the recognition and description of useful abstractions. Topics include modularity, specification, data abstraction, object modeling, design patterns, and testing. Students complete several programming projects of varying size, working individually and in groups.

Facilities

Location

Start date

Maynard (USA)
See map
02139

Start date

Different dates availableEnrolment now open

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Subjects

  • Programming
  • Team Training
  • Engineering
  • Project
  • Materials
  • Design
  • Teaching
  • Teaching Assistant
  • Software Engineering
  • Meetings

Course programme

Lectures: 3 sessions / week, 1 hour / session


Recitations: 1 session / week, 1 hour / session


6.170 meets four days per week. Generally speaking, the first three sessions per week are lectures, and the final session is a recitation.


For the first half of the term, you will have weekly problem sets. The problem statements will be made available on Wednesdays; solutions are due electronically before the final class session of the following week.


Each student will meet personally with his or her teaching assistant for 15 minutes each week to go over the completed problem set. The teaching assistant will have looked briefly at your work in advance, and will make a grading decision after the meeting. The purpose of the meeting itself is to give you a chance to explain your work, to answer questions about it, and to receive feedback. You should not expect to receive written comments in addition. Your teaching assistant will schedule the weekly meeting with you.


There will be a single quiz, focusing primarily on the technical material presented in lecture.


Your responsibilities are to attend lectures, recitations and grading meetings, and to work on the individual problem sets and the final project.


To determine your grade, we will first compute a numerical value, based on your individual work on problem sets, your team work on the final project, and your quiz score. We will then rank all the students in the class, and delineate boundaries that correspond roughly to letter grades. We will then consider each student's work individually to check that the letter grade corresponds to our sense of the student's achievement, and may adjust the grade accordingly. This subjective evaluation is based on several factors, including participation in recitations and final project team meetings, and contributions to the online discussion forum.




All team members in a project team will receive the same project grade. In order to have the best project experience, team up with students who have the same expectations and motivations as you do with respect to project and overall course grades.


Late work will receive no credit. Because the schedule is so tight in 6.170, we cannot let students get behind. Under extraordinary circumstances (such as severe illness), we may accept late work; in such cases, you will need written consent in advance from your teaching assistant. Grades of 'incomplete' will not be given.


Collaboration is encouraged for all assignments. In order to ensure that all students learn from the course, however, we require that the written work handed in during the first half of the term be your own. No materials that you develop jointly during meetings with other students or staff may be included in your submitted work; we therefore recommend that you do not take any materials away from such meetings at all. You may not look at solutions by other students, from this term or previous terms. It is your responsibility to ensure that other students do not copy your work, and it is therefore a violation of course policy to make your course directory readable by others.


You must acknowledge on the written work itself the contributions of other students with whom you discussed it. To encourage you to broaden your collaborative experiences, we permit you to collaborate with other students on at most two problem sets. You may collaborate on problem sets with your team members (but, of course, not more than twice with any particular team member).


For the final project, full collaboration on all aspects is permitted, although every member of the team will be expected to contribute a roughly equal share to the design and implementation.


A liberal collaboration policy increases the risk of cheating. Remember that cheating is unethical, and will be dealt with severely. A single cheating incident can permanently mar your MIT record. Be warned that we use technological means to expose cheating. You should also realize that your teaching assistant will be suspicious if there is a gross discrepancy between the quality of your written work and your ability to explain it during grading meetings.


Don't show me this again


This is one of over 2,200 courses on OCW. Find materials for this course in the pages linked along the left.


MIT OpenCourseWare is a free & open publication of material from thousands of MIT courses, covering the entire MIT curriculum.


No enrollment or registration. Freely browse and use OCW materials at your own pace. There's no signup, and no start or end dates.


Knowledge is your reward. Use OCW to guide your own life-long learning, or to teach others. We don't offer credit or certification for using OCW.


Made for sharing. Download files for later. Send to friends and colleagues. Modify, remix, and reuse (just remember to cite OCW as the source.)


Learn more at Get Started with MIT OpenCourseWare


Laboratory in software engineering

Price on request