Method and system for software upgrade management

EP4743876A1Pending Publication Date: 2026-05-20JIO PLATFORMS LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
JIO PLATFORMS LTD
Filing Date
2024-07-09
Publication Date
2026-05-20

AI Technical Summary

Technical Problem

Existing software upgrade management solutions are time-consuming and labor-intensive, requiring manual intervention and separate login sessions for each node, making them inefficient for managing software upgrades across multiple nodes.

Method used

A method and system for software upgrade management that involves a transceiver unit, local, global, zonal modules, and a nodes-manager, which schedules and performs software upgrades based on predefined start and end times, checks pre-conditions, and shares real-time updates, reducing the need for manual intervention.

Benefits of technology

The system enables efficient and automated software upgrade management, reducing time and labor costs, allowing for simultaneous management and tracking of upgrades across multiple nodes, and ensuring that upgrades are performed only when conditions are favorable.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IN2024051129_16012025_PF_FP_ABST
    Figure IN2024051129_16012025_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to a method and a system for software upgrade management The present disclosure encompasses: receiving, by a transceiver unit [302] via a local module [102], an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node; sending, by the local module [102] to a global module [104], the upgrade request; scheduling, by the global module [104], the software upgrade procedure; receiving, by a corresponding zonal module [106], the upgrade request; checking, by the corresponding zonal module [106], one or more pre-conditions; generating one of a positive outcome and a negative outcome based on the one or more pre-conditions; sending, by the corresponding zonal module [106], the upgrade request to a nodes-manager [108], if the positive outcome is generated; performing, by the nodes-manager [108], the software upgrade procedure; and sharing one or more real time updates.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND SYSTEM FOR SOFTWARE UPGRADE MANAGEMENTFIELD OF INVENTION

[0001] Embodiments of the present disclosure generally relate to software upgrade management. More particularly, embodiments of the present disclosure relate to methods and systems for software upgrade management at different levels such as global, zonal, and local levels.BACKGROUND

[0002] The following description of the related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section is used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of the prior art.

[0003] Wireless communication technology has rapidly evolved over the past few decades, with each generation bringing significant improvements and advancements. The first generation of wireless communication technology was based on analog technology and offered only voice services. However, with the advent of the second generation (2G) technology, digital communication and data services became possible, and text messaging was introduced. The third generation (3G) technology marked the introduction of high-speed internet access, mobile video calling, and location-based services. The fourth generation (4G) technology revolutionized wireless communication with faster data speeds, better network coverage, and improved security. Currently, the fifth generation (5G) technology is being deployed, promising even faster data speeds, low latency, and the ability to connect multiple devices simultaneously. With each generation, wireless communication technology has become more advanced, sophisticated, and capable of delivering more services to its users.

[0004] A node that is installed in a network is associated with a software. The software may have to be updated regularly. For each node, the installed software may have to be updated / upgraded. Since there may be a large number of nodes installed across a region, the number of software upgrades / updates required to be installed is also high.

[0005] In the existing solutions, the software is upgraded manually, which requires human intervention of performing manual login at each node and triggering a software upgrade manually by the user. Also, in the existing solutions, the user has to separately login into each node for taking an update of the software upgrade process, such as to check whether the software has been upgraded successfully or not. This is a time consuming and labor-intensive process.

[0006] Further, over the period of time various solutions have been developed to improve the performance of communication devices and to perform software upgrade management. However, there are certain challenges with existing solutions. The existing solutions are extremely time consuming and labor-intensive.

[0007] Thus, there exists an imperative need in the art to provide a system and a method for software upgrade management which is less time consuming, easy to manage, and less labour intensive, which the present disclosure aims to address.SUMMARY

[0008] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.

[0009] An aspect of the present disclosure may relate to a method for software upgrade management. The method comprises receiving, by a transceiver unit via a local module, an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node. The method further comprises sending, by the local module to a global module, the upgrade request. The method further comprises scheduling, by the global module, the software upgrade procedure based on the start time and the end time. The method further comprises receiving, by a corresponding zonal module, the upgrade request, wherein the corresponding zonal module is associated with the network node. The method further comprises checking, by the corresponding zonal module, one or more pre-conditions for performing the software upgrade procedure of the network node. The method further comprises generating, by the corresponding zonal module, one of a positive outcome and a negative outcome based on the checking of the one or more preconditions. The method further comprises sending, by the corresponding zonal module, the upgrade request to a nodes-manager, in an event the positive outcome is generated. The method further comprises performing, by the nodes-manager, the software upgrade procedure at thenetwork node. The method further comprises sharing, by the nodes-manager with the global module via the corresponding zonal module, one or more real time updates related to the software upgrade procedure at the network node.

[0010] In an exemplary aspect of the present disclosure, the upgrade request further comprises a set of details for performing the software upgrade procedure, the set of details comprises at least one of: an information related to alarms; an input data related to software upgrade; and a set of other details comprising one or more of a profile name information, a circle information, a node type information, a node selection information, a binary profile information, and an exception alarms information.

[0011] In another exemplary aspect of the present disclosure, the upgrade request is received by the corresponding zonal module at the start time.

[0012] In another exemplary aspect of the present disclosure, in an event the negative outcome is generated based on the checking of the one or more pre-conditions, the method comprises aborting, by the corresponding zonal module, the software upgrade procedure. The method further comprises storing, by the corresponding zonal module at a storage unit, a ‘failure’ status, and a reason for ‘failure’ status.

[0013] In an exemplary aspect of the present disclosure, the method further comprises checking, by the corresponding zonal module, one or more post-conditions related to performing software upgrade procedure based on a set of key performance indicators (KPIs).

[0014] Another aspect of the present disclosure may relate to a system for software upgrade management. The system comprises a transceiver unit, a local module, a global module, a zonal module, and a nodes-manager connected to each other either directly or indirectly. The transceiver unit is configured to receive, via the local module, an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node. The local module is configured to send, to a global module, the upgrade request. The global module is configured to schedule the software upgrade procedure based on the start time and the end time. The corresponding zonal module is configured to receive the upgrade request, wherein the corresponding zonal module is associated with the network node. The corresponding zonal module is further configured to check one or more pre-conditions for performing the software upgrade procedure of the network node. The corresponding zonal module is further configured to generateone of a positive outcome and a negative outcome based on the checking of the one or more preconditions. The corresponding zonal module is further configured to send the upgrade request to the nodes-manager, in an event the positive outcome is generated. The nodes-manager is configured to perform the software upgrade procedure at the network node. The nodes-manager is further configured to share, via the corresponding zonal module with the global module, one or more real time updates related to the software upgrade procedure at the network node.

[0015] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing one or more instructions for software upgrade management, the one or more instructions include executable code which, when executed by one or more units of a system, causes the one or more units to perform certain functions. The one or more instructions when executed causes a transceiver unit of the system to receive an upgrade request, via a local module, having a start time and an end time to perform a software upgrade procedure of a network node. The one or more instructions when executed further causes the local module of the system to send to a global module, the upgrade request. The one or more instructions when executed further causes the global module of the system to schedule the software upgrade procedure based on the start time and the end time. The one or more instructions when executed further causes a corresponding zonal module of the system to receive the upgrade request, wherein the corresponding zonal module is associated with the network node. The one or more instructions when executed further causes the corresponding zonal module of the system to check one or more pre-conditions for performing the software upgrade procedure of the network node. The one or more instructions when executed further causes the corresponding zonal module of the system to generate one of a positive outcome and a negative outcome based on the checking of the one or more pre-conditions. The one or more instructions when executed further causes the corresponding zonal module of the system to send the upgrade request to a nodes-manager, in an event the positive outcome is generated. The one or more instructions when executed further causes the nodes- manager of the system to perform the software upgrade procedure at the network node. The one or more instructions when executed further causes the nodes-manager of the system to share with the global module via the corresponding zonal module, one or more real time updates related to the software upgrade procedure at the network node.OBJECTS OF THE DISCLOSURE

[0016] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.

[0017] It is an object of the present disclosure to provide a system and a method for software upgrade management.

[0018] It is an object of the present disclosure to provide a system and a method for software upgrade management which provides a single window for managing and tracking software upgrades in several nodes simultaneously.

[0019] It is another object of the present disclosure to provide a solution for software upgrade management that makes easy to manage software upgrades for each node in a region.

[0020] It is yet another object of the present disclosure to provide a solution for software upgrade management that is less time consuming and less labour intensive.DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Also, the embodiments shown in the figures are not to be construed as limiting the disclosure, but the possible variants of the method and system according to the disclosure are illustrated herein to highlight the advantages of the disclosure. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components.

[0022] FIG. 1 illustrates an exemplary block diagram representation of a system architecture.

[0023] FIG. 2 illustrates an exemplary block diagram of a computing device upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure.

[0024] FIG. 3 illustrates an exemplary block diagram of a system for software upgrade management, in accordance with exemplary implementations of the present disclosure.

[0025] FIG. 4 illustrates a method flow diagram for software upgrade management in accordance with exemplary implementations of the present disclosure.

[0026] The foregoing shall be more apparent from the following more detailed description of the disclosure.DETAILED DESCRIPTION

[0027] In the following description, for the purposes of explanation, various specific details are set forth in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Several features described hereafter may each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above.

[0028] The ensuing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.

[0029] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail.

[0030] Also, it is noted that individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations may be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional steps not included in a figure.

[0031] The word “exemplary” and / or “demonstrative” is used herein to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and / or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive — in a manner similar to the term “comprising” as an open transition word — without precluding any additional or other elements.

[0032] As used herein, a “processing unit” or “processor” or “operating processor” includes one or more processors, wherein processor refers to any logic circuitry for processing instructions. A processor may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a Digital Signal Processing (DSP) core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input / output processing, and / or any other functionality that enables the working of the system according to the present disclosure. More specifically, the processor or processing unit is a hardware processor.

[0033] As used herein, “a user equipment”, “a user device”, “a smart-user-device”, “a smartdevice”, “an electronic device”, “a mobile device”, “a handheld device”, “a wireless communication device”, “a mobile communication device”, “a communication device” may be any electrical, electronic, and / or computing device or equipment, capable of implementing the features of the present disclosure. The user equipment / device may include, but is not limited to, a mobile phone, smart phone, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, wearable device or any other computing device which is capable of implementing the features of the present disclosure. Also, the user device may contain at least one input means configured to receive an input from unit(s) which are required to implement the features of the present disclosure.

[0034] As used herein, “storage unit” or “memory unit” refers to a machine or computer-readable medium including any mechanism for storing information in a form readable by a computer or similar machine. For example, a computer-readable medium includes read-only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media,flash memory devices or other types of machine-accessible storage media. The storage unit stores at least the data that may be required by one or more units of the system to perform their respective functions.

[0035] As used herein “interface” or “user interface refers to a shared boundary across which two or more separate components of a system exchange information or data. The interface may also be referred to a set of rules or protocols that define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.

[0036] All modules, units, components used herein, unless explicitly excluded herein, may be software modules or hardware processors, the processors being a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASIC), Field Programmable Gate Array circuits (FPGA), any other type of integrated circuits, etc.

[0037] As used herein the transceiver unit include at least one receiver and at least one transmitter configured respectively for receiving and transmitting data, signals, information, or a combination thereof between units / components within the system and / or connected with the system.

[0038] As discussed in the background section, the current known solutions have several shortcomings. The present disclosure aims to overcome the above-mentioned and other existing problems in this field of technology by providing a method and a system of software upgrade management.

[0039] FIG. 1 illustrates an exemplary block diagram representation of a system architecture

[0100] , in accordance with exemplary implementation of the present disclosure. As shown in FIG. 1, a local module

[0102] is connected with a global module

[0104] , and the local module

[0102] and the global module

[0104] communicate with each other. Further, the global module

[0104] is connected with a zonal module

[0106] and the global module

[0104] and the zonal module

[0106] also communicate with each other. The zonal module

[0106] is connected with a nodes manager

[0108] and the zonal module

[0106] and the nodes manager

[0108] also communicate with each other.

[0040] In order to perform a software upgrade, the entities involved includes the local module

[0102] , the global module

[0104] , the zonal module

[0106] , and the nodes-manager

[0108] ,

[0041] The local module

[0102] may refer to a user interface of a self-organising network (SON) within a telecommunication network. The global module

[0104] may refer to a global selforganising network (SON) used within the telecommunication network. The corresponding zonal module

[0106] may refer to a corresponding zonal self-organizing network (SON) within the telecommunication network. The nodes-manager

[0108] may refer to a component which manages one or more network nodes within the telecommunication network.

[0042] FIG. 2 illustrates an exemplary block diagram of a computing device

[0200] upon which the features of the present disclosure may be implemented in accordance with exemplary implementation of the present disclosure. In an implementation, the computing device

[0200] may also implement a method for software upgrade management utilising the system

[0300] , In another implementation, the computing device

[0200] itself implements the method for software upgrade management using one or more units configured within the computing device

[0200] , wherein said one or more units are capable of implementing the features as disclosed in the present disclosure.

[0043] The computing device

[0200] may include a bus

[0202] or other communication mechanism for communicating information, and a hardware processor

[0204] coupled with bus

[0202] for processing information. The hardware processor

[0204] may be, for example, a general-purpose microprocessor. The computing device

[0200] may also include a main memory

[0206] , such as a random-access memory (RAM), or other dynamic storage device, coupled to the bus

[0202] for storing information and instructions to be executed by the processor

[0204] , The main memory

[0206] also may be used for storing temporary variables or other intermediate information during execution of the instructions to be executed by the processor

[0204] , Such instructions, when stored in non-transitory storage media accessible to the processor

[0204] , render the computing device

[0200] into a special-purpose machine that is customized to perform the operations specified in the instructions. The computing device

[0200] further includes a read only memory (ROM)

[0208] or other static storage device coupled to the bus

[0202] for storing static information and instructions for the processor

[0204] ,

[0044] A storage device

[0210] , such as a magnetic disk, optical disk, or solid-state drive is provided and coupled to the bus

[0202] for storing information and instructions. The computing device

[0200] may be coupled via the bus

[0202] to a display

[0212] , such as a cathode ray tube (CRT), Liquidcrystal Display (LCD), Light Emitting Diode (LED) display, Organic LED (OLED) display, etc. for displaying information to a computer user. An input device

[0214] , including alphanumeric and other keys, touch screen input means, etc. may be coupled to the bus

[0202] for communicating information and command selections to the processor

[0204] , Another type of user input device may be a cursor controller

[0216] , such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor

[0204] , and for controlling cursor movement on the display

[0212] , The input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow the device to specify positions in a plane.

[0045] The computing device

[0200] may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware, and / or program logic which in combination with the computing device

[0200] causes or programs the computing device

[0200] to be a special-purpose machine. According to one implementation, the techniques herein are performed by the computing device

[0200] in response to the processor

[0204] executing one or more sequences of one or more instructions contained in the main memory

[0206] , Such instructions may be read into the main memory

[0206] from another storage medium, such as the storage device

[0210] , Execution of the sequences of instructions contained in the main memory

[0206] causes the processor

[0204] to perform the process steps described herein. In alternative implementations of the present disclosure, hard-wired circuitry may be used in place of or in combination with software instructions.

[0046] The computing device

[0200] also may include a communication interface

[0218] coupled to the bus

[0202] , The communication interface

[0218] provides a two-way data communication coupling to a network link

[0220] that is connected to a local network

[0222] , For example, the communication interface

[0218] may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, the communication interface

[0218] may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, the communication interface

[0218] sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.

[0047] The computing device

[0200] can send messages and receive data, including program code, through the network(s), the network link

[0220] and the communication interface

[0218] , In theInternet example, a server

[0230] might transmit a requested code for an application program through the Internet

[0228] , the ISP

[0226] , the local network

[0222] , a host

[0224] and the communication interface

[0218] , The received code may be executed by the processor

[0204] as it is received, and / or stored in the storage device

[0210] , or other non-volatile storage for later execution.

[0048] Referring to FIG. 3, an exemplary block diagram of a system

[0300] for software upgrade management, is shown, in accordance with the exemplary implementations of the present disclosure. The system

[0300] comprises at least one transceiver unit

[0302] , at least one local module

[0102] , at least one global module

[0104] , at least one zonal module

[0106] , and at least one nodes- manager

[0108] , Also, all of the components / units of the system

[0300] are assumed to be connected to each other unless otherwise indicated below. As shown in the figures all units shown within the system

[0300] should also be assumed to be connected to each other. Also, in FIG. 3 only a few units are shown, however, the system

[0300] may comprise multiple such units or the system

[0300] may comprise any such numbers of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system

[0300] may be present in a user device / user equipment to implement the features of the present disclosure. The system

[0300] may be a part of the user device / or may be independent of but in communication with the user device (may also referred herein as a UE). In another implementation, the system

[0300] may reside in a server or a network entity. In yet another implementation, the system

[0300] may reside partly in the server / network entity and partly in the user device.

[0049] The system

[0300] is configured for software upgrade management, with the help of the interconnection between the components / units of the system

[0300] ,

[0050] Initially, the transceiver unit

[0302] is configured to receive, via a local module

[0102] , an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node. The upgrade request may refer to an upgrade of one or more software used by the network node. The start time refers to a time at which the software upgrade is required to be started. The end time refers to a time at which the software upgrade is required to be ended. The start time and the end time may also be associated with a maintenance period for the network node within which the software upgrade procedure is required to be performed among other maintenance tasks. The software upgrade procedure is the upgradation of the one or more software(s) for the network node. The network node may refer to one or more components within the telecommunication network. For example, the one or more components may be the base stations of the telecommunication network.

[0051] The present disclosure further discloses that the upgrade request also comprises a set of details for performing a software upgrade procedure. The set of details comprises at least one of: an information related to alarms; an input data related to software upgrade; and a set of other details comprising one or more of a profile name information, a circle information, a node type information, a node selection information, a binary profile information, and an exception alarms information.

[0052] The information related to alarms, and the exception alarm information may refer to an information associated with pre-checks. The input data related to software upgrade comprises, but not limited to, information associated with a software package to be installed as a part of the software upgrade procedure. The information associated with pre-checks helps in taking decisions regarding whether the software upgrade procedure should be initiated or not. For example, in case the information associated with the pre-checks shows that an alarm is raised, say for communication failure or that the disk storage is full, then in that case initiating of the software upgrade procedure would be unsuccessful. The set of other details and the one or more profile name information may relate to a unique name that may be given for a software upgrade profile. The circle information may be name of circle in which the network node (base station) is deployed. The node type information represents a type of network node or a type of base station. For example, the node type information may be an outdoor small cell, or an indoor small cell, or a macro cell, etc. The binary profile information may refer to an information through which the software upgrade is downloaded. In an example, the binary profile information may comprise information such as a secure file transfer protocol (SFTP) server address, one or more credentials, and a path of binary profile.

[0053] After receiving the upgrade request by the transceiver unit

[0302] via the local module

[0102] , thereafter the local module

[0102] is configured to send, to a global module

[0104] , the upgrade request. The upgrade request is a request for upgrading the software of the network node.

[0054] After the local module

[0102] sends the upgrade request to the global module

[0104] , then the global module

[0104] is configured to schedule the software upgrade procedure based on the start time and the end time. The software upgrade procedure is required to be performed within the start time and the end time.

[0055] The corresponding zonal module

[0106] is configured to receive the upgrade request, wherein the corresponding zonal module

[0106] is associated with the network node.

[0056] The corresponding zonal module

[0106] is configured to check one or more pre-conditions for performing the software upgrade procedure of the network node. The one or more preconditions may be defined by a network operator or a service provider for the telecommunication network which may also be exception alarms that specifies for what conditions the software upgrade procedure should not be proceeded with. The one or more pre-conditions, for example, may be checking whether an alarm for communication failure has been raised, or whether the disk storage is full. The one or more pre-conditions, then checks if the issues still persists then the software upgrade procedure should be aborted.

[0057] The corresponding zonal module

[0106] is configured to generate one of a positive outcome and a negative outcome based on the checking of the one or more pre-conditions. The positive outcome refers to an outcome for which the software upgrade procedure can be performed. The negative outcome refers to an outcome for which the software upgrade procedure cannot be performed. For example, in case the alarm for communication failure has raised, or that the disk storage is full is raised, then in that case, this would lead to a negative outcome of the one or more pre-conditions, since the software upgrade procedure would have to be aborted in such case. Further, in case any of the alarm has not been raised, such as there is no alarm for communication failure or no that there exists space in the disk storage then that would be a positive outcome of such one or more pre-conditions.

[0058] The corresponding zonal module

[0106] is configured to send the upgrade request to a nodes-manager

[0108] , in an event the positive outcome is generated. The node-manager

[0108] is responsible for software upgrade of the network node.

[0059] The nodes-manager

[0108] is configured to perform the software upgrade procedure at the network node. The node-manager

[0108] may directly perform the software upgrade of the network node, or may also send the network node, a request for performing software upgrade. The nodemanager

[0108] communicates with the network nodes in real-time and gathers one or more real time updates. The one or more real time updates may refer to a status of the software upgrade of the network node in real time. The node-manager

[0108] shares the one or more real time updates with the corresponding zonal module for updating the status of the software upgrade.

[0060] The nodes-manager

[0108] is configured to share, via the corresponding zonal module

[0106] with the global module

[0104] , one or more real time updates related to the software upgrade procedure at the network node. The corresponding zonal module

[0106] sends the one or more real time updates received from the node-manager

[0108] to the global module

[0104] for sharing the status updates for software upgrade procedure in real time.

[0061] The present disclosure further discloses that the corresponding zonal module

[0106] is further configured to receive the upgrade request, at the start time.

[0062] The present disclosure further discloses that in an event the negative outcome is generated based on the checking of the one or more pre-conditions, the corresponding zonal module

[0106] is configured to abort the software upgrade procedure. The corresponding zonal module

[0106] is further configured to store, at a storage unit, a ‘failure’ status, and a reason for ‘failure’ status. The event is the case of negative outcome. The failure status refers to a status that the software upgrade procedure was not successful. The reason for the failure status is the reason for which the software upgrade procedure was aborted. The reason may be based on the one or more pre-conditions.

[0063] The present subject matter further discloses that the corresponding zonal module

[0106] is further configured to check one or more post-conditions related to performing software upgrade procedure based on a set of key performance indicators (KPIs).

[0064] The one or more post-conditions may be a condition that is checked post software upgrade procedure. In an example, the one or more post-conditions may be checking a value of a key performance indicators (KPI) from a set of KPIs. If the KPI, say KPI NAME l and the value of the KPI NAME l is set as say 80, then in that case, post the software upgrade procedure, the value of the KPI NAME l is monitored for a predefined time period, say 3 days. If the value of the KPI NAME l is changed during the monitoring time period, i.e., if the value of the KPI NAME l is reduced, then in that case, it would be assumed that the software upgrade procedure was the issue causing degradation of the performance of the one or more network nodes. To correct the issue, a rollback procedure is performed for the software upgrade to minimize the negative impact on the performance of the one or more network nodes. The rollback procedure involves rollback of the software of the one or more network nodes to the previous version.

[0065] In an example, the set of KPIs may be a total cell availability time (TOTAL CELL AVA TIME), a RRC Connection Setup Success Rate, a data radio bearer (DRB) Establishment success Rate, and a Total Traffic, etc.

[0066] Referring to FIG. 4, an exemplary method flow diagram

[0400] for software upgrade management, in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method

[0400] is performed by the system

[0300] , Further, in an implementation, the system

[0300] may be present in a server device to implement the features of the present disclosure. Also, as shown in FIG. 4, the method

[0400] starts at step

[0402] ,

[0067] Initially, at step

[0404] , the method

[0400] comprises receiving, by a transceiver unit

[0302] via a local module

[0102] , an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node. The upgrade request may refer to an upgrade of one or more software used by the network node. The start time refers to a time at which the software upgrade is required to be started. The end time refers to a time at which the software upgrade is required to be ended. The start time and the end time may also be associated with a maintenance period for the network node within which the software upgrade procedure is required to be performed among other maintenance tasks. The software upgrade procedure is the upgradation of the one or more software(s) for the network node. The network node may refer to one or more components within the telecommunication network. For example, the one or more components may be the base stations of the telecommunication network.

[0068] The present disclosure further discloses that the upgrade request further comprises a set of details for performing the software upgrade procedure, the set of details comprises at least one of: an information related to alarms; an input data related to software upgrade; and a set of other details comprising one or more of a profile name information, a circle information, a node type information, a node selection information, a binary profile information, and an exception alarms information.

[0069] The information related to alarms, and the exception alarm information may refer to an information associated with pre-checks. The information associated with pre-checks helps in taking decisions regarding whether the software upgrade procedure should be initiated or not. For example, in case the information associated with the pre-checks shows that an alarm is raised, say for communication failure or that the disk storage is full, then in that case initiating of the software upgrade procedure would be unsuccessful. The set of other details and the one or more profilename information may relate to a unique name that may be given for a software upgrade profile. The circle information may be name of circle in which the network node (base station) is deployed. The node type information represents a type of network node or a type of base station. For example, the node type information may be an outdoor small cell, or an indoor small cell, or a macro cell, etc. The binary profile information may refer to an information through which the software upgrade is downloaded. In an example, the binary profile information may comprise information such as a secure file transfer protocol (SFTP) server address, one or more credentials, and a path of binary profile.

[0070] After receiving the upgrade request, then at step

[0406] , the method

[0400] comprises sending, by the local module

[0102] to a global module

[0104] , the upgrade request. The global module

[0104] may refer to a global self-organising network used within the telecommunication network. The upgrade request is a request for upgrading the software of the network node.

[0071] After the local module

[0102] sends the upgrade request, then at step

[0408] , the method

[0400] further comprises scheduling, by the global module

[0104] , the software upgrade procedure based on the start time and the end time. The software upgrade procedure is required to be performed within the start time and the end time.

[0072] Then at step

[0410] , the method

[0400] further comprises receiving, by a corresponding zonal module

[0106] , the upgrade request, wherein the corresponding zonal module

[0106] is associated with the network node. The corresponding zonal module

[0106] may refer to a corresponding zonal self-organizing network within the telecommunication network.

[0073] Thereafter, at step

[0412] , the method

[0400] involves checking, by the corresponding zonal module

[0106] , one or more pre-conditions for performing the software upgrade procedure of the network node. The one or more pre-conditions may be defined by a network operator or a service provider for the telecommunication network which may also be exception alarms that specifies for what conditions the software upgrade procedure should not be proceeded with. The one or more pre-conditions, for example, may be checking whether an alarm for communication failure has been raised, or whether the disk storage is full. The one or more pre-conditions, then checks if the issues still persists then the software upgrade procedure should be aborted.

[0074] After, the one or more pre-conditions are checked, then at step

[0414] , the method

[0400] further comprises generating, by the corresponding zonal module

[0106] , one of a positive outcomeand a negative outcome based on the checking of the one or more pre-conditions. The positive outcome refers to an outcome for which the software upgrade procedure can be performed. The negative outcome refers to an outcome for which the software upgrade procedure cannot be performed. For example, in case the alarm for communication failure has raised, or that the disk storage is full is raised, then in that case, this would lead to a negative outcome of the one or more pre-conditions, since the software upgrade procedure would have to be aborted in such case. Further, in case any of the alarm has not been raised, such as there is no alarm for communication failure or no that there exists space in the disk storage then that would be a positive outcome of such one or more pre-conditions.

[0075] At step

[0416] , the method

[0400] comprises sending, by the corresponding zonal module

[0106] , the upgrade request to a nodes-manager

[0108] , in an event the positive outcome is generated. The nodes-manager

[0108] may refer to a component which manages one or more network nodes within the telecommunication network. The node-manager

[0108] is responsible for software upgrade of the network node.

[0076] At step

[0418] , the method

[0400] comprises performing, by the nodes-manager

[0108] , the software upgrade procedure at the network node. The node-manager

[0108] may directly perform the software upgrade of the network node, or may also send the network node, a request for performing software upgrade. The node-manager

[0108] communicates with the network nodes in real-time and gathers one or more real time updates. The one or more real time updates may refer to a status of the software upgrade of the network node in real time. The node-manager

[0108] shares the one or more real time updates with the corresponding zonal module for updating the status of the software upgrade.

[0077] At step

[0420] , the method

[0400] comprises sharing, by the nodes-manager

[0108] with the global module

[0104] via the corresponding zonal module

[0106] , one or more real time updates related to the software upgrade procedure at the network node. The corresponding zonal module

[0106] sends the one or more real time updates received from the node-manager

[0108] to the global module

[0104] for sharing the status updates for software upgrade procedure in real time.

[0078] The present disclosure further discloses that the upgrade request is received by the corresponding zonal module

[0106] at the start time.

[0079] The present disclosure further discloses that in an event the negative outcome is generated based on the checking of the one or more pre-conditions, the method

[0400] further comprises aborting, by the corresponding zonal module

[0106] , the software upgrade procedure. Thereafter, the method

[0400] further comprises storing, by the corresponding zonal module

[0106] at a storage unit, a ‘failure’ status, and a reason for ‘failure’ status. The event is the case of negative outcome. The failure status refers to a status that the software upgrade procedure was not successful. The reason for the failure status is the reason for which the software upgrade procedure was aborted. The reason may be based on the one or more pre-conditions.

[0080] The present disclosure further encompasses that the method

[0400] further comprises checking, by the corresponding zonal module

[0106] , one or more post-conditions related to performing software upgrade procedure based on a set of key performance indicators (KPIs).

[0081] The one or more post-conditions may be a condition that is checked post software upgrade procedure. In an example, the one or more post-conditions may be checking a value of a key performance indicators (KPI) from a set of KPIs. If the KPI, say KPI NAME l and the value of the KPI NAME l is set as say 80, then in that case, post the software upgrade procedure, the value of the KPI NAME l is monitored for a predefined time period, say 3 days. If the value of the KPI NAME l is changed during the monitoring time period, i.e., if the value of the KPI NAME l is reduced, then in that case, it would be assumed that the software upgrade procedure was the issue causing degradation of the performance of the one or more network nodes. To correct the issue, a rollback procedure is performed for the software upgrade to minimize the negative impact on the performance of the one or more network nodes. The rollback procedure involves rollback of the software of the one or more network nodes to the previous version.

[0082] In an example, the set of KPIs may be a total cell availability time (TOTAL CELL AVA TIME), a RRC Connection Setup Success Rate, a data radio bearer (DRB) Establishment success Rate, and a Total Traffic, etc.

[0083] Thereafter, at step

[0422] , the method

[0400] is terminated.

[0084] The present disclosure further discloses a non-transitory computer readable storage medium storing one or more instructions for software upgrade management, the one or more instructions include executable code which, when executed by one or more units of a system, causes the one or more units to perform certain functions. The one or more instructions whenexecuted causes a transceiver unit

[0302] of the system

[0300] to receive an upgrade request, via a local module

[0102] , having a start time and an end time to perform a software upgrade procedure of a network node. The one or more instructions when executed further causes the local module

[0102] of the system

[0300] to send to a global module

[0104] , the upgrade request. The one or more instructions when executed further causes the global module

[0104] of the system

[0300] to schedule the software upgrade procedure based on the start time and the end time. The one or more instructions when executed further causes a corresponding zonal module

[0106] of the system

[0300] to receive the upgrade request, wherein the corresponding zonal module

[0106] is associated with the network node. The one or more instructions when executed further causes the corresponding zonal module

[0106] of the system

[0300] to check one or more pre-conditions for performing the software upgrade procedure of the network node. The one or more instructions when executed further causes the corresponding zonal module

[0106] of the system

[0300] to generate one of a positive outcome and a negative outcome based on the checking of the one or more pre-conditions. The one or more instructions when executed further causes the corresponding zonal module

[0106] of the system

[0300] to send the upgrade request to a nodes-manager

[0108] , in an event the positive outcome is generated. The one or more instructions when executed further causes the nodes- manager

[0108] of the system

[0300] to perform the software upgrade procedure at the network node. The one or more instructions when executed further causes the nodes-manager

[0108] of the system

[0300] to share with the global module

[0104] via the corresponding zonal module

[0106] , one or more real time updates related to the software upgrade procedure at the network node.

[0085] As is evident from the above, the present disclosure provides a technically advanced solution for software upgrade management. Implementing the features of the present disclosure, enables provision of a single window for managing and tracking software upgrades in several nodes simultaneously. Further, the implementing the features of the present disclosure makes it is easy to manage software upgrades for each node in a region. Further, the implementing features of the present disclosure for software upgrade management is less time consuming and less labour intensive.

[0086] While considerable emphasis has been placed herein on the disclosed implementations, it will be appreciated that many implementations can be made and that many changes can be made to the implementations without departing from the principles of the present disclosure. These and other changes in the implementations of the present disclosure will be apparent to those skilled in the art, whereby it is to be understood that the foregoing descriptive matter to be implemented is illustrative and non-limiting.

[0087] Further, in accordance with the present disclosure, it is to be acknowledged that the functionality described for the various components / units can be implemented interchangeably. While specific embodiments may disclose a particular functionality of these units for clarity, it is recognized that various configurations and combinations thereof are within the scope of the disclosure. The functionality of specific units as disclosed in the disclosure should not be construed as limiting the scope of the present disclosure. Consequently, alternative arrangements and substitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure.

Claims

We Claim:

1. A method for software upgrade management, the method comprising: receiving, by a transceiver unit [302] via a local module [102], an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node; sending, by the local module [102] to a global module [104], the upgrade request; scheduling, by the global module [104], the software upgrade procedure based on the start time and the end time; receiving, by a corresponding zonal module [106], the upgrade request, wherein the corresponding zonal module [106] is associated with the network node; checking, by the corresponding zonal module [106], one or more pre-conditions for performing the software upgrade procedure of the network node; generating, by the corresponding zonal module [106], one of a positive outcome and a negative outcome based on the checking of the one or more pre-conditions; sending, by the corresponding zonal module [106], the upgrade request to a nodes- manager [108], in an event the positive outcome is generated; performing, by the nodes-manager [108], the software upgrade procedure at the network node; and sharing, by the nodes-manager [108] with the global module [104] via the corresponding zonal module [106], one or more real time updates related to the software upgrade procedure at the network node.

2. The method as claimed in claim 1, wherein the upgrade request further comprises a set of details for performing the software upgrade procedure, the set of details comprises at least one of: an information related to alarms; an input data related to software upgrade; and a set of other details comprising one or more of a profile name information, a circle information, a node type information, a node selection information, a binary profile information, and an exception alarms information.

3. The method as claimed in claim 1, wherein the upgrade request is received by the corresponding zonal module [106] at the start time.

4. The method as claimed in claim 1, wherein in an event the negative outcome is generated based on the checking of the one or more pre-conditions, the method comprising: aborting, by the corresponding zonal module [106], the software upgrade procedure; and storing, by the corresponding zonal module [106] at a storage unit, a ‘failure’ status and a reason for ‘failure’ status.

5. The method as claimed in claim 1 further comprising: checking, by the corresponding zonal module [106], one or more post-conditions related to performing software upgrade procedure based on a set of key performance indicators (KPIs).

6. A system [300] for software upgrade management, the system [300] comprising: a transceiver unit [302] configured to receive, via a local module [102], an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node; the local module [102] connected at least to the transceiver unit [302], the local module [102] configured to send, to a global module [104], the upgrade request; the global module [104] connected at least to the local module [102], the global module [104] configured to schedule the software upgrade procedure based on the start time and the end time; and a corresponding zonal module [106] connected at least to the global module [104], the corresponding zonal module [106] is configured to: o receive the upgrade request, wherein the corresponding zonal module [106] is associated with the network node, o check one or more pre-conditions for performing the software upgrade procedure of the network node, o generate one of a positive outcome and a negative outcome based on the checking of the one or more pre-conditions, o send the upgrade request to a nodes-manager [108], in an event the positive outcome is generated, the nodes-manager [108] connected at least to the corresponding zonal module [106], the nodes-manager [108] is configured to: o perform the software upgrade procedure at the network node, ando share, via the corresponding zonal module [106] with the global module [104], one or more real time updates related to the software upgrade procedure at the network node.

7. The system as claimed in claim 6, wherein the upgrade request comprises a set of details for performing the software upgrade procedure, the set of details comprises at least one of: an information related to alarms; an input data related to software upgrade; and a set of other details comprising one or more of a profile name information, a circle information, a node type information, a node selection information, a binary profile information, an exception alarms information.

8. The system as claimed in claim 6, wherein the corresponding zonal module [106] is configured to receive the upgrade request, at the start time.

9. The system as claimed in claim 6, wherein in an event the negative outcome is generated based on the checking of the one or more pre-conditions, the corresponding zonal module [106] is configured to: abort the software upgrade procedure; and store, at a storage unit, a ‘failure’ status and a reason for ‘failure’ status.

10. The system as claimed in claim 6 wherein the corresponding zonal module [106] is further configured to check one or more post-conditions related to performing software upgrade procedure based on a set of key performance indicators (KPIs).

11. A non-transitory computer-readable storage medium storing instructions for software upgrade management, the instructions comprising executable code which, when executed by one or more units of a system [300], causes: a transceiver unit [302] of the system [300] to receive, via a local module [102], an upgrade request having a start time and an end time to perform a software upgrade procedure of a network node; the local module [102] of the system [300] to send, to a global module [104], the upgrade request;the global module [104] of the system [300] to schedule the software upgrade procedure based on the start time and the end time; a corresponding zonal module [106] of the system [300] to receive the upgrade request, wherein the corresponding zonal module [106] is associated with the network node; - the corresponding zonal module [106] of the system [300] to check one or more preconditions for performing the software upgrade procedure of the network node; the corresponding zonal module [106] of the system [300] to generate one of a positive outcome and a negative outcome based on the checking of the one or more preconditions; - the corresponding zonal module [106] of the system [300] to send the upgrade request to a nodes-manager [108], in an event the positive outcome is generated; the nodes-manager [108] of the system [300] to perform the software upgrade procedure at the network node; and the nodes-manager [108] of the system [300] to share, via the corresponding zonal module [106] with the global module [104], one or more real time updates related to the software upgrade procedure at the network node.