Teaching

Software Engineering Degree (B.S.E.)
 
Software Engineering Option (B.C.S./S.E.)
 
SE 101 - Introduction to Methods of Software Engineering
An introduction to some of the basic methods and principles used by software engineers, including fundamentals of technical communication, measurement, analysis, and design. Some aspects of the software engineering profession, including standards, safety and intellectual property.

CS 246 - Software Abstraction and Specification
Systematic methods for designing, coding, testing, and documenting medium-sized programs. Major topics include formal specification, abstraction, modularity and reusability. Students will become strong apprentice programmers able to write a clear specification for a problem, read a specification and design the software to implement it, use appropriate data structures in a program, write reusable code and reuse existing code when possible, debug a program, and adequately test a program.

CS 445 - Software Requirements and Specification
Introduction to the requirements definition phase of software development. Models, notations, and processes for software requirements identification, representation, validation, and analysis. An important component of the course is a group project: the software requirements specification of a large software system.

CS 745 - Computer Aided Verification (grad course)
This course introduces the theory and practice of formal methods for the design and analysis of software systems. The emphasis is on models of software, algorithms for analyzing models, and heuristics for coping with the algorithm's high computational complexity.
CS 846 - Model Based Software Engineering (grad course)
This course looks at the state of the art of Model-based software engineering (MBSE). MBSE is an approach to software development in which software models play a primary and indispensible role.  It allows developers to work and reason about software requirements, design, and correctness at higher levels of abstraction, and to generate automatically implementations, deployments, and other artifacts. 

© 2002 J.M. Atlee

Updated: 4.21.02...
.