All students are responsible for reading the course syllabus and abiding by the policies described there.
Lectures: No regularly scheduled meetings
Lecture materials for this course will be available on-line, primarily in printed/text form.
Recitations: Weds 2:30pm-4:30pm and Weds 7:10pm-9:10pm (selected weeks)
Recitations
Recitations will be used for special topics and for meetings with teams once the semester project is underway.
I am in the process of updating these recordings and examples.
I provide recorded Reviews on the course site. These are, in general, condensed versions of what would traditionally be live lectures. This includes:
As a general policy I make all three sets of reviews available to CS 350 and CS 330 students. You will find direct links to CS 350 Review Recordings throughout the outline. I will update these reviews throughout the semester (as necessary).
Individual assignments (3 attempts each). Assignments will include:
This a non-exhaustive list.
A moderately large program on which you will work in teams of 4-6 people.
Four phases:
In general, you will be evaluated upon process as much as upon your ability to produce working code.
Four phases:
I will assign you to a team, at random, for the first phase (Phase 1).
You will choose your own teams for the remaining phases
Four phases:
The construction phases (starting with Phase 3) will be evaluated in part via one or more team meetings with the instructor.
General rule is that if one member of a team does not know something, that’s a mark against that person. If two people don’t know something, that’s a mark against the entire team.
At end of some meetings, you may receive a short test/assignment, which each team member must complete individually within a limited time period (a day or less).
CS 252 (Introduction to Unix for Programmers)
CS 252 (Introduction to Unix for Programmers)
and
CS 252 (Introduction to Unix for Programmers)
and
CS 252 (Introduction to Unix for Programmers)
and
CS 252 (Introduction to Unix for Programmers)
and
Contact Info
Instructor | Office | Phone # | Home Page & Office Hours | |
---|---|---|---|---|
Thomas J. Kennedy | Dragas 1100D | 757.683.7725 | tkennedy@cs.odu.edu | http://www.cs.odu.edu/~tkennedy |
Important: The course name “CS350” should appear in the subject line of all course-related email.
This is my general email policy. However, this is usually $O(n)$ (i.e., an upper bound).
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.
Forums are also available on Blackboard for general discussions.
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 web-conference based appointments.
… are not normally accepted. Exceptions may be made in cases of
Extensions to due dates will not be granted due to
ODU is governed by a student honor code.
Academic Honesty (cont)
Assignments: | 15% |
Semester project: | 50% |
Midterm exam: | 15% |
Final exam: | 20% |
Questions
Questions
Questions
What is “Engineering”?
Questions
What is “Engineering”?
Is there “engineering” in software development?
Build Management (Gradle)
Build Management (Gradle)
Build Management (Gradle)
Build Management (Gradle)
I will present a examples of TDD and regression in a future discussions.
Exemplified by the philosophy of “write the tests first, then design and write the code.”
Making sure that you and others can build the system easily.
Making sure that you and others can build the system easily.
A good build manager will not only compile and link the source code…
Making sure that you and others can build the system easily.
A good build manager will not only compile and link the source code…
It will also run the tests
Making sure that you and others can build the system easily.
A good build manager will not only compile and link the source code…
It will also run the tests
Making sure that you and others can build the system easily.
A good build manager will not only compile and link the source code…
It will also run the tests
and update the documentation and reports
Making sure that you and others can build the system easily.
A good build manager will not only compile and link the source code…
It will also run the tests
and update the documentation and reports
The ability to track changes in the software.