Objectives:
The intent of the Software Engineering Certificate is to:
- provide an understanding of the principles of software engineering and their application to software and environments;
- provide a solid foundation in the fundamental frameworks, methods, and technologies of software engineering;
- provide an understanding of the conventional methods of software engineering and managing software projects; and
- provide an understanding of the most recent advancements in contemporary software engineering topics including object-oriented development methods and web engineering.
- Engineers and scientists involved in design or implementation of large software systems.
- Systems analysts and application programmers who will need technical knowledge as well as exposure to the theory of software engineering.
- Returning M.S. graduates who want to expand and maintain their knowledge of software engineering.
- New graduate students with an immediate interest in software engineering.
Program Description:
Students in the Software Engineering Certificate program apply the latest techniques for the design and implementation of software systems. From Object Oriented Design to Software Management to Web Application Development; students are exposed to all parts of the software lifecycle in detail. Application of theory to real world problems and situations is emphasized. The certificate comprises four courses.
Students are required to take the following two courses
ECSE-6770 Software Engineering I
Engineering approach to the development of large programming projects. Successive steps of requirements analysis, specification, design (e.g., top-down modularization), coding (e.g., structured programming), debugging and testing, maintenance, and thorough documentation, as illustrated by examples and papers from current literature. Team project is required. Prerequisites: CISH-4020 Object Structures or CSCI-2300 Data Structures and Algorithms.
CISH-6050 Software Engineering Management
Introduction to the current issues in software engineering management. Topics include the origin of the "software crisis," current state-of-the-practice, modeling the software engineering process, the relationship of methods and tools to process, software validation, risk mitigation, and software engineering economics. Prerequisites: CISH-4020 Object Structures or CSCI-2300 Data Structures and Algorithms.
In addition, students must select two of the following elective courses:
ECSE-6780 Software Engineering II
Continuation of ECSE-6770 - Current techniques in software engineering with topics selected from portability, security, public key cryptosystems, legal protection of software, reliable software, management of large projects, charging for computing resources, and source-to-source transformations for optimization. Prerequisite: ECSE-6770 Software Engineering I.
CISH-6010 Object Oriented Programing & Design
An introduction to the theory and practice of object oriented programming and design. Encapsulation, inheritance, genericity, dynamic binding, and polymorphism. Students use these concepts to design and implement a modest sized system. One object oriented language (chosen by the instructor) is studied in detail and required for the project. Other languages are covered briefly.
CISH-6510 Web Application Design and Development (Previously known as CISH-6960 Web Technologies)
This course will explore a set of key technologies currently used to support Web-based applications. Students will acquire a basic understanding of the Internet and the World Wide Web and how it operates. Students will learn how to establish and maintain a Web site. The course provides students with an understanding of the technologies that support Web-based interactions and their impact on the World Wide Web. Focus is on the investigation of the most current technologies including HTML, XML, Servlets, and Java Server Pages. The future direction of Web applications will also be explored. Emphasis is placed on hands-on application of the technologies both inside and outside of class. Prerequisite: CISH-4020 Object Structures or CSCI-2300 Data Structures and Algorithms, and experience with HTML and Java.
Prerequisites:
The Software Engineering Certificate consists of four advanced
graduate courses. See the prerequisites on each course for
details.
If you have questions or need further information
please
contact the
Certificate Program Coordinator:
Houman Younessi
Email: Phone: (860) 548-7880