Hide menu


Seminar 2 (attendance and active participation is mandatory)


The purpose of the seminar is to investigate an open source project, and to see how the project organizes code. The project may consists of a number of projects on Github, with dependencies between them.


In each team: Each individual or pair will have to read about, install, build and make small changes to the project in order to understand how it works. In each team each group will select a project, different from the other in your groups, this so each team will able to compare three different projects.
  • Build the project
  • Follow the instructions for a new developer
  • then:
    • Learn about how to create Modules/Add-ons/Features/Components in the project, and
    • add your module to your project installation, and finally
    • add a printout (using print-statement) to demonstrate that you have successfully built and run the module.
For the seminar, you shall be able to both answer the questions below as well as demonstrate how the project works.

Questions to answer and demontsrate

  • What is the overall architecture of the project? How do components in the project interact with one another? Describe the architecture in terms of concepts you have heard in this course and in previous courses.
  • How do you use version control, build and test tools to build (and test, if there are automated tests) the project? Describe by demonstrating how you check out, build (and test) the project.
  • Can you build and test modules within the project independently, or do all activities require a full re-build/re-test cycle of the project? Demonstrate by outlining the build steps for a module, or why building the whole project is necessary. Demonstrate how you test your modifed module.
  • What is the preferred coding style within the project and your module? How do developers describe the coding style? Are there required guidelines to adhere to, or merely suggestions? Refer to the project documentation.
  • How is a submission formatted in the project? Describe through an example of your own how to make a submission to the project. Your description can be based on (but not a copy of) a previous submission, but must demonstrate that you understand the structure of submissions.
  • What verification steps must be taken prior to making submissions? Describe by referring to submission guidelines for the project and if possible, conduct the verification steps yourself.

During the seminar

At the seminar you will sit down in you teams and share your findings with the other groups in your team. Compare your findings and answers for the project. Try to demonstrate as much as possible by showing examples on your laptop
A random group from each team will be selected to present their analysis to the other teams.

After the seminar

Create a screencast where you demonstarte your project with your module added. Upload your screencast or add a link to it, on your gitlab.liu.se git-repo.

Page responsible: Anders Fröberg
Last updated: 2020-01-20