|
Jan 28, 2025
|
|
|
|
CS 311 - Software Patterns 5 CR
This course introduces software design paradigms, and design and architectural patterns essential for the creation of flexible, reusable, reliable and maintainable software applications. The course offers students a hands-on opportunity to apply creational, functional and behavioral design patterns, as well as architectural patterns, in a software design. 54
Prerequisite(s): CS 211 and admission to Computer Science, BS program, or instructor’s permission.
Course Outcomes
- Use a design paradigm to design a simple software system, and explain how system design principles have been applied in this design.
- Identify the most suitable design pattern for a simple system suitable for a given scenario
- Identify the software architecture pattern by differentiating among common software architectures such as layered, pipe-and-filter, and client-server
- Apply examples of design patterns in a software design
- Discuss and select appropriate software architecture for a simple system suitable for a given scenario.
- Refactor an existing software implementation to improve some aspect of its design.
- Discuss implementation trade-offs of certain patterns with respect to others
Find out when this course is offered
Add to Favorites (opens a new window)
|
|