Computer Programming and Analysis (Optional Co-op)

Select start date and campus

Close

Applying as a Canadian applicant

Domestic students should apply online or by phone at 1-888-892-2228.

Applying as an International applicant

International students should apply online.
Close

Campus tours

Campus tours are one of the best ways to experience Conestoga. During this time, we are offering online guided tours to show you all Conestoga has to offer.

Book your tour

Virtual tours

If you can't make an on-campus tour or attend one of our events, the virtual tour is a great way to visit us.

View our Virtual tour

Courses - January 2024

Level 1

Course details

Understanding Workplace Behaviours
CDEV1520

Description: Information technology professionals require a strong knowledge of workplace best practices and interpersonal relations. This course explores the skills needed for career building, team building, decision making, communication, workplace culture and organizational change. Students will learn corporate etiquette and understand the workplace experience. The course will encourage students to make connections with industry professionals.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites:
  • CoRequisites:

College Reading & Writing Skills
COMM1085

Description: This course introduces students to the reading, writing, and critical thinking skills needed for academic and workplace success. Students will analyse a variety of texts and apply the steps of planning, writing, and revising to produce writing that meets the expectations of selected audiences and purposes. The course prepares students for college-level writing tasks, research, and documentation by asking them to produce clear, informed, and purposeful documents relevant to both academic and professional contexts.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites:
  • CoRequisites:

Conestoga 101
CON0101

Description: This self-directed course focuses on introducing new students to the supports, services, and opportunities available at Conestoga College. By the end of this course, students will understand the academic expectations of the Conestoga learning environment, as well as the supports available to ensure their academic success. Students will also be able to identify on-campus services that support their health and wellness, and explore ways to get actively involved in the Conestoga community through co-curricular learning opportunities.
  • Hours: 1
  • Credits: 0
  • Pre-Requisites:
  • CoRequisites:

User Experience
INFO1265

Description: Because of the proliferation of different types of devices, the growing range of digital user interface technologies, and the increasingly competitive nature of the software industry, high-tech companies have come to understand the growing importance of the User Experience, and to value skilled professionals in this area. Thus, students are introduced to best current practices in interactive design, and will solve a series of design problems which draw on different types of devices and varying types of navigation controls, as applied to business and commercial applications. Students will consider competition, target markets, business models and technical challenges in order to gather requirements , storyboard and document the design.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites:
  • CoRequisites:

Mathematics for Information Technology I
MATH1910

Description:

The purpose of the course is to provide students with a sound mathematical foundation for logical reasoning and problem solving. The course stresses computer and business applications using equations, logic, sets, vectors, and data structures. The course includes applications such as cost-volume-profit analysis. The course is designed for IT students to help them translate everyday real world scenarios into mathematical concepts they can solve with computer systems and applications.

  • Hours: 42
  • Credits: 3
  • Pre-Requisites:
  • CoRequisites:

Programming: Web Foundations
PROG1245

Description: In this course, students develop the skills needed to build static web sites. This includes facility with coding HTML, XHTML, and CSS, as well as the insertion of graphics and video into web sites.
  • Hours: 56
  • Credits: 4
  • Pre-Requisites:
  • CoRequisites:

Programming Concepts I
PROG1925

Description: Developing software applications depends on a strong foundation in programming concepts and logic. In order to develop programs that solve business problems, the student will use the programming concepts of data types, looping, decision making, modifying strings and arrays. Particular attention will be paid to problem solving techniques using flowcharting to design the logic of the program. The student will be introduced to techniques of desk checking, testing and debugging.
  • Hours: 70
  • Credits: 5
  • Pre-Requisites:
  • CoRequisites:

Level 2

Course details

Technology Infrastructure: Networking
INFO1380

Description: This course will provide the student with the knowledge to conduct meaningful dialogue with the network specialists who design, install and maintain the network within their organization. The student will be introduced to broad networking concepts including protocols, topologies, transmission media and security, using hands-on examples of networking issues.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites:
  • CoRequisites:

Mathematics for Information Technology II
MATH1920

Description: The purpose of the course is to provide the student with a mathematical basis for personal and business financial decisions, and mathematics of computer applications. Financial topics include: simple interest, simple discount, compound interest, annuities and their applications including loans and investments. Information technology topics include number systems and sets. A Texas Instrument BAII “Plus” financial calculator is required.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites: MATH1910
  • CoRequisites:

Introduction to Data Modelling
PROG1825

Description: This course introduces the student to the concepts of database management. The student will learn how to design and develop database applications. The course will introduce the following topics: data types, table relationships, data normalization, entity relationship diagrams, table navigation and data entry control.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites:
  • CoRequisites:

Programming Dynamic Websites
PROG1935

Description: Many software applications have web functionalities and require data collection. This course introduces the student to web-based applications development using browser based development tools. The students will program both client and server-side scripting inside of HTML forms.
  • Hours: 70
  • Credits: 5
  • Pre-Requisites: PROG1245
  • CoRequisites:

Programming Concepts II
PROG1965

Description: This course builds on the fundamental logic skills of Programming Concepts I, and adds conceptual skills in order to develop software applications according to current best industry practices. The student will do assignments making use of Graphical User Interfaces (GUI) to create a higher level of interactivity, and will employ the object concept - classes, objects, data-hiding, inheritance, polymorphism - in order to promote better system modelling, modularity, and reusablity.
  • Hours: 70
  • Credits: 5
  • Pre-Requisites: PROG1781 OR PROG1925
  • CoRequisites:

Electives: General Education
Student must pass 1 Course(s), selected in the Student Portal from available course options

Level 3

Course details

Co-op and Career Preparation
CEPR1020

Description: This series of modules will prepare students for job searching for their co-op work terms with the guidance of a Coop Advisor. Students will familiarize themselves with the co-operative education policies and procedures and will learn the expectations, rules, and regulations that apply in the workplace regarding social, organizational, ethical, and safety issues while developing an awareness of self-reflective practices. Students will reflect on their skills, attitudes, and expectations and examine available opportunities in the workplace. Successful completion of these modules is a requirement for co-op eligibility.
  • Hours: 14
  • Credits: 1
  • Pre-Requisites:
  • CoRequisites:

Systems Analysis and Design
INFO2320

Description: Upon completion of this course, the student will understand the Systems Development Life Cycle and the Object-Oriented Design methodology using the Unified Modeling Language (UML). An object-oriented approach will be applied to a business system case study utilizing a Computer Assisted Systems Engineering tool to analyze the systems requirements and then to use the tool to design a proposed solution from those requirements. Emphasis will be placed on typical industry practices, documentation and presentation skills in a team environment
  • Hours: 70
  • Credits: 5
  • Pre-Requisites: PROG1815 OR PROG1965 AND PROG1825
  • CoRequisites:

Database: SQL
PROG2220

Description:

Recommended: COMP1120 Access or equivalent knowledge. This course introduces the student to Structured Query Language using an industry standard database management system. The topics discussed include Data Definition Language, Data Management Language and testing and debugging techniques.

  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG1825
  • CoRequisites:

Programming: Microsoft Web Technologies
PROG2230

Description: This course teaches students how to develop web applications using ASP.NET. Students learn how to create dynamic web pages using data from a relational database and how to update data on a relational database with information provided by the user through a web form. The students will use application-wide variables, code and style sheets, object-oriented constructs, classes, and session variables.
  • Hours: 70
  • Credits: 5
  • Pre-Requisites: PROG1245 OR PROG8540 AND PROG1815 OR PROG1965
  • CoRequisites:

Game Programming with Data Structures
PROG2370

Description: This course teaches object oriented C# programming through the creation of computer games. Students learn how to create games using the latest development technology. Standards, testing, documentation and practical object-oriented programming techniques are emphasized.
  • Hours: 70
  • Credits: 5
  • Pre-Requisites: PROG1781 OR PROG1925 AND PROG1815 OR PROG1965
  • CoRequisites:

Electives: General Education
Student must pass 1 Course(s), selected in the Student Portal from available course options

Level 4

Course details

Systems Development: Computer Security
INFO2050

Description: In this course, students will investigate threats to computer business applications from a variety of sources, as well as strategies for handling those threats. Topics will include encryption, SQL injections, URL backdoors, malware, wireless and cloud computing vulnerabilities, code level security, physical security, disaster recovery and backup, and privacy considerations.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG1800 OR PROG1935
  • CoRequisites:

Technology Infrastructure: Network Operating Systems
INFO2063

Description: In this course, students will learn how to administer network operating systems such as Microsoft's Windows Server and Red Hat's Linux. They will create user accounts, assign users to groups and control access to server-based files and folders. They will also configure server-based services such as web services, database services, DHCP, DNS, and RRAS or routing.
  • Hours: 56
  • Credits: 4
  • Pre-Requisites: INFO1380
  • CoRequisites:

Programming: Software Quality Assurance
PROG2070

Description: Software quality is everybody's job, no matter what their role in a software product development or IT organization. In this course, we will explore various approaches to testing and improving software quality. We will also learn techniques, practices and tools that programmers employ to achieve higher quality of software products.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG2370
  • CoRequisites:

Programming: JAVA Web Technologies
PROG2240

Description: This course teaches the student to build Web applications using the Java development environment. The student will learn server side development including session management, database access, testing, debugging and exception handling.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG1800 OR PROG1935 AND PROG2370
  • CoRequisites:

Small Business Solutions
PROG2390

Description: Rapid growth and fragmentation of business as a result of new computer technologies has meant that there is a growing number of small businesses and start-ups. Many of these companies look to inexpensive solutions for their business needs. In this course, students get hands-on assignments to develop programming solutions for common accounting and business problems using database and programming skills.

  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG1825
  • CoRequisites:

Programming Mobile Applications I
PROG2435

Description: This course teaches the student to build mobile applications using the current industry practices and tools. The student will learn client-side smart device development including offline data access, testing, debugging, security, deployment and exception handling. Students will be exposed to writing mobile client software that runs on popular mobile devices.
  • Hours: 70
  • Credits: 5
  • Pre-Requisites: PROG1800 OR PROG1935 AND PROG1825
  • CoRequisites:

Level 5

Course details

Co-op Work Term I (CPA)
COOP2370

Description: This co-op work term will provide students with college-approved work experience in an authentic, professionally relevant work environment. Students will be provided the opportunity to connect theory and practice by leveraging their academic training to develop a broad base of vocational skills. The practical applications of this work term will promote students’ awareness of key concepts and terminology in their field, cultivate their problem-solving and decision-making capabilities, encourage their development of professional autonomy and collaboration, and enhance their capacity to analyze and reflect on their demonstrated abilities in the workplace.
  • Hours: 420
  • Credits: 14
  • Pre-Requisites: CDEV1020 OR CEPR1020
  • CoRequisites:

Level 6

Course details

Co-op Work Term II (CPA)
COOP3360

Description: This co-op work term will provide students with college-approved work experience in an authentic, professionally relevant work environment. Students will be provided the opportunity to connect theory and practice by leveraging their academic training to develop a broad base of vocational skills. The practical applications of this work term will promote students’ awareness of key concepts and terminology in their field, cultivate their problem-solving and decision-making capabilities, encourage their development of professional autonomy and collaboration, and enhance their capacity to analyze and reflect on their demonstrated abilities in the workplace.
  • Hours: 420
  • Credits: 14
  • Pre-Requisites: CDEV1020 OR CEPR1020
  • CoRequisites:

Level 7

Course details

Co-op Work Term III (CPA)
COOP3370

Description: This co-op work term will provide students with college-approved work experience in an authentic, professionally relevant work environment. Students will be provided the opportunity to connect theory and practice by leveraging their academic training to develop a broad base of vocational skills. The practical applications of this work term will promote students’ awareness of key concepts and terminology in their field, cultivate their problem-solving and decision-making capabilities, encourage their development of professional autonomy and collaboration, and enhance their capacity to analyze and reflect on their demonstrated abilities in the workplace.
  • Hours: 420
  • Credits: 14
  • Pre-Requisites: CDEV1020 OR CEPR1020
  • CoRequisites:

Level 8

Course details

Co-op Work Term IV (CPA)
COOP3380

Description: This co-op work term will provide students with college-approved work experience in an authentic, professionally relevant work environment. Students will be provided the opportunity to connect theory and practice by leveraging their academic training to develop a broad base of vocational skills. The practical applications of this work term will promote students’ awareness of key concepts and terminology in their field, cultivate their problem-solving and decision-making capabilities, encourage their development of professional autonomy and collaboration, and enhance their capacity to analyze and reflect on their demonstrated abilities in the workplace.
  • Hours: 420
  • Credits: 14
  • Pre-Requisites: CDEV1020 OR CEPR1020
  • CoRequisites:

Level 9

Course details

Programming: Microsoft Enterprise Applications
PROG3050

Description: This course provides a bridge between previous programming courses and Systems Development: Systems Project. It builds on previous courses to teach end-to-end development of realistic business applications. Working with an existing case study, students work in teams to implement a complete, complex enterprise application. The finished application is expected to satisfy all design goals, conform to standards, be thoroughly tested, have complete documentation, and be ready to deploy.
  • Hours: 70
  • Credits: 5
  • Pre-Requisites: PROG2230 OR PROG8550 AND PROG2370
  • CoRequisites:

Programming: Distributed Applications Development
PROG3175

Description:

In this course students will design, build, test, and deploy distributed components, with a strong emphasis on Web APIs. Students will also learn to consume existing distributed components and Web APIs to integrate external business capabilities into larger applications and solutions. Students will compare and contrast different design paradigms such as SOA and REST and apply them to develop distributed components that can be deployed in multiple contexts, including the use of cloud infrastructure. Students will develop code using various technologies and platforms but the emphasis throughout the course will be on a design first approach to develop a Web API specification that is independent from its implementation.

  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG2230 OR PROG8550 AND PROG2370
  • CoRequisites:

Database: Application Development
PROG3200

Description: Building on Database: Fundamentals, this course introduces techniques used in developing client server database applications including triggers, stored procedures, form generation, report generation and script generation from Entity Relationship Diagrams. Particular attention is paid to Data Definition Language, Data Management Language and data migration.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG2220
  • CoRequisites:

Programming: Mobile Applications II
PROG3210

Description: This course builds on Programming: Mobile Applications I to teach the student to build mobile applications, including client-side, mobile web and hybrid applications, using advanced programming techniques and current development tools. Students will develop mobile application software that runs on a range of smartphones and tablet devices.
  • Hours: 56
  • Credits: 4
  • Pre-Requisites:
  • CoRequisites:

Electives: Program Option
Student must pass 1 Course(s), selected in the Student Portal from available course options

View Program Option Electives

Please note that all courses may not be offered in all semesters. Go to your student portal for full timetabling details under "My Courses".

The Consulting Developer
INFO3070

Description:

This course provides the student with an overview of the “best practices” in information technology operations management and project management. Topics such as planning, policy, code of conduct, security, audit and various controls will be presented from an information technology perspective.

  • Hours: 42
  • Credits: 3
  • Pre-Requisites: INFO2080 OR INFO2320
  • CoRequisites:

Business Intelligence
PROG3240

Description:

Successful businesses in today’s high-tech environment use business intelligence to gain a competitive advantage. This course introduces some of the methodologies and technologies used in the analysis of large amounts of historic data. Topics covered include data visualization, data warehousing, online analytical processing and data mining. Practical use of these technologies are presented in the context of descriptive, predictive and prescriptive analytics.

  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG2111 OR PROG2220 AND PROG2370
  • CoRequisites:

Electives: General Education
Student must pass 1 Course(s), selected in the Student Portal from available course options

Level 10

Course details

Systems Development: Emerging Technologies
INFO3160

Description: In this seminar course, students research and prepare presentations on topics dealing with information and digital technologies that have recently come to market. They will be required to evaluate the impact of these technologies on existing IT products and services as well as to predict new products and trends that might result from these developments.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG2370
  • CoRequisites:

Systems Project
INFO3220

Description: This course is the culmination of the program. Successful completion of this course will require the application of skills learned in most of the courses studied in the prior semesters. Small groups of students are to work as a team to plan, design, code, document and install a custom application for a client. A faculty advisor will meet regularly with the group to ensure the process is properly managed and a plan is followed.
  • Hours: 84
  • Credits: 6
  • Pre-Requisites: INFO1265 AND INFO2050 AND INFO2320 AND PROG2070 AND PROG2220 AND PROG2240 AND PROG3050
  • CoRequisites:

Programming: Java Enterprise Applications
PROG3060

Description:

Building on Programming: Java Web Technologies, the student will use Java and Java compatible tools to develop distributed applications incorporating techniques to support security and transaction management using a tiered architecture. Best practices in deployment, testing and debugging will be emphasized.

  • Hours: 42
  • Credits: 3
  • Pre-Requisites: PROG2240
  • CoRequisites:

Open Source Web Programming
PROG3270

Description: An increasing amount of open-source software is being made available on the web for the purpose of developing new business systems in an efficient and economic way. Students learn to develop software products for which the source code is publicly made available in a versioned format. This mode of delivery permits individuals and organizations to scale, modify and enhance a product’s design. Students learn how to deploy new open-source products, how to work on existing products, and they learn the ramifications for intellectual property.
  • Hours: 42
  • Credits: 3
  • Pre-Requisites:
  • CoRequisites:

Program outcomes

  1. Identify, analyze, design, develop, implement, verify and document the requirements for a computing environment.
  2. Diagnose, troubleshoot, document and monitor technical problems using appropriate methodologies and tools.
  3. Analyze, design, implement and maintain secure computing environments.
  4. Analyze, develop and maintain robust computing system solutions through validation testing and industry best practices.
  5. Communicate and collaborate with team members and stakeholders to ensure effective working relationships.
  6. Select and apply strategies for personal and professional development to enhance work performance.
  7. Apply project management principles and tools when responding to requirements and monitoring projects within a computing environment.
  8. Adhere to ethical, social media, legal, regulatory and economic requirements and/or principles in the development and management of the computing solutions and systems.
  9. Investigate emerging trends to respond to technical challenges.
  10. Gather, analyze and define software system specifications based on functional and non-functional requirements.
  11. Design, develop, document, implement, maintain and test software systems by using industry standard software development methodologies based on defined specifications and existing technologies/frameworks.
  12. Select and apply object-oriented and other design concepts and principles, as well as business requirements, to the software development process.
  13. Gather requirements and model, design, implement, optimize, and maintain data storage solutions.
  14. Integrate network communications into software solutions by adhering to protocol standards.