EPN-V2

PSYK3910 Bachelor Thesis Course description

Course name in Norwegian
Faglig fordypning og bacheloroppgave
Study programme
Bachelor's Programme in Psychology with an Emphasis on Behavior Analysis
Weight
30.0 ECTS
Year of study
2024/2025
Curriculum
SPRING 2025
Schedule
Course history

Introduction

The bachelor’s programme concludes with documentation of independent work in the form of a bachelor’s thesis. The course PSYK3910 - Bachelor’s Thesis is worth 30 ECTS (the whole of the sixth semester). Here, the students will take part in the lecturers’ research activities through work corresponding to the scope of PSYKPRA2. The student will also write their bachelor’s thesis in the context of this research activity. The bachelor’s thesis must be written in article form in accordance with the APA standard.

Required preliminary courses

The student should have the following outcomes upon completing the course:

Knowledge

Upon successful completion of the course, the student:

  • has a deep understanding of how scripting with Python is utilized to automate common tasks
  • has advanced knowledge of scripting strategies that allow scripts to be robust against unforeseen failures and erroneous user input
  • has advanced knowledge of how a code-base can be maintained through version control systems
  • understands how scripting languages can be expanded through libraries
  • knows how to use standardized packages for mathematics and statistics

Skills

Upon successful completion of the course, the student can:

  • design and implement script-based tools
  • evaluate and discuss how scripting may or may not facilitate automation
  • use standard mathematics and statistics packages to visualize and solve relevant problems
  • utilize a version control system for their code-base

General competence

Upon successful completion of the course, the student can:

  • analyze automation approaches with regard to robustness and in relation to the intended tasks
  • develop solution strategies for and participate in discussions about mathematical and statistical problems using scripting tools
  • explain how automation and scripting can be used to automate workflows to experts and non-experts alike

Learning outcomes

This course is divided into two parts. The first part with focus on covering the particular scripting language used in this class, such as its syntax, use and some extra libraries. The first part will also cover the practice of using a version control system as the means to store the code-base. During this part, students will meet for weekly lectures/sessions and labs where they work on exercises.

The second part will focus on the students completing a programming project. The student will work individually on the project and submit a final code-base that also includes documentation. During this part, there may be lectures if needed, but most of the time will be spent on individual supervision of students in lab-sessions.

Practical training

Lab sessions.

Teaching and learning methods

The following required coursework must be approved before the student can take the exam:

2 mandatory coding assignments, either done individually or in groups (max. 5 students).

Course requirements

An individual project report between 5000 and 10000 words, not counting code appendix.

The exam can be appealed.

New/postponed exam

In case of failed exam or legal absence, the student may apply for a new or postponed exam. New or postponed exams are offered within a reasonable time span following the regular exam. The student is responsible for registering for a new/postponed exam within the time limits set by OsloMet. The Regulations for new or postponed examinations are available in Regulations relating to studies and examinations at OsloMet.

Assessment

All aids are permitted, provided the rules for plagiarism and source referencing are complied with.

Permitted exam materials and equipment

Grade scale A-F.

Grading scale

Two internal examiners. External examiner is used periodically.

Examiners

  • The Python programming language
  • Scientific Programming using Python
  • Automating tasks using Python
  • Git