B.Sw.Eng. @ UWaterloo



Similar documents
Core Curriculum to the Course:

The Relevance of CS and SE Education: A Survey

Erik Jonsson School of Engineering and Computer Science Interdisciplinary Programs

Undergraduate Degree Map for Completion in Four Years

Computer Science. General Education Students must complete the requirements shown in the General Education Requirements section of this catalog.

Erik Jonsson School of Engineering and Computer Science

Criteria for Accrediting Computer Science Programs Effective for Evaluations during the Accreditation Cycle

COMPUTER SCIENCE. Department of Mathematics & Computer Science

Current requirements for a major (page 83 of current catalog)

Orientation to Computer Engineering

The following are the measurable objectives for graduated computer science students (ABET Standards):

College of Science Department of Mathematics and Computer Science. Assessment Plan Computer Science and Computer Networks

Rules of the program leading to Bachelor of Science in Computer Science

Reasons for need for Computer Engineering program From Computer Engineering Program proposal

Department of Computer Science and Engineering

Electrical and Computer Engineering Undergraduate Advising Manual

Computer Science Major Utah State University

COMPUTER SCIENCE AND ENGINEERING

ELECTRICAL and COMPUTER ENGINEERING

COMPUTER SCIENCE PROGRAMS

Undergraduate Degree Map for Completion in Four Years

ALFAISAL UNIVERSITY COLLEGE OF ENGINEERING

ENGINEERING PHYSICS Chair: W. Doyle St.John Office: Engineering Hall 228 Department Telephone: (608)

Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum

Information Systems. Administered by the Department of Mathematical and Computing Sciences within the College of Arts and Sciences.

Department of Electrical and Computer Engineering Naval Postgraduate School Monterey, California

Computer Engineering (BS)

Guide to the MSCS Program Sheet

Computer Engineering

HANDBOOK FOR THE APPLIED AND COMPUTATIONAL MATHEMATICS OPTION. Department of Mathematics Virginia Polytechnic Institute & State University

COS 140: Foundations of Computer Science

Electrical and Computer Engineering

Department of Computer Science

CRITERIA FOR ACCREDITING COMPUTING PROGRAMS

Computer Engineering Graduate Handbook. Administered by the Computer Science and the Charles L. Brown Department of Electrical & Computer Engineering

Bachelor Degree in Informatics Engineering Master courses

Accelerated Bachelor of Science/Master of Science in Computer Science. Dual Degree Program

UNDERGRADUATE DEGREE PROGRAMME IN COMPUTER SCIENCE ENGINEERING SCHOOL OF COMPUTER SCIENCE ENGINEERING, ALBACETE

A Comparison of Computer Science and Software Engineering Programmes in English Universities

CRITERIA FOR ACCREDITING COMPUTING PROGRAMS

Bachelor of Science (BSc), Information Technology (IT) Semester-based Layout of the Program

School of Management and Information Systems

Computer and Systems Engineering (CSE) Master of Science Programs

What You Need to Know About Computer Science, B.S.A.T. Programs

Department of Computer Science and Engineering. BA in Information Technology

Master Degree Program in Computer Science (CS)

Electrical and Computer Engineering

ALFAISAL UNIVERSITY. College of Engineering

ELECTRICAL ENGINEERING CURRICULUM. With TLP Courses (02/04/16 revision course number updates, capstone with either SYS or ECE course #)

DIVISION OF SCIENCES AND ENGINEERING

Graduate Programs. Dept of Computer Science. Dr. Weining Zhang

Software Engineering

The Emerging Trends in Electrical and Computer Engineering

M.S. in Transportation

University of Illinois Department of Computer Science Goals, Objectives, and Assessments January 2009

Handbook for Undergraduate Students in Electrical and Computer Engineering

Proposal for a BA in Applied Computing

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

Department of Computer Science School of Arts and Science.

The University of Connecticut. School of Engineering COMPUTER SCIENCE GUIDE TO COURSE SELECTION AY Revised May 23, 2013.

Computer Science. Program of Study. Program Requirements. Advanced Placement. Approved Programs. Approved Computer Science Program

DIGITAL FORENSICS SPECIALIZATION IN BACHELOR OF SCIENCE IN COMPUTING SCIENCE PROGRAM

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

Concentration Selection/Self-Evaluation Form for The Master of Science Degree in Data Analytics Engineering

PETITION/PROGRAM SHEET Degree: Bachelor of Science Major: Computer Science

Computer Engineering Undergraduate Handbook. Bachelor of Science in Computer Engineering

Computer Science Information Sheet for entry in What is Computer Science?

CSC 310/Discrete Structures of Computer Science CSC 325/Computer Architecture. CSC 410/Advanced Analysis of Algorithms CSC 390/Programming Languages

Dual Degree Agreement Computer Science / Computer Engineering

Bachelor of Science in Computer Engineering (BSCoE) Essential Ideas

How To Get A Computer Science Degree At Coastal Carolina University

Undergraduate Major in Computer Science and Engineering

Electrical Engineering (BS) - General Track

Computer Science course unit

2. EXPLAIN CHANGE TO DEGREE PROGRAM AND GIVE A DETAILED RATIONALE FOR EACH INDIVIDUAL CHANGE:

Undergraduate Curriculum Manual

Accelerated Undergraduate/Graduate (BS/MS) Dual Degree Program in Computer Science

Software Engineering Profession and Discipline

B.Sc. in Computer Information Systems Study Plan

Applied Mathematics and Computer Science College of Science, Technology, Engineering and Mathematics University of Wisconsin Stout

Department of Electrical and Computer Engineering

Multi-core Curriculum Development at Georgia Tech: Experience and Future Steps

Revised Fall M - main campus W - online class M/NTCC - live class on main campus and broadcast to remote class at NTCC

Statistical Analysis on Curriculum of the National Model School of Software Engineering

How To Get A Computer Science Degree At Appalachian State

Bachelor of Science in. Computer Science. Advising Brochure Department of. Computer Science & Engineering College of Arts & Sciences

Computer Science Majors

Computer Science/Software Engineering

Transcription:

B.Sw.Eng. @ UWaterloo Ad Hoc Committee Members Rudi Seviora [ECE] Jo Atlee [CS] An undergraduate degree program in Software Engineering at the University of Waterloo, jointly sponsored by the depts of CS and ECE. Bruno Preiss (him) Paul Dasiewicz Kostas Kontogiannis Stefan Leue Ajit Singh Ric Holt Anne Pidduck Mike Godfrey Grant Weddell Farhad Mavaddat (me) Background and Motivation Why not... Software runs the world, for better or worse. Software comprise major assets of large corporations. Software is become even more pervasive! Industry is crying out for more, better help. B.Eng./B.A.Sc. in ECE not nearly enough software content B.Sc./B.Math. in CS no engineering mindset not enough coverage of some engineering topics Why not... B.Eng. + B.Sc. Not enough coverage of software engineering HCI? Project management? Program Design Goals A true software engineering curriculum! Graduate emerge prepared for life as a software professional. Curriculum covers the scientific and mathematical foundations. Curriculum includes engineering science and engineering design. 1

Program Design Goals Curriculum exposes students to ethical and societal issues of SE. Curriculum permits electives (technical and general). Graduates should be able to apply their knowledge to specific problems and produce solutions. Curriculum Design Proposed curriculum is based on many sources: ACM IEEE SEI CSAC CEAB plus interactions with CS and ECE curriculum committees. Curriculum Outline Core mathematics natural sciences digital computer science & engineering software engineering complementary studies Electives general linkage advanced technical Core Mathematics Calculus 1 Linear algebra Discrete Mathematics Calculus 2 Logic & computation Probability & statistics Core Natural Sciences Mechanics Core Digital Systems Electricity & magnetism Digital circuits & Digital computers 2

Core Computer Sci. & Eng. Developing programming principles Principles of computer science Foundations of sequential programs Algorithms & data Dynamic analysis structures Control structures Real-time operating Computer networks & security System performance evaluation Database Core Software Engineering Software abstraction & specification Software project management Human-computer interaction Software requirement analysis & specification Software design & architectures Software testing & quality assurance General Electives 3 courses Ideally unconstrained to allow student to customize the degree to an application area of interest to the student Initially constrained to satisfy CEAB natural sciences criteria Linkage Electives 5 courses Communication Societal issues Business issues Reasoning methodologies Humanities & social sciences plus Engineering economics (core) Advanced Electives 2 courses Fourth-year CS or E&CE courses Chosen to expose students to one or more significant application areas Advanced Electives Compiler construction Information system management Introduction to AI or Applied AI Introduction to computer graphics Distributed and network-centric computing Embedded software Numerical Linear Algebra Numeric Computation for Dynamic Simulation 3

Technical Electives 3 courses Selected third- and fourth-year technical courses, or Advanced electives Offered by CS or E&CE No overlap with SE program courses Program Skeleton math sci GE LE dig comp softw TE 3 1 1 2 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 2 1 1 1 1 3 Program Sequence - Year 1 Program Sequence - Year 2 Calculus 1 Linear algebra Mechanics Discrete mathematics Developing programming principles Calculus 2 Electricity & magnetism Logic & computation Principles of computer science Digital circuits & Probability & statistics Foundations of Sequential programs Digital computers Managerial & engineering economics Algorithms & data structures Software abstraction & specification Dynamic analysis Program Sequence - Year 3 Program Sequence - Year 4 Software project management Control structures Human-computer interaction Software requirement analysis & spec Real-time operating System performance evaluation Software design & architectures Computer networks & security Database Software testing & quality assurance 4

CEAB Accreditation Units category actual required Mathematics 298 195 Basic science 212 225 Engineering science 339 225 Engineering design 565 225 Eng. sci. & design 934 900 Complementary studies 281 225 TOTAL 1815 1800 Social Issues of Curriculum Design Initially, some resistance from within CS and ECE, but good will has won the day Some fine tuning still needed. Issues: How much of topic XXX vs. YYY? New courses or re-used courses? Instructors, TAs, lab space,... Broader Social Issues Something old, something new, You re stealing our courses. It s an insidious plot by engineering to take over computer science. You re creating a new department. Software engineering is just a trendy catch phrase, like neural networks. Broader Social Issues Those computer scientists don t understand engineering! Those engineers don t understand software! The students won t learn enough theory / numerical / AI / hardware / embedded / circuits Issues to be Resolved Teaching load, hiring, promotion and tenure Support staff, office space Techies, lab space Fees, BIU levels, low-level academic policies Where do we go from here? Objective: Admit students into the SE program in Sept. 2001 The hurdles: departmental curriculum committees departments (June 1999) faculty undergraduate studies committees faculty councils (Sept. 1999) senate undergraduate studies committee senate (Oct. 1999) 5