Team Development

Team Development
calac41
You can use
CA Live API Creator
in the context of multiple (concurrent) API developers or as a single, disconnected API developer. 
CA Live API Creator
enables parallel development of client applications and business logic, since 
CA Live API Creator
applies logic automatically to all resources. If you are using 
CA Live API Creator
 as a single, disconnected API developer, you can use the single-user demonstration package or 
CA Live API Creator
 that is based on Jetty (demonstration package). You can support team development by using a blend of the demonstration package and other Java container deployed environments. The topics in this article define how to use 
CA Live API Creator
 in the context of multiple (concurrent) API developers.
You can script the following API lifecycle management tasks:
  • Lifecycle operation.
     For example, you can script moving a system from development, to test, and then to production.
  • The API-to-API server deployment from source control system (SCS) artifacts.
     For example, you can save development artifacts and export admin contents into a file for maintenance into an SCS (such as the export artifact).
  • The creation of APIs into an API Server in a production system.
With team development, the team of API developers can:
  • Work in parallel and develop code independently in your own environment, avoiding potential concurrency issues or overwriting code developed by other team members.
  • Export their APIs in a format that is easy to read. The team can perform code review activities, such as comparing (files) to determine how or whether the files differ (code diff) and code merges, offline. 
    CA Live API Creator
     is not bounded to a specific SCS. Each API developer can check in their final code to an SCS after completing the code review.
    For more information about how to export and import your API, see Import and Export APIs.
  • Consolidate and check in the changes to their API to an SCS. DevOps engineers can automate the deployment of API changes to other environments using the existing Continuous Integration/Continuous Deployment (CI/CD) and DevOps processes.
In this article:
Team Development Workflow
Most projects engage a team of API developers. The following illustration depicts a typical team development workflow using
CA Live API Creator
:
TeamDevelopment.png
The following steps summarize the team development process:
  1. Typically, each team member works in their local instance of
    CA Live API Creator
    , accessing either a local or shared application development database. Team members can use the demonstration package or they can run 
    CA Live API Creator
     on Apache Tomcat or in another Java container that 
    CA Live API Creator
     supports.
    If a team member wants to use the debug service, they must use the demonstration package.
    For more information about the debug service, see Debugger.
  2. When the API developer is ready to check in code or update their environment with the latest changes from the SCS, the API developer does the following:
    1. Exports the API to their local working file directory. Offline, the API developer can perform code diffs, merges, or updates within the working directory offline. For example, the API developer can use Git. Changes to JavaScript libraries affect the copy of the JS library that is associated to the API.
    2. Updates their local working file directory with the latest changes from the SCS.
    3. Compresses the latest changes (files) in archive format from the SCS, and then imports the API contained in the ZIP file or the JSON file back into 
      CA Live API Creator
      .
    4. If the API developer did not include passwords with the exported API (the API developer exported the API using the 
      Do not export data source passwords
       option), fixes the imported API. If the API developer included encrypted data source passwords with the exported API (the API developer exported the API using the 
      Encrypt data source passwords
       option) and you want to update the data source password that 
      CA Live API Creator
      encrypts to use the latest encryption key, change the data source passwords.
      Reload the schema to see new database objects.
      For more information about how to reload schemas, see Database Administration.
      For more information:
  3. Using your existing CI/CD process, the API developer completes the following to deploy the latest consolidated changes to their development or test environments:
    • Scripts and deploys the API using cURL commands calling the CA Live API Creator Admin project API (Admin API) or the 
      CA Live API Creator
       Admin command-line interface (Admin CLI),
      lacadmin
      (or the alias
      liveapicreatoradmin
      ).
      For more information about the Admin CLI, including how to install it, see Install and Use the Admin Command Line Interface.
    • Runs automated test suites.
  4. The API developer repeats steps 2 and 3 iteratively throughout the development process.
  5. The API developer deploys the APIs to your production environment using your existing CI/CD process.
Team Development Best Practices
We recommend the following best practices when working as a development team using
CA Live API Creator
:
  • When you are exporting your API, you can include your data source passwords in the API export file in plaintext form. Including the passwords in plaintext form can be useful during the initial stage of development. With passwords in plaintext form, you can easily share and restart an API development or sample project that requires database schema and meta information.
  • After importing an API with the latest changes in your development environment, consider reloading the schema especially when the schema changes are happening frequently in the backend.