Skip to content
This repository has been archived by the owner on Apr 16, 2023. It is now read-only.

bmariesan/iStudent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iStudent

Design Patterns Course UBB 2017-2018

  1. User management & Course subscriptions
  2. Assignments, tests and gradings/ & Test/Assignment design
  3. Analytics & Reporting
  4. University Blog - push notifications etc.

Build Status

wercker status

Project Details

Prerequisites

How to build and run the project?

Windows

step 1:
gradlew clean build
step 2:
gradlew bootRun
step 3:
http://localhost:8080
step 4:
Enjoy coding :)

Linux/Mac OS

step 1:
./gradlew clean build
step 2:
./gradlew bootRun
step 3:
http://localhost:8080
step 4:
Enjoy coding :)

Logistics

Courses

  • Course 1: Solid Principles and Creational Patterns (Factory, Builder, Prototype, Singleton)
  • Course 2: Structural Patterns (Adapter, Bridge, Composite, Decorator, Facade, Proxy)
  • Course 3: Behavioral Patterns (Chain of Responsibility, Command, Iterator, Mediator, Observer)
  • Course 4: Behavioral Patterns (State, Strategy, Template)
  • Course 5: Recap (Factory, Builder, Singleton, Adapter, Composite, Proxy)
  • Course 6: Architectural Patterns (MVVM, MVP, MVC), JS Module Pattern
  • Course 7: Enterprise Integration Patterns
  • Course 8: Enterprise Integration Patterns: Messaging
  • Course 9: Enterprise Integration Patterns: Message Routing
  • Course 10: Enterprise Integration Patterns: Message Translating
  • Course 11: Design Patterns: Recap Exercises

Attendance status of students

Self-scheduling for labs, for a more balanced number of students at each laboratory

Exams scheduling, to be filled out by 19th dec, end-of-day

Grading options:

Option 1:

  • 50% individual presentations, during the semester
  • 50% final presentation, with the whole project team (max 6 people), at the end of the semester, before the exam period, in the "Presesiune" period

Option 2 (date to be decided), in case a student is uneligible for the first option, or receives a grade under 5 on the first option:

  • written exam at the end of the semester, in the "Sesiune" period

Option 3 (20 feb), in case the student fails first options or is caught cheating at Option 1:

  • written exam after the exam period, in the "Restante" period

Bonus given for course attendance: max 2 points divided to the number of course attendances, added to the final exam grade and rounded up (ceiling rounding).

1. Option 1:

1.1. Option 1, first half: Individual presentation during the semester requirements:

1.1.1. Requirements scheduling and buzzwords

  • Each group can have 1 or 2 people presenting per laboratory. -- 1 person has a 10min timeslot for presenting. -- 2 people have a 20min timeslot for presenting.
  • If few people are presenting, the timeslots can vary.

1.1.2. Each presentation (for each person) must have the following:

1.1.2.1. Production usage of a Design Pattern

From repositories such as:

  • Spring Framework
  • JUnit framework
  • Any project dependencies used
  • GitHub trending repos
  • Your code at work (if it is allowed)

1.1.2.2. Buzzword

  • Each buzzword can be presented by a maximum of 2 people, from different groups
  • The spreadsheet linked in the title header has the list of buzzwords, you can write your name to one to reserve it

1.1.2.3. Current project progress

  • Any design patterns used
  • Progress of functionality
  • Code explanations

1.2. Option 1, second half: Final presentation, with the whole team (max 6 people)

If a person from the team does not participate, that person will be graded using Option 2 (written exam)

1.2.1. Presentation requirements for the team

  • Overall implementation of team task

1.2.2. Presentation requirements for each team member:

  • Code contribution
  • Used Design Patterns
  • Purpose and added value of used Design Pattern
  • Git statistics shown for contributions brought

2. Option 2: Written exam (sesiune)

Exam will be given across multiple rows of students to prevent fraud.

2.1. Exercise 1: Student is presented with a Non-Enterprise Design Pattern

2.1.1. Draw UML class diagram

2.1.2. Provide use cases (minimum 2 but will be specified on each exam variant)

2.1.3. Pseudocode implementation

2.2. Exercise 2: Student is given a business use case:

2.2.1. Name a Design Pattern which can be used to solve this business use case

2.2.2. Give reason and benefits for usage of this Pattern

2.2.3. Draw UML class diagram

2.1.4. Pseudocode implementation

2.3. Exercise 3: Student is given an Enterprise business use case:

2.2.1. Name an Enterprise Integration Pattern which can be used to improve the messaging system

2.2.2. Explain (drawing+text) information flow with given Enterprise Integration Pattern

2.2.3. Give reason and benefits for usage of this Pattern

3. Option 3: Written exam (restanta) - same requirements as Option 2)

Programare examene

  • Colocviu, sambata, 27 ian, 8:00 - 14:00 (cu posibilitate de prelungire dupa 14:00, daca sunt oameni) (Programare)
  • Examen, duminica, 11 feb, 10:00 - 13:00, sala C335
  • Restanta, duminica, 20 feb, 8:00 - 10:00, sala C310

About

Design Patterns Course UBB 2017-2018

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published