News

Test Pipeline Release

Written on 18.09.24 by Kallistos Weis

Dear participants,

From now on, we run the set of tests that are mandatory to pass on your implementation as well as your tests on our reference implementation (using the function called 'registerSystemTestsReferenceImpl' in the SystemTestRegistration.kt file).
We have three categories of tests:… Read more

Dear participants,

From now on, we run the set of tests that are mandatory to pass on your implementation as well as your tests on our reference implementation (using the function called 'registerSystemTestsReferenceImpl' in the SystemTestRegistration.kt file).
We have three categories of tests: validation tests, component tests, and full tests.
The validation tests check how you handle correct and incorrect configuration files,
component tests check the behavior of your implementation for specific parts of the simulation, and 
full tests check the behavior of your implementation for the whole simulation.
Please note that we only test changes that you have pushed to your main branch.
Please also note that we stop running the tests as soon as your server crashes 10 times (SERVER_FAIL or TIME_OUTS).

On Monday, we will release a second set of tests to the three categories that will be optional for passing the course but help to debug your simulation.
Additionally starting on Monday, we run your tests (registered in the function 'registerSystemTestsMutantSimulation' in the SystemTestRegistration.kt file) against mutants of the reference implementation to check whether your tests are able to detect the introduced faults.
However, we will only run your tests on our mutants, if all tests registered in this function succeed on our reference implementation.

Important: You have to pass at least 97 out of the 100 mandatory tests to be able to pass the group phase.
You can find a document with all the mandatory tests in the Materials (CMS) under General with a short description of the test scenarios.

Best, 
Your SE-Lab Team

Practical Testing and Debugging Tutorial

Written on 16.09.24 by Christian Hechtl

Dear Participants,

tomorrow (17.09.) there will be a practical testing and debugging tutorial in the GHH at 10 am sharp.

Group attendance will start at 11 am after the tutorial.

Best,
the SE Lab Team

Specification Update

Written on 16.09.24 by Kallistos Weis

Dear Participants,

We have clarified some details in the specification (see the file description for a list of the clarifications we have added).

Best regards,

The SE-Lab Team

 

 

Design Defense

Written on 10.09.24 by Christian Hechtl

Dear participants,

Wednesday, Thursday, and Friday this week, the design defense will take place as mandatory review sessions. You will be assigned a specific date and room by your tutor. Be at the corresponding room in time for this appointment.
In case of illness, as always, please inform… Read more

Dear participants,

Wednesday, Thursday, and Friday this week, the design defense will take place as mandatory review sessions. You will be assigned a specific date and room by your tutor. Be at the corresponding room in time for this appointment.
In case of illness, as always, please inform your tutor immediately and submit a medical certificate as soon as possible. We will then try to find an individual catch-up date for the affected individuals afterwards, based on case-by-case decisions.

Please also note that, if possible, each group member should bring a laptop to view your design. In addition, each team member should have pens with them. Also, do not forget to bring your student ID card.

It is possible that individual group members will be re-examined in the evening on the day of your design defense. This will be communicated to the persons concerned by the reviewer after the design defense.

Also, please note that no later than one hour before your assigned design-defense appointment, all required files (i.e., class diagram, three sequence diagrams, state diagram, and the time and work plan) must be in PDF format in the group repository and tagged with the tag specified in the specification document.

 

Best,
The SE-Lab team

Change of Requirements

Written on 09.09.24 by Christian Hechtl

Dear participants,

The document which specifies the change of requirements for the group phase is now available in the CMS (see Materials).

Best,
The SE-Lab team

Requirements Document Online

Written on 03.09.24 by Kallistos Weis

Dear participants,

The document which specifies the requirements for the group phase is now available in the CMS (see Materials).

Best,
The SE-Lab team

Technical Tutorial Rooms Changed

Written on 02.09.24 by Christian Hechtl

Dear participants,

We have reassigned the rooms for your tutorials this afternoon.
Please check your tutorial room on your personal page.

Best, 
The SE Lab Team

Entry Exam Results

Written on 01.09.24 by Christian Hechtl

Dear participants, 

We have finished the correction of the Entry Exam. You can find the results on your personal status page in the CMS.

Those who did not pass and want to receive more information about their Entry Exam, please write an eMail to: sopra@lists.se.cs.uni-saarland.de

And a… Read more

Dear participants, 

We have finished the correction of the Entry Exam. You can find the results on your personal status page in the CMS.

Those who did not pass and want to receive more information about their Entry Exam, please write an eMail to: sopra@lists.se.cs.uni-saarland.de

And a short reminder: Don't forget about the registration/withdrawal deadline in the LSF on Monday, September 02. If you have passed the Entry Exam but are not registered for the exam in the LSF, you cannot participate in the group phase.

And also don't forget about signing up on our GitLab.

Best,
The SE-Lab Team

Entry Exam

Written on 29.08.24 by Christian Hechtl

Dear participants,

Tomorrow, Friday, August 30, the entry exam takes place on-site at the campus.

Since you are registered for the course in the CMS, you are automatically registered for the entry exam. (This is different from the exam registration in the LSF, which is possible and necessary… Read more

Dear participants,

Tomorrow, Friday, August 30, the entry exam takes place on-site at the campus.

Since you are registered for the course in the CMS, you are automatically registered for the entry exam. (This is different from the exam registration in the LSF, which is possible and necessary for you to do until Monday, September 02).

Bring your student ID card and a photo ID card (e.g., passport) to the entry exam. No aids are allowed. Use only document-proof pens (no pencils!). Red or green pens are not permitted.

The tasks are formulated in English and German. You can provide your answers in either of both languages.

The entry exam is going to take place in multiple lecture halls simultaneously. Admittance to the lecture halls is at 12:45; make sure to be in front of the assigned lecture hall on time. The assignment of participants to lecture halls was done according to your matriculation numbers:

Matriculation Numbers 0 - 7022540: Günter-Hotz lecture hall (GHH), building E2.2

Matriculation Numbers 7022541 - 7026000: HS001 E1.3

Matriculation Numbers 7026001 - 7037601: HS002 E1.3

Matriculation Numbers 7037602 - 7052130: HS I, building E2.5

Matriculation Numbers 7052131 - 7056900: HS II, building E2.5

Matriculation Numbers 7056901 - 7070000: HS III, building E2.5

You can also see which lecture hall you have been assigned to on your personal status page in the CMS.

In case of illness, please inform us immediately by e-mail to sopra@lists.se.cs.uni-saarland.de and submit a medical certificate as soon as possible.

Good luck, and see you tomorrow!

Best,
The SE-Lab team

Tutorial Rooms Changed Again

Written on 29.08.24 by Christian Hechtl

Dear participants,

the rooms for the tutorials have changed again. Please check before going to your tutorial which room you are in.

Best,
the SE Lab team

Tutorial Rooms Changed

Written on 28.08.24 by Christian Hechtl

Dear participants,

we had to change some of the rooms for the tutorials today. Please check your new room before going to the tutorial today.

Best,
the SE Lab team

Start of the Software Engineering Lab

Written on 21.08.24 by Christian Hechtl

Dear participants of the Software Engineering Lab,

We have uploaded a document on organizational matters in the materials, which describes the schedule of this year's Software Engineering Lab in more detail. Please read this document carefully.

The first lecture of the Software Engineering… Read more

Dear participants of the Software Engineering Lab,

We have uploaded a document on organizational matters in the materials, which describes the schedule of this year's Software Engineering Lab in more detail. Please read this document carefully.

The first lecture of the Software Engineering Lab will begin on Monday (Aug. 26) at 09:30 in the Günter-Hotz lecture hall (building E2.2).

Best regards,
The SE-Lab team

Show all

In case of questions, please contact us via e-mail to: sopra@lists.se.cs.uni-saarland.de.

 

About the Software Engineering Lab

Passing the course "Programming 2" is a mandatory prerequisite for participation in the Software Engineering Lab!

The Chair of Software Engineering offers a Software Engineering Lab (SE Lab), formerly Software-Praktikum (SoPra), in the form of a basic block course during the lecture-free period, which addresses students currently enrolled in a Bachelor’s degree program majoring and minoring in computer science. The goal of the Software Engineering Lab is to develop a non-trivial software system in Kotlin, partly in team effort and partly in individual effort. Other characteristics of the Software Engineering Lab are:

  • Time period: 26.08.2024 – 11.10.2024

  • Duration: 7 weeks (daily Monday to Friday)

  • The Software Engineering Lab consists of three phases:

    • Exercise phase (~1 week): daily lectures (beginning at 09:30) and exercises in the afternoon. At the end of the first week, on Friday, 30.08.2024, an entry exam will take place. Only participants that pass the entry exam will be admitted to the group phase.

    • Group phase (~4 weeks): design, implementation, and testing of a substantial software system in a team effort (in teams of five to eight students). Only participants that have passed the exercise phase are admitted to the group phase.
      During the group phase, compulsory attendance is required between 10:00 and 17:00 (at days with lectures between 11:00 and 17:00). There will be three additional appointments between 09:00 and 18:00.
      In exceptional cases, in which you are not able to fulfill the compulsory attendance on single days of the group phase, please inform your tutor during the course. We then will take a hardship decision about the attendance for individual days, which may also be dependent on your project progress, if necessary.
      If a group fulfills all requirements for passing the group phase, we will waive the compulsory attendance for this group.

    • Individual phase (2 weeks): design, implementation, and testing of a smaller software system or extension to an existing software system (e.g., from the group phase) in an individual effort. Only participants that have passed the group phase will be admitted to the individual phase.

  • More details about the time slots and dates of the lectures and the concrete temporal sequence of the Software Engineering Lab are available in the schedule presumably in the end of July.

The Software Engineering Lab will take place on-site at the campus.

Upon registration in the CMS, you will be asked for your preferred language (English or German). We try to use this information for the tutorial assignment in the exercise phase, if possible (but without guarantee; the default language is English). Your decision in the CMS helps us to prepare the course.

We will upload a file covering organizational matters in the week before the SE Lab starts, in which we provide further information on the schedule of the course.

 

Prerequisites

Passing the course "Programming 2" is a mandatory prerequisite for participation in the Software Engineering Lab!

Participation in the Software Engineering Lab requires programming skills as taught in the courses Programming 1 and Programming 2.
Students are required to bring their own laptops.

 

Registration

Registration for the Software Engineering Lab here in the CMS is possible from 15.07.2024.
Two registrations are necessary for participation in the Software Engineering Lab:

  1. You have to register here in the CMS by 26.08.2024.

  2. You have to register at your examinations office by 02.09.2024 (for most degree programs in computer science, this is possible via the LSF; note that the course is sometimes called ‘Softwaredesignpraktikum’ there). There you can also withdraw your registration until 02.09.2024. The LSF registration opens on 12.08.2024 and is only possible after a passing grade for the course "Programming 2" has been entered in your LSF records.
    For students who cannot register in the LSF because their course of studies does not use the LSF: You have to provide a certificate to us that confirms that you have passed "Programming 2", within the time period of the LSF registration.

 

Contents

  • Software design
  • Software testing
  • Team work
  • Debugging

 

Literature

  • Software Engineering. I. Sommerville. Addison-Wesley, 2004.
  • Software Engineering: A Practioner's Approach. R. Pressman. McGraw Hill Text, 2001.
  • Using UML: Software Engineering with Objects and Components. P. Stevens, R. Pooley. Addison-Wesley, 1999.
  • UML Distilled. M. Fowler, K. Scott. Addison-Wesley, 2000.
  • Objects, Components and Frameworks with UML, D. D'Souza, A. Wills. Addison-Wesley, 1999.
  • Designing Object-Oriented Software. R. Wirfs-Brock, B. Wilkerson, L. Wiener. Prentice Hall, 1990.
  • Design Patterns. Elements of Reusable Object-Oriented Software. E. Gamma, R. Helm, R. Johnson, J. Vlissides. Addison Wesley, 1995.
  • Pattern-Oriented Software Architecture: A System of Patterns. F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, M. Stal. Wiley, 1996.
  • Head First Design Patterns. E. Freeman, E. Robson, K. Sierra, B. Bates. O’Reilly, 2004.
  • Software Architecture: Perspectives on an Emerging Discipline. M. Shaw, D. Garlan. Prentice-Hall, 1996.
  • Refactoring: Improving the Design of Existing Code. M. Fowler, K. Beck, W. Opdyke. Addison-Wesley, 1999.
  • Software Testing and Analysis: Process, Principles and Techniques. M. Pezze. Wiley. 2007.
Privacy Policy | Legal Notice
If you encounter technical problems, please contact the administrators.