•   Introduction to Programming TT00BX39-3003 07.02.2022-27.05.2022  5 credits  (PIOTK22) +-
    Competence objectives of study unit
    After completing the course the student can:
    - describe the most important software application types and their typical features
    - discuss the selection of a proper solution technology
    - define the main concepts of programming such as source code, compiler or interpreter, variable and data type
    - read program code written by someone else
    - utilize the most important decision and control structures
    - recognize basic object-oriented concepts (class and its members, object, reference, exceptions)
    - design and implement simple software applications
    - draw a flow chart of the program.
    Content of study unit
    - software application structure

    - development environment and tools

    - variables and data types

    - functions

    - decision and control structures

    - arrays and lists

    Teacher(s) in charge

    Tiina Ferm

    Learning material

    The content follows Introduction to Python:
    http://tdc-www.harvard.edu/Python.pdf

    Additional material:
    https://www.programiz.com/python-programming

    Learning methods

    Learning by programming

    Objects, timing and methods of assessment

    Assessment is based on continuous evaluation. 

    7 HOMEWORKS – online, rehearsing, not evaluated
    7 Quizzes – online, evaluated, 5 points each, minimum 14, maximum 35 
    7 Labs – classroom activity, evaluated, plagiarism check result must be < 50%, 5 points each, minimum 14, maximum 35
    3 Exams – classroom activity, evaluated, 10 points each, minimum 12, maximum 30

    To pass the course a student has to reach minimum in all categories (quizzes, labs and exams). If the minimum is reached all the points are added and the scale 1 – 5 is calculated.

    Teaching language

    English

    Timing

    07.02.2022 - 27.05.2022

    Enrollment date range

    22.11.2021 - 07.02.2022

    Group(s)
    • PIOTK22
    Responsible unit

    Engineering and Business

    Degree Programme(s)

    Degree Programme in Information and Communications Technology

    Campus

    Salo IoT Campus

    Assessment scale

    H-5

    Alternative methods of attainment for implementation

    The course can be compensated with an exam 10.2.2022

    Student's schedule and workload

    Contact hours 42 h
    Independent study continuously throughout the course, preparation for the exam 98 h

    Content scheduling

    The course consists of weekly topics, rehearse questions, a quiz (5 points) and a lab (points)
    - introduction, basic syntax, and input and output in the console
    - week 1: variables and types, quiz and lab 1 (total 10 points)
    - week 2: operators and branching, quiz and lab 2 (total 10 points)
    - week 3: loops (for and while), quiz and lab 4 (total 10 points)
    Exam 1 (10 points)
    - week 4: functions, quiz and lab 5 (total 10 points)
    - week 5: collections (list, tuple, set, dictionary), quiz and lab 3 (total 10 points)
    Exam 2 (10 points)
    - week 6: file IO, quiz and lab 6 (total 10 points)
    - week 7: review, quiz and lab 7 (total 10 points)
    Exam 3 (10 points)

    total of 100 points

    Assessment criteria
    Failed (0)

    Student
    • does not know the basic concepts of programming
    • cannot read or write simple programs

    < 40 points or failed in the exam

    Assessment criteria – satisfactory (1-2)

    Student
    • knows such basic concepts of programming as variables, control structures and functions
    • understands how the program flow is going
    • can read or write simple programs

    40 - 59 points and the minimum is reached in all categories (quizzes, labs and exams)

    Assessment criteria – good (3-4)

    Student
    • knows such basic concepts of programming as variables, control structures, functions, classes, objects and arrays
    • understands how the program flow is going and is able to find easy errors
    • can make simple programs

    60 - 79 points and the minimum is reached in all categories (quizzes, labs and exams)

    Assessment criteria – excellent (5)

    Student
    • knows such basic concepts of programming as variables, control structures and functions, classes and objects
    • utilizes some data Structures as arrays, lists and hash tables.
    • understands how the program flow is going and is able to use debugger and error handling
    • can make programs that include aforesaid concepts.

    > 80 points and the minimum is reached in all categories (quizzes, labs and exams)

    > 90 points, 1 additional credit (total of 6 credits)