Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

At the moment PyAL is used across all the Python based actors (generated via FC2K). PyAL provides another layer between Access Layer and actors.

Current architecture (heavily simplified)Image Modified

Event though current solution works it has some flaws:

Template

  • Python template   template (FC2K) is composed of one, large file that is hard to maintain
  • Lots of information between components is passed via dictionaries instead of strictly defined interfaces
  • Logic of the actor is driven by if-else based approach - it's hard to add new features that are not supported at the moment
  • Lots of hidden assumptions are made in the code (e.g. temporary files creation, arguments that are responsible for script execution, etc.)
  • Error handling is not quite ideal

...

  • parts of code being hardcoded (magic values)
  • PyAL serves as yet another level in the whole structure and adds unnecessary complexity to the solution
  • It should be possible to implement features of PyAL using features coming purely from Python HLI
  • PyAL doesn't support IDS description based data transfer - it means we have to read/write data between calls to native routines
  • Changing PyAL is quite hard process. Lots of thing are tangled together via underlaying objects. It means that changing code in one place affects other parts.

Workflow

Workflows are the element that will probably require least changes. However it still can be improved.

  • Workflows are dependant on pyal module and imas module.