Software Engineering - SWE

SWE F471 W Software Engineering (m)

3 Credits
Offered Fall

Introduction to basic software engineering principles, techniques, methods and standards as applied to the engineering of complex software systems. Topics from software system development process models, multiple view system modeling and specification using UML, classification of software systems, project management and legal issues. Prerequisites: Senior standing; CS F311; ENGL F111X; ENGL F211X or ENGL F213X; or permission of instructor. Cross-listed with CS F471. (3+0)

SWE F670 Computer Science for Software Engineers

3 Credits


An overview and survey of the theoretical underpinnings of computer science. Topics are taken from the areas of algorithms and data structures; computer architecture; computer networks, communications and operating systems; computability and formal languages; languages and compilation. Also available via e-Learning and Distance Education. Prerequisites: Graduate Standing. Cross-listed with CS F670. (3+0)

SWE F671 Advanced Software Engineering

3 Credits
Offered Spring

Advanced software development as an engineering discipline. Includes investigation of current tools, standards, foundation and trends in software engineering, from component-ware, software system composition, e-systems, software architecture and CASE tools. Prerequisites: SWE F471. Cross-listed with CS F671. (3+0)

SWE F672 Software Process Improvement

3 Credits
Offered Spring Odd-numbered Years

Commonly applied methods for improving the software development process. Emphasis on the Software Engineering Institute's capability maturity model, and specifically on the key process areas of level 2 and level 3 of that model. These include software standards. Prerequisites: SWE F671 or permission of instructor. Cross-listed with CS F672. (3+0)

SWE F673 Software Requirements Engineering

3 Credits
Offered As Demand Warrants

Focus on the requirements analysis phase of the software development life cycle. Ways to obtain, analyze and specify complete and correct sets of requirements. Critique of selected requirements analysis models. Study of current large scale software developments that have failed or are failing. Development of software requirements specifications for large and real software systems via team efforts. Also available via e-Learning and Distance Education. Prerequisites: SWE F671 or permission of instructor. Cross-listed with CS F673. (3+0)

SWE F674 Software Architecture

3 Credits
Offered Spring

Software architectural styles are introduced and defined as structural descriptions of software systems. Methods for constructing and binding software systems are introduced and specified as operational views. The architectural approach, as a classical engineering method for describing structure and behavior of technical artifacts, will be applied for the composition of software systems. Prerequisites: SWE F671. Cross-listed with CS F674. (3+0)

SWE F690 Graduate Seminar and Project

1-6 Credits
Offered Fall

First semester of a two-semester seminar in which students will, individually or in teams, work on and present the results of major programming or literature survey projects in computer science and software engineering. Written and oral reports will be required. Prerequisites: 12 credits in graduate CS or SWE courses or permission of Computer Science or Software Engineering graduate advisor. Cross-listed with CS F690. (1-6+0)

SWE F691 Graduate Seminar and Project

3 Credits
Offered Spring

Second semester of a two-semester seminar in which students will, individually or in teams, work on and present the results of major programming or literature survey projects in computer science. Written and oral reports will be required. Prerequisites: SWE F690, 12 credits in graduate CS or SWE courses; or permission of Computer Science or Software Engineering graduate advisor. Cross-listed with CS F691. (3+0)