From d33dad458c09daadcff777b92e1fdf056bfd32d5 Mon Sep 17 00:00:00 2001 From: jmaquin0 Date: Tue, 29 Oct 2019 22:43:59 -0500 Subject: [PATCH 1/6] create exam2.md propose to 2nd midterm --- 2019_b/sd/exam_2_3/exam2.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 2019_b/sd/exam_2_3/exam2.md diff --git a/2019_b/sd/exam_2_3/exam2.md b/2019_b/sd/exam_2_3/exam2.md new file mode 100644 index 0000000..c1c949d --- /dev/null +++ b/2019_b/sd/exam_2_3/exam2.md @@ -0,0 +1,12 @@ +# Exam 2 + +For this exam you should migrate the application developed in midterm 1 into a microservices arquitecture. your aplication must insert data into a database and read the data from the database. +in this delivery the artifacts you should provide are: +- OpenAPI[https://github.com/OAI/OpenAPI-Specification] documentation of the API to insert and read data. (20%) +- Test for continous integration (one for insertion and one for reading). (20%) +- implementation of microservice (to deploy in a local machine). (20%) +- Documentation of the process: It is the README.md in your repository it must contain: + - Students' full names and codes (5%) + - instructions to deploy the applications (10%) + - cURL examples to insert and read data (20%) + - evidences of microservices working (5%) From 8b73d24126965c88e10fadc5de5c0aae31ff0b84 Mon Sep 17 00:00:00 2001 From: jmaquin0 Date: Wed, 30 Oct 2019 12:08:50 -0500 Subject: [PATCH 2/6] Update exam 2 complete midterm descrpition --- 2019_b/sd/exam_2_3/exam2.md | 51 +++++++++++++++++++++++++++++-------- 1 file changed, 41 insertions(+), 10 deletions(-) diff --git a/2019_b/sd/exam_2_3/exam2.md b/2019_b/sd/exam_2_3/exam2.md index c1c949d..3c1a518 100644 --- a/2019_b/sd/exam_2_3/exam2.md +++ b/2019_b/sd/exam_2_3/exam2.md @@ -1,12 +1,43 @@ # Exam 2 -For this exam you should migrate the application developed in midterm 1 into a microservices arquitecture. your aplication must insert data into a database and read the data from the database. -in this delivery the artifacts you should provide are: -- OpenAPI[https://github.com/OAI/OpenAPI-Specification] documentation of the API to insert and read data. (20%) -- Test for continous integration (one for insertion and one for reading). (20%) -- implementation of microservice (to deploy in a local machine). (20%) -- Documentation of the process: It is the README.md in your repository it must contain: - - Students' full names and codes (5%) - - instructions to deploy the applications (10%) - - cURL examples to insert and read data (20%) - - evidences of microservices working (5%) +**Universidad ICESI** +**Course:** Distributed systems +**Teacher:** Juan M Álvarez Q. +**Topic:** Microservices Architecture design +**email:** juan.alvarez8 at correo.icesi.edu.co + +### Learning goals +* Design a microservices architecture application + +### Suggested technologies for the midterm development +* [Open API](https://openapi.tools/) +* github repository +* Flask and [connexion](https://connexion.readthedocs.io/en/latest/) +* Mongo db and [mlab](https://mlab.com/) +* [travis-ci](https://travis-ci.org/) + +### Description + +For this exam you should redesing the application developed in midterm 1 into a REST-based microservices arquitecture. your aplication must comply the following: + +* Must have a github repository which is a fork of the **[sd-mdterm2](https://github.com/ICESI-Training/sd-midterm2)** repository +* It is suggested to use mlab for data storage: mlab is a database as a service provider for mongo databases. +* The system must accept Http requests from cURL (you can use other REST clients like postman, insomnia or postwoman. +* The application must have an endpoint to inser data in the database. +* The apllication mus have an endpoint to retrieve all the registers from a database collection or table. +* The design must have continous integration unit tests for all microservices. + + +### Actividades (EN español para evitar ambigüedades) +1. Documento README.md en formato markdown: + * Formato markdown (5%). + * Nombre y código del estudiante (5%). + * Ortografía y redacción (5%). +2. Documentación de la API de conformidad con el estándar [OpenAPI](https://github.com/OAI/OpenAPI-Specification). (15%) +3. Pruebas unitarias de cada microservicio ara el proceso de integración contínua (10%). Evidencia del código pasando dichas pruebas(5%). +4. Archivos fuentes en el repositorio de los microservicios implementados (15%). +5. Documentación de las tareas para desplegar los microservicios en una máquina local (10%). Evidencias del despliegue (peticiones cURL o similares)(10%). +6. El informe debe publicarse en un repositorio de github el cual debe ser un fork de https://github.com/ICESI-Training/sd-midterm2 y para la entrega deberá hacer un Pull Request (PR) al upstream (10%). Tenga en cuenta que el repositorio debe contener todos los archivos necesarios para el despliegue. +7. Documente algunos de los problemas encontrados y las acciones efectuadas para su solución (10%). + + From eb43f9f7875226349938e287a9c9aca5d4521a54 Mon Sep 17 00:00:00 2001 From: jmaquin0 Date: Wed, 30 Oct 2019 18:29:03 -0500 Subject: [PATCH 3/6] anmend midterm2 --- 2019_b/sd/exam_2_3/exam2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/2019_b/sd/exam_2_3/exam2.md b/2019_b/sd/exam_2_3/exam2.md index 3c1a518..b834812 100644 --- a/2019_b/sd/exam_2_3/exam2.md +++ b/2019_b/sd/exam_2_3/exam2.md @@ -24,7 +24,7 @@ For this exam you should redesing the application developed in midterm 1 into a * It is suggested to use mlab for data storage: mlab is a database as a service provider for mongo databases. * The system must accept Http requests from cURL (you can use other REST clients like postman, insomnia or postwoman. * The application must have an endpoint to inser data in the database. -* The apllication mus have an endpoint to retrieve all the registers from a database collection or table. +* The application must have an endpoint to retrieve all the registers from a database collection or table. * The design must have continous integration unit tests for all microservices. From 5f36b698140adba39d4ead37889201723eb41723 Mon Sep 17 00:00:00 2001 From: jmaquin0 Date: Wed, 30 Oct 2019 18:29:41 -0500 Subject: [PATCH 4/6] Update exam2.md --- 2019_b/sd/exam_2_3/exam2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/2019_b/sd/exam_2_3/exam2.md b/2019_b/sd/exam_2_3/exam2.md index b834812..f8e725a 100644 --- a/2019_b/sd/exam_2_3/exam2.md +++ b/2019_b/sd/exam_2_3/exam2.md @@ -23,7 +23,7 @@ For this exam you should redesing the application developed in midterm 1 into a * Must have a github repository which is a fork of the **[sd-mdterm2](https://github.com/ICESI-Training/sd-midterm2)** repository * It is suggested to use mlab for data storage: mlab is a database as a service provider for mongo databases. * The system must accept Http requests from cURL (you can use other REST clients like postman, insomnia or postwoman. -* The application must have an endpoint to inser data in the database. +* The application must have an endpoint to insert data in the database. * The application must have an endpoint to retrieve all the registers from a database collection or table. * The design must have continous integration unit tests for all microservices. From eb6678bae386988a599381b7d084c91029d32f5e Mon Sep 17 00:00:00 2001 From: jmaquin0 Date: Wed, 13 Nov 2019 18:06:41 -0500 Subject: [PATCH 5/6] create exam3.md first dreft of document of requirements for third midterm of sd exam --- 2019_b/sd/exam_2_3/exam3.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 2019_b/sd/exam_2_3/exam3.md diff --git a/2019_b/sd/exam_2_3/exam3.md b/2019_b/sd/exam_2_3/exam3.md new file mode 100644 index 0000000..7dc369c --- /dev/null +++ b/2019_b/sd/exam_2_3/exam3.md @@ -0,0 +1,32 @@ +#3er examen parcial sistemas distribuidos# + +**Universidad ICESI** +**Course:** Distributed systems +**Teacher:** Juan M Álvarez Q. +**Topic:** Microservices Architecture design +**email:** juan.alvarez8 at correo.icesi.edu.co + +### Description + +For this exam you should redesing the application developed in midterm 2 into a REST-based microservices arquitecture with a frontend and a health check dashboard. your aplication must comply the following: + +* Must have a github repository which is a fork of the **[sd-mdterm3](https://github.com/ICESI-Training/)** repository +* It is suggested to use mlab for data storage: mlab is a database as a service provider for mongo databases. +* The system must accept Http requests from cURL (you can use other REST clients like postman, insomnia or postwoman. +* The application must have an endpoint to insert data in the database. +* The application must have an endpoint to retrieve all the registers from a database collection or table. +* The design must have continous integration unit tests for all microservices. +* Microservices must be deployed on containers. +* Microservices must be orchestrated using docker-compose, docker-swarm or Kubernetes + +## Actividades (EN español para evitar ambigüedades) +1. Documento README.md en formato markdown: + * Formato markdown (5%). + * Nombre y código del estudiante (5%). + * Ortografía y redacción (5%). +2. Documentación del procedimiento para el despliegue de los contenedores. (30%) +3. Archivos fuentes en el repositorio de la aplicación implementada (15%). +4. Documentación de las tareas para desplegar la aplicación (20%). +5. El informe debe publicarse en un repositorio de github el cual debe ser un fork de https://github.com/ICESI-Training/repoToBeDefined y para la entrega deberá hacer un Pull Request (PR) al upstream (10%). Tenga en cuenta que el repositorio debe contener todos los archivos necesarios para el despliegue. +6. Documente algunos de los problemas encontrados y las acciones efectuadas para su solución (10%). + From cb6ff0ead26e76428732b0682f1c0706bfcc75fd Mon Sep 17 00:00:00 2001 From: jmaquin0 Date: Mon, 18 Nov 2019 20:56:01 -0500 Subject: [PATCH 6/6] update README.md update midterm repository URLs --- 2019_b/sd/exam_2_3/exam3.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/2019_b/sd/exam_2_3/exam3.md b/2019_b/sd/exam_2_3/exam3.md index 7dc369c..5fc81d1 100644 --- a/2019_b/sd/exam_2_3/exam3.md +++ b/2019_b/sd/exam_2_3/exam3.md @@ -10,7 +10,7 @@ For this exam you should redesing the application developed in midterm 2 into a REST-based microservices arquitecture with a frontend and a health check dashboard. your aplication must comply the following: -* Must have a github repository which is a fork of the **[sd-mdterm3](https://github.com/ICESI-Training/)** repository +* Must have a github repository which is a fork of the **[sd-mdterm3](https://github.com/ICESI-Training/SD-midterm3)** repository * It is suggested to use mlab for data storage: mlab is a database as a service provider for mongo databases. * The system must accept Http requests from cURL (you can use other REST clients like postman, insomnia or postwoman. * The application must have an endpoint to insert data in the database. @@ -27,6 +27,6 @@ For this exam you should redesing the application developed in midterm 2 into a 2. Documentación del procedimiento para el despliegue de los contenedores. (30%) 3. Archivos fuentes en el repositorio de la aplicación implementada (15%). 4. Documentación de las tareas para desplegar la aplicación (20%). -5. El informe debe publicarse en un repositorio de github el cual debe ser un fork de https://github.com/ICESI-Training/repoToBeDefined y para la entrega deberá hacer un Pull Request (PR) al upstream (10%). Tenga en cuenta que el repositorio debe contener todos los archivos necesarios para el despliegue. +5. El informe debe publicarse en un repositorio de github el cual debe ser un fork dehttps://github.com/ICESI-Training/SD-midterm3 y para la entrega deberá hacer un Pull Request (PR) al upstream (10%). Tenga en cuenta que el repositorio debe contener todos los archivos necesarios para el despliegue. 6. Documente algunos de los problemas encontrados y las acciones efectuadas para su solución (10%).