Discrete Models and Methods 2: Functional Programming - CT60A9600 [Lahti] 2023 Project Informa.on Submission Deadline: 14 May 2023 23:59
This project is a group effort. Part I (32 pt.) Implementation of a Renewable Energy Plant System based on the provided requirements.
- A code base on GitHub. (20 pt.)
- Demonstration video of REPS - maximum 5 mins (5 pt.)
- A report (part A) (5 + 2 pt.) a. Sequence flow diagrams of the implemented use cases, i.e., one sequence diagram for every use case. (5 pt.) b. Class diagram (2 pt.) i. It must represent the right connections among entities (classes, objects, traits) to explain how they are linked. ii. The objective is to have an overall clear picture of the REPS implementation. iii. You must take care of the first two points. Otherwise, it doesn’t have to be a strict class diagram because it is not an Object-Oriented Programming project. Part II (8 pt.) Explore one topic from the following and implement it.
- Strictness and Laziness a. It has multiple concepts related to it; choose one.
- Functor In the report (part B): a. Theoretical explanation of the concept. (3.5 pt.) b. Reference(s) that you have used to learn the concept. (1 pt.) Implementation: a. A code base with a minimalistic but meaningful implementation of the concept. (3.5 pt.) The Report (part A + part B: two sections) • Please, use proper tools for drawing – no paper-and-pen drawings. • The report must be properly formatted, have a logical flow, and uses clear and correct language. • The maximum length for part B in the report is 1 page.
Discrete Models and Methods 2: Functional Programming - CT60A9600 [Lahti] 2023 Deliverable Deliverables: Write your Names in the code as a comment. The whole code must be well commented on and supported with descripPons where required. Submission: Return boxes on Moodle and GitHub.
Deliverables for Project:
- The project report (PDF) with parts A and B. a. It must have a Ptle page that menPons the names of the team members and your group number.
- A .txt file with a link to the DemonstraPon video for only REPS (on GoogleDrive/OneDrive)
- Compress the above two files into a single folder.
- Your own Peer EvaluaPon form Naming: YourName_GroupNumber_peerEvaluaPon Example: “IflaahSalmanXXX peerEvaluaPon” Everyone submits the peer evaluaPon form.
- REPS Code implementaPon uploading on GitHub as demonstrated during an exercise session.
- Self-learned topic code implementaPon as a separate “.scala” file on the return box on Moodle. The compressed folder must be named like this: “YourName_GroupNumber_project” For example: “IflaahSalman_XXX_project” Only one member of the project group will submit the compressed folder.