Page 256 - University Bulletin
P. 256
SE401 Software Quality Assurance and Testing
Credits: 3 (3,1,0) Prerequisites: SE322
This course is designed to give an understanding of the key concepts and principles in creating and
managing successful software testing to meet specific requirements using best practices of
software quality assurance. Topics covered include software quality assurance, testing process,
test design and coverage techniques and testing strategy. Best practice strategies in object-
oriented software testing and web application are also discussed. An overview of test automation
methods and tools is also covered.
SE409 Cloud Computing
Credits: 3 (3,0,1) Prerequisites: CS331 and SE322
This course will give students a theoretical foundation and hands-on experience with the various
technologies of the cloud computing paradigm. The course will cover topics related to cloud
infrastructure and software stack, programming models, underlying distributed storage layers, as
well as Virtualization. Students will also be exposed to various cloud frameworks and libraries.
SE411 Software Construction
Credits: 3 (3,0,1) Prerequisites: SE401
This course will provide students with an in-depth study of software construction. Topics include
basic theory of grammars and parsing, use of parser generators, software construction
fundamentals (minimizing complexity, anticipating change, constructing for verification and
standards in construction), managing construction (construction models, construction planning
and construction measurement), practical considerations (construction design, construction
languages, coding, construction testing, reuse, construction quality, configuration management,
security, automation, and integration), and techniques for handling concurrency and inter-process
communication.
SE413 Software System Modelling
Credits: 3 (3,0,1) Prerequisites: SE322
This course examines the underlying concepts and latest topics in software models. This course
considers many of the standard models for representing sequential and concurrent systems, such
as state machines, algebras, and traces. It shows how different logics can be used to specify
properties of software systems, such as functional correctness, deadlock freedom, and internal
consistency. Concepts such as composition mechanisms, abstraction relations, invariants, non-
determinism, inductive definitions and de-notational descriptions are recurrent themes
throughout the course. This course provides the formal foundations for the other core courses.
Notations are not emphasized, although some are introduced for concreteness. Examples are
drawn from software applications.
SE417 Agent Based Software Engineering
Credits: 3 (3,0,1) Prerequisites: SE322
This course begins with an overview of the agent systems and software agents. Then it focuses on
agent system architecture and infrastructure from a software engineering viewpoint, including:
requirements for agent-based systems, modeling and design of agent-based systems,
development process for agent-based systems. Topics such as agent architecture, communication,
knowledge sharing, computing and uncertainty management are discussed. Studying society of
agents and models of agency follows. Finally, a perspective on a methodology for agent-oriented
software engineering and standards are presented.
244 PSU UNDERGRADUATE BULLETIN

