Traditional software development flow
If your team uses a traditional development methodology, such as waterfall, use ALM Octane to manage the development process.
In this topic:
- The typical software development process
- Requirements
- Design
- Implementation
- Testing and verification
- Release maintenance
The typical software development process
The traditional development process follows a structure like this:
-
Requirements: List the requirements of what the product needs to do. This may or may not include a list of features.
-
Design: Define how the requirements work inside the product.
-
Implementation: Develop the product.
-
Testing/Verification: The quality assurance team tests and verifies the planned features. Open defects for those problems encountered in testing.
-
Release/maintenance: Release the finished and approved product.
We recognize that not all traditional software development models follow such a linear progression, However, these framework do keep a rigid separation between development phases.
ALM Octane helps you manage the development processes through each of these stages:
Requirements
In traditional software development, you define the requirements before beginning any work. This lets you know exactly what your product needs to do for customers.
Also, you define the timeline and resources to see what it is possible to finish..
ALM Octane lets you do this planning before beginning work on the release.
Define the application requirements
When beginning development, you have a general idea of what the application should do. You may know what tasks the application can perform, what things the user may want to do, and so forth.
To help define requirements, use the Requirements module to describe the intended functionality:
For details, see Requirement management.
While adding requirements, create application modules. These application modules are functional areas of the product. Application modules enable you to see application health and progress as you proceed through development and testing.
Create and view application modules in the Quality module:
After you create the application module hierarchy, associate features, tests, and defects with each application module.
For details on application modules, see Quality management.
Create releases, sprints, and timelines
Create the timelines for the product releases.
In ALM Octane, the space admin, or admin for the workspace, creates the timeline in the Settings area:
For details on defining releases and release timelines, see Set up a release.
Add teams and assign them to releases
You must also plan the workforce. In ALM Octane, the admin for a workspace adds teams, adds team members, and assigns them to releases:
For details on creating and assigning teams, see Manage teams.
Design
Once you have planned requirements, releases, and teams, begin developing the application. This involves creating the backlog of work items and assigning these work items.
First, create the product backlog to organize the development process.
In ALM Octane, you maintain the backlog in the Backlog module. Use the Backlog module to:
-
Create epics that specify the large-scale areas
-
Create features for each deliverable part of the product
-
Create stories for each item to develop
-
Organize epics, features, and backlog items in a meaningful way
For details on using the Backlog, see Backlog management
After you create the Backlog, plan each release and sprints.
ALM Octane helps you assign Backlog items to releases, sprints, and teams:
-
Update the Release, Sprint, and Team fields in the Details tab of any item
-
Drag the item from the list or grid into a release bucket:
For details on working with the release and team assignments, see Plan your release. For details on the release buckets, see Use the backlog planning buckets.
During the sprint planning meeting, assign work items to a user:
-
Update the Owner field in the Details tab of any item
-
In the Team Backlog module, drag the item from the list or grid into a team member bucket:
For details on managing a team's backlog, see Manage the team backlog. For details on the team planning buckets, see Team planning buckets.
Implementation
After you decide what to deliver, you must develop the assigned features and stories. In ALM Octane you use this process:
Move backlog items through the workflow
While working, update the phase of the backlog item:
Updating the item's phase ensures you have an accurate reflection of progress.
For details on workflow phases, see Advance the phase of an item
When working on a backlog item, it is helpful to break down the item into manageable tasks. To do that, ALM Octane provides a task list and task board to manage tasks:
-
In the Tasks tab inside a backlog item
-
From the Tasks tab of the Team Backlog module.
-
Add tasks when you create a backlog item in the Add dialog
For details on managing tasks, see Work on your stories.
Track individual progress to make sure everyone is progressing according to plan:
-
In the Epics or Features tab of the Backlog module, view the Progress column of the grid
-
In the Team Backlog module, view the Team Progress graph or individual team member bucket.
-
Create custom graphs in the Dashboard module.
For details on tracking release progress, see Analyze release progress and quality. For details on the Dashboard, see ALM Octane dashboard.
Check overall release progress for each team and its team members.
Add widgets to the Dashboard, such as the Stories Cumulative Flow graph, Burn Up and Burn Down widgets, and so on.
Later in the release, add the Release Forecast widget to the Dashboard to see how ALM Octane predicts you will finish the planned Backlog items.
Testing and verification
To deliver high-quality features, you must test delivered content. In ALM Octane there are many ways to ensure you perform adequate testing:
For each backlog item (including epics and features), add tests.
For details on adding tests, see Create manual tests or Create Gherkin tests.
Run tests in many ways:
-
Manually run a test
-
Schedule (plan) a test run or test suite run
-
Add the tests as build steps in your CI server and run the tests as part of a regular build process
For details on running tests, see Run manual and Gherkin tests and Run automated tests from ALM Octane.
After running a test, view the test results.
For manual and Gherkin tests or automated tests included in a pipeline, ALM Octane Help displays the test results in the test run.
For tests run outside ALM Octane upload test results to ALM Octane. Once the test results are available, view the results directly inside the ALM Octane test.
For details, see End the run and view its results, Send automated test run results to ALM Octane, or Analyze automated test run results.
If you find issues or errors in your application, open defects to resolve these issues. This lets you use the errors and issues to improve the development quality. Furthermore, add the defects to the Backlog to include the defect in release planning.
Open defects from:
-
The Backlog module
-
The Defects module
-
The test details, as part of the test run
For details on adding defects, see Report and track product defects or Report defects during a run.
As you develop, check the application's quality. This information is displayed according to test results and defects.
Use the ALM Octane widgets to view this information in:
-
The Overview tab of the Backlog module
-
The Overview tab of the Quality module
-
The Dashboard
Analyze the quality of the current release. Filter the widgets in the Overview tab of the Backlog and Quality modules by release.
For details on configuring dashboard widgets, see ALM Octane dashboard.
Release maintenance
After you decide you have completed all assigned backlog items, you are ready to release the application to customers.
After a release, it is common to continue maintenance of released versions. To assist, ALM Octane lets you:
-
Run tests against any version of your application
-
Create a pipeline for previous versions which enable you to build and test fixes of that version. For details on pipelines, see CI Pipelines
-
Create dashboard widgets for past releases of the product to see the quality of that release.