Courses

CSCI-3308 (3) Software Engineering Methods and Tools

Focuses on software engineering methods and tools for application development, including design and system organization; using and creating reusable libraries; building, testing, and debugging; and performance evaluation. Prerequisites: Requires pre-requisite course of CSCI 2270 (minimum grade C-).

CSCI-4308 (4) Software Engineering Project 1

Advanced practicum in which students design, implement, document and test software systems for use in industry, non-profits, government and research institutions. Also offers extensive experience in oral and written communication throughout the software lifecycle. Students must take CSCI 4308 and 4318 contiguously, as the project spans the entire academic year. Prereqs., successful completion of a minimum of 36 credit hours of Computer Science Foundation, Track Foundation, Track Core, Computer Science electives, and WRTG 3030. Prerequisites: Restricted to students with 87-180 credits (Senior, Fifth Year Senior) Computer Science (CSCI) majors or Computer Science Concurrent Degree majors only.

CSCI-4318 (4) Software Engineering Project 2

Second semester of an advanced practicum in computer science. Students must take CSCI 4308 and 4318 contiguously as the project spans the entire academic year. Prereq., CSCI 4308.

CSCI-4448 (3) Object-Oriented Analysis and Design

An applied analysis and design class addressing the use of object-oriented techniques. Topics include domain modeling, use cases, architectural design, and modeling notations. Students apply the techniques in analysis and design projects. Prereq., CSCI 3155 or expertise in one or more object-oriented programming languages, such as C++ or Java. Same as CSCI 5448.

CSCI-5448 (3) Object-Oriented Analysis and Design

Same as CSCI 4448. Prerequisites: Restricted to graduate students or Computer Science Concurrent Degree majors only.

CSCI-5548 (3) Software Engineering of Standalone Programs

Applies engineering principles to phases of software product development, project planning, requirements definition, design, implementation, validation, and maintenance. Emphasizes practical methods for communicating and verifying definitions and designs---prototyping, inspections, and modeling. Includes relation to RTS and object-oriented programming. Prereqs., CSCI 1300, CSCI 2270, or instructor consent. Same as ECEN 5543. Prerequisites: Restricted to graduate students or Computer Science Concurrent Degree majors only.

CSCI-5608 (3) Software Project Management

Presents topics and techniques critical to the management of software product development, including estimating, planning, quality, tracking, reporting,team organization, people management, and legal issues. Gives special attention to problems unique to software projects. Prereqs., ECEN 4583, CSCI 5548 and 4318, or equivalent industrial experience. Same as ECEN 5603 and EMEN 5031. Prerequisites: Restricted to graduate students or Computer Science Concurrent Degree majors only.

CSCI-5828 (3) Foundations of Software Engineering

Explores techniques, languages, and tools for development and maintenance of software systems. Topics include specification languages, configuration modeling, testing techniques, process modeling, program annotations, and program proofs. Prerequisites: Restricted to graduate students or Computer Science Concurrent Degree majors only.

CSCI-6268 (3) Foundations of Computer and Network Security

Studies methods to protect information, and the ability to process and move information, from theft, misuse, tampering, destruction, and unauthorized access. Introduces foundational topics of computer and network security, including security models, cryptopgraphy, and authentication protocols. Prereq., CSCI 5273. Same as TLEN 5550. Prerequisites: Restricted to Graduate Students only.

CSCI-7818 (3) Topics in Software Engineering

Studies selected topics of current interest in software engineering. Prereq., instructor consent. Prerequisites: Restricted to Graduate Students only.