Preview Workflow

Viewing: ECE 309 : Data Structures and Object-Oriented Programming for Electrical and Computer Engineers

Last approved: Sat, 17 Mar 2018 08:02:37 GMT

Last edit: Fri, 23 Feb 2018 13:01:01 GMT

Change Type
Major
ECE (Electrical and Computer Engineering)
309
006004
Dual-Level Course
Cross-listed Course
No
Data Structures and Object-Oriented Programming for Electrical and Computer Engineers
Data Structure and OOP For ECE
College of Engineering
Electrical & Computer Engineering (14ECE)
Term Offering
Fall and Spring
Offered Every Year
Fall 2018
Previously taught as Special Topics?
No
 
Course Delivery
Face-to-Face (On Campus)

Grading Method
Graded with S/U option
3
16
Contact Hours
(Per Week)
Component TypeContact Hours
Lecture3.0
Course Attribute(s)


If your course includes any of the following competencies, check all that apply.
University Competencies

Course Is Repeatable for Credit
No
 
 
James Tuck
Associate Professor

Open when course_delivery = campus OR course_delivery = blended OR course_delivery = flip
Enrollment ComponentPer SemesterPer SectionMultiple Sections?Comments
Lecture100100NoNone.
Open when course_delivery = distance OR course_delivery = online OR course_delivery = remote
Prerequisite: C- or better in ECE 209

Is the course required or an elective for a Curriculum?
Yes
SIS Program CodeProgram TitleRequired or Elective?
14EEBSElectrical EngineeringElective
14CPEBSComputer EngineeringRequired
Advanced programming topics focusing on data structures and object-oriented programming. Common data structures, including linked lists, hash tables, trees, balanced trees, heaps, graphs, and B-trees, are described, analyzed, and implemented. Object-oriented programming topics, classes, inheritance, polymorphism, abstract types, and generic types are described and applied to program design.

During the last ABET review, the lack of a data structures course was pointed out as an issue by reviewers.  The proposed changes to ECE 309 are meant to resolve this problem.


Data structures are now a major focus of the class. Changed the title, learning outcomes, and course overview to reflect the new course content.


The course schedule, shown in the syllabus, demonstrates a significant focus on data structures. 30% of the lectures focus solely on object-oriented programming, and the remaining ones focus on data structures.


No

Is this a GEP Course?
No
GEP Categories

Humanities Open when gep_category = HUM
Each course in the Humanities category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

Mathematical Sciences Open when gep_category = MATH
Each course in the Mathematial Sciences category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

Natural Sciences Open when gep_category = NATSCI
Each course in the Natural Sciences category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

Social Sciences Open when gep_category = SOCSCI
Each course in the Social Sciences category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

Interdisciplinary Perspectives Open when gep_category = INTERDISC
Each course in the Interdisciplinary Perspectives category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

 
 

 
 

Visual & Performing Arts Open when gep_category = VPA
Each course in the Visual and Performing Arts category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

Health and Exercise Studies Open when gep_category = HES
Each course in the Health and Exercise Studies category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
&
 

 
 

 
 

 
 

Global Knowledge Open when gep_category = GLOBAL
Each course in the Global Knowledge category of the General Education Program will provide instruction and guidance that help students to achieve objective #1 plus at least one of objectives 2, 3, and 4:
 
 

 
 

 
Please complete at least 1 of the following student objectives.
 

 
 

 
 

 
 

 
 

 
 

US Diversity Open when gep_category = USDIV
Each course in the US Diversity category of the General Education Program will provide instruction and guidance that help students to achieve at least 2 of the following objectives:
Please complete at least 2 of the following student objectives.
 
 

 
 

 
 

 
 

 
 

 
 

 
 

 
 

Requisites and Scheduling
 
a. If seats are restricted, describe the restrictions being applied.
 

 
b. Is this restriction listed in the course catalog description for the course?
 

 
List all course pre-requisites, co-requisites, and restrictive statements (ex: Jr standing; Chemistry majors only). If none, state none.
 

 
List any discipline specific background or skills that a student is expected to have prior to taking this course. If none, state none. (ex: ability to analyze historical text; prepare a lesson plan)
 

Additional Information
Complete the following 3 questions or attach a syllabus that includes this information. If a 400-level or dual level course, a syllabus is required.
 
Title and author of any required text or publications.
 

 
Major topics to be covered and required readings including laboratory and studio topics.
 

 
List any required field trips, out of class activities, and/or guest speakers.
 

No new or additional resources are needed to teach this class. It is already taught by full-time faculty or an adjunct each semester.

This class introduces students to object-oriented programming concepts and common data structures. Data structures and object-oriented concepts are essential to the practice of programming. Furthermore, by combining their treatment into a single course, the essential data structures covered also serve to illustrate object-oriented design principles.


The data structures covered in the class include linked lists, trees, binary search trees, balanced trees, heaps, hash-tables, and graphs. Common operations on these data structures, like insertion, deletion, and traversals, will be covered. Also, for graphs, operations like topological sort, shortest path, and minimal-spanning trees will be discussed. 


Object-oriented programming will also be covered, with an emphasis on its key concepts, like classes, inheritance, abstract classes, polymorphism, and generic types.    


Student Learning Outcomes

  • Design and implement data structures and other programs using object-oriented methods.

  • Explain the concepts of inheritance and polymorphism, describe a scenario in which they are useful, and interpret the execution of code that uses them.

  • Describe common data structures, what they mean, and examples of how they are used in programs. Such data structures include linked lists, trees, heaps, graphs, and hash tables.

  • Describe common algorithms on linked lists, trees, heaps, and graphs, like insertion, removal, and traversal.  Analyze their storage and runtime complexity. Implement and test that they work.

  • Describe and implement common algorithms on graphs, including shortest path, topological sort, and minimum spanning tree.


Evaluation MethodWeighting/Points for EachDetails
Homework30%Weekly homework assignments will require students to implement data structures and object oriented programming concepts.
Other5%In-class assignments to encourage participation and help students stay on track.
Multiple exams30%Two exams, each worth 15%.
Final Exam35%Comprehensive final exam.
TopicTime Devoted to Each TopicActivity
See calendar in Syllabus

dwparish (Thu, 22 Feb 2018 21:06:41 GMT): Rollback: Rolled back as per meeting request changes.
Key: 1767