The course syllabus contains changes
See changesCourse syllabus adopted 2024-02-19 by Head of Programme (or corresponding).
Overview
- Swedish nameFortsättningskurs i programmering i Python
- CodeDAT516
- Credits7.5 Credits
- OwnerTKIEK
- Education cycleFirst-cycle
- Main field of studyComputer Science and Engineering, Software Engineering
- DepartmentCOMPUTER SCIENCE AND ENGINEERING
- GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Course round 1
- Teaching language English
- Application code 51146
- Maximum participants200 (at least 10% of the seats are reserved for exchange students)
- Open for exchange studentsYes
Credit distribution
Module | Sp1 | Sp2 | Sp3 | Sp4 | Summer | Not Sp | Examination dates |
---|---|---|---|---|---|---|---|
0124 Laboratory 4.5 c Grading: UG | 4.5 c | ||||||
0224 Examination 3 c Grading: TH | 3 c |
|
In programmes
- TIEPL - INDUSTRIAL MANAGEMENT AND PRODUCTION ENGINEERING, Year 3 (compulsory elective)
- TKAUT - AUTOMATION AND MECHATRONICS ENGINEERING, Year 3 (elective)
- TKIEK - INDUSTRIAL ENGINEERING AND MANAGEMENT, Year 2 (compulsory)
- TKITE - SOFTWARE ENGINEERING, Year 1 (compulsory)
- TKTEM - ENGINEERING MATHEMATICS, Year 3 (compulsory elective)
- TKTFY - ENGINEERING PHYSICS, Year 3 (compulsory elective)
Examiner
- Aarne Ranta
- Head of Division, Computing Science, Computer Science and Engineering
Eligibility
General entry requirements for bachelor's level (first cycle)Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Specific entry requirements
The same as for the programme that owns the course.Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Course specific prerequisites
Introductory course in programming, in e.g. Python, Java or Haskell. Examples of such courses are DAT455, TDA548,TDA555, TIN213 and TIN214.Aim
To provide skills for programming in a larger scale via concepts such as object-oriented design, testing, and use of standard libraries. The course will also work as a conversion course in Python for students who have taken an introductory course in some other programming language.Learning outcomes (after completion of the course the student should be able to)
Knowledge and understanding:- recognize all constructs of Python and the design choices behind them
- explain the design alternatives in modular and scalable programming
- create well-organized software projects for complex tasks
- read and analyse code written by others
- contribute to collaborative projects
- use standard libraries for advanced tasks
- apply testing methods to guarantee the quality of code
- write code documentation on different levels of detail
- apply fundamental methods to give constructive feedback in peer reviews of program code, including the aspects of gender equality, diversity, and equal conditions
Judgement and approach:
- reason about software design choices
- assess the complexity of programming tasks
Content
The course starts with a quick introduction to the elements of Python, which serves as repetition for students who already know Python but also enables students with other backgrounds to get started with Python.After the introduction, the course proceeds to more advanced features of Python programming:
- object-oriented design
- functional programming techniques
- advanced Python-specific techniques
- the use of software libraries
- testing methodologies
- creation of larger programming projects
The theoretical material is presented in relation to a project, which is divided into individual components ("labs"), and which results in a comprehensive software system implementing techniques such as scientific computing, data analysis, visualization, and machine learning. No knowledge of these techniques is presupposed but will be a part of the teaching; the focus here is not on the theory but on enabling the students to use relevant software libraries in adequate ways.
Organisation
Lectures, exercises, assignments, individual supervision.Literature
Will be given before the course startsExamination including compulsory elements
The course project is a compulsory element of the course. The project can be carried out individually or in groups of two or three. The project is graded with grades Fail or Pass.The exam is also a compulsory element. It is graded Fail, 3, 4, or 5.The purpose of the exam is to control that the students have made their projects independently and understood what they are doing.
The final grade for the course is the grade from the exam.
The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.
The course syllabus contains changes
- Changes to course rounds:
- 2024-09-17: Examinator Examinator Aarne Ranta (aarne) added by Viceprefekt/adm
[Course round 1]
- 2024-09-17: Examinator Examinator Aarne Ranta (aarne) added by Viceprefekt/adm