Syllabus - Regis University: Academic Web Server for Faculty

Syllabus
Course Number: CS 432
Course Title:
Modern Software Engineering
Course Description
Introduces modern software engineering using the object-oriented paradigm. Develops an object
model for use in object-oriented analysis, design, and programming. Topics include object
modeling, UML, object-oriented analysis and design.
Prerequisite Courses
CS208 Computer Science Fundamentals
and
CS362 Data Structures
Course Overview
This course highlights key issues in Modern Software Engineering theory and practice by
focusing on a modern approach to Object-Oriented Analysis and Design and comparing this
approach to the traditional Waterfall software engineering approach.
Course Outcomes
Upon completion of this course, learners should be able to:
1. Explain the concept of software life cycle in terms of phases and their deliverables by
comparing software engineering approaches such as the Waterfall and Unified Process.
2. Justify object-oriented design philosophy by explaining via examples encapsulation,
interfaces, reuse, classifiers, objects, inheritance, polymorphism, overloading, overrridng
and design patterns.
3. Use object-oriented design philosophy to create a new, or improve an existing, mediumsized software design utilizing the Unified Modeling Language and Unified Process
4. Create a use-case-based software requirements specification that specifies the functional
and non-functional requirements for a medium-sized software system.
5. Demonstrate through involvement in a team project the ability to achieve a common
software design goal.
6. Provide advanced judgment concerning software engineering as part of a basis for social
and political decision making
College for Computer & Information Sciences | 3333 Regis Boulevard, Denver, CO 80221 | 303-964-6884 | regis.edu
©2015 Regis University
Revised: 5/29/2015
Page 1 of 6
Course Materials
Required Resources:
Online Course Content / Weekly course notes provided by the facilitator.
Technology Tools:
A UML development environment (student’s choice) that is capable of producing a UML
diagram image that can be inserted into MS Word (standalone jpeg is fine).
Optional Materials:
Arlow, J. & Neustadt, I. (2005). UML 2 and the Unifeid Process (2nd). Uppder Saddle River,
NJ: Addison-Wesley. ISBN: 0-321-32127-8.
(Although not required, this book is highly recommended. This is a practitioner’s trade
paperback that provides an excellent supplement to the UML diagrams and SDLC
introduced in the course.)
Schach, S. (2011). Object-Oriented & Classical Software Engineering. (8th edition). New
York: McGraw-Hill. ISBN: 978-0-07-319126-4.
(This is student textbook that provides an nice supplement to the more contemporary
software engineering concepts presented in the course.)
Pre-Assignment:
•
In Reynolds v. Sims (1964), the Supreme Court of the United States stated,
“Undoubtedly, the right of suffrage is a fundamental matter in a free and
democratic society. Especially since the right to exercise the franchise in a
free an unimpaired manner is preservative of other basic civil and political
rights, any alleged infringement of the rights of citizens to vote must be
carefully and meticulously scrutinized.”
– Reynolds v. Sims, 377 U.S. 533, 561-62 (1964).
Recently, the use of electronic voting machines and the software applications that control
these machines have received increasing scrutiny. Write a short essay, 2 to 3 double-spaced
pages, which address the question,
“What is the most significant software issue associated with electronic voting
machines and the role software practitioners play in addressing this issue?”
Keep in mind that you are writing a thesis-support essay that will be based on your own
conviction. Begin with an introduction that states the issue/problem and your position on
this issue, a body that supports and argues for your position, with appropriate citations as
necessary, and a conclusion. Note: there is no single ‘right’ answer to this question.
Online Format: Sign on to worldclass.regis.edu and become familiar with the course
navigation of the Web Curriculum. Complete assignment above due by midnight, Friday of
Week 1.
Classroom-based Format: Complete the assignment above by the first night of class.
©2015 Regis University
CS432 Syllabus
Page 2 of 6
Course Assignments and Activities
1
•
Topics
Readings
Activities Assignments and
Associated Points
Modern Software Engineering
Software Processes:
Software Life Cycle
Content/Notes for
Week 1
Participation in Discussion – 8% for
entire course
Assignment #1 – 2%
Voting Machine Essay
Due:
Online: Midnight, Friday
Classroom: 1st night of class
Waterfall requirements vs.
Unified Process inception
2
•
Software Requirements
Software Requirements Spec.
•
Software Design
Models, Use-case model
•
Software Processes
Analysis, Elaboration
•
Software Design
Object-oriented philosophy
objects, interfaces, design
patterns & encapsulation
Assignment #2 – 10%
SRS: use-case diagrams, use-case
specifications & UIs
Due:
Online: Midnight, Sunday
Classroom: 2nd night of class
Content/Notes for
Week 2
Assignment #3 – 10%
Use-case realizations,
communication diagrams
Due:
Online: Midnight, Sunday
Classroom: 3rd night of class
Content/Notes for
Week 3
Assignment #4 – 20%
class & sequence
diagrams
Due:
Online: Midnight Wednesday
of Week 5
Classroom: 5th night of class
Content/Notes for
Week 4
Midterm exam – 10%
Analysis model and
communication diagrams
3
4
•
Software Processes
Design Workflow
•
Software Design
classes, overloading,
associations class &
sequence diagrams, and
Design model
•
Software Processes
design ( –cont –)
•
Software Design
inheritance, polymorphism
overriding
©2015 Regis University
Work on class diagrams and
sequence diagrams for Assn 4
CS432 Syllabus
Page 3 of 6
5
6
•
Software Process
implementation & deployment
•
Software Design
components
•
Software APIs
•
Component-based Computing
components & nodes
•
Software Design
Cohesion & coupling
Content/Notes for
Week 5
Assignment #4 due
Content/Notes for
Week 6
Assignment #6 – 5%
Team Project Project Plan &
Risk Assessment
Due:
Online: Midnight, Sunday
Classroom: 7th night of class
Multi-tired architectures,
Design patterns
•
7
Software Project Management
Project scheduling & Risk
analysis
•
Software Evolution
Reengineering, Reuse,
Refactoring, & Configuration
mgmt.
•
Software Validation
Verification & validation
Assignment #5 – 5%
Component & Deployment
Diagrams
Due:
Online: Midnight, Sunday
Classroom: 6th night of class
Assignment #7 – 15%
Team Project SRS, Design Model,
znd Test Plan (design patterns,
project schedule, top-ten risk plan,
and test plan)
Due:
Online: Midnight, Sunday
of Week 8
Classroom: 8th night of class
Content/Notes for
Week 7
Work on test plan for Assn 7
Content/Notes for
Week 8
Assignment #7 due
Quality assurance
8
•
Software Project Management
Maturity models
•
Software Processes
Agile philosophies
Max Points
Possible:
Final exam – 15%
100%
Note: All assignments except Assignments #6 and #7 are individual assignments.
©2015 Regis University
CS432 Syllabus
Page 4 of 6
Student Evaluation Summary
Value
(percent of overall course
grade)
Assignment
Weekly Course Participation
8%
First Assignment #1
2%
Assignment #2 & 3 (10% each)
20%
Assignment #4
20%
Assignment #5
5%
Assignment #6 (team project)
5%
Assignment #7 (team project)
15%
Midterm
10%
Final exam
15%
TOTAL
100 %
Course Policies and Procedures
Late Assignments/Assignment Revisions Policy for CS432
If you have not negotiated with the facilitator, assignments turned in late will be graded, then
reduced by 3% per day. Assignments will not be accepted later than one week after due date.
Week 8 assignment may only be 3 days late.
CC&IS Grading Scale
Letter Grade
Percentage
Grade Point
A
A–
B+
B
B–
C+
C
C–
D+
D
DF
93 to 100
90 to less than 93
87 to less than 90
83 to less than 87
80 to less than 83
77 to less than 80
73 to less than 77
70 to less than 73
67 to less than 70
63 to less than 67
60 to less than 63
Less than 60
4.00
3.67
3.33
3.00
2.67
2.33
2.00
1.67
1.33
1.00
.67
0
Additional information about grading can be found in the latest edition of the
University Catalog, available at
http://www.regis.edu/Academics/Course%20Catalog.aspx.
©2015 Regis University
CS432 Syllabus
Page 5 of 6
CC&IS Policies and Procedures
Each of the following CC&IS Policies & Procedures is incorporated here by reference. Students
are expected to review this information each term, and agree to the policies and procedures as
identified here and specified in the latest edition of the University Catalog, available at
http://www.regis.edu/Academics/Course%20Catalog.aspx or at the link provided.
•
The CC&IS Academic Integrity Policy.
•
The Student Honor Code and Student Standards of Conduct.
•
Incomplete Grade Policy, Pass / No Pass Grades, Grade Reports.
•
The Information Privacy policy and FERPA. For more information regarding FERPA,
visit the U.S. Department of Education.
•
The HIPPA policies for protected health information. The complete Regis University
HIPAA Privacy & Security policy can be found here: http://www.regis.edu/About-RegisUniversity/University-Offices-and-Services/Auxiliary-Business/HIPAA.aspx.
•
The Human Subjects Institutional Review Board (IRB) procedures. More information
about the IRB and its processes can be found here: http://regis.edu/Academics/AcademicGrants/Proposals/Regis-Information/IRB.aspx.
The CC&IS Policies & Procedures Syllabus Addendum summarizes additional important
policies including, Diversity, Equal Access, Disability Services, and Attendance & Participation
that apply to every course offered by the College of Computer & Information Sciences at Regis
University.
A copy of the CC&IS Policies & Procedures Syllabus Addendum can be found here:
https://in2.regis.edu/sites/ccis/policies/Repository/CCIS%20Syllabus%20Addendum.docx.
©2015 Regis University
CS432 Syllabus
Page 6 of 6