Inspiration
The idea of this sandbox is to implement a reference architecture where recent Cegeka investments (Azure Training / DDD Training), and newer technologies (Event Sourcing / Blazor) are being used. The core logic of this sandbox is about the business domain of the Cegeka Applications division, more specifically: consultancy on a project level. This is why the product of this sandbox will be called “ProjectPortal”. The domain can act as a starting point for further sandboxes and discussions within the community. It could also lead to future sandboxes or internship. Important for this sandbox is that the core domain is preserved, independent from specific infrastructure. The core business of our division are the projects we work on and all the lessons we learn from it, by the people who work on them. With this sandbox we would like to set a starting point to put most of this information into an application.
Goals
- Translate a domain (projects / technologies / team-members / non functionals) into code by using DDD and hexagonal architecture. The core domain does not need to know anything about technology specifics (except for the fact that the code is written in c#)
- Make use of newer technologies, without contaminating the domain model by it. For this sandbox we will use Blazor for the frontend and Azure services to host the application
- Project management: make use of Azure DevOps to keep track of everything.
- End goal on the long run is to have something usable with business value for Cegeka. E.g.: a project portal where you can easily search for projects, rfp’s, tenders, … and all their associated quality attributes / technologies / team members
- End goal on short term is to learn about technologies and share those lessons within Cegeka: DDD / Event Sourcing / CQRS / Azure
- Have a concrete implementation of trainings that were given by Cegeka: o Azure DevOps o DDD Training / DDD Reading Group o Azure Developer / Azure Architect What the sandbox will not do:
- It will not focus on delivering as much as functionality as possible. We want to have an MVP that can deliver basic functionality but allows us to learn as much lessons as possible and share this in the guild.
- Reference architecture for all developers (cross technology): o DDD (Domain Driven Design) Method to translate complex business domain logic into code o CQRS / Event Sourcing Method to write high performant application o Hexagonal architecture Easily swap out technologies o Azure Gain experience with Azure technologies
- Because of the DDD approach we will gain more insights about the inner workings of the projects we deliver
- Reusable core domain that can be used for future, technology-specific sandboxes or use cases
- Project management: Lessons learned about using Azure DevOps in a scrum setting
- Technology: Lessons learned about frontend technology, Blazer
- Technology: Lessons learned about hosting applications in Azure
Deliverables
- Knowledge sharing across the guild. We will setup one or more meetings to present our lessons learned.
- DevOps environment with an application and a wiki that is accessible for everyone within Applications
- Live application that can be used within Cegeka
- Comparison with another sandbox (Outsystems / low-code)
What's next for Project Portal / Reference Architecture
Built With
- .netcore
- azure
- azuredevops
- blazor
- ddd
- hexagonal
- portsandadapters

Log in or sign up for Devpost to join the conversation.