Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
moritzgysler
Advisor
Advisor
This blog post will help you to understand the new business object "Feature" in SAP Cloud ALM in order to deploy changes.

  • What is a Feature?

  • Which SAP solutions are covered by Features?

  • How to handle Features?

  • Wrap-Up & Next Steps


What is a Feature?


A Feature is a vehicle to deploy your changes throughout your system landscape. A Feature holds the landscape information, the container for the transportable objects and your technical change documentation.

Which SAP solutions are covered by Features?


SAP Cloud ALM can be connected to:

  • Change & Transport System (CTS), hence deployment management for SAP S/4HANA Cloud, private edition, and SAP NetWeaver Application Server for ABAP on-premise is covered by Features.

  • SAP Cloud Transport Management Service (CTMS), hence deployment management for SAP BTP, Cloud Foundry and Neo environment as well as for SAP Integration Suite - Cloud Integration and API Management is covered by Features. (More under Supported Content Types)

  • SAP S/4HANA Cloud with Adaptation Transport Organizer (ATO).


Further information about enabling transport management can be found here and in these blog posts:


Please note that your managed systems for the CTS integration need to fulfill the following prerequisites:

  • SAP_BASIS 7.40 SP20 or higher (accordingly 7.50 SP04)


 


Note

It's recommended to use SP23.




 

Note: Please make sure that your TMS is configured properly. We recommend client-specific configuration of transport routes with TMS parameter CTC = 1.



How to handle Features?


For properly specified Features you can start the implementation to change software or configurations in the development environment. In order to provide the changes in the test environment for proper testing (test integration for Features not yet available) the changes can be deployed via the Features to the quality assurance system. Afterwards Features can be approved for deployment to the production system. By deploying the Features to the production system you are completing the implementation of your changes.


All changes to a Feature are captured in the history in order to provide transparency and preserve traceability.


Nice to know:

  • Transports that are assigned to a feature that weren't imported to one or more quality assurance systems yet will be deployed there first. Then, they will be deployed to the productive system as a package.

  • All transports assigned to a Feature will be deployed with import option "Import Transport Request Again".


++Update - December 20, 2023++ 

  • Navigate to SE01 for CTS managed transport requests to add tasks for new users, release tasks, check for the transport and task status and of course the transport logs.

    • Before you can start using the navigation to managed systems by using the transport id, make sure that you have implemented 517484  and that you've configured the start authorization according the following notes: 1413011  and /or 3064888  respectively.

      Additionally, before you can use this functionality, the CTS_Organizer service has to be active.






 

++Update - October 19, 2023++ 

  • Restrict the list of CTS-managed transports to be assigned to features by adding the export client as development system to the system groups of a project.





  • Transports deleted on the managed system manually will be deleted from SAP Cloud ALM during the release of transports.

    • If a transport is still assigned to a feature but not existing on the managed system anymore you can release the transports.

    • This will trigger a check whether all transports to be released still exist in the managed system. The ones not existing anymore will be removed from the feature and deleted on SAP Cloud ALM end.





++Update - September 21, 2023++ 

  • Creating transports for SAP S/4HANA on-premise, SAP S/4HANA Cloud, private edition, and SAP NetWeaver Application Server for ABAP systems on-premise gets more convenient.

    • By default both transport types (Customizing and Workbench) are selected for creation. Since empty transports are deleted during release, you don't have to bother about clean-up.

    • Default transport title is a combination of the Feature ID and the title. This leads to more transparency.








 ++Update - July 13, 2023++ 


Create ToC



Select transport requests




  • An icon next to the transport requests indicates the created ToC. By clicking the icon a popover show further information about the latest released ToC.



ToC information


++Update - May 17, 2023++ 

  • It is possible to set the status of a Feature back to "In Implementation" from the following statuses:

    • "In Testing"

    • "Ready for Production"





Set to "In Implementation"




  • This helps you to organize your process by allowing creation and assigning of transports in status "In Implementation" only.


++Update - May 4, 2023++ 

  • Add Transport References to manually document external transports without a direct deployment integration with SAP Cloud ALM, e.g. Configuration Bundles in SAP SuccessFactors.

    • In Edit mode of a Feature you can add a Transport Reference with an ID, a Title and a URL (only ID is mandatory):





Add Transport Reference



Enter ID, Title and URL






    • After Save & Close the number of Transports overall is shown, in the table of the Transport References the new entry is available and it is showing up in the list of Features in the Transports column:





Transport Reference assigned






    • By clicking the ID you can navigate, e.g. to the Configuration Center of SAP SuccessFactors to check out the Configuration Bundles easily:





Configuration Center


 

++Update - April 17, 2023++ 


Create transport



Create dialog


++Update - February 22, 2023++ 

  • Assigning a responsible to your Feature is supports you in organizing your change process.



Assign responsible


++Update - January 25, 2023++ 

  • Today we delivered the Deployment Status in the Feature Traceability. Easily figure out in which stage the transports assigned to a Feature are deployed.

    • The Deployment Status provides an aggregated overview based on the Feature:





Deployment Status in Feature Traceability






    • By clicking on the respective icon you get the detailed information per system role:





Deployment details in popover






    • Filter per deployment status to simply figure out the relevant Features:





Filter for Deployment Status




  • Now you can use Tags to categorize your Features.

    • In Edit mode you can assign or create Tags in the Additional Information section:





Tags in Additional Information






    • Filter for Tags in the Features Overview easily:





Filter for Tags


++Update - January 12, 2023++

  • To avoid confusion the status "Ready for Deployment" was renamed to "Ready for Production".

    • After the testing is completed successfully the feature can be approved for production:





Approve for Production






    • The status of the feature is now "Ready for Production":





Ready for Production


++Update - December 15, 2022++

  • New status value "In Testing" was introduced for features.

    • After you have deployed the feature to the test stage you can hand the feature over to "In Testing" from status "In Implementation".





Handover to Test






    • After the successful test you can approve the feature for the production deployment.





Status In Testing




  • Assign corresponding user stories to a feature easily. In the assign dialog you can simply select user stories related to the same requirement as the feature.



Assign user stories related to same requirement






    • Switching to "All" via the segmented button provides you the list of all user stories available for assignment.





Assign user stories switched to All


++Update - December 4, 2022++

  • It is possible to assign requirements to a feature from now on. Switch to Edit mode, select a requirement in the Additional Information section and save.



Assign requirement



Select requirement


++Update - November 23, 2022++

  • To assign a transport or a user story to a feature you must switch to Edit mode from now on.



Switch to Edit mode



Assign in Edit mode


++Update - September 28, 2022++

  • Now it is possible to deploy several features to production at once. Only for features in status "Ready for Deployment" for which all assigned transports are ready to be deployed to production.

    • In the Features Overview you can filter for "Release" and the status "Ready for Deployment". By selecting several features the "Deploy" button is enabled.





Selection for deploy to production



Note: In case one of the selected features is not in status "Ready for Deployment" the "Deploy" button stays disabled.




    • In the confirmation popup you get another information about the number of selected features for deployment to production.





Confirm deployment



Note: By using select all in the Features Overview you select all features matching the filter criteria and not only the ones shown on the screen due to lazy loading.




    • In case the check whether all transports assigned to the selected features are ready to be deployed to production fails, an error message is showing up.





Deployment error






    • A simple message toast is indicating that the deployment for the selected features was scheduled successfully.





Deployment scheduled message toast



Note: All ABAP based transports will be imported as subset. The CTMS transports will be deployed in the sequence of the transport node's import queue.


  • Now you can check the respective deployment status per feature.


++Update - August 10, 2022++

  • Assign and unassign user stories to and from features. You can only assign user stories which are not yet assigned to any other feature.

    • The Assign button is available in display mode and user stories can be assigned in all feature statuses other than "Not Planned" and "Deployed".





Assign user stories






    • You can assign several user stories at once.





Assign User Stories popup






    • Unassigning user stories is possible in all statuses of a feature.





Unassign user stories


 

  • The Cloud Transport Management tile is available in the SAP Cloud ALM for Implementation section of the launchpad.



Cloud Transport Management tile




  • You can now release CTS transports in status Modifiable.



Prerequisites:




To enable the release of transports within an SAP Cloud ALM feature, you have to execute the Configuration of Client Dependent Use Cases in each development client you are using.






    • To schedule the release of all transports assigned to a feature you can click the Release button. In this example there is only one modifiable transport in client O11-200 assigned to the feature.





Release transport






    • Confirm the release for all transports assigned to the feature in status "Modifiable".





Confirmation popup for release






    • The Transport status switches to "Release scheduled in <system>".





Status Release scheduled






    • After the batch job in the managed client picked up the transport to be released the status switch to "Released" will be pushed to the feature.





Status Released



Note: If the release of a transport is not possible - most likely due to modifiable transport tasks - the status of the transport will stay "Modifiable".

++Update - July 27, 2022++

  • Feature support of deployment for TMS transport target groups and multiple targets for Cloud Transport Management Service (CTMS) is available now.



Prerequisites:








      • Install ST-PI 7.40 SP18 or higher.

      • Implement the notes 3221589 and 3201146. Implementing note 3221589 starts the implementation of note 3201146.









    • For TMS transport target groups the successor clients will be resolved within a feature.





Deployment status per client in target group






    • For CTMS the deployment status is shown per target node.





Deployment status per transport node in CTMS


Check the blog post How to handle transport target groups in SAP Cloud ALM for further information.

++Update - June 1, 2022++

  • Releases can be assigned to features from now on.

    • You have to define your deployment plan first and assign it to the corresponding implementation project (if not yet done).





Deployment Plan definition



Deployment Plan to Project






    • Now you can assign the respective releases to features in order to indicate the intended release to production.





Assign Release to feature






    • In the feature overview you can easily filter for the features per release.





Feature overview by Release


++Update - May 13, 2022++

++Update - April 7, 2022++

  • You can find your transports in the feature overview now by using the search field.



Search for transports in overview




  • Filter for features with no transports assigned yet.



Features with no transports assigned


++Update - February 24, 2022++

  • You are able to create a feature from within a requirement. This direct relation is shown in the Requirement Traceability as well.



Create feature from requirement




  • By assigning your production system to the production role in the Project Landscape you can enable a check for the deployment of transports to production. As soon as one target tenant in the Transports section of a feature is flagged as production system you have to make sure that the feature is in status "Ready for Deployment" before triggering the deployment to production.




Deploy to production in status In Implementation



Deploy to production in status Ready for Deployment




  • A failed transport can be set to "Repaired" in the transport section to indicate that you have fixed the error manually. As long as a transport is in status "Failed in <SID>~<CLNT>" the deployment to the next target tenant is not possible.



Set Status to Repaired


++Update - November 5, 2021++

  • Now it is possible to create user stories or project tasks from within a feature to track the implementation easily. The user stories and project tasks are linked to the feature and can be processed in the task list. 


Nice to know:




    • The excel export of the feature list contains the transport IDs. That's an easy option to find out in which feature a certain transport is included.




Wrap-Up & Next Steps


The Feature can be used as vehicle for deployment and serves as your fast track to production. Together with the technical documentation and the change history you can preserve the full traceability.

In future the concept of the Feature will serve different ways of working and via relating it to the known items like requirements and user stories you are always able to jump on the Change & Deployment train in SAP Cloud ALM. In addition it gets clear that we distinguish between the business view with requirement as well as the work instructions on user story level and the technical view with the Feature as the technical change document holding all the information needed to do your job as a change & release manager.

Looking forward to receiving feedback. For latest updates and notifications you can follow me by clicking mgysler.
13 Comments