Software Engineering Technology (Optional Co-op) (Online)
Program start date | Application deadline |
2024-09-01 | - |
2025-01-01 | - |
Program Overview
Centennial College's Software Engineering Technology (Online) program equips students with the skills to design, develop, and maintain software systems. Through advanced diploma courses, students gain expertise in modern programming paradigms, data management, software engineering methodologies, and intelligent systems integration. The program emphasizes hands-on experience with industry-standard tools and languages, preparing graduates for careers in software development, web development, data analytics, and more.
Program Outline
Degree Overview:
Overview:
Centennial College's Software Engineering Technology (Online) program provides a comprehensive three-year learning experience in designing, developing, and maintaining software systems. Students will attend advanced diploma courses that cover modern programming paradigms and frameworks, design and algorithm concepts, data management tools, modern software engineering methodologies, and integration of intelligent systems into various applications. The program also exposes students to a solid knowledge of systems integration, enterprise development, mobile computing, and software security.
Objectives:
- Prepare students for success in the rapidly evolving field of software engineering.
- Provide students with the knowledge and hands-on experience to design and develop various kinds of software applications, human-computer interfaces, and enterprise information systems.
Program Description:
The coursework emphasizes object-oriented software design methodologies, user-oriented interface design, software testing and quality assurance, and a wide range of programming languages and tools including:
- C#
- Java
- Java EE
- Kotlin
- Oracle
- MS-SQL Server
- UNIX/Linux
- Python
- Microsoft's .NET Core
- HTML5/CSS/JavaScript/Angular/React
- Mobile application development
- Emerging web frameworks and architectural styles
- Cloud computing
- Predictive analytics
- Artificial intelligence/machine learning The program includes two software development projects to put students' skills into action and develop real-world business applications. These projects allow students to apply all the technical, systems, and business skills they acquire during their studies to build high-quality software.
Outline:
Program Content:
- Programming Paradigms and Frameworks
- Design and Algorithm Concepts
- Data Management Tools
- Modern Software Engineering Methodologies
- Integration of Intelligent Systems
- Systems Integration
- Enterprise Development
- Mobile Computing
- Software Security
- Object-Oriented Software Design Methodologies
- User-Oriented Interface Design
- Software Testing and Quality Assurance
- Programming Languages and Tools
Course Schedule:
The program is delivered over six semesters. The course schedule is as follows:
Semester 1
- Introduction to Software Engineering
- Programming Fundamentals
- Data Structures and Algorithms
- Discrete Mathematics
Semester 2
- Object-Oriented Programming
- Database Management Systems
- Software Design and Analysis
- Operating Systems
Semester 3
- Advanced Object-Oriented Programming
- Software Architecture and Design
- Data Analytics
- Cloud Computing
Semester 4
- Software Testing and Quality Assurance
- Mobile Application Development
- Human-Computer Interaction
- Information Security
Semester 5
- Software Development Project 1
- Advanced Software Engineering
- Enterprise Software Development
- Emerging Technologies
Semester 6
- Software Development Project 2
- Capstone Project
- Software Maintenance and Evolution
- Software Engineering Best Practices
Assessment:
The program uses a variety of assessment methods to evaluate student learning, including:
- Exams
- Quizzes
- Assignments
- Projects
- Presentations
- Lab reports The assessment criteria are based on the program's learning outcomes, which are:
- Students will be able to design, develop, and maintain software systems.
- Students will be able to use a variety of programming languages and tools to develop software applications.
- Students will be able to work in a team environment to develop software solutions.
- Students will be able to communicate effectively about technical concepts.
Teaching:
The program is taught by a team of experienced faculty members who are experts in their field. The faculty use a variety of teaching methods, including:
- Lectures
- Tutorials
- Labs
- Group projects
- Individual projects The program also uses a variety of online learning resources, such as:
- Online textbooks
- Online quizzes and assignments
- Discussion forums
- Virtual labs
Careers:
Graduates of the program will be prepared for careers in a variety of fields, including:
- Software development
- Software engineering
- Web development
- Mobile application development
- Data analytics
- Information security
- Cloud computing Graduates will be eligible for positions such as:
- Software developer
- Software engineer
- Web developer
- Mobile application developer
- Data analyst
- Information security analyst
- Cloud architect