British Columbia Institute of

Important Notice: COVID-19 Institute response


COMP 7082 - Software Engineering

Computer Systems Part-time Studies Course

School of Computing and Academic Studies

BCIT is planning for a substantial return to on-campus activity for the Winter 2022 term as informed by BC Provincial Health Officer guidelines. Refer to each course listing for details.

Course Details

This course offers a comprehensive overview of software engineering issues: software development methodologies, software requirements analysis, functional and non-functional requirements, software architecture, design principles and paradigms, and quality assurance. Students will learn how to apply principles, use the most adequate strategies and tools, and assure quality during the entire software development cycle.​


Acceptance into CST BTech program​.



This course isn't currently offered through BCIT Part-time Studies. Please check back next term, subscribe to receive email updates or contact us with your comments or questions.

Learning Outcomes

Upon successful completion of this course, the student will be able to:

  • Apply design principles: levels of abstraction (architectural design and detailed design), separation of concerns, information hiding, coupling and cohesion and re-use of standard structures, to software project design.
  • Apply design paradigms such as structured design (top-down functional decomposition), object-oriented analysis and design, event-driven design, component-level design, and data-structure centered, aspect oriented, function oriented, and service oriented to software project design.
  • Identify design implications of non-functional requirements, including ethics, availability, fault tolerance, maintainability, scalability, security and usability.
  • Apply architecture design principles that incorporate availability, scalability, and quality and analyze how performance variation related to available resources will be monitored and measured in the presence of varying degrees of loading to software project design.
  • Incorporate fault tolerant designs into software architectures, including rollback capabilities.
  • Incorporate asynchronous designs into architectures to ensure high throughput and fault tolerance.
  • Develop software and system architectures tests for speed, throughput, and scalability.
  • Design success criteria and determine an appropriate test environment that will mimic the production system as closely as possible.
  • Analyze the data collected during tests, validate the results, and prepare a report for teams tasked with investigating and solving overall performance issues.
  • Describe the issues that are important in selecting a set of tools for the development of a particular software system, including tools for requirements tracking, design modeling, implementation, build automation, testing, deployment, and maintenance.
  • Apply multiple methods to develop reliability estimates for a software system.

Effective as of Fall 2018

Related Programs

COMP 7082 is offered as a part of the following programs:

School of Computing and Academic Studies

  1. Computer Systems (Games Development Option)
    Full-time   Bachelor of Technology
  2. Computer Systems (Network Security Applications Development)
    Full-time   Bachelor of Technology
  3. Computer Systems (Database Option)
    Part-time   Bachelor of Technology
  4. Computer Systems (Human Computer Interface Option)
    Part-time   Bachelor of Technology
  5. Computer Systems (Network Security Administration Option)
    Part-time   Bachelor of Technology
  6. Computer Systems (Network Security Applications Development Option)
    Part-time   Bachelor of Technology
  7. Computer Systems (Wireless and Mobile Applications Development Option)
    Part-time   Bachelor of Technology

Contact Us

If you have a comment or question about this course, please complete and submit the form below.

Contact Information

The personal information on this form is collected under the authority of the College and Institute Act (RSBC 1996, Ch.52). BCIT will use this information to communicate with you regarding relevant BCIT programs, courses and services. This information is only used by authorized BCIT staff. Email communication sent to and from BCIT is routed through the United States of America. If you have any questions about BCIT's collection and use of this information, please contact BCIT’s manager of Information Access and Privacy.


Interested in being notified about future offerings of COMP 7082 - Software Engineering? If so, fill out the information below and we'll notify you by email when courses for each new term are displayed here.

Privacy Notice: The information you provide will be used to respond your request related to BCIT course information and is collected under Section 26(c) of the Freedom of Information and Protection of Privacy Act (FIPPA). For more information about BCIT’s privacy practices contact: Associate Director, Privacy, Information Access & Policy Management, British Columbia Institute of Technology, 3700 Willingdon Ave. Burnaby, BC V5A 3H2, email:

Programs and courses are subject to change without notice.

Find Courses

English Language Proficiency

BCIT's Part-time Studies English Language Proficiency Standard is English 12 (or equivalency). Students who do not meet this requirement should upgrade their English skills prior to any future registration.

Payment Changes At BCIT

We've changed the way we accept payments.

Find out more

Course Navigation, Related Links & Tools

Registration News

Registration is now open for the Winter 2022 term.

Classroom Locations

Classroom locations are subject to last minute changes. Please check the Part-time Studies Classroom Locations listing at on the first day of any course you are registered for.

Part-time Studies Financial Aid

Will you be studying at BCIT part-time? Do you need assistance funding your studies? Find out if you qualify for Part-time Studies financial aid.