Week 11 – Term 2 2018

Learning Objective: to complete the programming of your user interfaces for your SAT.

Theory:

No new theory this week. REMINDER: You will be tested on the glossary of terms in Week 1, Term 3.

Programming:

Continue working on your SAT user interfaces in Python.

Homework:
Memorise the glossary of terms for Week 1, Term 3.

Week 10 – Term 2 2018

Learning Objective: to understand aspects of usability – user interface design.
Learning Objective: to understand objects and events in Python.

Theory:

This week we’ll be looking at objects and events in Python. Events in particular will allow you to implement keyboard shortcuts into your Python GUI for your SAT if you need them.

Programming:

Continue working on your user interface for your SAT. Ensure you annotate your designs from Unit 3 to refer to any changes you make, and the reasons for those changes.

Homework:
Continue working on your user interface for your SAT.

Week 9 – Term 2 2018

Learning Objective: to understand and select some file management strategies for your SAT.

Theory:

This week you’ll be working on your file management plan for your SAT.

Programming:

Work on your SAT programming this week – begin constructing your user interfaces in Tkinter.

Homework:
SAT: Begin constructing your file management plan for your SAT. You should check with your client to see if they have any requirements you need to acknowledge.

Week 8 – Term 2 2018

Learning Objective: to complete an accurate, thorough and clear Software Requirements Specification.
Learning Objective: to demonstrate the ability to select between two or more designs using self-written evaluation criteria.

Theory:

No new theory this week. Your SAT is due Wednesday.

Programming:

No new programming this week.

Homework:
No homework this week aside from completing your SAT.

Week 7 – Term 2 2018

Learning Objective: to write Python code responding to a given case study and requirements specification.

Theory & Programming

This week is our second (and final) SAC for Unit 3. In our double period, you will be required to write code to solve a given problem.

You must be prepared to do any and all of the below:

  • Write code to open a plain text file (CSV)
  • Write code to read the CSV file, react to its contents, and write back to a new CSV or XML file.
  • Write code to open and read an XML file.
  • Write code to modify that XML file, and save it back to a new XML or CSV file.

No user interface programming is required for this SAC task. The SAC is worth 17 marks.

Week 6 – Term 2 2018

Learning Objective: to know the different file formats that exist for data input and storage.

Theory:

We’ll be looking at how programming languages handle input and output both within program logic as well as within storing data to files. This theory covers the characteristics of data as well as how to handle and manage files. Specifically we’ll be comparing CSV files to XML files.

You will also receive a practice SAC this week for our SAC next Wednesday.

Programming:

  1. Modify the Python code demonstrated in class to add three more books to the library.xml file.
  2. Modify the Python code demonstrated in class to handle displaying different editions of books from the library.xml file.

The XML file is “library.xml” and can be downloaded from Compass Resources.

Homework:
Programming: Complete the task above. Due: Tue, 29th May, 2018.

Week 5 – Term 2 2018

Learning Objective: to understand aspects of efficiency in computational algorithms.

Theory:

This week we’ll be covering linear and binary searching and efficiency of algorithms.

Most of your class time this week will be dedicated to your SAT.

Programming:

Optional: Change your program from last week to use binary search instead of linear search.

Homework:
Theory: Continue working on your SAT.
Programming: Optional: Complete the task for the week.

Week 4 – Term 2 2018

Learning Objective: to be able to determine the non-functional requirements of your folio project.

SAT: Reminder: there is a SAT checkpoint this week. Work in progress on your SRS will be checked on Wednesday.

Theory:

No new theory, just a discussion of non-functional requirements as part of your SRS. I will be absent for Monday’s class.

Programming:

Create a user interface for a search box.

  • There should be a text entry box for putting in a key word, and a button to initiate the search.
  • Use the word list given to you for the hangman game earlier this year.
  • When pressing “search”, check all of the words in the world list to see if the word is there.
  • For each word checked, increment a counter “x” to keep track of how many words you had to look at before you found (or didn’t find) the word.
  • If the word is present, display “word found after checking x words” in a label in the user interface.
  • If the word isn’t present, display “word not found in x words checked” in a label in the user interface, where x is the total number of words searched.

Homework:
Theory: No theory homework this week. Work on your SRS.
Programming: Finish the programming task for the week. Due: 16th May, 2018

Week 3 – Term 2 2018

Learning Objective: to demonstrate understanding of the Software Requirements Specification in relation to your folio.

Theory:

No new theory this week. You’ll be working on constructing your SRS for your folio.

Programming:

This week we’ll discuss how to “edit” existing users in a CSV file. This requires loading a CSV file, updating a single user in the file, and saving the modified data back to the file.

  • Create a User Interface for editing a student in a Student Management System.
    This program must take as input:
    • Unique Identifier (CASES ID) – e.g.: SMI0001

    Once the data has been entered, the program should load the contents of the file allStudents.csv. It should check each line of the file to see if the unique identifier appears. If it appears, it should display the user details in the same way as shown on your ‘add student’ program, but with each entry pre-filled. Your program should allow for saving any changes back to the allStudents.csv file.

Homework:
Theory: Continue working on your SRS at home. Make sure you keep appropriate backups.
Programming: Complete the programming task for the week. Due: 09/05/201

Week 2 – Term 2 2018

Learning Objective: to be able to develop a Python application for saving and loading data.

Reminder: you have a SAT checkpoint this week – evidence will be checked in class time.

Theory:

We’ll be looking at functional and non-functional requirements as part of an SRS. You will have time to work on your Software Requirements Specification for your SAT in class time.

Programming:

The programming task is the same as last week.

Homework:
Programming: Complete the programming task for the week. Due: 2/05/2018.