Browse Source

readme and audit review

pull/659/head
OGordoo 4 years ago
parent
commit
a9ee1d0928
  1. 40
      subjects/stock-exchange-sim/README.md
  2. 12
      subjects/stock-exchange-sim/audit/README.md

40
subjects/stock-exchange-sim/README.md

@ -19,12 +19,12 @@ Example:
Imagine a project with different tasks in witch we have to achieve a final goal. Each of the tasks can have their dependencies and restrictions, lets say you are putting together a new cabinet and you have 7 boards. Imagine a project with different tasks in witch we have to achieve a final goal. Each of the tasks can have their dependencies and restrictions, lets say you are putting together a new cabinet and you have 7 boards.
| Task | Needed | Result | Cycle | | Task | Needed | Result | Cycle |
| ------------- | :-----------------------------------: | :----------: | :---: | | ------------- | :-----------------------------------: | :-----------: | :---: |
| do_doorknobs | board: 1 | doorknobs:1 | 15 | | do_doorknobs | board: 1 | doorknobs: 1 | 15 |
| do_background | board: 2 | background:1 | 20 | | do_background | board: 2 | background: 1 | 20 |
| do_shelf | board: 1 | shelf:1 | 10 | | do_shelf | board: 1 | shelf: 1 | 10 |
| do_cabinet | doorknobs: 2; background: 1; shelf: 3 | cabinet:1 | 30 | | do_cabinet | doorknobs: 2; background: 1; shelf: 3 | cabinet: 1 | 30 |
The purpose of this example is to optimise time and cabinet, basically the cabinet is the last product to achieve in the project and time is to be prioritized so that the building of your cabinet is done the fastest way possible. The purpose of this example is to optimise time and cabinet, basically the cabinet is the last product to achieve in the project and time is to be prioritized so that the building of your cabinet is done the fastest way possible.
@ -88,12 +88,12 @@ Then we can run the **The stock exchange program** to generate a schedule.
- In the situation where the system self-powers and rotates indefinitely, you will choose a reasonable shutdown condition, and your stocks should show that the whole process went well several times. - In the situation where the system self-powers and rotates indefinitely, you will choose a reasonable shutdown condition, and your stocks should show that the whole process went well several times.
- There is no obligation of invariance between two executions. This means that, for the same configuration, the first recommended solution, may be completely different from the second one. - There is no obligation of invariance between two executions. This means that, for the same configuration, the first recommended solution, may be different from the second one.
- It is up to you to create and organize the display, it must nevertheless allow the understanding of the main actions carried out by the program. - It is up to you to create and organize the display, it must nevertheless allow the understanding of the main actions carried out by the program.
```console ```console
Main Processes : Main Processes:
0:do_shelf 0:do_shelf
0:do_shelf 0:do_shelf
0:do_shelf 0:do_shelf
@ -102,7 +102,7 @@ Main Processes :
0:do_background 0:do_background
20:do_cabinet 20:do_cabinet
No more process doable at cycle 51 No more process doable at cycle 51
Stock : Stock:
board => 0 board => 0
doorknobs => 0 doorknobs => 0
background => 0 background => 0
@ -110,11 +110,11 @@ Stock :
cabinet => 1 cabinet => 1
``` ```
- The display must also produce an output usable by the verification program, in the following format: - The display must also produce an output usable by the checker program, in the following format:
`<cycle>:<process_name>` `<cycle>:<process_name>`
The generated schedule is then saved as a log in the example folder with the same name. The generated schedule is then saved as a log with the same name.
So if you run: So if you run:
@ -132,7 +132,7 @@ student$ cat examples/simple.log
No more process doable at cycle 61 No more process doable at cycle 61
``` ```
---- ---
### Checker ### Checker
@ -140,7 +140,7 @@ We can then verify if the schedule is doable with the **checker** program:
- It takes 2 parameters: - It takes 2 parameters:
`.\checker <file> <result_to_test>` `.\checker <file> <log_file>`
- The first parameter is the configuration file, the second is a log file containing the trace of stock exchange program which must be checked. - The first parameter is the configuration file, the second is a log file containing the trace of stock exchange program which must be checked.
@ -176,14 +176,14 @@ optimize:(time;client_content)
Running the stock exchange program: Running the stock exchange program:
``` ```console
student$ ./stock examples/simple 10 student$ ./stock examples/simple 10
Main Processes : Main Processes:
0:buy_materiel 0:buy_materiel
10:build_product 10:build_product
40:delivery 40:delivery
No more process doable at cycle 61 No more process doable at cycle 61
Stock : Stock:
euro => 2 euro => 2
materiel => 0 materiel => 0
product => 0 product => 0
@ -193,7 +193,7 @@ student$
Running the checker program: Running the checker program:
``` ```console
student$ ./checker examples/simple examples/simple.log student$ ./checker examples/simple examples/simple.log
Evaluating: 0:buy_materiel Evaluating: 0:buy_materiel
Evaluating: 10:build_product Evaluating: 10:build_product
@ -202,9 +202,9 @@ Trace completed, no error detected.
student$ student$
``` ```
---- ---
Running the stock exchange program with error: Running the stock exchange program with error, you can see the correct file [here](https://public.01-edu.org/subjects/stock-exchange-sim/examples/simple/simple)
```console ```console
student$ cat examples/simple student$ cat examples/simple
@ -218,7 +218,7 @@ Error while parsing `:(euro:8):(material:1):10`
student$ student$
``` ```
Running the checker program with error: Running the checker program with error, you can see the correct file [here](https://public.01-edu.org/subjects/stock-exchange-sim/examples/simple/simple.log)
```console ```console
student$ cat examples/simple.log student$ cat examples/simple.log

12
subjects/stock-exchange-sim/audit/README.md

@ -1,6 +1,6 @@
#### General #### General
###### Can you confirm that the program reads a file that describes the processes, analyze the entire file and propose a valid solution? ###### Can you confirm that the program reads a file that describes the processes, analyzes the entire file and proposes a valid solution?
###### Does the project contains a checker program? ###### Does the project contains a checker program?
@ -128,7 +128,7 @@ student$
##### Run the same example with a different waiting time `"./stock examples/fertilizer/fertilizer 0.0003"`.(fertilizer example is self-powered and rotates indefinitely) ##### Run the same example with a different waiting time `"./stock examples/fertilizer/fertilizer 0.0003"`.(fertilizer example is self-powered and rotates indefinitely)
###### Does the display presents a result significantly shorter number of cycles comparing to the previous question output? ###### Does the display presents a result with a significantly shorter number of cycles comparing to the previous question output?
##### Try to run the stock exchange program with the [error1](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error1) example, `"./stock examples/errors/error1 1"`. ##### Try to run the stock exchange program with the [error1](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error1) example, `"./stock examples/errors/error1 1"`.
@ -139,7 +139,7 @@ Exiting...
student$ student$
``` ```
###### Does the display presents a result similar to the one above, were it shows the error? ###### Does the display presents a result similar to the one above, where it shows the error?
##### Try to run the stock exchange program with the [error2](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error2) example, `"./stock examples/errors/error2 1"`. ##### Try to run the stock exchange program with the [error2](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error2) example, `"./stock examples/errors/error2 1"`.
@ -150,7 +150,7 @@ Exiting...
student$ student$
``` ```
###### Does the display presents a result similar to the one above, were it shows the error? ###### Does the display presents a result similar to the one above, where it shows the error?
##### Try to run the stock exchange program with the [error3](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error3) example, `"./stock examples/errors/error3 1"`. ##### Try to run the stock exchange program with the [error3](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error3) example, `"./stock examples/errors/error3 1"`.
@ -161,7 +161,7 @@ Exiting...
student$ student$
``` ```
###### Does the display presents a result similar to the one above, were it shows the error? ###### Does the display presents a result similar to the one above, where it shows the error?
##### Try to run the checker program with the [build](https://public.01-edu.org/subjects/stock-exchange-sim/examples/build/build) and the [build.log](https://public.01-edu.org/subjects/stock-exchange-sim/examples/build/build.log) example, `"./checker examples/build/build examples/build/build.log"`. ##### Try to run the checker program with the [build](https://public.01-edu.org/subjects/stock-exchange-sim/examples/build/build) and the [build.log](https://public.01-edu.org/subjects/stock-exchange-sim/examples/build/build.log) example, `"./checker examples/build/build examples/build/build.log"`.
@ -178,7 +178,7 @@ Trace completed, no error detected.
student$ student$
``` ```
###### Does the display presents a result similar to the one above, were it shows the last cycle and the proof that the sequence is correct? ###### Does the display presents a result similar to the one above, where it shows the last cycle and the proof that the sequence is correct?
##### Try to run the checker program with the [seller](https://public.01-edu.org/subjects/stock-exchange-sim/examples/seller/seller) and the [seller.log](https://public.01-edu.org/subjects/stock-exchange-sim/examples/seller/seller.log)example, `"./checker examples/seller/seller examples/seller/seller.log"`. ##### Try to run the checker program with the [seller](https://public.01-edu.org/subjects/stock-exchange-sim/examples/seller/seller) and the [seller.log](https://public.01-edu.org/subjects/stock-exchange-sim/examples/seller/seller.log)example, `"./checker examples/seller/seller examples/seller/seller.log"`.

Loading…
Cancel
Save