|
Instruction offered by members of the Department of Computer Science in the Faculty of Science and the Department of Electrical and Computer Engineering in the Schulich School of Engineering.
|
|
Software Engineering
301
|
Software Analysis and Design
|
|
Introduction to developing large-scale, quality software, from analysis of requirements, through design, implementation, and testing. Introduction to design for non-functional properties of software. Emphasis on individual skills.
Course Hours:
3 units; H(3-1T-2)
Prerequisite(s):
Computer Science 319 or 331.
Antirequisite(s):
Credit for Software Engineering 301 and any of Software Engineering 311, Computer Science 301 or 333 will not be allowed.
|
back to top | |
|
Software Engineering
401
|
Software Architecture
|
|
Software architectures and design for non-functional software properties. Introduction to program comprehension skills including analysis of existing architectures.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Software Engineering 301.
Antirequisite(s):
Credit for Software Engineering 401 and Software Engineering 443 will not be allowed.
|
back to top | |
|
Software Engineering
403
|
Software Development in Teams and Organizations
|
|
A comparison of alternative software processes emphasizing both their strengths and weaknesses. Addresses the human, social, societal, ethical, and organizational factors inherent in real-world software development. Emphasis on team development skills in a large-scale development project.
Course Hours:
3 units; H(3-3T)
Prerequisite(s):
Software Engineering 301.
Antirequisite(s):
Credit for Software Engineering 403 and any of Software Engineering 411 or Computer Science 301 or 451 will not be allowed.
|
back to top | |
|
Software Engineering
437
|
Software Testing
|
|
Concepts, methods, techniques, processes, and tools for software testing.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Software Engineering 301.
|
back to top | |
|
Software Engineering
471
|
Software Requirements Engineering
|
|
Introduction to elicitation, modelling, expression and validation of the requirements. Techniques and methodologies for requirements engineering. Applications of requirements engineering to the management of the software development lifecycle.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Software Engineering 301 or Computer Science 301.
Also known as:
(formerly Software Engineering for Engineers 471)
|
back to top | |
|
Software Engineering
499
|
Introductory Topics in Software Engineering
|
|
Special topics at an introductory level on software development methods, technologies, or tools.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Consent of either the Department of Electrical and Computer Engineering or the Department of Computer Science.
Notes:
Consult Department (Computer Science or Electrical and Computer Engineering) for details regarding offerings in the upcoming academic year.
MAY BE REPEATED FOR CREDIT
|
back to top | |
|
Software Engineering
501
|
Advanced Topics in Software Engineering
|
|
Special topics at an advanced level on software development methods, technologies, or tools.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Consent of either the Department of Electrical and Computer Engineering or the Department of Computer Science.
Notes:
Consult Department (Computer Science or Electrical and Computer Engineering) for details regarding offerings in the upcoming academic year.
MAY BE REPEATED FOR CREDIT
|
back to top | |
|
Software Engineering
511
|
Software Process and Project Management
|
|
Analysis of methods, tools, and techniques for software process improvement and software project management as an effort to achieve quality software products.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Software Engineering 403 or 411.
|
back to top | |
|
Software Engineering
513
|
Web-Based Systems
|
|
An overview of software engineering methods and technologies for developing web-based software systems.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Software Engineering 301.
|
back to top | |
|
Software Engineering
515
|
Agile Software Engineering
|
|
Investigation and application of agile software development practices.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
One of Software Engineering 401, 403, 411, or 443.
|
back to top | |
|
Software Engineering
521
|
Software Reliability and Software Quality
|
|
The principles, processes, and applications of software reliability and software quality assurance.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
Software Engineering 437 or 421.
Antirequisite(s):
Credit for Software Engineering 521 and 637 will not be allowed.
|
back to top | |
|
Software Engineering
523
|
Formal Methods
|
|
Software specification, verification, and validation using a mathematically rigorous technique.
Course Hours:
3 units; H(3-2T)
Prerequisite(s):
Software Engineering 403 or 411.
|
back to top | |
|
Software Engineering
533
|
Software Performance Evaluation
|
|
Analyzing quality requirements of large-scale software. Performance analysis, testing, and tuning techniques. Evaluating software scalability. Capacity planning methodologies. Issues related to safety, security, and availability of software.
Course Hours:
3 units; H(3-2)
Prerequisite(s):
One of Software Engineering 301 or Computer Engineering 493 and one of Computer Science 457, Software Engineering for Engineers 413, or Computer Engineering 491.
Also known as:
(formerly Software Engineering for Engineers 533)
|
back to top | |
|
Software Engineering
541
|
Fundamentals of Software Evolution and Reuse
|
|
Phenomena and approaches involved in the evolution and reuse of large-scale software, including design for modifiability and tool support. Strengths and weaknesses of industrially-current techniques as well as recent research results.
Course Hours:
3 units; H(3-2T)
Prerequisite(s):
Software Engineering 301.
Antirequisite(s):
Credit for Software Engineering 541 and 641 will not be allowed.
Also known as:
(formerly Software Engineering 531)
|
back to top | |
|
|
Software Engineering
605
|
Industrial Topics in Software Engineering
|
|
A study of practical approaches of industrial relevance to students specializing in Software Engineering.
Course Hours:
1.5 units; Q(3-1)
Notes:
Consult Department (Computer Science or Electrical and Computer Engineering) for details regarding offerings in the upcoming academic year.
MAY BE REPEATED FOR CREDIT
|
back to top | |
|
Software Engineering
607
|
Special Topics in Software Engineering
|
|
A study of problems of particular interest to students specializing in Software Engineering.
Course Hours:
3 units; H(3-1)
Notes:
Consult Department (Computer Science or Electrical and Computer Engineering) for details regarding offerings in the upcoming academic year.
MAY BE REPEATED FOR CREDIT
|
back to top | |
|
Software Engineering
609
|
Special Topics in Software Engineering
|
|
A study of problems of particular interest to students specializing in Software Engineering.
Course Hours:
1.5 units; Q(3-1)
Notes:
Consult Department (Computer Science or Electrical and Computer Engineering) for details regarding offerings in the upcoming academic year.
MAY BE REPEATED FOR CREDIT
|
back to top | |
|
Software Engineering
611
|
Requirements Engineering I
|
|
The elicitation, modelling, expression, and validation of requirements.
Course Hours:
1.5 units; Q(3-1)
|
back to top | |
|
Software Engineering
615
|
Agile Software Engineering
|
|
Investigation and application of agile software development practices.
Course Hours:
3 units; H(3-1)
Notes:
Students are expected to have some background in software development as preparation for this course.
|
back to top | |
|
Software Engineering
622
|
Software Release Planning
|
|
Product release planning covers systematic methods, tools and techniques for defining the functionality of a sequence of product releases in incremental development. The planning and re-planning is established as a systematic process trying to optimize resources available towards the functionality most requested by customers and stakeholders.
Course Hours:
3 units; H(3-1)
Antirequisite(s):
Credit for Software Engineering 622 and 607.25 will not be allowed.
|
back to top | |
|
Software Engineering
627
|
Software Engineering Decision Support
|
|
Provides methodological foundations of software engineering decision-making and how to apply them to make better decisions about processes, products, and resources as well as for selection of tools and techniques.
Course Hours:
3 units; H(3-1)
Antirequisite(s):
Credit for Software Engineering 627 and 625 will not be allowed.
|
back to top | |
|
Software Engineering
629
|
Software Engineering Standards and Models
|
|
Formal description of algorithms for current software engineering standards and models. Trends and future development in software engineering standardization.
Course Hours:
1.5 units; Q(3-0)
|
back to top | |
|
|
Software Engineering
639
|
Advanced Software Testing
|
|
Advanced techniques, tools and concepts in software testing including: Agile testing, acceptance testing, GUI testing, test coverage analysis, automated testing, and new developments in testing research.
Course Hours:
3 units; H(3-0)
Notes:
Software Engineering 437 or equivalent is recommended as preparation for this course.
|
back to top | |
|
Software Engineering
641
|
Software Evolution and Reuse
|
|
Phenomena and approaches involved in the evolution and reuse of large-scale software, including design for modifiability and tool support. Strengths and weaknesses of industrially-current techniques as well as recent research results.
Course Hours:
3 units; H(3-0)
Antirequisite(s):
Credit for Software Engineering 641 and 541 will not be allowed.
Notes:
Software Engineering 301 or equivalents are recommended as preparation for this course.
Also known as:
(formerly Computer Science 601.33)
|
back to top | |
|
Software Engineering
652
|
Full-Course Project
|
|
A project in either software development or software best practice and experience.
Course Hours:
6 units; F(3S-0)
Antirequisite(s):
Credit for Software Engineering 652 and either 651 or Electrical Engineering 698 will not be allowed.
Notes:
This course is only available to MEng students with a specialization in Software Engineering. Students should register for this course in the semester when they will complete it.
|
back to top | |
|
|