A method to upgrade a plurality of Physical Network Functions, PNFs, with a single procedure, the method comprising: selecting, using a Virtual Infrastructure Deployment, VID, application, a PNF group name of PNFs to be upgraded; identifying, by an Open Networking Automation Platform, ONAP, Service Orchestrator, SO, (108, 208) an appropriate ONAP controller (112, 212) and verifying and querying an Active and Available Inventory, A&AI, (110, 210) for the appropriate PNF entities for the selected PNF group name to be upgraded; obtaining, by the ONAP SO from the A&AI, a PNF name list of PNFs associated with the ONAP controller; informing, by the ONAP SO, the ONAP controller with the PNF name list and a list of associated External Controllers, ECs; and performing (5, 6, 7, 8) a software upgrade to each of the PNFs on the PNF name list within the network element group by: - performing a software upgrade pre-check on each of the PNFs on the PNF name list before the software upgrade, wherein the pre-check includes checking any required and/or associated rule and collection of necessary data for pre-checking; - after the pre-check is accepted, performing, by the ONAP controller, the software upgrade on each associated PNF; and - performing (7, 8) a software upgrade post-check on each of the PNFs on the PNF name list after the software upgrade, wherein the post-check includes checking any required and/or associated rule and collection of necessary data for post-checking. selecting, using a Virtual Infrastructure Deployment, VID, application, a PNF group name of PNFs to be upgraded; identifying, by an Open Networking Automation Platform, ONAP, Service Orchestrator, SO, (108, 208) an appropriate ONAP controller (112, 212) and verifying and querying an Active and Available Inventory, A&AI, (110, 210) for the appropriate PNF entities for the selected PNF group name to be upgraded; obtaining, by the ONAP SO from the A&AI, a PNF name list of PNFs associated with the ONAP controller; informing, by the ONAP SO, the ONAP controller with the PNF name list and a list of associated External Controllers, ECs; and performing (5, 6, 7, 8) a software upgrade to each of the PNFs on the PNF name list within the network element group by: - performing a software upgrade pre-check on each of the PNFs on the PNF name list before the software upgrade, wherein the pre-check includes checking any required and/or associated rule and collection of necessary data for pre-checking; - after the pre-check is accepted, performing, by the ONAP controller, the software upgrade on each associated PNF; and - performing (7, 8) a software upgrade post-check on each of the PNFs on the PNF name list after the software upgrade, wherein the post-check includes checking any required and/or associated rule and collection of necessary data for post-checking. - performing a software upgrade pre-check on each of the PNFs on the PNF name list before the software upgrade, wherein the pre-check includes checking any required and/or associated rule and collection of necessary data for pre-checking; - after the pre-check is accepted, performing, by the ONAP controller, the software upgrade on each associated PNF; and - performing (7, 8) a software upgrade post-check on each of the PNFs on the PNF name list after the software upgrade, wherein the post-check includes checking any required and/or associated rule and collection of necessary data for post-checking.