|
Syllabus for CSE403: Software Engineering
|
|
CSE403: Software Engineering
Credits
4
Catalog description
Fundamentals of software engineering using a group project as the basic vehicle. Topics covered
include the software crisis, managing complexity, requirements specification, architectural and
detailed design, testing and analysis, software process, and tools and environments.
Prerequisites
CSE 326; CSE 341; recommended: project experience in an academic or work setting.
Textbook(s) and/or other required material
SOFTWARE PROJECT SURVIVAL GUIDE
S. McConnell
ISBN-10: 1-57231-621-7
THE PRAGMATIC PROGRAMMER: FROM JOURNEYMAN TO MASTER
A. Hunt, D. Thomas
ISBN 978-0201616224
Assorted papers from the literature
Course objectives
A central objective of the course is to have students develop a deep understanding of the
distinctions between software engineering and programming. In addition, the students understand the
software lifecycle, increase their knowledge of classic and modern software engineering techniques,
and develop concrete experience in turning ill-formed concepts into products working with a team.
Topics covered
Topics covered include the software crisis, managing complexity, requirements specification,
architectural and detailed design, testing and analysis, software process, and tools and
environments.
Course structure
There are three lectures each week (50 minutes each) and one section with the teaching assistant.
The lectures cover general software engineering material, material pertinent specifically to the
quarter-long project, and usually includes some guest lectures from local industry. The sections
are often used for reviews of the projects and for presentation by the TA of material on specific
tools and technologies needed to develop the project.
ABET Outcomes Assessed
(a) an ability to apply knowledge of mathematics, science, and engineering
(k) an ability to use the techniques, skills, and modern computer engineering tools necessary for engineering practice
Additional ABET Outcomes Covered
(b) an ability to design and conduct experiments, as well as to analyze and interpret data
(c) an ability to design a computing system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
(d) an ability to function on multi-disciplinary teams
(e) an ability to identify, formulate, and solve computer engineering problems
(j) knowledge of contemporary issues
Last edited by
alverson
Last modified
09:12am 9 Mar 2007
|
 |
Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA 98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to webmaint]
|