Yi Liu

faculty

Yi Liu, PhD

Associate Professor

Computer & Information Science

508-910-6692

508-999-9144

{nkw33Bwocuuf0gfw

Dion 302E

Education

2005University of MississippiPhD
1998Nanjing University, ChinaM.Eng

Teaching

  • Software Engineering

Teaching

Programs

Teaching

Courses

Design and development of large distributed software systems with use of COTS (Components Off The Shelf), development of custom code, and integration with legacy systems. Course includes study of software architectures, frameworks, and types of middleware. Architectural design patterns and issues encountered in design of distributed systems are covered in depth.

Principles, methodologies, and techniques in designing software architecture. The course introduces the fundamental elements of software systems in the context of the design process. Architectural patterns, design patterns, and software frameworks are covered in depth. How to document design work to an acceptable standard is also covered.

A study of principles and practices for development of safe and secure software. This course focuses on the design and implementation of secure software. It uses security design patterns and secure coding practices to eliminate the accidental insertion of vulnerabilities into code and to mitigate the risk of security vulnerabilities.

A study of principles and practices for development of safe and secure software. This course focuses on the design and implementation of secure software. It uses security design patterns and secure coding practices to eliminate the accidental insertion of vulnerabilities into code and to mitigate the risk of security vulnerabilities.

Prerequisites: Completion of three core courses.   Development of a detailed, significant project in computer science under the close supervision of a faculty member, perhaps as one member of a student team. This project may be a software implementation, a design effort, or a theoretical or practical written analysis. Project report with optional oral presentation must be evaluated by three faculty members including the project supervisor.  

Prerequisites: Completion of three core courses.   Development of a detailed, significant project in computer science under the close supervision of a faculty member, perhaps as one member of a student team. This project may be a software implementation, a design effort, or a theoretical or practical written analysis. Project report with optional oral presentation must be evaluated by three faculty members including the project supervisor.  

Supervised internships at suitable locations in industry and government. Internships must include training and supervision - both at the place of training and at the academic unit. This valuable form of professional training provides students with the opportunity to develop their engineering skills in an off-campus setting. Term paper required. Credit not be given retroactively. Prior arrangements necessary.

Research

Research interests

  • Software engineering with specific interests in software architecture, software frameworks, and software design patterns and secure software engineering
  • Geospatial data science