Contact
ATS Associate Lecturer, Augustana - Sciences
- rosanna@ualberta.ca
- Phone
- (780) 679-1674
- Address
-
Augustana Campus Classroom Building
4901-46 AveCamrose ABT4V 2R3
- rosanna@ualberta.ca
Overview
Area of Study / Keywords
Software engineering
About
In order to teach, I must know something about you, the student. Together, with both of us working hard, we will learn many new things in Computing Science and Mathematics, and about getting through life well.
Special moments:
- When a student realizes something in computing is no longer "magic".
- When a student conquers a fear (e.g. of Math or of Computing or of Speaking in front of other students).
- Spending time with my family or my friends, hiking, biking, walking, being in nature.
- Hiking the Jasper Skyline Trail, July 2020
Research
- Making Computing accessible.
- Recently designed a Software Engineering course at Augustana that teaches the age-old principles while keeping students motivated by developing an app for a mobile phone.
- Recently designed a First Year Seminar course to use robotics in a context that introduces students to life at university.
- Recently designed new labs for our introduction to computing course in Python: smalltalk turtle, graphical interface game, processing Excel, and web scraping.
BOOK
Heise, Rosanna. Practices in Data Structures and Algorithms with Java. 2023. Go to Book
Teaching
Past Courses:
AUCSC 110 Introduction to Computing Science (html, Java)
AUCSC 111 Introduction to Computational Thinking (in Python)
AUCSC 113 Introduction to Computational Thinking (in Python)
AUCSC 112 Data Structures and Algorithms (in Java)
AUCSC 220 Introduction to Software Engineering (in Java/Android app)
AUCSC 250 Computer Organization & Architecture (machine & assembly languages; circuit design)
AUCSC 310 Algorithm Analysis & Design (in Java)
AUCSC 320 Software Engineering II
AUCSC 350 Computer Organization & Architecture II
AUCSC 370 Programming Languages (focus on C, Scheme, Prolog)
AUCSC 395 Topics in Computing Science
AUCSC 401 Professional Practicum I
AUCSC 402 Professional Practicum II
AUCSL 480 Directed Study Community Service Learning
AUIDS 101 First Year Seminar (Rise of the Robots)
AUMAT 101 Preparation for Calculus
AUMAT 107 Higher Arithmetic
AUMAT 110 Elementary Calculus I
AUMAT 116 Calculus Concepts and Modeling
AUSCI 135 Practical Introduction to Computational Thinking (in Python)
AUSCI 235 Practices in Data Structures and Algorithms (in Java)
Courses
AUCSC 112 - Data Structures and Algorithms
An introduction to object-oriented design and programming in Java; algorithm analysis; data structures and container classes including arrays, lists, arraylists, stacks, queues, user-defined structures and an introduction to trees, along with associated algorithms such as insertion, removal, sorting and retrieval; introduction to recursion. Prerequisite: AUCSC 111, AUCSC 113 (2023) or AUSCI 135. Corequisites: AUMAT 116 and 120. Note: Credit may be obtained for only one of AUCSC 112 and AUCSC 211, and for only one of AUCSC 112 and AUSCI 235.
AUCSC 250 - Computer Organization and Architecture I
Introduction to computer systems as multilevel machines. Topics include data representation; the organization and execution cycle of Von Neumann machines; assembly-level programming, addressing modes, control flow, procedure calls, input/output, interrupts, caching; finite state machines, Boolean algebra, logic gates, and digital circuits. Prerequisite: AUCSC 112, or AUCSC 211 and AUSCI 235.
AUCSC 370 - Programming Languages
Principles of language design, abstraction, syntax and parsing, operational semantics (declaration, allocation, evaluation, run-time environment, typing, activation), and programming language paradigms (procedural, object- oriented, functional, logic programming). Prerequisites: AUCSC 112 (2021), or AUCSC 211 and AUSCI 235. Corequisite: AUCSC 250 and AUMAT 250.
AUCSC 395 - Directed Study I
Intensive study of a specific area of Computing Science as defined by the student and a supervising instructor, including completion of a software project in the selected area. Prerequisite: 9 units of senior-level Computing Science. Notes: Admission to AUCSC 395 normally requires a minimum GPA of 3.0 in Computing Science. An Application for Individual Study must be completed and approved before registration in the course.
AUCSC 401 - Professional Practicum I
A four-month work experience placement focused on gaining practical experience in software development and/or information systems, and an appreciation of the demands and responsibilities of the computing profession. Upon completion of the work experience term, the student must submit a report to the Department which summarizes, evaluates, and reflects on the work performed and the knowledge and experience gained during the placement. Prerequisites: At least 18 units in Computing Science, third-year standing, and consent of the Department. Note: Participation in the practicum is by application only, and is restricted to Computing Science majors.