Home - FEUP-MEIC-DS-2025-26/madeinportugal.store GitHub Wiki
Welcome to the madeinportugal.store!
Artificial Intelligence (AI), particularly Generative AI, is transforming various domains, including software development, which is of paramount importance to our profession.
Our objective is to assess the current state of AI to effectively support software developers in executing routine activities throughout the Software Development Lifecycle (SDLC), encompassing requirements gathering, development, testing, and deployment.
All the exploration will be conducted through direct application to the development of a substantial software system: madeinportugal.store, aka mip.s.
Vision
Our case study will focus on a marketplace dedicated to the sustainable fair-trade of local and regional traditional products originating from Portugal. These products face a significant risk of disappearing from our homes, shops, production, economy, and the planet.
The main purpose of madeinportugal.store in the course is to serve as a platform for brainstorming, envisioning, designing, implementing, and integrating a comprehensive software system deployed on the cloud. This system will encompass an orchestrated ensemble of minimal AI assistants, web services, and tools that will seamlessly interoperate to form a vast digital ecosystem. The core component is an online store, which will be kindly provided by Jumpseller, a company based in Porto. The store will be configured using their API.
Objectives
The work is twofold:
- To research existing and proven AI tools and approaches that may be suitable for incorporation into a coherent set of tools to develop the envisioned product;
- To research, design, and implement a proof of concept (PoC) for a simple, minimal, and valuable online large-scale online marketplace for the fair trade of local and regional products, intermediating traditional local and small-scale producers, artisans with local businesses, and clients.
Agile at Scale
madeinportugal.store aims to provide students with an immersive experience in Agile Software Development at Scale. Through collaborative multi-team efforts, students will learn to build and deploy a comprehensive software system within a limited timeframe using cutting-edge technologies such as cloud computing, containers, messaging, microservices, and artificial intelligence agents.
The course emphasizes the practical application of AI tools and methodologies that can enhance software development processes. Students will engage in collaborative activities to conceptualize the entire digital ecosystem, encompassing various components like shops, products, categories, producers, merchants, and logistic services.
Each team will focus on designing, developing, integrating, and orchestrating a small set of assistants or tools within the digital ecosystem.
The course employs a feature team strategy, with each team supervised by a dedicated instructor:
- Ademar Aguiar (Classes 1MEIC01 and 1MEIC07)
- Filipe Correia (Classes 1MEIC02 and 1MEIC05)
- Carlos Duarte (Class 1MEIC03)
- Daniel Pinho (Classes 1MEIC04 and 1MEIC06)
Wiki
All documentation and knowledge pertaining to the overall system of tools and each individual tool should be housed within this wiki, and only here.
Collaborative Tools
Digital collaboration will take place at a team of Microsoft Teams, using several public and private channels
Prototypes, Services, Assistants
Each team will focus ideally on a small set of services, assistants or tools to develop and integrate in the whole ecosystem.
Here is a list of initial ideas being prototyped (to explore and validate the technologies involved):
-
Store (automation tools, using the Jumpseller API) (APO - @henrism10)
-
Backoffice (web apps and tools)
-
Knowledge Base (wikibase integration tools)
- ...
-
Community (landing web page for the marketplace and tools)
- Product Discovery (APO - @El-Castro)
- Customer Engagement (APO - @jgmesquita)
- Purchase & Fulfillment (APO - @AlexL534)
Since software development is a very broad topic, we will focus on supporting Agile Software Development (from user stories to acceptance tests and continuous delivery), eventually for a specific kind of applications and using a custom technological stack, still to be defined.
Architecture
All teams will collaborate to architect, design, build, deploy and operate the overall system.
The overall system architecture may need to follow a Retrieval Augmented Generation (RAG) style. The chosen technological stack is from Google Cloud Platform. Here is an example of RAG based on Google Cloud. Details about the technological architecture are documented under in the Infrastructure page.
Development Process
The development process is based on Scrum and LeSS Huge, fine-tuned for the context of the Large Scale Development course of MEIC at FEUP.
Details about the process can be found here.
Development Practices
The complete list of best development practices enforced can be found here.
Development Conventions
Here are conventions defined for all teams follow together.
Communities of Practice (devCoPs)
The stategy used to deploy the microservices can be found here
Retrospectives
Team and overall retrospectives, should be available all in the same page, to make it easy to analyze altogether here. If you have previously added your retrospective to the pages below in the table, please move it to here.
This is deprecated... please move it as suggested above...
| 1MEIC01 | 1MEIC02 | 1MEIC03 | 1MEIC04 | 1MEIC05 | 1MEIC06 | 1MEIC07 |
|---|---|---|---|---|---|---|
| 1.1 | .. | 3.1 | 4.1 | 5.1 | 6.1 | 7.1 |
| .. | 2.2 | 3.2 | 4.2 | 5.2 | 6.2 | 7.2 |
| .. | 2.3 | 3.3 | 4.3 | 5.3 | 6.3 | 7.3 |
| 1.4 | 2.4 | 3.4 | 4.4 | 5.4 | 6.4 | 7.4 |