jeudi 20 septembre 2018

Designing User Interfaces/APIs in python for enterprise application

I am rewriting my Perl based workload automation software in Python. And I want to design user API's for the same. This workload automation software has lots of functionalities.

For example:

  1. Scheduling Job: Users write a job definiton in YAML file and gives this YAML file to our installation script. Our installation script schedules this job using cron.

  2. Users can define loads of job configurations in YAML file: For example

    • Dependency to check before executing a job.
    • Rescheduling a job on failure.
    • Sending notifications on success/failure to users etc.

Job on completion writes its execution status in filesystem (example: scheduled, running, failed, completed etc)

Architecture is done, now I want to start designing user APIs (APIs to Query Job State, APIs to write Config YAML file etc.) before writing implementation.

What is the right strategy to start writing user APIs (interface only) for such a big software in python? And how best to circulate them to users for the feedback?

Aucun commentaire:

Enregistrer un commentaire