CSC 213 Course Description 2017

 


Name and Code:       CSC 312

Topics:           Human Computer Interaction (HCI),
                       Software Engineering (SE) and
                       Database Systems (DB)

 

This is a semester course comprising three sections: HCI, SE and DB, spanning 13 weeks of lectures and or contact hours with lecturers. For the first 7 or so weeks of the course, the three sections operate somewhat independently, and for the latter part of the course, they interweave in the form of a capstone group project. This syllabus presents all three sections independently at first, in terms of overall description, and then provides a jointly laid out schedule to give you an idea of how it all hangs together.

 

Please note this syllabus is subject to change and details will be updated regularly throughout the course.

 

Lecturers:

Prof. Isabella Venter (HCI),  
Dr Michael Norman (SE) and
Ms Omowunmi Isafiade (DB)

iventer@uwc.ac.za, mnorman@uwc.ac.za

wunmifalola@gmail.com

Department

e-mail:

rabbot@uwc.ac.za

 

Tel. No:

021 959-3010

 

Offices:

New (old) Science Bldg., ground floor

 

Office Hours / Consultation times:

See on office doors.

Tutors:

André Henney

Andries Kruger

Toufeeq Allie

Ntombesisa Mateyisi

Saira Adams

ahenney@uwc.ac.za

afkruger@uwc.ac.za

mtallie@uwc.ac.za

3242012@myuwc.ac.za

3162887@myuwc.ac.za

 

 

 

Tutor consultation times:

At practical on Fridays.

 

On-line forum

http://172.16.56.114

 


 

            Human Computer Interaction (HCI) IM Venter

                Text Books:

Prescribed Book:

Interaction Design: Beyond human-computer interaction, 3rd  Edition

 

by            Preece, J., Sharp, H. & Rogers, Y.

Publisher – John Wiley & Sons Inc., 2015

 

ISBN 978-1-119-08879-0

 

 

Reference Books:

Internet & World Wide Web How to Program, 5th Edition

 

by            Paul J. Deitel, Harvey M. Deitel, and Abbey Deitel
Pearson-Education

These books are obtainable at:

Campus Book and Van Schaiks (Tel 021 930 2480) Sanlam Centre, Voortrekker Road, Parow.

 

Older books also available on the Reserve Shelf of the UWC Library

 

 

See also the text books’ web sites at:

Interaction Design: Beyond Human-Computer Interaction:
http://www.id-book.com/

Internet & World Wide Web

http://www.deitel.com/

 

 

Interesting link

Where do people find the time to do things like edit the Wikipedia? By Clay Shirky

http://lifehacker.com/385296/where-you-find-the-time-to-spend-online

 

 

 

Projects

HCI Project  

HCI Project

Excel Template

CSC312 Project

Final Project

Project Evaluation 1

Project Evaluation 2

Marks

CSC312 HCI Final Mark

Groupwork

Workunits and HCI/SE/DB Project Assignments

 

 

 

Slides (May change!)

Chapter 1

Chapter 2

Chapter 3

Chapter 4

Chapter 5

Chapter 6

Chapter 7

Chapter 8

Chapter 9

Chapter 10

Chapter 11

Chapter 13

Chapter 14

Chapter 15

More reading on Human Computer Interaction:

http://www.intelinfo.com/cat3.html

www.hcibib.org

http://degraaff.org/hci/

 

Mindmaps & Concept maps:

Buzan, Tony. (1993). The Mindmap Book: Radiant Thinking, published by BBC Books.  ISBN 0-563-37101-3

http://www.buzanworld.com/Mind_Maps.htm


Concept mapping at Stellenbosch Medical School 
http://sumed.sun.ac.za

Concept mapping  http://cmap.ihmc.us/

 


 

 

Prior knowledge/competencies

knowledge of a high level programming language

understanding of programming structures

Outcomes/competencies

HC1         Foundations of human-computer interaction
                (See
http://www.acm.org)

demonstrate an understanding of the reasons for human-centered software development

and the basic science of psychological and social interaction

differentiate between the role of hypotheses and experimental results versus correlations

develop a conceptual vocabulary for analyzing human interaction with software

distinguish between the different interpretations that a given icon, symbol, word or colour can have in two different human cultures, a culture and one of its subculture

understand in what ways the design of an application succeed or fail in terms of respecting human diversity. Have some knowledge of assembler language programming

create and conduct a simple usability test for an existing software application

HC2         Building a simple graphical user interface

identify fundamental principles for effective GUI design

use a GUI toolkit to create an application that supports a graphical user interface

Illustrate the effect of fundamental design principles on the structure of a GUI

conduct a simple usability test for each instance and compare the results

 

 

Schedule and Notional Hours

The class meets once a week for an hour lecture:

13 * 1

= 13 hours

A practical session once every 2nd week for two hours will be used for programming exercises in the first term:

3 * 2

= 12 hours

The practical sessions will be used for project presentation (HCI, SE & DB)

(6*2)/3

= 4 hours

You are expected to spend AT LEAST two hours for every hour in class, studying and writing up assignments:

13 * 2

= 26 hours

Tests
Pop quizzes spread throughout the term:

during class

 

HCI Project

Second term

= 7 hours

Test/exam

 

= 2 hours

Programming/project – approximately 6 hours per assignment

6 * 6

= 36 hours

Total:

= 100 notional hours

 


 

 

Database (DB) O Isafiade

                Text Books:

Prescribed Book:

Database Systems: Design, Implementation and Management by Carlos Coronel and Steven Morris, 12th Edition (2017, 2015).

 

 

Reference Books:

The Elements of Style by William Strunk, Jr. and E.B. White, 4th edition (2000).

 

These books are obtainable at:

Campus Book and Van Schaiks (Tel 021 930 2480) Sanlam Centre, Voortrekker Road, Parow.

 

Older books also available on the Reserve Shelf of the UWC Library

 

 

See also the textbook's web site at:

www.course.com

 

 

Interesting link

IIT Madras online video lectures of introductory course on DBMS

https://www.youtube.com/playlist?list=PL9426FE14B809CC41

 

 

 

Project

 

See elsewhere

 

 

Continuous Assessment

How to succeed in this course

Third year is not hard but it is different from second year, and hopefully you will not struggle to adapt if you take to advice. You have to take respons­ibility for your study yourself. Studying (a couple of hours) on your own for every lecture is very important. Try to read ahead of the lectures in an organized way. You cannot study the textbook and notes at the last minute and the lectures may not make much sense if you don't read by yourself. This will also help you should there be pop-up quizzes during lectures :).

Note: there may be pop-up quizzes during the course and as such you are strongly advised to always come for lectures. Pop-up quizzes are unannounced short, e.g. 5-10 minute, individual quizzes, in class, that cover material covered in class and also reading material announced in class, in this syllabus, including what is prescribed for the day of the lecture(s). There is no make-up for a missed pop quiz.

Practicals are very important

You will only really understand a topic once you can solve problems in the area yourself, by yourself. This is the pur­pose of assignment/practical work: this is where learning really happens. The emphasis here is on practical and appli­cable problem-solving knowledge.

Prepare your practical work carefully and note that attention to detail in presenting your solution is important and counts toward your assessment, to add to the moti­vation to work consistently. It is also helpful to consult tutors and talk about the work as required, see how you are doing and get valuable advice.

Practicals/assignments include design and (documented) implementation tasks that we will evaluate via design and code reviews. A new assignment/prac will be announced usually once every two weeks. So, we will only have pracs every other week. By the way, all design and code exercises for DB will be individual, however, the project is in teams.

Tests

We will most likely have two tests, announced in advance. There may be a third test, again you will be notified in advance.

Plagiarism

Lastly (for emphasis), note that all forms of plagiarism (programs, essays, practicals etc) are illegal and will be punished according to the Univer­sity’s rules. These rules are severe and can lead to rustication, as you may already know. Every code or practical submission will be checked for plagiarism.

Of course we do encourage you to share and debate ideas and discuss your work but we draw a careful line between that and plagiarism. So avoid plagiarism/copying!

 

Slides

Will be made available via email. Further necessary details will follow as lectures progress.

 

Prior knowledge/competencies

Same as above.

Outcomes/competencies

Forthcoming

 

 

Schedule and Notional Hours

The class meets once a week for an hour lecture:

12 * 1

= 12 hours

And then once every 2nd week for two hours.

6 * 2

= 12 hours

Two of the weekly hours may be used for tests

2 * 1

= 2 hours

You are expected to spend at most three hours for every hour in class, studying and preparing assignments:

24 * 3

= 72 hours

Test/exam (not sure if this overlaps with others or not)

 

= 2 hours

Programming/project is factored into the above

Total:

= 100 notional hours


 

Software Engineering (SE) M Norman

 

Prescribed Book:

Software Engineering: A Practitioners Approach,

by Roger S. Pressman and Bruce R. Maxim, 8th Ed, 2015 (International Edition), McGraw-Hill

ISBN 978-1-259-25315-7 or MHID 1-259-25315-5

 

This course is based on the recommendations of:

Software Engineering 2014: Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering, A Volume of the Computing Curricula Series

23 February 2015, http://www.acm.org/education/se2014.pdf

and in particular on Chapter 4: Overview of Software Engineering Education and 4.7 SE Education Knowledge (SEEK) Areas which says:

This section describes the 10 knowledge areas that make up the SEEK: computing essentials (CMP), mathematical and engineering fundamentals (FND), professional practice (PRF), software modeling and analysis (MAA), requirements analysis and specification (REQ), software design (DES), software verification & validation (VAV), software process (PRO), software quality (QUA), and security (SEC).

The areas underlined above will be covered in this introductory course.

 

These books are obtainable at:

Campus Book and Van Schaiks (Tel 021 930 2480) Sanlam Centre, Voortrekker Road, Parow.

 

Older books also available on the Reserve Shelf of the UWC Library

 

 

See also the text books’ web sites at:

http://highered.mheducation.com/sites/0078022126/student_view0/index.html

Course web site

https://drive.google.com/folderview?id=0B0OtNK8uZHQSM1VOaTlVQVRvWFk&usp=sharing

 

 

Course outline

 

Embedded below.

There is also a separate course description which will be made available in printed and online form about the details for Software Engineering

 

Evaluation

 

 

Mine-project (weeks 1 to 8);

Continuous assessment – written tests on:

(1)   SE Intro lectures & Chapters 1, 2, 3, 4, 5, 6

(2)   Chapters 7, 8, 12, 19, 22

See the general course description for information on the course project.

 

 


 

Schedule and Notional Hours

The class meets once a week for an hour lecture:

13 * 1

= 13 hours

A practical session once every week for two hours will be used for the project in the first term:

2 * 7

= 14 hours

The practical sessions will be used for project presentation (HCI, SE & DB)

(6*2)/3

= 4 hours

You are expected to spend two hours for every hour in class, studying and writing up assignments:

13 * 2

= 26 hours

Tests

during class

 

Combined Project

Second term

= 7 hours

Test/exam

 

= 2 hours

Programming/project work

7 * 4.8

= 34 hours

Total:

= 100 notional hours

               

Lectures and Practicals: (See Faculty Time Table Booklet)           

 

Period

Monday

Tuesday

Wednesday

Thursday

Friday

1
08h30-09h30

 

 

 

CSC312

SC237

SE

 

2
09h40-10h40

CSC312

SC237

HCI

 

 

 

CSC312
SUN lab
HCI

Alternating with DB

3
10h50-11h50

 

CSC312

SC8

SE

 

 

4
12h00-13h00

 

 

 

 

CSC312

Sc8

DB

Lunch

 

 

 

 

 

5
14h00-15h00

 

 

 

 

CSC312
Thintana lab
DB

6

15h10-16h10

 

 

 

 

CSC312
Thintana lab
SE, DB or HCI

7
16h20-17h20

 

 

 

 

 

 

Lecture and practical times are as set out on the Faculty timetable.  Lecture and practical times coincide with the C clash group.

 


 

Contents/Lecture Topics

Week

Date

Topic

Exercises & Homework

1

27 Feb–3 Mar

HCI:What is interaction design? (Chapter 1)

Practical 1:  HTML (Chapter 3 & 4, Web)

HCI: Start on a mind map for this chapter

STUDENTS INTO GROUPS

Receive HCI Practical Workunit 1

SE: The Nature of Software (Chapter1) and Software Engineering (Chapter 2)

Selected text book exercises:        1.2; 1.3; 1.4 and  2.2; 2.3; 2.5

DB: Database systems (Chap 1)

None.

2

6–10 Mar

HCI: Understanding and conceptualizing interaction (Chapter 2)

HCI: Complete mind-map of Chapter 1 & start with one for Chapter 2.
Group QUIZ 1

Complete HCI Practical Workunit 1

SE: Software Process Structure (Chapter 3) and Process Models (Chapter 4)

Selected text book exercises:            3.1; 3.4

and      4.1; 4.5; 4.8

DB: Data Models (Chap 2)

Prac DB1.1: Design

3

13–17 Mar

HCI: Cognitive aspects (Chapter 3)

Practical 2: HTML & CSS (Chapter 6 & 7, Web)

HCI: Complete mind-map of Chapter 2 & 3..
Group QUIZ 2

Practical:  Hand in Workunit1 & start Workunit2

SE Agile Development (Chapter 5) and Human Aspects of Software Engineering (Chapter 6)

Selected text book exercises:            5.2; 5.4; 5.7

                                                             6.5; 6.6; 6.8

DB: The Relational Database Model (Chap 3)

Prac DB1.2 Design

4

20–24 Mar

21 March- Human Rights Day

HCI: Social interaction (Chapter 4)

Thursday Lecture in SE period

HCI: Emotional interaction (Chapter 5)

Group QUIZ 3
HCI: Draw mind-map of Chapter 4, 5 & 6

Complete  Workunit 2

Hand-out & discuss Mobile Project 

SE: Principles that Guide Practice (Chapter7)

SE: No Prac session

Selected text book exercises: 7.1; 7.10; 7.14

DB: Entity Relationship Modeling (Chap4)

Prac DB1.3 Design

IFS361: Test 1 (Saturday)

 

5

27–31 Mar

HCI: Interfaces (Chapter 6)

Thursday Lecture in SE period

Process of interaction design & Establishing requirements (Chapters 9 & 10)

Practical 3: Intro to JavaScript (Chapter 8, Web))

HCI: Plan work for & work on Mobile Project

Hand in Workunit 2, start with Workunit 3

Group QUIZ 4
Group QUIZ 5

SE: Understanding Requirements (Chapter8)

SE: No Prac session

Selected text book exercises: 8.1; 8.3; 8.9 (a, b and d)

DB: Test1

Advanced Data Modeling (Chap 5)

 

6

3–7 April

HCI: No HCI lecture, SE will be taught in in the HCI session

Complete Workunit 3 and work on mobile project.

SE:

Selected text book exercises:     3.1; 3.4, 4.1; 4.5; 4.8

DB: test review, finish Chap 5

Prac DB2.1 design

7

10–13 April

14th April- Good Friday

HCI: No HCI lecture, SE test will be written in the HCI session

HCI: Draw combined mind-map of Chapter 1-6, 9 &10

SE: Hand out Term (HCI/DB/SE) Project & discuss.

Test 1 (SE Intro lectures & Chapters 1, 2, 3)

 

DB: Normalisation of DB Tables (Chap 6)

Prac DB2.2 design

 

14–23 April

Holiday Week

HCI: Work on  Mobile Project

HCI/DB/SE: Think about an interesting project topic.

8

24 – 28 April
27th April – Freedom Day

HCI: Test 1 – Chapters 16

 

Practical: HCI/DB/SE

HCI Workunit 3 to be marked

Discuss choice of topic for the project as well as the deliverables.

Submit topic title (to be validated).

Receive Assignment 1’s evaluation sheet

SE:  SE Project revisit

SE Project Completed for marking

DB: Intro to SQL (Chap 7)

Prac DB2.3 code

9

2–5 May

1 May – Workers’ Day

HCI: Data gathering and Data analysis (Chapter 7 & 8)

HCI: Draw mind-map of Chapter 7 &8

Complete Mobile project

Practical: HCI/DB/SE

Present Assignment 1

Receive Assignment 2’s evaluation sheet

SE: Design Concepts (Chapter 12)

Selected text book exercises: 12.1; 12.3; 12.10

DB: Advanced SQL (Chap 8)

Prac DB3.1 design

10

8 –12 May

 

HCI: Designing, prototyping, and construction (Chapter 11)

HCI: Draw mind-map of Chapter 11 & combine mind maps for test
Final hand-in (Mobile Project)
.

Practical: HCI/DB/SE

Present Assignment 2

Receive Assignment 3’s evaluation sheet

SE: Quality Concepts (Chapter 19)

Selected text book exercises: 19.5; 19.6; 19.7

DB: Database Design (Chap 9)

Prac DB3.2 code

IFS361: Test 2 (Saturday)

 

11

15–19 May

HCI: Evaluation Studies (Chapter 13 & 14)

Learn for test.

Practical: HCI/DB/SE

Present Assignment 3

Receive Assignment 4’s evaluation sheet

SE: Test 2 (Chapters 4, 5, 6)

 

DB: Transaction management and concurrency control (Chap 10)

Prac DB4.1 design

12

22–26 May

HCI: Analytical evaluation (Chapter 15, HCI 2nd Ed.)

Practical: HCI/DB/SE

Present Assignment 4

Receive information about presentation deliverables

SE: Software Testing Strategies (Chapter 22)

Selected text book exercises: 22.1; 22.4; 22.8

DB: Test2

Prac DB4.2 code

13

29 May–2 June

HCI: Test 2 – Chapters 7  14  (not 12)

SE: SE International Ethics

International Ethics review

DB: Go over test and course eval

N/A

Practical: HCI/DB/SE

Final presentation

14

5 – 8 June

HCI

N/A

 

SE: IITPSA Ethics for IT

SA Ethics review

 

DB: N/A

N/A

9 June  - 19 July

Study period & exams

 


 

 

 

Assessment events and methods

Percentage

                HCI

30%

Continuous Evaluation:

20%

Group Quizzes ability to apply knowledge gained in the previous lecture/s

 

Programming assignments & Project

 

Tests:

80%

Test 1             Topics covered in week 1 to 6

 

Test 2             Topics covered in week 7 to 11

 

Software Engineering

30%

Databases

30%

Continuous Evaluation

pop quizzes

practicals (design/code reviews)

100%

50%

50%

Project

10%

Total

100%

 

Infusion Objectives/Attaining graduate attributes

Comprehension and Communication Skills: reading the textbook and online blogs, technical reports and documents. Discussion of problems in groups, and ability to give a presentation and field questions in public.

Problem Solving: Reading problems, interpreting them, designing a solution and building it (and testing it, too).

Programming Competency: Build an integrated application (PC, web, and/or mobile) using standard software engineering (SE) technique(s), a front end (HCI) and back end (DB).

Team Work: Students work in teams, allocate roles, and coordinate toward delivering an integrated product to a deadline.

Leadership: exercised within a team, and also on a personal basis.

Ethics & Professionalism: professional conduct, i.e. no cheating, obtaining illegal copies of reading materials and/or code.

Responsibility: time management: - Exercises must be completed to schedule/deadlines, in and out of class, depending on nature of assignment.

Software Development: Use a clearly identifiable SE method for all programming assignments.

Research Methods: Using and referencing (citations) web sources; as well as academic journal articles, conference proceedings papers and book sections/chapters.