Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposition of new representations for SOA / API Design #32

Open
ejuliot opened this issue Jan 23, 2020 · 0 comments
Open

Proposition of new representations for SOA / API Design #32

ejuliot opened this issue Jan 23, 2020 · 0 comments

Comments

@ejuliot
Copy link
Member

ejuliot commented Jan 23, 2020

Here are two ideas to improve the existing graphical editors for SOA.
There are just prototyping.

Practices in common:

  • change the size of the font and the bold depending on the importance of the text
  • input are as bordered node on the left, output on the right
  • description in graphically shown inside the container
  • colors are only derivation of blue
  • use plain border for the main type of object and dash for less important objects
  1. Operation Detail
    This diagram is focus on one specific Operation. The goal is to show the tree of input/output data. If a primitive type is shown, I propose to use a decorator instead of the classical ": String" notation to make it more visual and easy to read. DTO are cascaded, with a visual recursivity if "isComposite" attribute is true. I didn't manage references between DTO (and any circular reference will generate an infinite loop).
    Idea to improve this diagram:
  • manage references between DTO (with a graphical edge or with just a label?)
  • palette and tools
  • calculate vertical size of bordered node which represent DTO depending of the number of attribute isComposite reference
  • improve the auto layout
  • improve the location of icons for each Primitive Type to delegate this responsability to type library plugins

searchBooks Detail

  1. Service Contract

This representation shows all operations:

  • 1st level of input/output variables
  • for DTO, show only the first level of structured objects. The contained DTO are just listed as a bordered node.
  • user can see which output can becoming the input of another operation

BookService

Here is the same modeler with the same data but with a hand made graphical positioning (I think I prefer the horizontal one):
BookService vertical

The source code
I created a new odesign file to do this test autonomously. Here is the workspace with the VSM project and the sample demo (with ISD 1.9.0):
workspace.zip

And here is the VSM file (rename the extension from .txt to .odesign):
EJURest.txt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant