TDDD83 Automatic translation; Swedish version is authoritative
Development project
The development project is a major part of the bachelor's work, which is an engineering science project carried out in a group of approximately 8 students. In the bachelor's project, a bachelor's report shall be written by the group. The bachelor's report will be based on the development project, whose purpose is to be able to answer the research question in the bachelor's report. The theory presented in the bachelor's report is implemented in the development project and evaluated in order to answer the research question. This means that the theory must be translated into concrete and traceable system requirements for the development project. An evaluation shall also be conducted to investigate the research question. Based on the results of the evaluation, conclusions shall be drawn that answer the research question. As part of the bachelor's report, a marketing plan shall be produced. The marketing plan concerns investigating whether and how the system has an economic opportunity and shall be used as a basis for the direction of the development project and influence system requirements and priorities in the development project. The figure below shows the connection between the bachelor's report and the development project.
The development project will provide practical experience of software development projects and an opportunity to use the tools and techniques the course provides. Note also that the development project shall be a bachelor's project, i.e. applying the knowledge acquired through previous courses in the programme. Each student group shall work on a development project that involves developing a web-based business system (a web application): for example an e-shop.
The development project shall be agile and the Scrum methodology shall be applied. For an approved development project the following principles, techniques and methods shall be actively applied:
The web application shall have certain functionality. It is important to focus on delivering value to the customer/user, and therefore the functionality shall be grounded in the results from the marketing plan. It is better to focus on developing a subset of the system with full functionality than many different parts with limited functionality. At the start of the project it is difficult to estimate how long development will take and it is quite common that there is a need for replanning.
A web application
The web application produced in the development project can be an e-shop. Each group shall define their own project proposals. A short description of the web application shall be communicated to the supervisor at the first supervision meeting during sprint 2 and submitted in Lisam together with the research question (see Course structure under the Course information page). Each web application shall have both functional and technical requirements. These requirements will be included in the product backlog and user stories shall be produced. The group produces the requirements for the web application, and in addition to the web application-specific requirements, the requirements below shall be included.
Functional requirements:
Each web-based business system shall be a functioning system defined by relevant functional requirements that meet its customer and market needs. The functional requirements shall be identified by the group based on the vision for the business system. Each system shall have basic functionality including:
- Display of content in a way relevant to the customer/user (e.g. products/services in an e-shop).
- Collection of relevant data, e.g. about customers/users, completed activities, statistics (e.g. completed purchases to enable professional handling of complaints).
- A developed and professional payment process with relevant steps (e.g. ordering, confirmation, payment of products/services in an e-shop) simulated or realised with e.g. Stripe or PayPal's developer sandboxes for testing. For PayPal, Basic Express Checkout is recommended, since many other integrations do not work in Sweden or without a premium account.
- Ability for the user (customer and supplier) to return to past events in the system (e.g. order history to enable a complaint).
- If the web application is to be edited by an administrator, an online editing view for authorised administrators shall be available.
Technical requirements
The following technical requirements shall apply:
- Relevant optimisation of load times and network performance.
- The web application shall be built primarily using Bootstrap, JavaScript (modern JavaScript is recommended, but frameworks like jQuery are permitted), and Python, Flask.
- Data in the web application shall be stored in a database.
- The development project shall function as a web application, meaning that whenever a request is made only what has changed (the extra information/data) shall be fetched (not an entire web page) and presented on the web page.
- The development project shall consist of a back-end and a front-end that communicate only via JSON.
- If the web application is to be used on different devices it shall be adapted with respect to screen sizes. Design choices for mobile and desktop (possibly also TV-sized). Bootstrap is built for responsive design (as this is called) but design choices shall be made for the project and suitable components/design selected.
- The web application shall be version-controlled on gitlab.liu.se
Further relevant technical functionality
- Shipping - automated handling of shipping for UPS, DHL etc. with e.g. EasyPost and Shippo, both of which have Python APIs
- Tax handling with e.g. Taxamo
Page responsible: Martin Sjoelund
Last updated: 2026-02-27
