News

Results of the Individual Phase

Written on 16.10.24 by Christian Hechtl

Dear participants,

The evaluation of the individual phase is completed and you can view the results of the individual phase and your overall passing status on your personal status page in the CMS.
If you have any questions regarding your evaluation, please send an e-mail to: Read more

Dear participants,

The evaluation of the individual phase is completed and you can view the results of the individual phase and your overall passing status on your personal status page in the CMS.
If you have any questions regarding your evaluation, please send an e-mail to: sopra@lists.se.cs.uni-saarland.de.

Best,
The SE-Lab team

 

End of Individual Phase

Written on 11.10.24 by Kallistos Weis

Dear participants,

The individual phase ends today at 18:00 CEST. Remember that you also need to submit your updated project description. Please leave the rooms clean and tidy. The results will be announced in the next week.

In order to provide you with the best possible support, our tutors have… Read more

Dear participants,

The individual phase ends today at 18:00 CEST. Remember that you also need to submit your updated project description. Please leave the rooms clean and tidy. The results will be announced in the next week.

In order to provide you with the best possible support, our tutors have voluntarily decided they want to offer you an additional extended Office Hour today.
That means, our tutors will be available for questions in Room 4.07 in E1.1 from 16:00 to 18:00 CEST in addition to the regular Office Hour from 14:00 to 16:00 CEST.

To clear up any confusion about the test results: Mutants that you have already found will be counted in the final results (if you did not modify/delete the test that found the mutant). Any test that hits a timeout on our end in the final run will be re-run to get the correct result.

We wish you the best of luck in the final hours of the individual phase!

Best,
The SE-Lab Team

Office Hour Queueing

Written on 10.10.24 by Christian Hechtl

Dear participants,

from now on queueing in front of the room for the office hour is not allowed earlier than 15 minutes before the office hours start.

Best,
the SE Lab Team

Office Hour Room Change

Written on 09.10.24 by Kallistos Weis

Dear participants,

 

the office hours for today and tomorrow (2pm - 4pm) will take place in room 2.06 E1.1.

The timetable is updated accordingly.

 

Best regards,

the SE Lab team

Test Runs Increased and Project Description Update Submission

Written on 09.10.24 by Christian Hechtl

Dear participants,

yesterday we have increased the frequency of test and mutant runs.

Also, don't forget to upload the updated project description until Friday 11.10. at 6pm. This is a mandatory submission.

Best,
the SE Lab Team

Mutant Pipelines Released

Written on 04.10.24 by Christian Hechtl

Dear participants,

the mutant pipeline of the individual phase has just been released.

To register tests that should run against the mutants you have to register them in the function registerSystemTestsMutantSimulation. All other tests will not run against the mutants including the tests… Read more

Dear participants,

the mutant pipeline of the individual phase has just been released.

To register tests that should run against the mutants you have to register them in the function registerSystemTestsMutantSimulation. All other tests will not run against the mutants including the tests registered in registerSystemTestsMutantValidation. Please make sure that all tests that are registered for the mutants pass against the reference as the mutants will only be executed if the tests in registerSystemTestsMutantSimulation do not fail.

In total there are 10 mutants and as with the mandatory test set, you will have jokers (i.e., a number of mutants that you do not need to find). For the mutants you will have 3 jokers.

We have also uploaded a file in the General section of the materials giving you a small hint about what each mutant might be about.

Furthermore, we have released a optional test set. You don't have to pass these tests they are only there to help debug potential problems.

Best,
the SE Lab Team

Feedback Released and Information About Next Week

Written on 04.10.24 by Christian Hechtl

Dear participants,

we have just released the feedback on your voluntary submissions. You can find it on your personal status page in the CMS.

Remember to submit your final class diagram and project description until Monday, 07.10.2024 4pm.

We have also released a document with the test… Read more

Dear participants,

we have just released the feedback on your voluntary submissions. You can find it on your personal status page in the CMS.

Remember to submit your final class diagram and project description until Monday, 07.10.2024 4pm.

We have also released a document with the test descriptions of the mandatory test set in the Materials section.

Please also don't forget the course evaluation (the Links are also on your personal status page) which is possible until next Monday.

Starting on Monday there will be office hours everyday from 10am to 12pm and from 2pm to 4pm. You can find which room the office hours will be in in the Timetable of the course later today.
In these office hours the tutors will answer questions about the implementation and testing.

Best,
the SE Lab Team

Mandatory Test Pipelines Released

Written on 02.10.24 by Christian Hechtl

Dear participants,

we have released the test pipelines for the mandatory validation, component, and full scenario tests. There are 50 tests in total and you have 2 jokers (that means you have to pass 48 out of 50 tests).
The results are again pushed to the results branch of your… Read more

Dear participants,

we have released the test pipelines for the mandatory validation, component, and full scenario tests. There are 50 tests in total and you have 2 jokers (that means you have to pass 48 out of 50 tests).
The results are again pushed to the results branch of your repositories.

Remember that there is the design submission deadline (class diagram and project description) on Monday at 4pm. By then, we will also release the mutants.

Best,
the SE Lab Team

Course Evaluation and Voluntary Submission Tomorrow

Written on 01.10.24 by Christian Hechtl

Dear participants,

On your personal status page, you can now find two links for the course evaluation of the SE Lab.
There are different links: one to evaluate the course, and one to evaluate the tutors. Please note that the evaluation will end on 07.10.2024.

We especially appreciate… Read more

Dear participants,

On your personal status page, you can now find two links for the course evaluation of the SE Lab.
There are different links: one to evaluate the course, and one to evaluate the tutors. Please note that the evaluation will end on 07.10.2024.

We especially appreciate constructive feedback in the free text fields.

Also, please remember the voluntary draft submission of your project description and class diagram tomorrow morning at 9am. On this submission you will get feedback if you choose to submit your draft.

Best,
The SE-Lab team

Revision of the Specification

Written on 30.09.24 by Kallistos Weis

Dear Participants,

 

We have added some clarifications and simplifications to the specification of the individual phase.

 

In particular we changed the following:

- Changed the decision on where to repair/refuel/unload to closest station and tie-breaker by lowest id (not with cost… Read more

Dear Participants,

 

We have added some clarifications and simplifications to the specification of the individual phase.

 

In particular we changed the following:

- Changed the decision on where to repair/refuel/unload to closest station and tie-breaker by lowest id (not with cost anymore)

- removed space at the end of two log-messages (before the dot)

- clarified the length for unloading and repairing (1 tick)

 

Best regards,

 

The SE-Lab Team

Individual Phase Information

Written on 30.09.24 by Christian Hechtl

Dear participants,

we have just created your repositories in the GitLab. Furthermore, we have uploaded four files in the Materials section of the CMS:

  • The project description of the group phase reference you got.
  • The Latex template for the project description.
  • The class diagram of the… Read more

Dear participants,

we have just created your repositories in the GitLab. Furthermore, we have uploaded four files in the Materials section of the CMS:

  • The project description of the group phase reference you got.
  • The Latex template for the project description.
  • The class diagram of the reference implementation you got as a .pdf file
  • The class diagram as a .puml file

This Wednesday, you can upload a draft of your project description in the CMS (we will enable the submission in a little while) and get feedback until Friday at 2pm.

Best,
the SE Lab team

Group Phase Results

Written on 28.09.24 by Kallistos Weis

Dear participants,

We have completed the evaluation of the group phase (Code Submission).
You can find the results on your personal status page in the CMS.

On Monday, the individual phase of this year's SE Lab starts.
There will be a lecture on Monday morning at 9:30, in which the individual… Read more

Dear participants,

We have completed the evaluation of the group phase (Code Submission).
You can find the results on your personal status page in the CMS.

On Monday, the individual phase of this year's SE Lab starts.
There will be a lecture on Monday morning at 9:30, in which the individual phase will be presented.

Best,
The SE-Lab team

Information about the End of the Group Phase and the Start of the Individual Phase

Written on 26.09.24 by Christian Hechtl

Dear participants,

as the group phase comes to a close tomorrow evening, we have increased the test runs for your projects to approximately every 30 minutes.

Also, the tutors have kindly offered to extend tomorrows office hour until the deadline at 6pm. The office hour will take place in room… Read more

Dear participants,

as the group phase comes to a close tomorrow evening, we have increased the test runs for your projects to approximately every 30 minutes.

Also, the tutors have kindly offered to extend tomorrows office hour until the deadline at 6pm. The office hour will take place in room 013 in building E1 2.

Also please don't forget the introduction of the individual phase project next Monday at 9:30am in the GHH.

Best,
the SE Lab Team

Optional Tests Released and Number of Runs Increased

Written on 24.09.24 by Christian Hechtl

Dear participants,

we have just released a set of optional systemtests that will from now on be run on your implementations. These are not relevant for passing but rather there to help you narrow down potential problems in your code.

Furthermore, we have increased the number of runs that each… Read more

Dear participants,

we have just released a set of optional systemtests that will from now on be run on your implementations. These are not relevant for passing but rather there to help you narrow down potential problems in your code.

Furthermore, we have increased the number of runs that each group will have in a day. Our tests will now be executed every three hours on your implementations if you pushed changes to main in the corresponding time frame.

Best,
the SE Lab Team

Mutant Pipeline Released

Written on 23.09.24 by Christian Hechtl

Dear participants,

the mutant pipeline has just been released.

To register tests that should run against the mutants you have to register them in the function registerSystemTestsMutantSimulation. All other tests will not run against the mutants including the tests registered in… Read more

Dear participants,

the mutant pipeline has just been released.

To register tests that should run against the mutants you have to register them in the function registerSystemTestsMutantSimulation. All other tests will not run against the mutants including the tests registered in registerSystemTestsMutantValidation. Please make sure that all tests that are registered for the mutants pass against the reference as the mutants will only be executed if the tests in registerSystemTestsMutantSimulation do not fail.

In total there are 25 mutants and as with the mandatory test set, you will have jokers (i.e., a number of mutants that you do not need to find). For the mutants you will have 2 jokers.

We have also uploaded a file in the General section of the materials giving you a small hint about what each mutant might be about.

As a bonus (since the pipelines started so late), each group will get one additional mutant run on our server, which you can request anytime from tomorrow until Friday morning by telling your tutor.

Best,
the SE Lab Team

 

Office Hours

Written on 23.09.24 by Christian Hechtl

Dear participants,

starting today there will be an office hour every day from 2pm to 4pm this week. The office hour today will be in Room 206 E1 1. For the following days please check the timetable on the day of the office hour.

For the office hour you are only allowed to send one or two… Read more

Dear participants,

starting today there will be an office hour every day from 2pm to 4pm this week. The office hour today will be in Room 206 E1 1. For the following days please check the timetable on the day of the office hour.

For the office hour you are only allowed to send one or two students per group at a time because of space restrictions.

Best,
the SE Lab Team

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.