davidmoten / davidmoten/state-machine

Questions: Reflection and PlantUML

Open
#12 8 comments 0 reactions 0 assignees View on GitHub
question
Dominant language
Java
Stars
145
Forks
14
PR merge metrics
No merged PRs in 30d

Description

Hi David,

I just came across this amazing library of yours and am considering using it in our next payment processing microservice.

Four question came to my mind, that I would be thankful to get your thoughts on:

- Does this library use reflection during run-time? If not, could it in your opinion be compiled into a native executable using GraalVM or do you foresee any problems?
- Did you achieve better results with GraphML -> yed, or why did you select this semi-manual process over an automatic with PlantUML?
- How powerful is your state chart export, and do you intend on improving it? E.g. I cannot find sub states as defined by Harel statecharts. To me, the diagram export and ES persistence are the most powerful feature of your library.
- How would you attempt to implement a LOCK across multiple microservices to make your request exactly-once processed, i.e. that the first request blocks the second while still processing, or returns the same result without executing twice? A database implementation would be possible when the database is shared for all microservices of the same domain, but has it been implemented yet? Or would you use a IMDG e.g. Hazelcast instead for this use case?

Cheers and thumbs up for your holding the flag of software quality high,
John

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names no repository files, tests, or entry points. Start by locating the runtime reflection, GraphML and state-chart export, ES persistence, and request-processing implementations; done would require documented answers to the four questions, including the feasibility and design considerations raised.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
devtools
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.