2020-2021 University Catalog 
    
    Jun 17, 2024  
2020-2021 University Catalog [ARCHIVED CATALOG]

COSC 415 - Software Engineering


Introduces students to the practice of software engineering by creating software-as-a-service (SaaS) applications. An integral part of the course is for students working in small groups to take a Saas project from conception through planning, development, testing, and deployment. Student groups are normally paired with a local non-profit with a need that can be addressed through a new or modified Saas application. The project will be developed using a modern application framework (e.g., Ruby on Rails) and deployed using a cloud provider such as Heroku. Through the course and project, students will learn and use Agile methodologies and tools, including user stories, behavior- and test- driven development, pair programming, version control for team-based development, and continuous integration. Moreover, students will learn and apply fundamental programming constructs and techniques including design patterns for software architecture, higher-order functions, metaprogramming, and reflection, to improve the maintainability, modularity and reusability of their code.

Credits: 1
Corequisite: COSC 415L
Prerequisites: COSC 202 or COSC 208 or COSC 301
Major/Minor Restrictions: None
Class Restriction: None
Area of Inquiry: Natural Sciences & Mathematics
Liberal Arts CORE: None


Click here for Course Offerings by term