- January 10, 2022
- September 01, 2022
- In Class
Tuition & Fees
International: CAD $37,640
Estimated Book Costs: CAD $226
Gain practical experience in the cycles of software development through hands-on learning and real projects. You'll gain an understanding of industry standards of planning, developing, and quality assurance testing.
You'll learn the fundamentals of computer logic, giving you a solid foundation in applying programming skills in a variety of situations. You'll also becoming familiar with emerging topics like user experience (UX) and the internet of things.
This program will be delivered in flexible learning spaces. A laptop computer with course applicable software will be required (specifications below).
- Intel quad core CPU (i5 or i7)
- 8GB RAM (16GB recommended)
- 13 inch 1080p screen (15 inches recommended)
- a dedicated graphics card with 2GB of VRam
- 128GB solid state hard drive (256GB recommended)
- portable hard drive (for data backup)
- Windows 10
** Equivalent specification in an Apple MacBook Pro is acceptable.
- Credit in English 30-1 or 65% in English 30-2 or equivalent
- Credit in Math 30-1 or Math 30-2 or equivalent
Successful completion of the General Educational Development test (GED) test with a minimum score in the following sections:
- Writing Skills: 520 minimum standard score
- Interpreting Literature and Art: 520 minimum standard score
- Math: 520 minimum standard score
Satisfactory results on the BVC Admissions Test
English language proficiency requirements
For applicants whose first language is not English, please review English language proficiency requirements.
- University of Lethbridge: Post-Diploma Bachelor of Science in Computer Science (with minimum 2.50 GPA)
Full course outlines are available here.Curriculum subject to change. Current students should confirm program requirements with their academic advisor.
Computer programming is central to software development. In this course, learners analyze basic problems to design solutions, then create programs that address those problems. The course also contrasts current and past approaches to programming and programming tools through collective discussion.
This course focuses on the design, construction and website publishing that meet web standards for the internet. During the design of websites, learners address issues such as bandwidth, aesthetics and the user interface. During the construction of websites, learners focus on the use of Hyper Text Markup Language (HTML), cascading style sheets (CSS), basic client-side scripting, website maintenance and web technologies.
This course focuses on the pervasiveness of the internet. Learners explore the internet of things through the construction of simple interfaces between computers and the devices they control. Through the creation of these interfaces, learners gain insight into the elements of computer architecture, networking, and the programs that control device function within that network.
This course prepares learners to function as part of a member of an IT project team. Practical skills in effective communications and accurate technical communications are applied in real-world organization scenarios. Learners will also be introduced to roles within a project team as it relates to project management methodologies.
This course provides learners with the practical knowledge and skills in the use of mathematics in relation to computers. Alternate number bases, set theory, logic, and Boolean algebra are the foundation of this course. In addition, learners use basic statistical concepts to understand challenges in information technology.
In this course, the learner plans, creates and manages a relational database at a fundamental level. The emphasis of this course is on data manipulation and extraction.
This course introduces the principles of designing the user experience. These principles as well as design thinking are applied in the construction of effective solutions to business scenarios. Learners take a multi-disciplinary approach to integrating skills, concepts, and performance criteria within production teams. The course covers marketing content, layouts, usability testing, and visual theory, as well as introduces designing for emerging technologies.
This course provides learners with foundational programming knowledge and skills for web application development. Using web technology, learners plan, design, construct and integrate basic server-side components, including databases and scripts.
Prerequisites: SODV1101, TECH1101
In this course, learners apply principles of design, logic and structure in the creation of application programs using object-oriented programming language, existing classes and user-defined classes. Learners use current, evidence-based practices such as automated unit tests and documentation to deliver working software.
Prerequisites: SODV1101, MATH1901
Network systems interconnect computer related resources, services and users. This course provides the learners with a foundation in networking concepts and technologies, with emphasis on terminology, protocols, error detection/correction and network security. Through course activities, learners develop skills to plan and implement small networks across a range of applications.
In this course learners use Structured Query Language (SQL) on commercial relational databases. Using SQL and SQL procedural language, learners create and manage a relational database, addressing data integrity and security. In addition, learners explore the relationship between database administration and software development.
This course introduces the fundamental principles necessary for successful management of Information Technology (IT) projects. Project planning, management and control techniques will be discussed and the application of computers in project management will be studied.
This course introduces programming techniques supported by a visual rapid application development environment including forms, controls, user-defined classes and objects. Learners examine the framework provided by the platform that supports visual programming to build graphical user interface (GUI) application. The skills in this course can be applied to building data driven applications.
Prerequisites: SODV1202, DATA1201
This course gives learners the opportunity to enhance and enrich their skills in web programming. Learners develop web applications using three-tier architecture, session management, object-oriented techniques and advanced database interactions. In addition, the course explores concepts such as advanced cascading style sheet (CSS). Learners develop rich interactive web applications with authentication and security.
Prerequisites: SODV1201, SODV1202, DATA1201
In this course, learners explore object-oriented design concepts and techniques. This course introduces techniques such as threads and event handling that potentially lead to the creation of sophisticated applications. The knowledge and skills in this course apply to the areas like database manipulation and network connectivity.
Prerequisite:s DATA1201, SODV1202
Building on programming skills obtained in previous courses, the learner will learn techniques and gain experience developing with tools used for game and simulation programming. The learner will develop two-dimensional and three-dimensional graphics environments to be used for presenting data and creating virtual spaces. The use of game and simulation applications in various fields such as health, entertainment, environmental studies, and education will be explored.
This course introduces learners to fundamental abstract data types and common techniques, algorithms, and data structures used in their implementation. Learners also explore common search and sort algorithms as well as basic algorithm efficiency analysis. Learners are also exposed to common technical interview questions and strategies to solve them.
Learners strengthen their skills and their knowledge of software development by creating a portfolio piece to prepare for entry into the industry. Research, client communication, and documentation skills are practiced and refined. Advanced elements of software design and development are put into practice. This course will center on a capstone project that incorporates all program learning.
Prerequisites: DESN2301, MGMT1104, SODV2101 and SODV2201
Learners approach application development with a mobile-first and mobile-only lens, expanding avenues to reach users. The course focuses on common industry tools and mobile features of programming languages and frameworks that enable mobile business application construction.
Prerequisites: DATA3201, SODV3302
Learners will learn about the protocols and applications that make possible the simultaneous and seamless interaction of millions of computers through the internet and enterprise networks. In order to design and implement enterprise class applications, the learner will undertake an in depth study of the concepts of enterprise computing. To understand the practical aspect of enterprise computing, the learner will build a working example of a dynamic, secure web enterprise application. Topics that will be covered include Service Oriented Architecture (SOA) and Service Component Architecture (SCA).
Prerequisite: TECH1201, SODV2201