UofC " This Is Now

Search Calendar:


Site Navigation
Welcome
Important Notice and Disclaimer
Applications for Admission Schedule
Examinations Schedule
Fees Schedule
Academic Schedule
Undergraduate Degrees with a Major
Collaborative Degrees
Combined Degrees
Minor Programs
Student Services
Undergraduate Admissions
Academic Regulations
Tuition and General Fees
English for Academic Purposes Program
Faculty of Communication and Culture
Faculty of Education
Faculty of Environmental Design
Faculty of Fine Arts
Faculty of Graduate Studies
Haskayne School of Business
Faculty of Humanities
Faculty of Kinesiology
Faculty of Law
Faculty of Medicine
Faculty of Nursing
Schulich School of Engineering
Faculty of Science
Faculty of Social Sciences
Faculty of Social Work
Faculty of Veterinary Medicine
Collaborative Programs
Co-operative Education/Internship
Continuing Education
Awards and Financial Assistance
COURSES OF INSTRUCTION
How to Use
Courses of Instruction by Faculty
Course Descriptions
A
B
C
D
E
F
G
H
I
J, K
L
M
N, O
P
R
S
Science SCIE
Science, Technology and Society STAS
Slavic SLAV
Social Sciences SOSC
Social Work SOWK
Sociology SOCI
Software Engineering SENG
Software Engineering for Engineers ENSF
South Asian Societies SASO
South Asian Studies SAST
Space Physics SPPH
Spanish SPAN
Statistics STAT
Strategic Studies STST
Strategy and Global Management SGMA
Sustainable Energy Development SEDV
T, U
V, W, Z
About the University of Calgary
Where
Who's Who
Glossary of Terms
Contact Us
Summary of Changes
University of Calgary Calendar 2009-2010 COURSES OF INSTRUCTION Course Descriptions S Software Engineering SENG
Software Engineering SENG

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.

Computer Science Department Head - K.Barker

Electrical and Computer Engineering Department Head - A. Sesay

Registration in each course requires the consent of the Department teaching the course.

Senior Courses
Software Engineering 301       Analysis and Design of Large-Scale Software I
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:
H(3-1T-2)
Prerequisite(s):
Computer Science 331.
Antirequisite(s):
Note: Credit for both Software Engineering 301 and any of Software Engineering 311, Computer Science 301 or 333, or Management Information Systems 333 will not be allowed.
back to top
Software Engineering 401       Analysis and Design of Large-Scale Software II
Software architectures and design for non-functional software properties. Introduction to program comprehension skills including analysis of existing architectures.
Course Hours:
H(3-2)
Prerequisite(s):
Software Engineering 301.
Antirequisite(s):
Note: Credit for both 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 project.
Course Hours:
H(3-3T)
Prerequisite(s):
(For students registered in Computer Science) Software Engineering 301 and one of Philosophy 249, 329, 349, or Business and Environment 561, (For students registered in Software Engineering, Schulich School of Engineering) Software Engineering 301.
Antirequisite(s):
Note: Credit for both 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:
H(3-2)
Prerequisite(s):
Software Engineering 301.
back to top
Software Engineering 471       Software Requirements Engineering
Introduction to elicitation, modeling, 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:
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 501       Advanced Topics in Software Engineering
Topics of the next generation of software development methods, technologies, or tools.
Course Hours:
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 Improvement
Analysis of methods, tools, and techniques for software process improvement as an effort to achieve quality software products.
Course Hours:
H(3-2)
Prerequisite(s):
One of Software Engineering 403 or 411, or Computer Science 301 or 451.
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:
H(3-2)
Prerequisite(s):
One of Software Engineering 403 or 411 or Computer Science 301 or 451.
back to top
Software Engineering 515       Agile Software Engineering
Investigation and application of agile software development practices.
Course Hours:
H(3-2)
Prerequisite(s):
One of Software Engineering 401, 403, 411, or 443 or Computer Science 301 or 451.
Also known as:
(formerly Computer Science 599.93)
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:
H(3-2)
Prerequisite(s):
Software Engineering 437 or 421.
back to top
Software Engineering 523       Formal Methods
Software specification, verification, and validation using a mathematically rigorous technique.
Course Hours:
H(3-2T)
Prerequisite(s):
One of Software Engineering 403 or 411 or Computer Science 301 or 451.
back to top
Software Engineering 533       Performance Evaluation and Testing of Non-Functional Software Requirements
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:
H(3-2)
Prerequisite(s):
One of Software Engineering 301, Computer Engineering 493, or Computer Science 301, 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       Modifiability of Large-Scale Software
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:
H(3-2T)
Prerequisite(s):
Software Engineering 401.
Also known as:
(formerly Software Engineering 531)
back to top
Graduate Courses
Software Engineering 605       Industrial Topics in Software Engineering
A study of practical approaches of industrial relevance to students specializing in Software Engineering.
Course Hours:
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:
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:
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:
Q(3-1)
back to top
Software Engineering 613       Requirements Engineering II
Applications of requirements engineering to the management of the lifecycle of software development from requirements elicitation through analysis, design, coding, testing, enhancement and reuse.
Course Hours:
Q(3-1)
Prerequisite(s):
Software Engineering 611.
back to top
Software Engineering 615       Agile Software Engineering
Investigation and application of agile software development practices.
Course Hours:
H(3-2)
Prerequisite(s):
Consent of the Department.
Notes:
Students are expected to have some background in software development as preparation for this course.  Lectures may run concurrently with Software Engineering 515.
Also known as:
(formerly Computer Science 601.93)
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:
H(3-1)
Antirequisite(s):
Note: Credit for both 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:
Q(3-0)
Also known as:
(formerly Software Engineering 609.17)
back to top
Software Engineering 637       Dependability, Reliability, and Testing of Software Systems
Principles of software dependability techniques, and techniques to improve, to predict, and to test software reliability.
Course Hours:
H(3-2)
Antirequisite(s):
Note: Credit for both Software Engineering 637 and either Software Engineering 631 or 635 will not be allowed.
Notes:
Engineering 319, Software Engineering 511, and Software Engineering 437 or 421, or their equivalents, are recommended as preparation for this course.
back to top
Software Engineering 641       Modifiability of Large-Scale Software
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:
H(3-1)
Prerequisite(s):
Consent of the Department.
Notes:
Software Engineering 401 or equivalent is recommended as preparation for this course.  Lectures may run concurrently with Software Engineering 541.
Also known as:
(formerly Computer Science 601.33)
back to top
Software Engineering 651       Half-Course Project
A project in either software development or software best practice and experience.
Course Hours:
H(3S-0)
Antirequisite(s):
Note: Credit for both Software Engineering 651 and 652 will not be allowed.
Notes:
This course is only available to students registered in the course-based MSc in Computer Science with the Software Engineering Specialization.  Students should register for this course in the semester when they will complete it.
back to top
Software Engineering 652       Full-Course Project
A project in either software development or software best practice and experience.
Course Hours:
F(3S-0)
Antirequisite(s):
Note: Credit for both Software Engineering 652 and either 651 or Electrical Engineering 698 will not be allowed.
Notes:
This course is only available to students registered in the course-based MSc in Computer Science with the Software Engineering Specialization or 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
Software Engineering 697       Agent-Based Software Engineering
Principles and practices of engineering agent-based software systems.
Course Hours:
Q(3-0)
Antirequisite(s):
Note: Credit for both Software Engineering 697 and Computer Science 609 will not be allowed for programs offered by the Department of Computer Science.
Also known as:
(formerly Software Engineering 609.22)
back to top