Industrial Practice Project in Software Engineering (DAT306 / DIT279)

Course-PM

You must self-enroll in this Canvas page to submit your planning report and final report.

Click here to self-enroll. 

Course is offered by the department of Computer Science and Engineering

 

Contact Details

Course Responsible: Gregory Gay (ggay@chalmers.se)

 

Course Purpose

Created with DALL-E 3 with prompt "Create an abstract portrait of a student leading a team of software developers in an exciting meeting"

Industrial Practice Project in Software Engineering (DAT306 / DIT279) is a (semi-)elective course that allows you to get credit for completing an internship project at a company, rooted in your education in software engineering in the master's degree.

The course aims to apply theoretical knowledge in practice to learn about considerations and trade-offs between theory and practice, and to build an in-depth understanding of a selected problem area in software engineering.

This course can be taken as either an elective or a semi-elective, or can be substituted for Software Evolution Project with a credit transfer (pending approval from the program manager).

It stretches over two study periods, either SP1-2 or SP3-4. It is recommended that you take the course in SP1-2 of the second year.

 

Course Design

This course is formed mainly by an individual project (1-2 students) placed at a software development company.

The project contains parts which, in practice, test whether the knowledge obtained in the program is applicable in the practice. The students in this course are expected to apply in practice their knowledge and contribute to the normal operations of the hosting company. The students have to show that they are capable to identify industrial problems where advanced knowledge in software engineering can be applied. The problem should also be solved. The project should include comparison of different methods which could potentially be used to solve the problems. The comparison should include a reflection over theoretical principles and assumptions of the methods and their relation to the industrial constraints and practices.

Language of instruction: English and/or Swedish

 

Learning Objectives and Syllabus

After completing the course, students should be able to:

1: Knowledge and understanding
- describe the differences between the theoretical and practical principles (and assumptions) of how - software engineering methods are or should be used
- identify a number of software engineering methods applicable to solve the problem at hand and point to the appropriate empirical research showing their capability to solve the industrial problem
- distinguish software engineering problems from other types of problems, e.g. those related to hardware

2: Competence and skills
- solve the problem at hand using the chosen methods
- apply the knowledge from courses in the area of software engineering to contribute to the development of the host company
- choose the most appropriate method under the circumstances which are relevant for the host company

3: Judgement and approach
- reflect over the theoretical assumptions of the applied software engineering methods
- evaluate the contribution of the project to the development of the host company both in the short and in the long run

 

Syllabus - Chalmers (DAT306)

Syllabus - GU (DIT279) 

 

Entry Requirements and Application Procedure

A project can either be completed alone or in a pair of students. 

To be admitted to the course the student(s) must:

  1. Have completed 45 credits at the master's level, including Advanced Requirements Engineering, Empirical Software Engineering, Quality Assurance and Testing, and Project Management,
  2. Demonstrate by a signed letter of support that there is interest in a company to collaborate with the student under conditions described in the course objectives,
  3. Identify an academic supervisor who is committed to supervise the student and monitor the progress towards the learning goals,
  4. Provide a planning report that clearly defines the project goals, the project execution, and how the project relates to the learning goals.

Students get admitted on approval of the planning report. The subject of the proposed project should be in the field of software engineering.

The planning report should describe:

  • Which company offers the practice placement to the student, including the contact persons and written consent/invitation from the company,
  • Which academic supervisor will monitor the progress towards the learning goals,
  • Project assumptions in the form of initial problem formulation,
  • Forms of project work, including the timeframe,
  • Deliverables from the student project to the company,
  • How potential questions about intellectual property rights should be resolved,
  • How the project relates to the learning goals of the course.

The planning report must be submitted at least one week before the semester begins.

The planning report template can be found here.

If the report is approved, you will be registered through Ladok. You do not register for this course through universityadmissions.se. 

Click here to submit your planning report.

 

Project Openings

From time to time, project openings will be posted here (generally cases where an academic supervisor is already involved).

You can seek out an internship yourself - you do not need to wait for a position to be posted here.

 

Examination Form and Instructions

The course is assessed through an individual written final report. The final report is a written document which describes how the learning outcomes of the course were achieved and in which way the project contributed to the development of the company. The report should be accompanied by a demonstration of the main results of the project to the examiner.

A template for the final report can be found here.

You may modify this template if, e.g., you have conducted the project as a research project. However, the requested items must be present. You must have approval from your academic supervisor before submitting this report.

The grading scale comprises Fail (U), 3, 4 or 5. The final grade in the course is decided from the grade of the final report.

  • A 3 indicates that you have met all learning objectives of the course. You have completed your tasks successfully, and your report sufficiently demonstrates how your education fed into this project, and how this project enhanced your own skills and experience.
  • A 4 will be awarded to students who put additional effort into documenting their experiences. To achieve a 4, the report should be:
    • Detailed and well-written (clear language, lacking grammatical issues or typos).
    • Demonstrate understanding of software engineering theories, methods, and tools.
    • Include critical reflections on the project, including discussion on the potential impact of the work, the limitations and challenges encountered, the decisions made, how the work was evaluated, and how this project contributed to personal growth. 
  • A 5 indicates that, through this project, you have gone above-and-beyond and made an impact on either the company or on the field of software engineering. The requirements for a 4 must be met, and either:
    • (1) The report must show that this work has affected the company in a meaningful way (e.g., showing evidence that the work will be used in actual products or how the work has affected/will affect the working practices at the company). 
    • (2) The project could be conducted as a research project similar to that followed in a thesis (but at a smaller scale). This means that there must be a clear problem being addressed, research questions to be answered, a methodology to answer these questions, and an evaluation following the execution of the methodology. The report should then be structured like a research paper documenting this project (while still additionally containing the requested items in the template).

GU Students: In Autumn 2024/25, the course will still be graded as Fail (U), Pass (G), and Pass-With-Distinction (VG). These correspond to the above as:

  • A 3 or 4 is a G.
  • A 5 is a VG.

Normally, students submit before the start of the subsequent study period (e.g., if you take the course in SP1-2, you should submit before SP3 starts). However, there is not a fixed deadline for the final report. It should be submitted when finished and approved by the academic supervisor.

Click here to submit the final report.

Course summary:

Date Details Due