CS 425 Software Engineering Course Syllabus

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Department of Computer Science and Engineering

College of Engineering, University of Nevada, Reno

Fall 2013

CS 425 Software Engineering


Course Syllabus
Lectures: TR, 9:30 – 10:45 am, SEM-234

Instructor: Sergiu Dascalu


Room SEM-236
Tel: (775) 784-4613
[email protected]
www.cse.unr.edu/~dascalus

Office hours: T 11:00 am – 12:00 pm, or by appointment or chance

Catalog description: CS 425 SOFTWARE ENGINEERING


Lecture + Lab: 3 + 0; Credit(s): 3
Software processes, project management, software requirements, system
models, architectural design, detailed design, user interface design,
implementation, integration, verification, validation, testing, evolution, rapid
development, software tools (major capstone course)

Pre-requisites: CS 446; ENG 102; CH 201; Junior or senior standing

Course outline: This course covers the software development process, from requirements
elicitation and analysis, through specification and design, to implementation,
integration, testing, and maintenance (evolution). A variety of concepts,
principles, techniques, and tools are presented, encompassing topics such as
software processes, project management, people management, software
requirements, system models, architectural and detailed design, user interface
design, programming practices, verification and validation, and software
evolution. Although the emphasis will be on modern approaches some more
traditional software engineering techniques will also be discussed.

Texts:  [SE-9] Ian Sommerville, Software Engineering, 9th Edition, Addison-Wesley,


2011, ISBN: 0-13-703515-2
 Lecture notes: include presentations that will be made available by the
instructors and notes that you will take during lectures
 Additional material as indicated later by the instructors

Initial web pointers:  CS 425 course website:


www.cse.unr.edu/~dascalus/se2013.html
 Ian Sommerville’s web-site for the textbook:
http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/ [Note: 9th edition]
 The Software Engineering Institute, at Carnegie Mellon University,
www.sei.cmu.edu
 The Object Management Group:
www.omg.org

Several other addresses of www sites that contain useful resources (technical
documents, tools, etc.) will be indicated by the instructors during the semester.

Fall 2013 page 1 of 6


Grading scheme:  Assignments (individual) A#1, A#2 15%
(tentative)  Project (team) P#1, P#2, P#3, P#4, DEMO 35%
 Midterm test T#1 15%
 Final exam (comprehensive) EXAM 30%
 Class participation CP0 5%

Honors students are also required to complete a technical essay (TESS) worth
10% (see grading scales below).

In order to pass the course you need to obtain at least 50% overall, at least 50%
in tests (midterm test + final exam), at least 50% in applications (project parts
P#1, P#2 and P#3 + assignments A#1 and A#2 + class participation CP), and at
least 50% in project implementation and demo (P#4 and DEMO).

To obtain grade A you need to obtain at least 90% overall and at least 90% in
class participation. Poor class participation can significantly affect your overall
grade.

There are no make-ups for homework or tests in this course.

Grading scale [regular CS 425]:

A 90 -100 [maximum 100]


A- 87 - 89
B+ 83 - 86
B 78 - 82
B- 74 - 77
C+ 70 - 73
C 65 - 69
C- 61 - 64
D+ 57 - 60
D 54 - 56
D- 50 - 53
F < 50

Grading scale [Honors CS 425]:

A 100 - 110 [maximum 110]


A- 96 - 99
B+ 91 - 95
B 85 - 90
B- 80 - 84
C+ 76 - 79
C 71 - 75
C- 67 - 70
D+ 63 - 66
D 59 - 62
D- 55 - 58
F < 55

Late submissions: Late submissions of homework will be penalized with a deduction of 10% of the
grade per late day, to a maximum of two late days for each submission. No
material will be accepted after two days past the deadline. For example, an
assignment that is worth 90/100 points will receive 90*0.9 = 81/100 points if it is
one day late. The same assignment will receive 90*0.8 = 72/100 points if it is two

Fall 2013 page 2 of 6


late days and it will not be accepted if it is more than two days late. Late days are
not divisible in subunits.

On plagiarism and cheating:

Plagiarism and cheating will not be tolerated. It will be dealt with according to the
policies of the University of Nevada, Reno regarding academic dishonesty.
Please read these policies at www.unr.edu/stsv/acdispol.html

Legal notices on the World Wide Web:

When accessing www resources such as downloadable software, technical


reports, papers, on-line tutorials, etc., do not forget to read their accompanying
legal notices and comply with their provisions.

Overall course objective:

Coverage of the phases of the software process through study of related


concepts, principles and techniques as well as practical software development
work using a systematic engineering approach.

Main directions:
 Study of software engineering concepts, principles, and techniques
 Extensive coverage of the phases and activities of the software process
 Study of several advanced software engineering topics such as software
reuse, component-based software engineering, and service-oriented
architecture
 Practical software development work within the framework of integrated
development environments

Disability statement: If you have a disability for which you will need to request accommodations,
please contact as soon as possible the instructors or the Disability Resource
Center (Thompson Student Services - 107).

Academic success services:

Your student fees cover usage of the Math Center (784-4433 or


www.unr.edu/mathcenter/), Tutoring Center (784-6801 or
www.unr.edu/tutoring/), and University Writing Center (784-6030 or
http://www.unr.edu/writing_center/. These centers support your
classroom learning; it is your responsibility to take advantage of their
services. Keep in mind that seeking help outside of class is the sign of a
responsible and successful student.

Statement on audio and video recording:

Surreptitious or covert video-taping of class or unauthorized audio recording of


class is prohibited by law and by Board of Regents policy. This class may be
videotaped or audio recorded only with the written permission of the instructor.
In order to accommodate students with disabilities, some students may be given
permission to record class lectures and discussions. Therefore, students should
understand that their comments during class may be recorded.

Fall 2013 page 3 of 6


Tentative schedule

Week Dates (M, W) Contents

1 Aug 27, 29 Lectures [Introduction]

2 Sep 03, 05 Lectures, Invited talks, A#1 given

Lecture, Invited talks, A#2 given


3 Sep 10, 12
A#1 due
Lectures, Invited talks, A#3 given
4 Sep 17, 19
A#2 due

5 Sep 24, 26 Lectures, P#1 given

Project meetings
6 Oct 01, 03
A#3 due

Project meetings, Lecture, Project P#2 given


7 Oct 08, 10
P#1 due

8 Oct 15, 17 Lectures, Technical essay given (TESS)

Lecture, Project P#3 given


9 Oct 22, 24
P#2 due

Lecture
10 Oct 29, 31
Midterm [10/31]
Lectures, Project P#4 given
11 Nov 05, 07
P#3 due

12 Nov 12, 14 Lectures, [Invited talk]

13 Nov 19, 21 Lecture

Lectures
14 Nov 26, -
TESS due

15 Dec 03, 05 Lectures

P#4 due, Demo (12/10 and 12/11)


16 Dec 10, -
Final EXAM (12/17)

Fall 2013 page 4 of 6


Course Assessment Matrix
CS 425 Software Engineering

Program
Program
Course Outcomes Assessment Methods/Metrics Objectives
Outcomes
Impacted

Operate in teams to develop the


Students demonstrate
project, acquire and use resources
the ability to develop a
(references) pertaining to the
high quality software
4 project’s application domain, and 2, 3, 4
system while working in a
demonstrate the project’s
project group.
functionality.
Students have the ability
Define a project topic of practical
to identify software
utility and/or interest in a specific
development needs and
area of human activity, assess
challenges that require
5 challenges for developing the 1, 3
various engineering
project, and outline possible design
solutions, and formulate
and implementation solutions.
such solutions.
Students have a Discuss topics pertaining to
thorough understanding professional, ethical and social
6 of professional, ethical aspects of the software engineer’s
4
and social responsibilities job and activities.
Students are able to
analyze the impact of
Explore topics relevant to the local
computing and
and global impact of computing and
8 engineering solutions on
engineering solutions on individuals,
individuals,
organizations, and the society.
organizations, and
society
Use modern software engineering
Students are capable to
techniques and tools associated
develop their software
with the various phases and
11 projects using modern
activities of the software process:
1, 2
engineering techniques
requirements engineering, analysis,
and tools.
design, implementation, and testing.
Students demonstrate
the ability to apply a Study and apply various high level
13 range of design and and detailed design and
2, 3
development principles in implementation principles for
the construction of a building a software system.
software system.

Fall 2013 page 5 of 6


CSE Program Outcomes

Outcome Description of Outcome

1 an ability to apply knowledge of computing, mathematics, science, and engineering

2 an ability to design and conduct experiments, as well as to analyze and interpret data
an ability to design, implement, and evaluate a computer-based system, process,
3 component, or program to meet desired needs, within realistic constraints specific to
the field
4 an ability to function effectively on multi-disciplinary teams
an ability to analyze a problem, and identify, formulate and use the appropriate
5 computing and engineering requirements for obtaining its solution
an understanding of professional, ethical, legal, security and social issues and
6 responsibilities
7 an ability to communicate effectively with a range of audiences
the broad education necessary to analyze the local and global impact of computing and
8 engineering solutions on individuals, organizations, and society
a recognition of the need for, and an ability to engage in continuing professional
9 development and life-long learning
10 a knowledge of contemporary issues
an ability to use current techniques, skills, and tools necessary for computing and
11 engineering practice
an ability to apply mathematical foundations, algorithmic principles, and computer
science and engineering theory in the modeling and design of computer-based
12 systems in a way that demonstrates comprehension of the tradeoffs involved in design
choices
an ability to apply design and development principles in the construction of software
13 systems or computer systems of varying complexity

CSE Program Objectives

Within 3 to 5 years of graduation our graduates will:

1. be employed as computer science or computer engineering professionals beyond entry level


positions or be making satisfactory progress in graduate programs.
2. have peer-recognized expertise together with the ability to articulate that expertise as computer
science or computer engineering professionals.
3. apply good analytic, design, and implementation skills required to formulate and solve computer
science or computer engineering problems.
4. demonstrate that they can function, communicate, collaborate and continue to learn effectively as
ethically and socially responsible computer science or computer engineering professionals.

Fall 2013 page 6 of 6

You might also like