Programs IT & Computing Diploma in Software Development

Diploma in Software Development

Career-ready software development skills for a future in tech.

Semesters: Spring | Summer | Fall | Winter

Program Overview

The Diploma in Software Development provides learners with a progression route into employment. It also provides opportunities for further study, including university degree programs.

The Diploma in Software Development provides current skills in specialist technical software development, and it develops up-to-date knowledge in programming and systems development.

Software developers are needed in many different industries from biotechnology to telecommunications and transport. The Diploma in Software Development will give learners the skills and theoretical knowledge that they need as they move into higher education and employment.

The award builds on traditional software development techniques but also incorporates development for mobile platforms and development of small-scale applications (apps). The award also incorporates skills in data driven web sites which are typically used in e-commerce.

The Units in this award have been selected to give learners the widest range of skills which are in demand by Industry and to allow access to a range of courses at Universities.

Course Highlights

Study hours: 2400

Full-time duration: 2 Years

Homework hours: 10-15 hours per week

Attendance Expectations: Students are required to maintain their attendance as per the FC attendance policy.

Graduation Requirements: To graduate, students must successfully complete all courses with minimum C grade (50% to 59%).

This program has been approved by the Private Training Institutions Regulatory Unit (PTIRU) of the Ministry of Post-Secondary Education and Future Skills. This program is not eligible for PGWP. However, the program has a pathway to PGWP through our partner institution(s). Please contact our Admissions team for more details via 250-861-5808 or admissions@focuscollege.com.

Career Opportunities

The Diploma in Software Development develops skills and knowledge in a range of systems analysis and design, development and implementation of a range of software development environments and database analysis and design.

The Diploma in Software Development is designed to lead to employment as systems analyst, software designer/developer in applications development, database design and development and web design incorporating ecommerce.

Successful learners should be able to progress to a range of degrees.

Salary Range

Software Developer

Anticipated Salary Range

$64,000
AVERAGE ESTIMATED STARTING WAGE PER YEAR
$93,000
AVERAGE ESTIMATED EXPERIENCED WAGE PER YEAR

*This estimate is based on available employment data at the time. Actual salary will be based on numerous factors.

Source: Glassdoor

Get Your Information Kit

Course Curriculum

Developing Software: Introduction

Developing Software: Introduction – 80 Hours

This Unit is designed to enable candidates to develop basic software development skills. The design and implementation of the constructs of programming (variables, sequence, selection, iteration, functions and parameter passing) will be covered in the context of a development environment. Test plans, test cases and program documentation will also be introduced. This introduction would provide a basis for further study in software development using a range of programming languages. This is a core Unit for the HNC Computing Group Award aimed at introducing candidates to the skills required to develop programs using an appropriate development environment. The Unit may also be studied on a standalone basis by a candidate with an interest in programming.

Professionalism and Ethics in Computing

Professionalism and Ethics in Computing – 80 Hours

This Unit is designed to provide candidates with a knowledge and understanding of professional issues, including contemporary legislation, and ethical considerations for those fulfilling a computing related role within the workplace. This Unit is intended for candidates whose aim is to follow a career, or is currently following a career, as a computing professional to ensure work duties are carried out responsibly.

Computer Systems Fundamentals

Computer System Fundamentals – 80 Hours

This unit is designed to enable candidates to develop basic software development skills. The design and implementation of the constructs of programming (variables, sequence, selection, iteration, functions and parameter passing) will be covered in the context of a development environment. Test plans, test cases and program documentation will also be introduced. This introduction would provide a basis for further study in software development using a range of programming languages. This is a core unit for the SQA Advanced Certificate in Computing group award aimed at introducing candidates to the skills required to develop programs using an appropriate development environment. The unit may also be studied on a standalone basis by a candidate with an interest in programming.

Troubleshooting Computer Problems

Troubleshooting Computer Problems – 80 Hours

This Unit is designed to provide candidates with the skills required to develop a possible solution to a computing problem in the context of computer networking, software development or technical support. Candidates will learn how to investigate the problem, plan and implement a solution, test and amend it until the problem is resolved and document each step taken to solve the problem.

Database Design Fundamentals

Database Design Fundamentals – 80 Hours

This Unit is designed to provide the candidate with the skills required to create, maintain and interrogate a relational database management system using commercially available database software. The resultant skills will help prepare the candidate to enter commercially operated database environments and to administer the system to the requirements of the industry. The Unit is primarily aimed as an introduction to relational database management systems and will incorporate the skills to design a suitable structure to maintain and update real world systems. The Unit is written in generic terms enabling it to be completed using a commercially available relational database management system software and may be delivered as part of an HN Group Award.

Relational Database Management Systems

Relational Database Management Systems – 160 Hours

This Unit is designed to introduce candidates to the design and creation of a Relational Database Management System (RDBMS). It also introduces candidates to the terminology and key concepts used in the designing and building of a RDBMS and the process of creating a relational database. The candidate needs to demonstrate understanding of these key concepts, and the need for good design.

SQL: Introduction

SQL: Introduction – 80 Hours

This Unit is designed to develop a broad knowledge of the concepts, principles, boundaries and scope of relational databases using a query language. These will be reinforced by developing the practical skills required in using the structures and features of a query language in order to maintain and interrogate a relational database management system. The SQL constructs used adhere to the current standards, so will be applicable in all SQL-based platforms. It forms part of an HN group award program, although it can also be used as a stand-alone Unit by candidates wishing to acquire and develop skills using a query language.

Software Development: Developing Small Scale Standalone Applications

Software Development: Developing Small Scale Standalone Applications – 160 Hours

This Unit is designed to introduce candidates to the software development life cycle by developing and testing a small application, eg mobile, web based or PC based. The Unit should expand on the skills learned in the mandatory HNC Computing HN Unit Developing Software: Introduction by introducing the software development life cycle, introducing user orientated design and prototyping, Introducing interactive GUI development, consolidating programming skills, expand programming skills by introducing data structures and using standard object libraries and consolidating and expanding application testing skills.

Software Development: Programming Foundations

Software Development: Programming Foundations – 80 Hours

This Unit introduces candidates to generic fundamental programming constructs which are required as a base for software development. The Unit should also expand and consolidate the skills learned in the HNC Computing mandatory Unit Developing Software: Introduction by introducing the importance of programming/scripting within computing. The Unit will allow candidates to understand the importance of good design and good programming practices within programming. The candidates should consolidate basic programming skills and introduce more complex programming program structures. The candidates should be able demonstrate understanding of the concepts of modularity, parameter passing and objects.

Computing: Introduction to Project Management

Computing: Introduction to Project Management – 80 Hours

This Unit will enable candidates to develop the basic knowledge and skills required to plan, implement, monitor, manage and report on a small scale project. The Unit is intended for candidates who are working or preparing to work in an environment where they would be expected to work as part of a project managed team in the public, private or voluntary sectors. This Unit will aid the candidates understanding of how projects are created run and managed.

Mathematics for Computing 1

Mathematics for Computing 1 – 80 Hours

This Unit is designed to allow candidates to acquire the fundamental mathematical knowledge required to apply computing techniques to problem situations effectively. Candidates will be able to create a mathematical model or express a problem mathematically. It is primarily intended for candidates who will specialize in programming or candidates who require a deeper understanding of computer operation at a basic hardware level.

Team Working in Computing

Team Working in Computing – 80 Hours

This Unit will provide candidates with the opportunity to develop effective skills for team working in the context of computing. Candidates will develop co-operative working skills which will include negotiation of goals, roles and responsibilities in the development of a team based Information and Communication Technology (ICT) project. Candidates, both individually as a team, will present the project Outcomes within the timescale prescribed by the team. Individual progress should be tracked against a project plan and the team will develop skills in updating the plan to ensure that the project is delivered on time. Individual team members will contribute to any necessary research and to documentation of the group’s activities.

Each candidate will develop skills in evaluation and will critically evaluate the contributions of themselves and fellow team members.

This is a core Unit for the HNC Computing Group Award aimed at developing the necessary

skills for effective team working within the computing industry. The Unit may also be studied

on a standalone basis by a candidate with an interest in developing their team working skills.

Computing: Graded Unit 1

Computing: Graded Unit 1 – 80 Hours

This Graded Unit is designed to provide evidence that the candidate has achieved the following principal aims of the HNC in Computing:

To develop the candidate’s knowledge and skills such as planning, analyzing and synthesizing

To develop study and research skills

To enable progression within the Scottish Credit and Qualifications Framework

To provide academic stimulus.

Software Development: Object Oriented Programming

Software Development: Object Oriented Programming – 160 Hours

This Unit is designed to enable candidates to develop a broad knowledge of the concepts, principles, and techniques of object oriented software development. Candidates will develop problem-solving and object oriented technical skills. Candidates will then be required to demonstrate their proficiency in these skills through the creation of object oriented software solutions to problems. The emphasis is on the development and testing of the class libraries required for the problem domain. These will be reinforced by developing the appropriate practical skills in implementing and testing object libraries. It is recommended that this Unit is delivered in tandem with the Unit Systems Development: Object Oriented Analysis and Design (HP2M 48) to give candidates an insight into the full development lifecycle.

Systems Development: Object Oriented Analysis and Design

Systems Development: Object Oriented Analysis and Design – 160 Hours

This Unit is designed to enable candidates to develop a knowledge of the theoretical concepts, underlying principles, scope and role of systems analysis and design undertaken within an object-oriented environment. The Unit develops Candidates’ practical systems development skills and introduces Candidates to a variety of requirements gathering and modelling techniques used in object-oriented systems analysis and design, using UML or similar modelling notation. The emphasis will be on static conceptual modelling (class diagrams) and evolving behavioral models (use case models and sequence diagram modelling). It is recommended that this Unit is delivered in tandem with the Unit Software Development: Object Oriented Programming (HP2L 48) to give candidates an insight into the full development lifecycle.

Software Development: Data Structures

Software Development: Data Structures – 160 Hours

This Unit is designed to enable candidates to become familiar with the data structures and collection classes in common use within current software development environments. This knowledge will be supplemented by the coding of collection and/or aggregation associations using appropriate standard generic collection classes. The Unit is a mandatory Unit for the SQA Diploma in Software Development and has been designed to enhance candidates’ programming and algorithm design skills. These skills should help prepare candidates for employment and/or further study in the field of software development.

Scripting for Interactivity

Scripting for Interactivity – 160 Hours

This Unit is designed to develop candidates’ skills in designing and developing interactive multimedia applications using the scripting elements of a multimedia authoring tool.

On completion of the Unit the candidate should be able to:

1. Select a multimedia authoring tool for a script driven application.

2. Develop a system specification and detailed design for a script-driven multimedia application.

3. Use the scripting facilities of a multimedia authoring tool to implement interactivity

4. Test the completed product.

Self-Describing Data (XML)

Self-Describing Data (XML) – 80 Hours

This Unit is designed to provide candidates with the knowledge of the use of self-describing data in communicating data between a wide range of applications. The candidate will learn practical skills in the generation of XML documents and the use of tools such as XML editors and XML generation tools to produce these documents. The Unit introduces the syntax of well-formed XML documents, the use of validation techniques and concludes with the transformation and styling of XML documents, suitable for publication in a desired format.

Software Development: Rapid Applications Development and Prototyping

Software Development: Rapid Applications Development and Prototyping – 160 Hours

This Unit is designed to expose candidates to the development of a software product using recognized techniques within a modern well-defines methodology. The aim of the Unit is to increase the candidates’ skills in designing and building software applications using fourth generation (HG) or object-oriented languages. This Unit is aimed at candidates who have completed the first year of the Diploma in Software Development and/or those candidates who have completed the Advanced Certificate in Computing.

Web Development: Dynamically Generated Content

Web Development: Dynamically Generated Content – 160 Hours

This Unit is designed to enable learners to gain knowledge the skills of dynamic data driven web application development and apply that knowledge when planning, designing and developing a dynamic web application with data driven content using a server side language.

Computing: Software Development: Graded Unit 2

Computing: Software Development: Graded Unit 2 – 160 Hours

This Graded Unit is designed to provide evidence that the candidate has achieved the following specific aims of the Diploma in Software Development:

1. To prepare students for employment in an IT/Computing-related post at technician or professional level in a software development role.

2. To develop a range of specialist technical software development skills and knowledge in programming and systems development.

3. To prepare students for progression to further study in Computing, Software Development, Software Engineering or a related discipline.

4. To develop an awareness of professional IT issues such as legal and ethical considerations.

Admission Requirements

Academic Eligibility
  • Grade 12 (or equivalent) Canadian high‑school credential OR
  • Relevant professional experience / mature‑student status
English‑Language Proficiency

Applicants must provide proof of English language proficiency through any one of the following:

  • Completion of 2 years of secondary education (including English 10 and 11 with a grade of ‘C’ or higher) from a country where English is one of the principal languages
  • Completion of 2 years of full-time post-secondary education at an accredited institution where English is the language of instruction
  • An English Language Proficiency Test with one of the following minimum scores:
    • International English Testing (IELTS) Academic: Minimum overall score of 6.0
    • Test of English as a Foreign Language (TOEFL) IBT: Minimum overall score of 67 (TOEFL-Home test not accepted).
    • Canadian English Proficiency Index Program (CELPIP): Listening 7, Speaking 7, Reading 7, and Writing 7
    • Duolingo English Test: Minimum overall score of 105
    • Pearson Test of English (PTE) Academic: Minimum overall score of 52

See full English Language Proficiency Requirements for details.

Technology Access
  • Reliable high‑speed internet and a device capable of running online‑class software (e.g., Microsoft Teams)
Program Workload
  • Approximately 10-15 hours/week homework is required from students to be successful in this fast-paced and intensive program.

Tuition Fees

Domestic Students
  • Tuition Fee: $24,000
    • Year-1 Tuition: $13,500
    • Year-2 Tuition: $10,500
  • Application Fee: $250
  • Assessment Fee: $250
  • Administration Fee: $100
  • Course Material Fee (Books not included): $1,000
  • Archive Fee: $30
  • Total Fees: $25,630*

*Domestic students may qualify for financial aid or Focus College scholarships. Complete the application form or visit our Financial Assistance page to learn more.

International Students
  • Tuition Fee: $24,500
    • Year-1 Tuition: $14,000
    • Year-2 Tuition: $10,500
  • Application Fee: $500
  • Assessment Fee: $250
  • Administration Fee: $100
  • Course Material Fee (Books not included): $1,000
  • Archive Fee: $30
  • Total Fees: $26,380

Student Success Stories