CS 350 Introduction to Software Engineering (Summer 2020)

Thomas J. Kennedy


Website: https://www.cs.odu.edu/~tkennedy/cs350/sum20/

1 Course Description

This course explores the software development process. It will discuss the major activities common to software development processes, and some of the ways in which those activities are organized and managed.

Heavy emphasis will be placed on the day-to-day skills required during software construction. The course will explore lessons and tools offered by the major successful open-source software efforts.

The course requires each student to participate as a member of a team in a significant team project. Each student will be required to demonstrate proficiency in several software development tools.

1.1 Instructor

Instructor Office Phone # Email Home Page & Office Hours
Thomas J. Kennedy Dragas 1100D 757.683.7725 tkennedy@cs.odu.edu http://www.cs.odu.edu/~tkennedy

All email related to this course must have the phrase CS 350 somewhere in the subject line.


I try to respond to all (properly marked) messages before I leave campus each day (Monday through Friday). On weekends and holidays within 48 on weekends & holidays.

1.1.1 Office Hours

My general office hours are available at https://www.cs.odu.edu/~tkennedy/. Instructions for scheduling a formal appointment are listed here. Note that my office hours include both live and web-conference based appointments.

General questions about course content and reports of website problems should normally be asked in the Forums on Blackboard or via email.

Questions about grades, how to solve assignments and other graded activities must be sent to tkennedy@cs.odu.edu.

For more discussion on course communications, please refer to the Communications policy.

1.2 Course Pre-requisites

1.2.1 Additional Consideration for Spring 2020

During Spring 2020 everyone was impacted by the COVID-19 Situation. Spring Break was extended by one week and all on-campus lectures courses were transitioned to online delivery.

If you completed one or more of the Course Pre-requisites during Spring 2020, take a few minutes to look back through your notes, exercises, and grades. The pre-requisite expectations for this course have not changed. If you feel you need to review material from prior courses (e.g., CS 330 or CS 361) email the instructor during the first week of classes.

1.3 Meeting Times and Delivery Method

Students must register for both a lecture section and a recitation section.

1.4 Review Recordings

I provide recorded Reviews on the course site. These are, in general, condensed versions of what would traditionally be live lectures. My recorded Reviews are available here.

I expect you to view these Review Recordings

2 Basic Course Information

2.1 Required Text

Readings from the Internet will be assigned from the course website.

2.2 Resources for Getting Started

2.3 Computer Accounts

Students will need two network accounts to participate in this class:

2.4 Hardware & Software Requirements

Students will need frequent access to a PC capable of hosting software development activities or of connecting remotely to CS Dept servers where such activities can be performed.

Students will be attending network conferences requiring the use of a microphone. Webcams are optional.

For both remote access to CS Dept servers and for network conferencing, a good-quality internet connection is important.

The course will introduce students to a wide variety of software packages. All of these are open-source, free software, but students will need to install some of these on their chosen development machine (whether their own PC or in their account on the CS network).

3 Course Policies

3.1 Recitation Attendance

Attendance at all scheduled recitation sessions, as announced in the course outline, is mandatory. Failure to attend may result in grade penalties.

During weeks without scheduled recitation activities, students are encouraged to make use of the time to meet with their groups. If the instructor has set up appointment slots for informal meetings, recitations are an ideal time to ask questions.

3.2 Due Dates and Late Submissions

Late assignments and make-up exams will not normally be permitted.

Exceptions to this and other grading policies will be made only in situations of unusual and unforeseeable circumstances beyond the student’s control. Arrangements must be made prior to the due date in any situations where the conflict is foreseeable.

I’ve fallen behind and can’t catch up”, “I’m having a busier semester than I expected”, or “I registered for too many classes this semester” are not grounds for an extension.

Extensions to due dates will not be granted simply to allow “porting” from one system to another. “But I had it working on my home PC!” is not an acceptable excuse.

3.3 Academic Honesty

Everything turned in for grading in this course must be your own work, or, for team projects, the work of your own team. Opportunities for teamwork will be clearly identified as such.

Students are expected to conform to academic standards in avoiding plagiarism.

The instructor reserves the right to question a student orally or in writing and to use his evaluation of the student’s understanding of the assignment and of the submitted solution as evidence of cheating.

Students who contribute to violations by sharing their code/designs with others may be subject to the same penalties. Students are expected to use standard Unix protection mechanisms (chmod) to keep their assignments from being read by their classmates. Failure to do so will result in grade penalties, at the very least.

This policy is not intended to prevent students from providing legitimate assistance to one another. Students are encouraged to seek/provide one another aid in learning to use the operating system, in issues pertaining to the programming language, or to general issues relating to the course subject matter.

Student discussions should avoid, however, explicit discussion of approaches to solving a particular programming assignment, and under no circumstances should students show one another their code for an ongoing assignment, nor discuss such code in detail.

Violations of this policy will be reported to the Office of Student Conduct and Academic Integrity for consideration for punitive action.

3.4 General University Policies

The ODU Catalog lays out a wide variety of University policies that are binding upon both students and faculty. All students are required to abide by these.

3.5 Grading

Assignments 15%
Semester Project 50%
Midterm Exam 15%
Final Exam 20%

Grading is normalized.

4 Assignment Grading

Individual assignments will be turned in through the CS submission system, rather than through Blackboard–more information is available here. Most of the assignments will be graded by an automatic grader. The results will be sent to your email account. Unless the assignment explicitly states otherwise, you may submit a total of three times; the instructor will take the last of the marks, although you may request that your score be “rolled back” to an earlier one. You may NOT submit after viewing the sample solution.

5 Exams

The Midterm Exam and Final Exam will be administered online via Blackboard.

6 Topics

Topics will include:

6.1 Objectives

Students completing this course should be able to:

6.2 Expectations

Students will engage in team projects in this course. Students are expected to actively participate in and contribute to their teams, and this engagement with the team will be part of the grade.

7 Semester Project - Civility among Team Members

You will be working with your team for many weeks, and there will be a lot of communication expected among team members.

In accordance with the Monarch Creed and Code of Ethics, I expect all students to maintain civility in their dealings with one another.

Language that is abusive, harassing, or threatening to members of the class or that fosters high levels of personal and emotional anxiety may, at the instructor’s discretion, result in expulsion from the team. Given the importance of the team project to this course, that is likely to result in a failing grade. Egregious or repeated violations will be referred to appropriate authorities for possible disciplinary action.

8 Educational Accessibility

Old Dominion University is committed to ensuring equal access to all qualified students with disabilities in accordance with the Americans with Disabilities Act. The Office of Educational Accessibility (OEA) is the campus office that works with students who have disabilities to provide and/or arrange reasonable accommodations.

The Office of Educational Accessibility is located at 1021 Student Success Center and their phone number is (757) 683-4655. Additional information is available at the OEA website http://www.odu.edu/educationalaccessibility/