General Information Home | Contact Us

Home
General Information
Syllabus
Teams
Testing
Controversies
Digital Library Access

COMS W4156 Advanced Software Engineering

Fall 2011: Prof. Gail Kaiser

Tue/Thu 10:35-11:50am
501 Schermerhorn Hall

Official Bulletin Description

Back to Top

Teaching Staff

bullet Instructor: Professor Gail Kaiser
Office: 607 CEPSR
Office hours: immediately after class
Phone: 212-939-7081
Email: kaiser+4156@cs.columbia.edu (be sure to include the '+4156')
bulletTA:
Office:
Office hours: 
Office phone:
Email address:
bulletTA:
Office:
Office hours: 
Office phone:
Email address: j
bulletTA: Mr. Mayank Talwar
Office: 6LE1 CEPSR
Office hours:  TBA
Office phone: 212-939-7100
Email address: mt2694@columbia.edu
 

Back to Top

Textbooks

bullet REQUIRED

Author: Ian Sommerville
Title: Software Engineering
Publisher: Addison Wesley
Edition: 9
ISBN:
9780137035151
Website with supplementary material.
 

bullet RECOMMENDED

Author: Ron Patton
Title: Software Testing
Publisher: Sams
Edition: 2
ISBN: 9780672327988
 

bullet RECOMMENDED

Author: Joel Spolsky
Title: Joel On Software
Publisher: Apress
ISBN: 9781590593899
 

bullet RECOMMENDED

Author: Joel Spolsky
Title: More Joel On Software
Publisher: Apress
ISBN: 9781430209874
 

Back to Top

Class Attendance and Pop Quizzes

Regular attendance is required.  Short "pop quizzes" will be given at approximately the middle of the class period several times during the semester; the scheduling of these quizzes will not be announced in advance, since everyone is expected to attend every class.  Waivers or makeups for these quizzes will be available only in the event of severe illness, dire emergencies and religious observances. Please present appropriate documentation to the instructor regarding the nature and duration of the illness or emergency as soon as possible thereafter; the instructor should be reminded of upcoming religious observances in advance.

Back to Top

Individual Assignments

A small number of individual homeworks will be assigned during the semester.  Instructions as to any "collaboration" or "help" permitted will be stated on each specific assignment.  These assignments will be graded "pass/fail".  MS students seeking waiver of the 4156 core course must pass all of these assignments, but if approved do not need to do anything else for the course.

Team Assignments

All students are required to form themselves into teams of four (4) members each, organized into two "pairs" of two (2) members each; if there is an odd number of students enrolled in the class, then exactly one (1)  "triplet" of three (3) members is permitted.  There may not be any "onesies"!   If some students drop the course, any remaining pair or team members may be arbitrarily reassigned to other pairs/teams at the discretion of the teaching staff (but are strongly encouraged to re-form pairs/teams on their own and inform the teaching staff as soon as possible of any new arrangements).

Team members should work together throughout their project; pair or individual responsibilities for specific project milestones or portions of project milestones should be organized within the team but may not involve participation of any other people outside the team.  Team members who do not contribute appropriately should be brought to the attention of the teaching staff as soon as possible.  Such team members may receive a significantly lower grade for the relevant project assignment(s) than the rest of that team - possibly "zero", may be reassigned to another team, and/or may be asked to withdraw from the course. 

Back to Top

Midterm and Final Exams

Midterm and final examinations will be given as take-home assignments with approximately one week between posting and submission deadline, the midterm near the middle of the semester and the final near the end.  The exams must be completed by each student working individually.

There will be no other exams (except see "pop quizzes" above). The registrar may schedule a 3-hour exam period during finals week, ignore it.

Back to Top

Final Grade Breakdown

10% individual homeworks, 10% "pop quizzes", 30% exams, 50% team project.

Back to Top

Late Assignments

Extensions may be arranged only in the event of severe illness, dire emergencies and religious observances, and the duration of the extension will be at the discretion of the instructor in accordance with university policies. Please present appropriate documentation to the instructor regarding the nature and duration of the illness or emergency as soon as possible thereafter; the instructor should be reminded of upcoming religious observances in advance.

Assignments submitted late will not be read or graded, and will receive no credit.  CourseWorks timestamps will be used to determine time of submission.  All assignment deadlines are US Eastern Time (local NYC time) unless otherwise announced by the teaching staff.

Back to Top

Computer Accounts

Students may use any machines and accounts available, provided that they can (1) complete their individual assignments and exams; (2) install and run their team's component model framework; (3) develop and test their project code together with the other member of their programming pair, integrate together with the other pair in their team, and demonstrate their project to the teaching staff ; (4) maintain revisions of their project code and documentation in a shared repository accessible to the teaching staff as well as to their other team members; (5) submit the final versions of all code in an archive format and all other written assignments in plain text, html, Word or PDF format (with any figures embedded) to CourseWorks.

Important note: In most cases all team members will need to use the same programming platform - which in practice usually means the same operating system.

Back to Top

Academic Honesty Policy

For the purposes of this course, students are permitted and encouraged to "reuse" existing open source or public domain code as well as any publicly available utilities, tools, frameworks, APIs, IDEs, etc.  However, all such "reuse" must be clearly documented in the submitted assignments (e.g., by providing the download url together with a prose explanation of what, specifically, was adopted/adapted). Students are not permitted to "reuse" any code or systems that are not available to the general public, with the sole exception of code they wrote themselves personally (where there are no proprietary claims, e.g., by the student's current or former employer).

Documentation other than in-code comments may not be "reused" under any circumstances. All reference materials, whether electronic or physical, must be listed in the submission. Students must write in their own words, without any copying or paraphrasing from reference materials, with the sole exception of very short quotations (e.g., one or two sentences or an image) that are clearly indicated as quotations (e.g., placed in quote marks) and explicitly cited (e.g., [David Pogue, Behind the Scenes of "iPhone: The Musical", Pogue's Posts, The New York Times, July 12, 2007, http://pogue.blogs.nytimes.com/2007/07/12/behind-the-scenes-of-iphone-the-musical/]). 

All members of a team will be held responsible for any occurrences of plagiarism that occur in the team project, even when that portion of the code or documentation was produced by a single team member. Also see the department's academic honesty policy.

Back to Top

Last updated August 09, 2011.

 

horizontal rule

Copyright 2011 Gail E. Kaiser.  All rights reserved.

Report broken links or other problems with this website to the instructor.