McMaster University
Software Development for Electrical Engineering
SFWR ENG 3M04, Term I 2003/04
Slides
Assignments
Exercises
Midterms
Lectures and Tutorials
Monday, Wednesday, 11:30-12:20, Friday 13:30-14:20 in TSH/B105
Tutorials:
- T01 - Thursday 16:30-17:20 in ABB/164
- T02 - Monday 14:30-15:20 in ABB/164
Instructor
Dr. J. Carette, ITB-168 , ext 26869,
carette@mcmaster.ca.
Office Hours: TBD
Teaching Assistants
Mohammed Smadi (smadim2@mcmaster.ca) and
Feng (Stephen) Tao (fengt@mcmaster.ca).
Course Pack and Textbook
This courses uses both a course pack and a textbook, as follows:
- 3K04 Course Pack , Introduction to Software Engineering: A Collection of
Formal Software Specifications, by Dr. M. von Mohrenschildt
- Fundamentals of Software Engineering by Ghezzi, Jazayeri and Mandrioli
[Note: SE 3M04 and SE 3K04 use the same course pack, the above is not a typo]
Course Objectives
This course is for people who already know how to program and are
familiar with the use of programming languages. The topics of the
course are: Basic methods of specifying, designing and documenting
software systems; mathematical foundations of formal specifications;
modularity; module interface design; coding style; verification and
inspection; testing.
Course Information on Web, Project and Slides
The latest version of this outline and the most "up-to date"
information as well as hand-outs can be found on the course web page.
http://www.cas.mcmaster.ca/~carette/SE3MO4/2003/index.html.
(Or go to my home page and then to the course page).
The slides and
assignments can be found there as well.
Note that all assignments are to be handed in through WebCT.
Mid-terms, Exams, and Grading
- There will be two mid-terms.
- The final examination will be
scheduled by the Registrars office in the usual way. It will be
three hours in duration and cover the material of the course,
handouts and assignments.
- Academic dishonesty consists of misrepresentation by deception or by other
fraudulent means and can result in serious consequences, e.g. the grade of
zero on an assignment, loss of credit with a notation on the transcript
(notation reads: "Grade of F assigned for academic dishonesty"), and/or
suspension or expulsion from the university.
It is your responsibility to understand what constitutes academic
dishonesty. For information on the various kinds of academic dishonesty
please refer to the Academic Integrity Policy, specifically
Appendix 3.
The following illustrates only three forms of academic dishonesty:
- Plagiarism, e.g. the submission of work that is not one's own or for
which other credit has been obtained.
- Improper collaboration in group work. (Note that all assignments in
SE 3M04 are to be done individually unless explicitly mentionned otherwise).
- Copying or using unauthorized aids in tests and examinations.
In this course we will be using a software package designed
to reveal plagiarism. Students will be required to submit their work
electronically so that it can be checked for academic
dishonesty.
- There is zero tolerance for academic dishonesty .
All assignments have to be solved by one person only,
any outside source, this includes asking other people,
or using any books or information found on the web has to
be documented. In complience with the senate regulations
on academic integrity I remind you that:
People who let other people copy are as guilty as the ones who copy.
You are allowed to consult outside sources, meaning textbooks
or the web, but any use of an outside source
must be documented.
- It is essential that you fulfill the deadlines for the
assigments, there is no credit for documents handed
in after the deadline. This is manly due to the fact that
solutions will be avaiable after the due date.
- In the case the instructor or a TA
has the impression that an assignment is copied the instructor can
ask the corresponding students to explain exactly how the assignment
was prepared and take appropriate actions.
- Graded assignments and tests will
be returned during a tutorial session or at the end of a lecture.
The ones not picked up will
be placed in a pick up box at my office. No responsibility for loss
of assignments can be assumed by either instructor or the Teaching
Assistants.
- You must pass the final exam to pass the course. Assuming you pass
the final exam, your course grade will be computed according to:
|
Weight |
Final Examination |
50% |
Mid-Term Test 1 |
20% |
Mid-Term Test 2 |
20% |
Assignments |
10% |
- The instructor does not accept
late doctor's notices, if you write a mid-term then the mark is
yours. If you do not write an exam or an assignment and do not provide
an acceptable doctors notice then it is marked with 0. The
instructor reserves the right to conduct any deferred exams orally.
Outline of the course lectures
The following outline is approximate and is likely to change.
- Introduction (1. Lect)
- Mathematics (4. Lect)
- Software Life Cycle (1. Lect)
- Specifications (4. Lect)
- Modularization (3. Lect)
- Module Interface Specification (4. Lect)
- Module Internal Design (4. Lect)
- Hierarchical Structures (2. Lect)
- Coding (1. Lect)
- Inspection (2. Lect)
- Testing (2. Lect)
- Requirements Specifications (4. Lect)
- Software Development Methods (4. Lect)
Slides
Slides will be made available online after the lectures.
Note:
Discrimination
"The Faculty of Engineering is concerned with ensuring an
environment that is free of all adverse discrimination. If there is a
problem that cannot be resolved by discussion among the persons
concerned individuals are reminded that they should contact there
Chair, the Sexual Harassment Office or the Human Rights Consultant,
as soon as possible."
Adapted by JC, from pages by MvM and WM. Aug 2003