Loading...

Overview

Graduates of the CPA Diploma may have careers in

  • software development
  • programming/analysis
  • database administration

The career orientation of these courses requires effort and commitment on your part. In addition to a minimum of three hours attendance per week in class, programming courses require at least three hours of lab work, and you should also expect to devote from three to five hours per week to assigned readings and projects.

Certain courses and codes may change without prior notice.

Information Session

New students are invited to attend an information session.

Entry Requirements

It is recommended that students have a good command of the English language and a facility for Mathematics prior to starting a Certificate or Diploma Program.


Filter Classes: In Class     Online     Correspondence     Hybrid     Availability   


Curriculum

Diploma Requirements

EAC150
College English
Availability
 

Prerequisite(s):

Placement via English Assessment, or successful completion of ESL934, EAP 500, or EAC149.

College English is an introductory college writing and reading course fundamental to successful college studies. Through a variety of assignments and classroom activities, students strive to develop the rhetorical and analytical skills essential to their success as communicators in college and upon graduation. Fiction and nonfiction are central vehicles for teaching writing.




Loading availability...
If the availability does not load please click here.

CPR101
Computer Principles for Programmers
Availability
 

This course is designed for students who are learning computer programming. The theme of the course is to equip students with the knowledge, skills, and techniques needed to become a successful computer programmer. Students learn about computer hardware and software, application installation, file and folder management, and introductory computer science topics.




Loading availability...
If the availability does not load please click here.

IPC144
Introduction to Programming Using C
Availability
 

This first course in computer programming emphasizes problem solving strategies using structured programming techniques. The C programming language is used to introduce problem analysis, algorithm design, and program implementation. Students work in a Linux environment.




Loading availability...
If the availability does not load please click here.

ULI101
Introduction to UNIX/Linux and the Internet
Availability
 

Prerequisite(s):

None

Unix and Linux represent the operating system technology underlying many of the services of the Internet. This course introduces students to Unix, Linux and the Internet. Students will learn to navigate the Internet, transfer files, communicate with others via electronic mail, and create and maintain World Wide Web pages using Extensible Hypertext Mark-up Language (XHTML). Students will do this work in Unix and Linux environments, at the same time learning to configure their login accounts, manipulate data stored in files, effectively use Unix commands and utilities, and write simple shell scripts.




Loading availability...
If the availability does not load please click here.

APC100
Applied Professional Communications
Availability
 

Corequisite(s):

EAC149

Required course for CPA/CPD/CPAC/CNS/CTY/AST programs but cannot be used as a General Education credit.

This course focuses on group work, team building, interpersonal communication, presentation skills, conflict and time management with applications to the computer industry. In this course, you are developing the skills that will make you not only a greater asset to an employer, but a more confident and accomplished individual. APC100 will give you a thorough grounding in employability skills listed as essential by the Conference Board of Canada in our global, knowledge-based society of the 21st century. You will be introduced to the theoretical background, then given ample opportunity to develop your expertise in these communication, teamwork, personal management, presentation and thinking skills. You will both require and be further developing these skills in all the courses of your programme. Only students who have a Canadian university degree in the humanities will be considered for advanced standing. These students must provide detailed course outlines from their university.




Loading availability...
If the availability does not load please click here.

DBS201
Introduction to Database Design and SQL
Availability
 

Prerequisite(s):

Experience with operating systems.

This course introduces students to relational database design and SQL (Structured Query Language) used with relational databases. Students will be introduced to a history of database management covering hierarchical, network, relational and object oriented models with a focus on the relational model and its operators. Students will be presented with a methodology for relational database design using Entity Relationship Diagrams and normalization of data. Students will be introduced to a subset of SQL using IBM's DB2 on the iSeries platform. An overview of the functions of the Database Management System (DBMS) and of a Database Administrator (DBA) will also be presented.




Loading availability...
If the availability does not load please click here.

DCF255
Data Communications Fundamentals
Availability
 

Prerequisite(s):

WEB222 or ULI101

In this course, students will learn about the software and hardware systems and technology needed to create data communications networks. During the term, the programming student will learn data communication, terminology and concepts, and gain skills with today's most important software and hardware implementations. Topics will include transmission systems, local and wide-area networks, data communications protocols, security, reliability, and efficiency. Upon completion, the student will have an understanding of the principles of data communication networks and how they support distributed applications.




Loading availability...
If the availability does not load please click here.

OOP244
Introduction to Object Oriented Programming
Availability
 

Prerequisite(s):

IPC144 or C Programming Experience

This course introduces students to object oriented programming concepts. Students will learn to build reusable objects, making use of encapsulation, polymorphism and inheritance in the C++ programming language. Throughout the course, the emphasis will be on using object oriented approaches to solving problems.




Loading availability...
If the availability does not load please click here.

WEB222
Web Programming Principles
Availability
 

Prerequisite(s):

ULI101 or IOS110 and DBS201, IPC144

The Internet has revolutionized modern life, including the way people shop, communicate, and even where and how they work. At the forefront of this revolution are the people writing the software that drives the World Wide Web. The goal of this course is to provide the student with key skills demanded in the fast-paced and exciting field of web development. The course will begin with an in-depth study of HTML, the universal language of the Web. This will be supplemented by coverage of XHTML and XML, the next-generation languages of the Web. CSS will be studied as it relates to enhancing the presentation of websites. Client-side programming will be taught using JavaScript and DHTML, languages used to create dynamic content and provide a true interactive experience for the Web site visitor. Throughout the course, emphasis will be placed on the development of professional, cross-browser websites.




Loading availability...
If the availability does not load please click here.

1 General Education Option 1 General Education Option
DBS301
Database Design II and SQL Using Oracle
Availability
 

Prerequisite(s):

DBS201 or familiarity with database concepts

This course continues the study of database design and SQL begun in DBS201. Students will learn the entire set of SQL statements using Oracle's DBMS, and also learn Oracle's SQL*Plus commands.




Loading availability...
If the availability does not load please click here.

SYS366
Requirements Gathering Using OO Models
Availability
 

Prerequisite(s):

OOP244 or experience in object oriented programming

Students are introduced to techniques involved in gathering and analyzing business requirements for a new information system using an object oriented approach to systems development.




Loading availability...
If the availability does not load please click here.

OOP345 OR BAC344
 
OOP345
Object-Oriented Software Development Using C++
Availability
 

Prerequisite(s):

OOP244 or C++ Programming experience.

This course expands the student's skill-set in object-oriented programming and introduces the student to threaded programming. The student learns to model relationships between classes using containers, inheritance hierarchies and polymorphism in the C++ programming language and to write C++ programs that execute on multiple threads.




Loading availability...
If the availability does not load please click here.

 
BAC344
Business Applications Using COBOL
Availability
 

Prerequisite(s):

IBC233 or previous iSeries AS/400 knowledge

Business applications will be developed in COBOL using Programmer Development Manager and CODE/400. This course introduces the students to file processing, report writing, transaction validation and updating. Students will build on programming techniques used in previous courses to solve problems related to maintenance/modification of structured programs for typical business applications. This course will provide a basic understanding of the COBOL language.




Loading availability...
If the availability does not load please click here.

WEB322
Web Programming Tools and Frameworks
Availability
 

Prerequisite(s):

WEB222 and ULI101

The modern world deploys its software applications on the web, because of the web's scale, reach, and ease of use. This course teaches students to design and create simple web applications and services, in JavaScript, using widely-used and powerful tools and frameworks. The major topic themes of this course include a study of the web as a programming platform, server and client programming techniques, an introduction to data storage schemes, and an introduction to security.




Loading availability...
If the availability does not load please click here.

1 General Education Option 1 General Education Option
EAC397
Business Report Writing
Availability
 

Prerequisite(s):

EAC150 or equivalent

This business communications course is designed for Computer Studies students. It builds the written and oral communications, teamwork, personal management, and critical thinking skills that are essential to those that work in computer or technological fields. Through team and individual projects, participants learn the essentials of career management and practice the skills that are required in the workplace to communicate effectively with customers, co-workers, and management.




Loading availability...
If the availability does not load please click here.

IBC233
iSeries Business Computing
Availability
 

Prerequisite(s):

IPC144

IBC233 introduces commercial and business information technology on the IBM iSeries server. Students will work in an object based architecture using Client Access and Websphere Development Studio Client for iSeries to create business applications. These applications will be developed using the built in DB2 relational database, OS/400 commands and Control Language programming, Query/400 data reporting, interactive screens, and webfacing. The Integrated File System, which provides Windows and UNIX file serving, along with desktop connectivity tools will be investigated to demonstrate the heterogeneous systems support available only on the iSeries platform. IBC233 prepares the student for the iSeries Business Commerce Specialist.




Loading availability...
If the availability does not load please click here.

INT422
Internet III - Web Programming on Windows
Availability
 

Prerequisite(s):

INT322, DBS201 and IOS110, (VB.NET programming experience would be beneficial)

The Windows platform was the first to bring the convenience of scripting to server-side web programming, and ASP (Active Server Pages) technologies are preferred by developers working on the Windows platform. The popularity of Windows, combined with the demand for functional, scalable, and high-performance web application, has resulted in numerous opportunities for web programmers trained in developing sites using ASP. This course specifically addresses the skills needed to develop feature-rich database-driven web sites running on Windows servers. The course will focus on ASP.NET server-side programming using the Visual C#.NET language. ADO.NET will be used for database access, and technology such as XML Web Services will also be covered. Installation and configuration of IIS (Internet Information Server) will be studied, as will Window-specific Internet-related security issues.




Loading availability...
If the availability does not load please click here.

JAC444
Introduction to Java for C++ Programmers
Availability
 

Prerequisite(s):

OOP344 or BAC344

In the short time since its introduction, Java has become one of the most popular programming languages of all time. Java has evolved from a web-based language to a robust language used in all manner of application development. This course will serve as a thorough introduction to Java as an object-oriented language. Topics studied will include OO concepts in Java, threads, exceptions, GUI programming using Graphics 2D/Swing, input/output, networking, client-server programming, applets, servlets and database access via JDBC.




Loading availability...
If the availability does not load please click here.

SYS466
Analysis and Design Using OO Models
Availability
 

Prerequisite(s):

SYS366 or experience in systems analysis

This course focuses on the practical application of object oriented concepts to the development of business systems. Students will learn how to use object oriented analysis and design techniques to create software models of business systems using the Unified Modeling Language (UML) and the Rational Rose modeling tool. Students will perform use case analysis to identify initial classes and will progress to detailed class design, defining class attributes, behaviours, hierarchies and relationships. Throughout the course students will work on creating a detailed software model based on a business case study.




Loading availability...
If the availability does not load please click here.

1 General Education Option 1 General Education Option
PRJ566
Project Planning and Management
Availability
 

Prerequisite(s):

SYS466

Students learn Project Management concepts while carrying out requirements gathering analysis, design, and implementing planning for a system.




Loading availability...
If the availability does not load please click here.

Three Professional Options
PRJ666
Project Implementation
Availability
 

Prerequisite(s):

PRJ566

This is the final course in the systems' stream in which students complete the development and implementation phase of a project. As part of a team, students will plan and manage the development of an actual system using project planning, system design, system implementation, and unit and system testing methodologies. Students will also integrate and apply the object-oriented concepts, tools and techniques learned in previous courses, and create appropriate documentation for the completed system.




Loading availability...
If the availability does not load please click here.

4 Professional Options

CPA Diploma Professional Options

The following courses may be used as professional options in modules 4, 5 and 6 of the CPA (Computer Programming & Analysis Diploma):
(Students enrolled in the Full Time Program, please check with your coordinator for equivalency)

Professional Options

BDA400
Introduction to Big Data
Availability
 

The data warehousing and analytic marketplace continues to be one of the fastest growing areas of technology and applications. Much of this growth is fueled by applications starting to leverage new types of data to gain new insights into their industry, competition and customers. This course introduces students to big data concepts and explains key concepts such as the Hybrid Data Warehouse, logical Data Warehouse and Data Lakes. This course provides hands on experience with the following: Open Source capabilities such as Hadoop and Spark; How to work with non-traditional data such as semi-structured and unstructured data such as text, JSON and social data; Performing analytics using capabilities such as SQL over Hadoop and MapReduce.




Loading availability...
If the availability does not load please click here.

DBA625
Database Administration
Availability
 

Prerequisite(s):

DBS301

This course will review the purpose and responsibilities of the Database Administrator. The students will learn how the DBMS manages the data and controls such as recovery, locking, transaction logging and performance tuning. Through hands-on Database Administration students will practice much of the theory presented.




Loading availability...
If the availability does not load please click here.

DBM635
Database Administration using SQL Server
Availability
 

Prerequisite(s):

DBS301

This course reviews the role of the Database Administrator using Microsoft's SQL Server in a Windows environment. The features, utilities and operations of a Database Management System (DBMS) are examined. Through hands on Database Administration, students will learn how the DBMS manages the data and controls such as recovery, backup, and security for a SQL Server database.




Loading availability...
If the availability does not load please click here.

DBS501
Stored Procedures Using Oracles PL/SQL
Availability
 

Prerequisite(s):

DBS301

This course uses Oracle's PL/SQL language to code PL/SQL blocks, procedures, functions, packages, and database triggers for applications developed using Oracle relational databases.




Loading availability...
If the availability does not load please click here.

DBT544
DB2
Availability
 

Prerequisite(s):

IBC233 and DBS201

This course provides an in-depth look at DB2 Universal Database for the AS/400, the most widely used multi-user relational database in the world. This course will start with a brief look at the native interface which includes logical, physical and field reference files and then focus on the SQL/400 interface which includes Data Definition Language, Data Manipulation Language, Embedded SQL/400, Stored Procedures and the SQL Procedure language, Journaling and Commitment Control and ODBC. Advanced topics include Database Constraints, File Overrides, Trigger Programs, Database security, Backup and Recovery, the Universal Database and Operations Navigator.




Loading availability...
If the availability does not load please click here.

DBW624
Introduction to Datawarehousing
Availability
 

Prerequisite(s):

DBS301

Using Microsoft's Analysis Services, this course introduces students to DataWarehousing design and development. Star schema fact tables and dimension tables will be examined. Multidimensional databases are emphasized as the students build on their database knowledge. A datawarehouse will be developed and modified.




Loading availability...
If the availability does not load please click here.

EJB605
EJB Architecture and J2EE
Availability
 

Prerequisite(s):

JAC444 and PRO684

This course will emphasize the development of re-usable JEE components and also provide comprehensive coverage of EJB architecture.




Loading availability...
If the availability does not load please click here.

MAP523
Mobile App Development - iOS
Availability
 

Prerequisite(s):

OOP345 and JAC444

This course covers the foundations of programming applications for the Apple iOS operating system. Students will learn and become proficient with the development tool environment, and create graphical end-user iOS applications that follow the MVC design pattern. Students will write their programs in the Swift and Objective-C languages, using the object-oriented Cocoa framework. A wide range of iOS development topics, including user interface programming techniques, data management, and network access will be covered.




Loading availability...
If the availability does not load please click here.

MAP524
Mobile App Development - Android
Availability
 

Prerequisite(s):

JAC444 - Introduction to Java

This course covers the foundations of programming applications for the Android operating system. Students will learn and become proficient with the Eclipse development tool environment, and create graphical end-user Android applications that follow the mobile design pattern. Students will write their programs by using the Java language and runtime platform. A wide range of Android development topics, including user interface programming techniques, data management, and network access will be covered.




Loading availability...
If the availability does not load please click here.

MAP602
Advanced Apple Application Development
Availability
 

Learn advanced programming applications for Apple mobile operating systems using Objective C and Cocoa framework. Topics include Frameworks, Core Animation, Core Location, Core Motion, Socket Programming, Gesture Recognition, iPad specific development and iCloud.




Loading availability...
If the availability does not load please click here.

OOP400
Introduction to Visual Basic Net
Availability
 

Prerequisite(s):

OOP244 or OO programming experience

This course will introduce the fundamentals of Visual Basic.NET. Concepts such as object-oriented programming; event-driven programming fundamentals and the Visual Studio.NET Integrated Development Environment will be covered. The student will gain the knowledge and practical skills needed to develop Visual Basic.NET applications for the Microsoft.NET platform.




Loading availability...
If the availability does not load please click here.

OPS500
AS/400 Administration and Security
Availability
 

Prerequisite(s):

IBC233, RPG544

This course covers various administration and security-related topics on the System i operating system.




Loading availability...
If the availability does not load please click here.

PRO670
C# Programming for the .Net Platform
Availability
 

Prerequisite(s):

OOP244 or OOP400 or JAC444

C# is a modern, object-oriented language intended to be the premier language for building enterprise, web-based applications using the .NET Framework. It is simple, type-safe programming language that combines the high productivity of Visual Basic with the raw power of C++. This course focuses on the C# programming fundamentals, program structures and language syntax. It provides students the working knowledge and skills needed to develop C# applications for the Microsoft .NET platform. Students will learn to build a range of object-oriented applications, from client-side GUI development, to server-side web services. Topics include the .NET Framework, .NET Visual Studio IDE, overview of object oriented programming, arrays, methods, inheritance, polymorphism, files and streams, garbage collection, exception handling, versioning support, debugging, and the NGWS runtime environment.




Loading availability...
If the availability does not load please click here.

PRO684
E-Commerce Fundamentals using Java Web Application
Availability
 

Prerequisite(s):

BPJ444/JAC444 and WEB222

This course is designed to introduce the student to build end-to-end web applications using HTML/JSP/Servlet, with an emphasis on server-side Java application development.




Loading availability...
If the availability does not load please click here.

PRO687
JEE Application Development - Open Source Tech.
Availability
 

Prerequisite(s):

PRO684 and WEB222

Students learn the architecture of the open source technologies as Struts and Hibernate. Students learn how to set up an extensible development environment for J2EE AJAX techniques for creating interactive web applications, Web Struts based Applications and persist the data using Hibernate. The course covers in detail most aspects of the implementation with regards to reusability, scalability, internationalization and maintainability of the application. AJAX is the methodology of getting the web pages to feel more responsive by exchanging small amounts of data with the server behind the scenes, which will lead to a more flexible and reliable web application. The Struts framework has the acceptance of the industry and unveils a large usability along many J2EE applications with large cover for financial, banking, industrial and manufacturing sectors. The framework wants to be extensible and flexible in order to be used on different applications with no pre-requirements except the J2EE environment. Hibernate is gaining a lots of popularity and lets you develop persistent classes following common Java idiom - including association, inheritance, polymorphism, composition and the Java collections framework. Hibernate has been used to shape the new EJB entity bean portion of specifications.




Loading availability...
If the availability does not load please click here.

PRO689
Project Development using Java Persistence Appl.
Availability
 

Prerequisite(s):

PRO684 and DBS301

Implementing web applications using Module View Controller Architecture (MVC) allows java developers to separate the business layer from the presentation and the control layers. This business layer is the interface with the database of the system, so managing the database persistency issues is very much required. Studying the importance of the persistency layer with the most used architectures and frameworks in java world is essential to have a complete web application design and implementation. Using Hibernate 3 and Java persistence APIs (EBJ3) as the famous persistency layer frameworks is a big strength in building web applications. In this course, different architectures will be viewed and studied, approaches to persistency will be investigated and different frameworks will be viewed. Comparison among these frameworks will be done. Also, in this course a project will be designed and implemented using web application (Experience Sun Glassfish Enterprise Servers) and Hibernate 3 as a persistency layer with the covering of all the issues database developers have to deal with.




Loading availability...
If the availability does not load please click here.

RPG544
Business Application Using RPG
Availability
 

Prerequisite(s):

IBC233, BAC344

This course is oriented towards business application programming on the IBM AS/400. Students will design, code and test programs using modular techniques. Programming assignments include control breaks, sequential and random processing of files, interactive programming using subfiles and use of the AS/400 application development tools and utilities. The emphasis will be on procedural programming.




Loading availability...
If the availability does not load please click here.

WSA500
Web Services Architecture
Availability
 

Prerequisite(s):

JAC444 or BPJ444

The use of Web Services is expanding rapidly as the need for application-to-application communication and interoperability grows, making them available across the internet. The course will introduce students to a set of communication technologies as defined by Web Service standards. This course specifically address the skills needed to understand basic concepts like XML, WSDL, UDDI, SOAP.




Loading availability...
If the availability does not load please click here.

Note: Not all professional options are offered each semester.

OSAP Funding Available

This program is eligible for OSAP funding.

Course load is used by OSAP to determine funding options for programs.

If you are taking 1 - 2 courses at the same time, you may be considered for part-time student grants and loans.

  • 1 course (20%)
  • 2 courses (40%)

If you are taking 3 or more courses at the same time, you may be considered for full-time student grants and loans.

  • 3 courses (60%)
  • 4 courses (80%)
  • 5 courses (100%)

To find out if you qualify and to learn how to apply, please visit the OSAP website.

For information on other awards and financial assistance, please see Financial Aid.

Credit for Prior Learning

Prior Learning Assessment

Earn college credits for what you already know!
Prior Learning Assessment is a method of assessing and recognizing learning that is equal to college level learning, but has been gained outside a traditional classroom (through work experience, volunteering, outside study, etc.). If you can prove that the knowledge you have gained meets the outcomes of a Seneca course, then credit will be awarded.

How does the PLA process work?
Prior Learning is demonstrated through a "challenge" process. The process measures learning through a variety of methods which may include tests, portfolio assessment, interviews, demonstrations, essays, and work samples. The method used will be determined in consultation with a Program Coordinator.
For more information and to determine if you are eligible for PLA, please call the Program Coordinator.

The process may take from 6 to 8 weeks.

Note: Not all courses can be challenged. For more information go to PLA website or contact your Program Coordinator.

Transfer Credit (Advanced Standing)

Many students who enter Seneca College will have earned academic credits in post-secondary educational institutions which they may be able to apply toward completion of a Seneca College program.

Requests for Transfer Credit must be for a specific course and must be accompanied by an official transcript and course outline. A minimum grade of "C" (60 percent) is generally required for a course to be considered for Transfer Credit.

Download a Transfer Credit Request form. An official copy of your transcript and applicable detailed course outlines should be attached and submitted. Please note it may take 4 to 6 weeks for a Transfer Credit decision.

More Information

Please visit the Degree and Credit Transfer Office.

Graduation

If you meet all program requirements and become eligible for a Certificate, Diploma or Degree you must inform the Registrar by completing a Graduation Application form and paying the fee. Forms are available at the Registration office and online.

Certificates and diplomas are issued twice a year: Fall (October) and Spring (June). Graduation Application forms must be received no later than July 31 (for Fall Convocation), November 30 or March 31 (for Spring Convocation).

Facilities

Students will use networked mid-range and PC computer platforms to access today's leading operating systems (Windows, .Net, UNIX and OS/400 on the AS/400). The College uses SFTP and SSH access modes for some courses to enable work to be done from home. Most programming and networking courses and labs are located at Seneca@York Campus. The programming course students are expected to log 20-30 hours of lab time in addition to classroom time. The lab hours are extensive. Please check with the learning commons or Open Lab for their hours of operation. During evening hours, Continuing Education students have priority over day students; until 7 p.m. on weekdays, full-time students have priority, but Continuing Education students may use facilities that are not occupied. On weekends, Continuing Education and full-time students have equal right to the use of the labs. Your registration receipt is your passport to the lab, although AS/400, UNIX and other users may also require account codes and passwords provided by their instructor. In some courses, students will be required to purchase removable hard drive kits or other hardware. In most courses students will require a USB Drive for storing programming assignments.

Help!

On scheduled Program Information evenings, or by special appointment, you can meet with a Computer Studies coordinator for help in choosing courses. To obtain waivers of prerequisites, and apply for transfer credits, please call 416-491-5050, ext 33025.

Program Contacts

Sejal Ahir
Program Assistant
Sejal.Ahir@senecacollege.ca
416-491-5050 ext.77290


Glen Steins
Part-time Program Coordinator
Glen.Steins@senecacollege.ca
416-491-5050 ext.33025


Sheri Ladoucier
Program Coordinator
Sheri.Ladoucier@senecacollege.ca
416-491-5050 ext.77306


Information Session

New students are invited to attend an information session.