Dr. Yvan Labiche's Home Page :: Teaching

 
Vahid .

Courses

SYSC-2101 - Software Systems Development Laboratory
Development of expertise in designing, implementing, and testing industrial-quality, reusable code through individual and team projects. Applying and extending previously acquired knowledge of patterns, frameworks, UML, iterative and incremental development, Java (and C++) to medium- and large-scale systems.
Winter 2001, Winter 2002, Winter 2003
SYSC-3100 - Systems Analysis and Design
Creating requirements specifications prior to designing and implementing complex software systems. Software development lifecycles, role of requirements analysis; functional decomposition, dataflow modeling; database modeling, entity-relationship diagrams; finite state machines; object-oriented analysis; use cases, use case maps; project management; introduction to software design.
Fall 2001, Summer 2002
SYSC-4101 - Software Validation, Verification, and Testing
Techniques for the systematic testing of software systems. Software validation and verification, software debugging, quality assurance, measurement and prediction of software reliability. Emphasis on the treatment of these topics in the context of real-time and distributed systems.
Fall 2002, Fall 2003, Fall 2004, Fall 2005, Fall 2006, Fall 2008
SYSC-4800 - Software Engineering
Review of software lifecycles and requirements analysis. Software design, with emphasis on methods for real-time systems. Testing, verification and validation, quality assurance and control. Project planning and management. Maintenance and configuration management.
Summer 2003, Fall 2003, Summer 2004, Fall 2004, Summer 2005, Summer 2006, Fall 2006, Summer 2007, Fall 2008
SYSC-4907 - Engineering Project
Student teams develop professional-level experience by applying, honing, integrating and extending previously acquired knowledge in a major design project. See the course web site for details.
Since 2001
SYSC-5105 - Software Quality Engineering and Management
All aspects of software quality engineering. Software testing, at all stages of the software development and maintenance life cycle. Software reviews and inspections. Use of software measurement and quantitative modeling for the purpose of software quality control and improvement.
Fall 2005, Winter 2009
 
     


Copyright ©2004-2008, Dr. Yvan Labiche
Department of Systems and Computer Engineering,
Carleton University, Ottawa, Canada