Skip to content

polytechnice-si/5A-Microservices-Integration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SOA, Microservices & Integration

Case study: The Tax Computation Service

We consider here a simple case study, the Tax Computation Service. The key idea is simple: creating a service-based architecture to support the computation of income taxes for a relatively small country (i.e., Norway, 5 millions inhabitants).

Personas & Stories

  • Thor is a simple tax payer, working as a software engineer in Oslo, the biggest city of the country; As Thor ...
    • I want to receive an email containing my tax return form when my taxes were processed, so that I can know the amount of taxes I paid this year;
    • I want to submit my cousin's name to the system, so that I can see how many taxes he is paying this year.
  • Anders is Thor's cousin. He works as a farmer living in Fredvang, a small village located inside the Lofoten archipelago; As Anders, ...
    • I want my taxes to be handled as a farmer so that I can benefit from the special tax computation associated to this status;
    • I want to receive my tax return form by snail mail, so that I can read it without using a computer;
    • I want to receive a text message indicating that my tax return was processed.
  • Eva is working at Skatteetaten, the Norwegian Tax Administration. She is supervising the tax payment process at the kingdom level; As Eva, ...
    • I want to respect the Norwegian law, stating that all processing must be done in an anonymous way;
    • I want to know how many tax return forms were processed .
  • Camilla is an IT engineer, also working at Skatteetaten. She is ensuring that the computation load will not kill the tax collection process. As Camilla, ...
    • I want to supervise the operational system to monitor how the tax processing is going.

Development Timeline

Phase #1: Deploying services

Phase #2: Integrating services

  • Message broker
    • Using asynchronous messages to assemble services;
    • Monitoring the broker
  • Legacy integration
    • Leveraging adapters to integrate legacy systems together

Technological Stack

About

Code samples to support the "SOA: Microservices & Integration" course

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors