Setting up a Project
  • 04 May 2022
  • 5 Minutes to read
  • Dark
    Light

Setting up a Project

  • Dark
    Light

Adding a project

Once the configuration is completed, we get back to the dashboard and the user will be able to start adding new projects. Since the  account linked with the project management(PM) tool is integrated seamlessly, all the projects from the PM tool will be listed and we will be able to select the projects we need to add to Agile.Now DevOps.

Fig: Projects from the PM tool

Once a project is added, then it will be about setting up the project.

Fig: Setting up the project 

The settings of the project is divided into 7 components which are mentioned below:

  1. General
  2. Mapping
  3. Behaviours
  4. Components
  5. Tests
  6. Issues
  7. Releases
Is not last environment
If environment is not last then you can see "Behaviours", "Components" and "Tests" tabs

Fig: Project Settings

General Information

The general information section provides details such as the name of the project and the teams that are present in the project. The details of the project includes the project name, last updated status, key, the release version of the project, created on, and if its an active project or not. A manual sync button is provided to sync the project with the OutSystems Lifetime. 

The user with tech lead privilege will be able to modify the release version of the project at any point of time. This change in version will be reflected throughout the Agile.Now DevOps application for that project.

Teams

Teams allow you to manage the permissions of a large number of users over the applications in your factory. This way, when new hires join an existing team in the company, you can manage their permissions over the team's applications without having to grant permissions on each application individually. A team in itself comprise of people working for a particular domain and the domains themselves. A domain comprise of it own business lifecycle of applications development. They are independent lifecycle of deployments with independent decision to deploy at any point of time. An example of OutSystems teams is given below:

Fig: OutSystems Teams

In Agile.Now, Teams under General Information, it will be possible to open the OutSystems teams window directly. The link will be made available which will be redirected to by the button on top right side of the teams header.

By default, all the teams created in the OutSystems teams are displayed in the team dashboard. It will be laid out in the form of cards in a grid layout. There will be an option to create a new team. 

In OutSystems, for each teams, alongside the applications that we are going to develop, it's important to create the testing application for the products that we are building which will then be then used in the Agile.Now DevOps. This is the most important configuration that has to be done. It is a good practice to have multiple teams for different applications because that way there will be an independent development lifecycle for each product and it will be distinguished from one another based on the DevOps principle. Each team as discussed earlier would have the users associated with that team and each users will have their role mentioned. it will be possible for the admin to modify the roles between developer, tester, manager, etc. The team would also have the different applications and it will be possible to create new or add existing applications.

Fig: Teams in Agile.Now DevOps

Depending on your composition in the project management tool such as Jira or Azure DevOps, It is possible to run one project in multiple domains and teams, and you can also run one team in one project. Agile.Now supports both combinations.

Mapping

Mapping is the most important functionality in business application development and DevOps process. The mapping functionality maps the different process steps in the project management tool to the different process steps in Agile.Now DevOps. For example, the process step "Ready For Development" in the project management tool will be mapped to a process step called "Implement" in Agile.Now DevOps. Similarly "Development" is mapped to "Implementing" and "Ready for Code Review" is mapped to "Implemented". If you want to extend the DevOps process to more advanced level, then you can include code review status alongside development stage and this will add further options such as "Code Review" that conforms to "Review", "In Code Review" which conforms to "Reviewing" and finally "Dev Deployment Queue" that conforms to "Reviewed" status.

Mapping is done one environment at a time so the process continues in the next environment.

Fig: Mapping

Behaviours

The Behaviors module instructs the Agile.Now DevOps to identify the status that is given for each section of tasks within a project and do activities such has testing, deployment or roll back to development based on the status. The module does the following:

  • Gives an option to run automated tests at a predefined time of the day for issues that has a particular configured status
  • Based on the outcome of the test result (pass or fail), provides an option to set a new status of the tasks 
  • Configure the possibility to deploy the issue with a predefined status to a particular environment at a predefined time of the day.

Fig: Behaviours

Components

Components in Agile.Now DevOps conform to the concept of Components within the project management tool which are usually imported directly from the OutSystems applications with the help of API’s. The components help classify the issues under modules of different applications. In OutSystems each application consists of modules and applications fall under a domain. For example, issues under a module say Agile.Now Accelerator that falls under the application Agile.Now that falls under the domain Factory would have a component in the project management tool by the name “Factory/Agile.Now/Agile.Now Accelerator” 

OutSystems User Manual - here 

It will be possible to sync the components in Agile.Now with the project management tool. This can be done by clicking the "Sync Components" button. Once the components are synced, it will be possible to add a component to each issue.

Fig: Components

Tests

The Tests module will have the possibility to synchronize the tests that has been added in the automation testing platform to the projects in Agile.now DevOps projects. By doing so, it will be possible for the developer to run the tests from Agile.Now using the Run Tests button. Once the user starts to run the tests, he/she will be able to see the status that the tests are running and then finally see the status of each tests.

In the production environment, it will not be possible to run the tests as the tests are not deployed from one environment to the production environment. Hence the status of the Run tests after deployment will always be set to false

Fig: Tests

Fig: Tests in progress

Fig: Tests Status


Was this article helpful?