SENG 209 - Software Engineering

Southern Adventist University Winter 2010

Assignments

Instructors

Dr. Timothy D. Korson

Office phone: 236-2605

Email me at my southern account (userid: korson) for an appointment if you need to see me.

Physical office hours are posted on my office door and on my department website. Please note that I have a busy travel schedule lecturing at conferences, so I am often out of town. If you want to see me in the office, it is best to call or email in advance, even during scheduled office hours.

Team Taught with Michael Dant

Logistics

Class lecture time:2:00 - 3:40 PM Monday and Wednesday. Note that some meetings may be online.

Location: Room 135 Hickman Science Center

Textbooks

1. Software Engineering Body of Knowledge - IEEE Computer Society professional practices committee

2. Extreme Programming Explained - Embrace Change 2nd Edition by Kent Beck ISBN: 0321278658

3. Course Notes and readings as assigned:

Prerequisites

Two semesters of programming experience

Outline and Objectives

Students will be able to:

  • Discuss the ACM Code of Ethics
  • Identify the appropriate process model for a software project based on an analysis of the nature of the application and project circumstances
  • Synthesize elements from the various process models to create a custom process model tailored to the situation at hand.
    • Waterfall
    • RUP
    • Agile
  • Identify and explain the sources of complexity in software systems and projects
  • List and explain the fundamental principles of good software engineering
  • Analyze the impact of continuous integration, incremental development, and early and frequent releases on the development team and stakeholders.
  • Analyze the appropriateness of various process improvement models to a given corporate situation.
    • CMMI
    • ISO 900X
  • Acquire and document customer requirements for a software application
  • Discuss the problems inherent in requirements definition and describe how to help compensate for these difficulties.
  • Discuss the difference between software development as a process of transforming a fixed set of requirements into software and software development as a means of delivering value to a set of stakeholders.
  • Describe the differences between architectural design and detail design.
  • Create an appropriate object-oriented design by applying OO design patterns and principles to a given set of requirements
  • Explain the various types of testing and review procedures and their applicability and limitations
  • Produce a black-box unit test suite for a small module
  • Contribute to the formation of a work breakdown structure for a project
  • Estimate the cost and duration of a project and explain the assumptions and limitations of the estimate and the model on which it is based
  • Function as an effective member of a team of professional software engineers.
  • Discuss the use of product metrics to access the quality of software
  • Discuss the use of process metrics to access the progress of software development
  • Discuss the use of risk analysis to guide project decisions and communicate levels of uncertainty to stakeholders
  • Discuss the interlocking activities, phases, roles, processes, and procedures of the software engineering process
  • Describe the primary reasons for project failure and discuss preventative measures for each
  • Discuss the categories of  tools that support the software engineering process and evaluate the importance of each category for a given project
  • Use an appropriate modern software engineering toolset for a given software project

Catalog Description

Techniques for the management, development and maintenance of large complex software systems.
Life cycle issues, requirements and domain analysis, architecture and formal and human-computer
interaction design, implementation, testing, and quality assurance. Netcentric computing. Team
projects.

Instruction Style

Many of the class periods will follow a traditional lecture format. A certain number of the class lectures, or portions of periods, may be conducted largely in a seminar style. For the seminar style classes, a student will be assigned to lead the class discussion. Some classes will consist entirely of student presentations such as book reports and research or project presentations. A significant part of the course may be guided project meetings or online assignments.

Assignments and Schedule

The major Class Assignments are:

  • leading class seminars
  • presenting a book report
  • a team project

Miscellaneous smaller assignments may be given during the course of the semester.

Class Requirements and Grade Determination

Final grades are determined according to the following table:

  • 100-90 A
  • 90-80 B
  • 80-70 C
  • 70-60 D
  • 0-59 F.

A plus (+) or minus (-) may optionally be attached to further qualify a letter grade.

The average used to determine the final grade is computed from the following class activities and is weighted as indicated.

  • Participation, assignments, and projects 50%
  • Quizzes and tests 50%

Class periods may start with a quiz over the material from the previous period, and any assigned material for the current period.

Most tests and quizzes follow the traditional short answer format.

There are no predetermined extra credit activities associated with this class.

The standard department criteria for grading projects, presentations, and papers will be used as soon as it is available. In the meantime please note that 100% (A+) is reserved for truly outstanding presentations and projects. An "A" on your project will translate to 95% for grade calculation purposes.

Updates: This syllabus may be updated as the semester progresses. It is your responsibility to check the online syllabus for the latest information and course policies.

Late policy: Assignments are due when specified. Most students will need to begin assignments as soon as they are assigned and work consistently until the due date. It is generally a mistake to postpone most of the work until shortly before the due date. In general, assignments have a due date after which no credit will be given. If, in an exceptional situation, late work is accepted, it will be penalized a minimum of 5% per day late.

Unexcused missed quizzes, tests, project presentations, etc. may not be made up. If the absence is excused, arrangements MUST be made BEFORE the time of the originally scheduled test or presentation. Any make-up test may vary greatly in form from the original test, but its content (topics addressed) will be the same. Because of this difference, any points added (the so called "curve") to tests taken during the regularly scheduled time may not apply to retakes. Please also note that it is unusual for me to "curve" a test in this class because typically there are a number of students that score in the A range without needing to curve the scores.

Email: All course related email must contain your SAU email address as the sender's address, and have a signature which contains your full name, SAU ID, and class name and number. All email must reflect a professional style which includes proper spelling, grammar, capitalization, etc. Email not presented professionally, or originating from a non SAU account such as gmail or Yahoo will be returned.

Preparation for exams The are no study sheets provided for exams. If you need a study sheet for exams, it is essential that you create your own by taking notes during the class lectures. Exams questions focus on items highlighted during class discussion and often require answers based on class discussion that cannot be found in the text.

 

Final exam: Your final exam is worth a significant of your total course grade. Please note the date and time for our final exam on the tentative class schedule. You need to plan to take your final exam at the scheduled time. Please make your work and vacation plans accordingly. Academic Administration will grant approval for variance from the published exam schedule only in cases of verified, serious, illness or a death in the immediate family. Academic Administration may, in case of exceptional and unavoidable circumstances, approve a variance, in consultation with the professor of this course. A $65 processing fee may be assessed.

Academic Honesty: The basic principle is that you must not represent the work of others as your own work. This principle applies not only for term papers but for all types of assignments and projects.

Academic honesty does not exclude working together on team projects, but it does require that any collaborative work submitted must carry a clear signed statement detailing the nature of the collaboration and making it clear what part of the work was done by you and giving explicit credit to any work done by someone else. Obviously, collaborative work is only permitted when specifically required or allowed in the assignment statement. If in doubt just ask, I am generally quite favorable to collaborative work as long as the above guidelines are followed.

Term papers must include citations for any text not written by you, and references to any sources you used as background material. It is not permissible to compile material from off the web, massage it a bit, write a few transition phrases and submit it as your own. Both the wording and organization of papers you submit must be your own. Paraphrasing someone else’s text is generally not acceptable. Either quote and give credit to the original author, or write your own original text. A necessary, but not sufficient, condition of wither the paper is acceptable is a “yes” to the following question. When you are done could you reproduce the major thrust, reasoning and content of the paper from memory?

A violation of academic honesty is one of the most serious faults a student can commit and will typically result in an automatic F for the course or other serious consequences.

Accommodation: In keeping with University policy, any student with a disability who needs academic accommodation for testing, note taking, reading, classroom seating, etc., is to call Learning Success Services. Mr. Roberts, the Disability Services Coordinator, will conduct an intake and, if appropriate, provide a letter for you to bring to me.  I will review the letter with you and discuss the accommodations in relation to this course. Academic accommodations are available only as recommended by Disability Services at LSS.

 

Call 236-2838 or stop by the LSS office in Lynn Wood Hall, room 314 to arrange an appointment this week.

 

Requests for academic accommodations are to be made during the first three weeks of the semester, except in unusual circumstances. No retroactive accommodations will be provided.

 

The Learning Success Services website contains information of value to all students.