Department of Mathematics and Computer Science

Adelphi University

Spring 2014

 

 

0145-440-001  

Software Engineering Applications - 3 credits – revision 1.0

TR 9:25 - 10:40 in SWL 101

Adjunct Professor Kristin Pepper

102 / 103 Post Hall

(516) 297-5241

pepper@adelphi.edu

www.adelphi.edu/~pe16132

 

Office Hours

Tuesday and Thursday 12:15 – 1:15

Course Description and Purpose

Learn techniques and principles of systematic software development, including requirements engineering, object-oriented analysis and design, design patterns, testing, verification and validation. Consider issues regarding ethics, management and emerging technologies (e.g. security engineering). Learn a standardized specification language (UML) and relevant tools to build a quality software system.

Course Learning Goals

Students will identify kinds of users, scenarios, and use-cases for systems presented in class and for one system in which the student takes the role of the software user.  Students will experiment with using both iterative (ex:Agile) and plan based (ex: Waterfall) methodologies to design a new small system. The design documentation will use UML design notations. The design process will include that includes requirements analysis, selection of test cases, solution

design and implementation, testing, and documentation.  Students will become familiar with selecting and applying appropriate design pattern to address a given software design issue by using design patterns in their final project. In designing their project, students will demonstrate proficiency in a change management tool and test design. (CS Assessment goals 1c & 4b)

 

Prerequisite

CSC172 or CSC173

Texts

Required: Sommerville, Ian. Software Engineering,  New York: Addison-Wesley, 2011 edition 8 or 9 ISBN of edition 9: 0-13-703515-2 OR 978-0-13-703515-1

A flash drive is recommended.

Not required but recommended, and hope to make available in the library

  • UML Distilled, Third Edition, by Martin Fowler, Addison-Wesley.
  • Practical Software Development Techniques. By Crookshanks, Edward, Nokel Services
  • Design Patterns, by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, Addison-Wesley.
  • Object-Oriented Software Engineering, by Bernd Bruegge and Allen H. Dutoit, Prentice Hall.
  • Project-Based Software Engineering: An Object-Oriented Approach, by Evelyn Stiller and Cathie Leblanc, Addison-Wesley.
  • The Mythical Man-Month, by Frederick Brooks, Addison-Wesley.

Major Assignments

Work in a technical team to specify, design, implement and test one of two possible projects. Also, serve on the user team of the project that you are not coding.  Deliver well designed working code as your final project and make intermediate deliveries throughout the semester.

 

Grading

The midterm must be completed as a minimum for credit. Each exam must be taken at the time scheduled. 10% will be dropped for anything 1 week late. Be sure to back up your classwork frequently so that you do not lose work.

The course grading scale is: A 93-100, A- 90-92, B+ 87-89, B 83-86, B- 80-82, C+ 77-79, C 73-76, C- 70-72, D 60-69, and F is below 59. A+ is given at the professor's discretion.

The final grade will be a traditional letter grade (A-F). Excessive absences, lateness, and any activities which run counter to the best interests of the class will be deducted at the end of the semester from the final grade as a percentage to be determined by the professor.

Grade Percentages:

Midterm Exam - 25%

Project Deliverables - 40%

Exercises (in-class, homework e.g. HW 1) 15%

Final Exam - 20%

Attendance

The following is the Adelphi University General Attendance Policy:

Only students who are registered for courses, and whose name appears on the Official Class Roster may attend courses at the University. Adelphi students make a commitment to be active participants in their educational program; class attendance is an integral part of this commitment. Attendance requirements for each course will be announced by the faculty member at the beginning of each term. Students are expected to be present promptly at the beginning of each class period, unless prevented by illness or by other compelling cause. In the event of such absence, students may request that faculty members be notified by the Office of Academic Services and Retention. Students are responsible for completing course work missed through absences. Students should wait a reasonable length of time for an instructor in the event that the instructor is delayed.

 

Additionally, you are also responsible for whatever work is covered in class whether or not you are there. Absence from the final exam will be excused only for a good and well-documented reason. The decision to allow a make-up exam will be made in accordance with the policies of Adelphi University.

 

If the University is closed for more than two days due to an emergency, log onto this course site under the MOODLE tab in eCampus each day for instructions and assignments. A snow closing days may become an online day, with instructions given on Moodle, so check Moodle upon snow closing.

 

Moodle

All course materials will be delivered through Moodle.  Use Moodle to hand in all assignments. A Moodle tutorial can be found at http://fcpe.adelphi.edu/moodle/student/

 

 

Tentative Schedule (Subject to Change). PR = Project Deliverable; HW = homework assignments not related to your final project

 

Date

Subject

Chapter

Tests, Quizzes and Assignments due

1/23

Software Processes introduction; Code of Ethics; Ariane 5 case

1-2

 

1/28 & 30

Requirements Elicitation and SE Methodology Review

3-4

HW1 Question Responses

2/4 & 6

UML and System Modeling; Intro to Finch Robot

5

PR1 Project Requirements Spec

2/11 & 13

System Specifications

4

HW2 UML Diagram Exercises

2/18 & 20

System Modeling and Architectural Design

5 & 6

PR2 Partial Design Spec and Test Plans

2/25 & 27

Object Design, Design Patterns

 7

HW3 Design Patterns

3/4 & 6

Agile Cycle Analysis; GIT change control; Eclipse

3, 25

PR3 Agile result design, code and test plan

3/11 & 13

Midterm Review & Midterm

 

Midterm

3/18 & 20

VACATION

 

3/25 & 27

Tools to get a release planned and coded:

  • Quality Control  - brief user acceptance and unit tests
  • Change Control – GIT intro
  • SCRUM Cycle Analysis – plan release
  • MySQL quick

Project Goal – XP increment planned and specified – with UML code stubs generated

 

 

4/1 & 3

Project Management, Quality Control, Class Diagram UML; Junit
Project Goal Coding being done outside class

8 & 23

HW4: Git

PR4: Sprint 1 UML Due with Acceptance Test plan and burn down chart

4/8

(No Class 4/10 Research Day)

Mock user acceptance for increment 1
Project Goal: Plan increment 2 tasks

 

HW5: Class Diagram UML

4/15 & 17

Tools to design well: UML State Diagram & Design patterns

Project Goal: UML increment 2

 

PR5: Sprint 1 due - fully coded (before class)

PR6: Sprint 2 UML due

with project plan

with user acceptance plan

4/22 & 24

Maintenance & Design Patterns

Note: 4/24 is an group meeting day

Project Goal: Coding being done outside class

9

HW6: UML State Diagram

4/29 & 5/1

Security

11

PR7: Sprint 2 Burn down chart

HW7: Design Patterns

5/6 & 8

Review

 

PR8: Sprint 2  delivery due – This is the final project

5/13 or 15

Final

 

 

 

Turnitin

Adelphi University has a license agreement with Turnitin.com, a service that helps prevent plagiarism from Internet resources. I reserve the right to request an electronic copy of any written assignment submitted in this course for review through Turnitin.com. Please see Adelphi's tips for students on preventing plagiarism and student instructions for Turnitin.com for more information.

 

Students With Disabilities

If you have a disability that may impact your ability to carry out assigned course work, and are not enrolled in the Learning Disabilities Program, it is important that you contact the staff in the Disability Support Services Office (DSS), University Center, Room 310, (516) 877 3145. DSS@adelphi.edu. DSS will review your concerns and determine, with you, appropriate and necessary accommodations. All information and documentation of disability is confidential.

 

 

Honor Code

Students enrolled in this course are expected to abide by the Adelphi

University Honor Code. The purpose of the Honor Code is to protect the academic integrity of the University by encouraging consistent ethical behavior in assigned coursework by students. Following is excerpted from the Student Honor Code:

The code of academic honesty prohibits behavior, which can broadly be described as lying, cheating, or stealing. Violations of the code of academic honesty will include, but are not limited to, the following:

1.     Fabricating data or citations

2.     Collaborating in areas prohibited by the professor

3.     Unauthorized multiple submission of work

4.     Sabotage of others' work, including library vandalism or manipulation

5.     Plagiarism: presenting any work as one's own that is not one's own

6.     The creation of unfair advantage

7.     The facilitation of dishonesty

8.     Tampering with or falsifying records

9.     Cheating on examinations through the use of written materials or giving or receiving help in any form during the exam, including talking, signals, electronic devices, etc.

Student Course

Evaluations

During the last two weeks of the class, you will receive notification, via

mail and eCampus, that the course evaluation is available for your input

electronically. Availability will end at the start of the final examination period. Your feedback is valuable and I encourage you to respond. Please be assured that your responses are anonymous and the results will not be available to the instructor until after the end of the semester and therefore after course grades have been submitted.