Software Engineering
CAS CS411 (Fall
2007)
Syllabus
This course provides an introduction to the fundamental areas of software engineering: requirements specification, effort estimation/scheduling, design, code construction, validation, delivery, and project management.
CS112 or CS113 or consent of instructor
Experience with C, C++, C# or Java
M 6-9pm in MCS 149
|
|
|
|
Office hours: |
M 2:30-5:30pm |
|
Office location: |
Psychology Building 234 |
|
Email: |
|
Jeff Zou |
|
|
Office hours: |
Tues & Thurs 2-4pm |
|
Office location: |
Undergraduate Lab |
|
Email: |
Frederick P.
Brooks, Jr. The Mythical Man-Month: Essays on Software Engineering, 20th
Anniversary Edition, (1995). ISBN 978-0-2-0183595-3
Steve McConnell, Rapid Development, 1st
Edition (1996). ISBN 978-1-5-5615900-8
Steve McConnell, Code
Complete, 2nd Edition (2004). ISBN 978-0-7-3561967-8
Andrew Hunt and
David Thomas, The Pragmatic Programmer (2000). ISBN 0-201-61622-X
Ian Sommerville, Software
Engineering, 8th Edition (2007). ISBN 0-321-31379-9
Steve McConnell, After
the Gold Rush, (1999). ISBN Out of Print. May be available used on Amazon
and eBay.
Grading
Grades will be determined by the following weighting:
|
Team projects |
- |
50% |
|
Homework |
- |
10% |
|
Mid-term |
- |
15% |
|
Final |
- |
20% |
|
Class participation |
- |
5% |
Incompletes will not be given.
Grades are posted at http://cs-people.bu.edu/jeffzou/CS411/Grades.html. Students are identified by the last four digits of their BU id.
Each week an assignment related to the most recent lecture will be due at the beginning of the next lecture. Readings related to the weekly assignments will be assigned at each lecture.
Late homework and term project items will be levied a late
penalty of 10% per day (up to 3 days). After 3 days, no credit will be given. Exception
to this policy: the October 22 and December 10 team project deliveries will not
be accepted late.
|
Midterm: |
Monday, Oct 22 |
|
Final: |
Monday, Dec 17 |
The team project is designed to put students through the experience of complete development cycles, from the conception of a software product to the final release. Each student will be assigned to a team and will contribute in one or more roles (roles include product definition, system design, code construction, quality assurance, documentation). The deliverables will include (but are not limited to) all the supporting documentation, ranging from requirement/feature specifications, test plans, system design, schedules, task lists and bug reports. All students on a team will receive the same grade for the term project.
All course participants must adhere to the College of Arts and Sciences Academic Conduct Code. Printed copies of the code are available from CAS 105. All instances of academic dishonesty will be reported to the academic conduct committee.
The course mailing list is named cascs411a1-l@bu.edu and is managed by IT's majordomo engine. You will need to subscribe to the course mailing list yourself. Send the following e-mail message to majordomo@bu.edu:
subscribe cascs411a1-l address
where address is your e-mail address. This should be in the body of the e-mail. Text in the e-mail subject line is ignored.
Students are welcome to post messages and questions to the mailing list. To send e-mail to the course mailing list, use the e-mail address: cascs411a1-l@bu.edu
To get more information about this e-mail list facility (or to remove your name) see the online documentation.
I will check my email each morning at about 9am, and will reply to your emails within 24 hours, barring some unforeseen circumstance.
September 2007 |
Lecture topics |
||||||||
|
Sun |
Mon |
Tue |
Wed |
Thu |
Fri |
Sat |
|
||
|
2 |
3 |
4 |
5 |
6 |
7 |
8 |
|
||
|
9 |
10 |
11 |
12 |
13 |
14 |
15 |
+
Introduction +
What is Software Engineering? +
Course overview +
Requirements engineering
|
||
|
16 |
17 |
18 |
19 |
20 |
21 |
22 |
+
Scope out Team Project #1 +
Risk analysis +
Schedule estimation
|
||
|
23 |
24 |
25 |
26 |
27 |
28 |
29 |
+
System design +
Human factors +
Risk analysis revisited +
Schedule estimation revisited
|
||
|
30 |
|
|
|
|
|
|
|
||
|
October 2007 |
|
||||||||
|
|
1 |
2 |
3 |
4 |
5 |
6 |
+
Code construction +
Task analysis +
Risk analysis revisited +
Schedule estimation revisited
|
||
|
7 |
8 |
9 |
10 |
11 |
12 |
13 |
+
Quality assurance +
Metrics +
Risk analysis revisited +
Schedule estimation revisited
|
||
|
14 |
15 |
16 |
17 |
18 |
19 |
20 |
+
Code construction – good practices +
Software delivery issues No
assignment |
||
|
21 |
22 |
23 |
24 |
25 |
26 |
27 |
+
Mid-term exam (1.5 hr) +
Lessons learned from term projects so far +
Scope out Team Project #2 No
assignment |
||
|
28 |
29 |
30 |
31 |
|
|
|
+
Scope out Team Project #2 +
Requirements engineering revisited
|
||
|
November 2007 |
|
||||||||
|
|
|
|
|
1 |
2 |
3 |
|
||
|
4 |
5 |
6 |
7 |
8 |
9 |
10 |
+
System design revisited
|
||
|
11 |
12 |
13 |
14 |
15 |
16 |
17 |
No
class -- Veterans Day |
||
|
18 |
19 |
20 |
21 |
22 |
23 |
24 |
+
Quality assurance revisited
|
||
|
25 |
26 |
27 |
28 |
29 |
30 |
|
+
Managing the software engineering process
|
||
|
December 2007 |
|
||||||||
|
|
|
|
|
|
|
1 |
|
||
|
2 |
3 |
4 |
5 |
6 |
7 |
8 |
+
Special topics in software engineering – extreme programming, agile
development +
Economics of software development
|
||
|
9 |
10 |
11 |
12 |
13 |
14 |
15 |
+
TBD
|
||
|
16 |
17 |
18 |
19 |
20 |
21 |
22 |
+
Final exam |
||
|
23 |
24 |
25 |
26 |
27 |
28 |
29 |
|
||
|
30 |
31 |
|
|
|
|
|
|
||