FSU Seal - 1851

COURSE SYLLABUS 

CEN 4010
Software Engineering


Fall  Semester 2004


 CLASS SCHEDULE FOR ON-CAMPUS STUDENTS:

 

Activity

Day

Time

Location

Lecture

Monday, Wednesday, and Friday

10:10 am – 11:00 am 

LOV 301

EXAM SCHEDULE: See Course Schedule

 

COURSE SCHEDULE:

 

Week

Topic

Reading Assignment

Homework Assignments i

1

Introduction to Unix

Class Slides

Establish Accounts, Practice

2

Introduction to Software Engineering

Chapter1,3

Reading Only

3

Software Process

Chapter 3

Page 69 Ex. 3.3, 3.4, 3.8

4

Project Management

Chapter 4

Page 92-93, Ex. 4.2, 4.4., 4.5

5

Software Requirements

Chapter 5

Page 120, Ex. 5.1, 5.2, 5.6

6

Software Requirements

Chapters 6.3

Page 146, Ex. 6.7

7

Software Prototyping

Chapter 8

Page 191, Ex. 8.2, 8.3, 8.8

8

Formal Specifications

Chapter 9

Page 210-211 Ex. 9.1, 9.8

9

Midterm Exam

Chapters Unix,1,3,4,6.3,8,9

 

10

Object Oriented Design

Chapter 12

Page 283, Ex. 12.2, 12.7 , 8.3, 8.8

11

Verification and Validation

Chapter 19

Page 438, Ex.19.2, 19.2, 19.3, 19.5

12

Software Testing

Chapter 20

Page 466, Ex. 20.1, 20.2, 20.5, 20.9

13

Managing People

Chapter 22

Page 509, Ex. 22.3, 22.4, 22.10

14

Software Cost Estimation

Chapter 23

Page 534, Ex. 23.4, 23.5

15

Software Re-Engineering

Chapter 28

Page 639, Ex. 28.1, 28.7, 28.9

COURSE PERSONNEL:

Lead Instructor:

David A. Gaitros

Responsibilities:

Overall course coordination, lecture materials, code library, and projects

Office:

LOV 261

Phone:

644-4055

Email:

gaitrosd@cs.fsu.edu

Office Hours:

MWF 8:00 am - 10:10 am in LOV 261 or by appointment at other times

 

 

COURSE MATERIALS:

The are some required materials are covered in the following on-line resources:

·         Somerville, Ian (2001)Addison-Wesley Software Engineering (6th Edition). Massachusetts: Addison Wesley


ISBN 0-201-39815-x

·         Lecture Slides at www.cs.fsu.edu/~gaitrosd

 

ON-LINE RESOURCES:

The following are useful on-line references:
 

o                                GNU ftp site

o                                GNU web site

o                                GNU Emacs Manual

o                                Emacs Reference Card

o                                Emacs Command Tutorial

o                                An Emacs Primer

o                                DJGPP - DOS GNU Unix

o                                Barebones Guide to HTML

o                                Ghostscript Home Page

o                                Ghostscript (.ps and .pdf passive reader) Download Site

o                                Adobe Acrobat (.pdf active reader) Download Site

o                                FSU User Services Site Licenses 

COURSE DESCRIPTION:

In previous courses in computer science you were taught how to write code given a specific design and set of specifications. In this course, you will learn to develop those designs and specifications and the formal methods used.

Preface from Software Engineering, by Ian Sommerville: Software systems are now ubiquitous. Virtually all electrical equipment now includes some kind of software; software is used to help run manufacturing industry, schools and universities, health care, finance and government; many people use software of different kinds for entertainment and education. The specification, development, management, and evolution of these software systems make up the discipline of software engineering.

Software engineering was developed in response to the problems of building large, custom software systems for defense, government, and industrial applications. We now develop a much wider range of software, from games on specialized consoles through personal computers products and web based system to very large-scale distribution systems. Although some techniques that are appropriate for custom systems, such as object-oriented development, are universal, new software engineering techniques are evolving for different types of software. It is not possible to cover every thing in one book, so I have concentrated on universal techniques and techniques for developing large-scale systems rather than individual software products.

The course will cover chapters 1,3,4,5,6.3,8,9,12,19,20,22,23,26,28, and 29. However the student is encouraged to read all of the chapters. Time does not permit us to cover all topics in this book in just one semester. It is particularly important that the student place a great deal of emphasis in understanding the different design models and the sections covering requirements analysis and system specification. As it turns out, developing a complete set of requirements and specifications is one of the more difficult and critical tasks in software engineering.

The three topics mentioned in the title of the course are Software Engineering, Software Processes, Project Management, Software Requirements, Prototyping, Specifications, OOD, Verification and Validation, Testing, Management of People, Cost Estimation, Legacy Systems, Reengineering, and Configuration Management. It is important the students have taken data structures because there will be a programming problem required by all students where they will have to show their ability to solver a simple problem using a data structure and completely develop a program. .

During the course of this term the students will be involved with a real problem solving/software development situation.  Students will be required to gather functional requirements, identify the problem, form a solution and present this solution to a prospective customer.  There will be two different projects in which the students will participate.  (1) Department of Computer Science Class Roster System and (2) Computation Sciences MorphBank Database System.  

COURSE OBJECTIVES:

At the end of this course, the student should understand the following concepts:

·         Follow a Software Design to Code Development

·         The Software Crisis

COURSE POLICIES:

Attendance Policy:
The university requires attendance in all classes. Attendance in this class shall mean:

·         Attending lectures at their regular scheduled times

·         Regularly participating in class discussions

·         Taking Exams at the scheduled time and place

·         Submitting assignments correctly and on deadline

Exam Makeup Policy:
An exam missed without an acceptable excuse will be recorded as a grade of zero (0). The following are the only acceptable excuses:

·         If submitted prior to the scheduled exam: Evidence from a university official that you will miss the exam due to university sanctioned travel or extracurricular activity

·         A note from a physician, university dean, or parent indicating an illness or other extraordinary circumstance that prevented you from taking the exam

All excuses must be submitted in writing, must be signed by the excusing authority, and must include complete contact information for the authority, including telephone numbers and address.

Missed exams with acceptable excuse will be made up or assigned the average grade of all other exams, at the option of the course instructor.

Missed, and acceptably excused, final exams will result in the course grade of 'I' and must be made up in the first two weeks of the following semester.

Late Assignment Policy:

·         An assignment that is turned in no more than 24 hours late will be scored with a 10% penalty.

·         An assignment that is turned in no more than 48 hours late will be scored with a 20% penalty.

·         An assignment that is turned in more than 48 hours late will receive the score of zero (0).  However, all assignments must be turned in to obtain full credit for the course.

Grade of 'I' Policy:
The grade of 'I' is given to a student who, for circumstances beyond their control, missed the opportunity to cover course materials. Under the conditions stated by the University, the grade of 'I' means that a student is allowed the next semester of their enrollment to make up all remaining course materials. It does not allow a student the opportunity to hand in additional work or improve their grade on previous assignments. The grade of 'I' will be assigned only under the following exceptional circumstances:

·         The final exam is missed with an accepted excuse for the absence. In this case, the final exam must be made up during the first two weeks of the following semester.

·         Due to an extended illness or other extraordinary circumstance, with appropriate documentation, the student is unable to participate in class for an extended period. In this case, arrangements must be made to make up the missed portion of the course prior to the end of the next semester.

GRADING/EVALUATION:

The overall grade for CEN 4010 is an average of four equally weighted parts: Exams, programming assignment, requirements analysis project, and weekly homework. Exams consist of one(1) in-term exams and a final exam.

There are 500 total points that may be earned in the course distributed as shown in Table 1. The final grade is determined using Table 2.

 

Table 1: Course Points

Item

Points/Item

 

 

Midterm Exam

100

 

 

Attendance

100

 

 

Homework

100

 

 

Final Project  

200

 

 

 

Table 2: Letter Grades

Points

Grade

450 - 500

A

440 - 449

A-

400 - 439

B

390 - 399

B-

350 - 389

C

340 - 349

C-

300 - 339

D

290- 299

D-

0 – 289

F

 

ASSIGNMENTS/RESPONSIBILITIES:

Assignments will be released at the beginning of each semester. Since students are give the assignments in advance, no excuses will be accepted for late turn in of assignments. Normal penalties for late turn in will be assessed.

ACADEMIC HONOR CODE:

Students are expected to uphold the Academic Honor Code published in The Florida State University Bulletin and the Student Handbook. The Academic Honor System of The Florida State University is based on the premise that each student has the responsibility (1) to uphold the highest standards of academic integrity in the student's own work, (2) to refuse to tolerate violations of academic integrity in the university community, and (3) to foster a high sense of integrity and social responsibility on the part of the university community.

Please see the following web site for a complete explanation of the Academic Honor Code.
http://www.fsu.edu/Books/Student-Handbook/codes/honor.html
http://www.fsu.edu/Books/Student-Handbook/

In particular, note that students may not give or receive help of any kind on programming projects. This means, among other things, that students are not permitted to read each others code (on paper OR on screen) or discuss design or implementation of programming projects with anyone other than the instructional personnel. Violations of this policy will result in the grade of zero for all parties involved.

AMERICANS WITH DISABILITIES ACT:

Students with disabilities needing academic accommodation should: (1) register with and provide documentation to the Student Disability ResourceCenter; (2) bring a letter to the instructor indicating the need for accommodation and what type. This should be done during the first week of class.

For more information about services available to FSU students with disabilities, contact the

Student Disability Resource Center
Dean of Students Department
08 Kellum Hall
Florida State University
Tallahassee, FL 32306-4400
(850) 644-9566 (voice)
(850) 644-8504 (TDD)
SDRC@admin.fsu.edu
http://www.fsu.edu/~staffair/dean/StudentDisability/

(This syllabus and other class materials are available in alternative format upon request.)

SYLLABUS CHANGE POLICY:

This syllabus is a guide for the course and is subject to change with advanced notice. Such notice will be in the form of an announcement to email to all students on their FSU Garnet accounts and to the course web site.