{{Short description|Infrastructure management}}
'''Software-defined infrastructure''' ('''SDI''') is an approach to managing and provisioning computing infrastructure, such as compute, storage, and networking, through software-based abstractions rather than direct interaction with physical hardware. It builds on virtualization and automation to enable infrastructure to be configured, deployed, and managed programmatically.<ref>{{cite conference | last1 = Kang | first1 = Joon-Myung | last2 = Lin | first2 = Thomas | last3 = Bannazadeh | first3 = Hadi | last4 = Leon-Garcia | first4 = Alberto | title = Software-Defined Infrastructure and the SAVI Testbed | book-title = Testbeds and Research Infrastructure: Development of Networks and Communities | conference = TridentCom 2014 | editor-last1 = Leung | editor-first1 = Victor C. M. | editor-last2 = Chen | editor-first2 = Min | editor-last3 = Wan | editor-first3 = Jiafu | editor-last4 = Zhang | editor-first4 = Yan | series = Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering | volume = 137 | pages = 3–13 | publisher = Springer Publishing | location = Cham | date = 2014-11-26 | doi = 10.1007/978-3-319-13326-3_1 | isbn = 978-3-319-13326-3 | url = https://www.researchgate.net/profile/Thomas-Lin-2/publication/271840674_Software-Defined_Infrastructure_and_the_SAVI_Testbed/links/59dcb78f0f7e9b1460044681/Software-Defined-Infrastructure-and-the-SAVI-Testbed.pdf }}</ref>
In cloud-based and software-defined environments, infrastructure is increasingly abstracted from underlying hardware, with greater emphasis on non-functional requirements such as performance and scalability. Despite this abstraction, system behavior remains dependent on the capabilities and limitations of the underlying physical resources.<ref>{{cite journal | last = Casale | first = Giuliano | title = Performance evaluation teaching in the age of cloud computing | journal = ACM SIGMETRICS Performance Evaluation Review | volume = 51 | issue = 2 | pages = 45–49 | date = 2023-10-02 | publisher = Association for Computing Machinery | doi = 10.1145/3626570.3626588 }}</ref>
==Embedded Systems== In embedded systems, software-defined principles are often realized through firmware based control of hardware devices. A single hardware platform may support multiple functions depending on the software or firmware it runs.<ref>{{cite journal | last1 = Kachman | first1 = Ondrej | last2 = Balaz | first2 = Marcel | last3 = Malik | first3 = Peter | title = Universal framework for remote firmware updates of low‑power devices | journal = Computer Communications | volume = 139 | pages = 91–102 | year = 2019 | issn = 0140-3664 | doi = 10.1016/j.comcom.2019.03.014 | url = https://www.sciencedirect.com/science/article/pii/S0140366418307722 | url-access = subscription }}</ref>
A common mechanism enabling this flexibility is over-the-air updates, which allow firmware to be updated remotely and wirelessly. This enables devices to be reconfigured, improved, or repurposed without requiring physical modification.<ref>{{cite web | title = Over‑the‑Air (OTA) Updates in Embedded Microcontroller Applications: Design Trade‑Offs and Lessons Learned | author = Brown, Benjamin Bucklin | website = Analog Dialogue | publisher = Analog Devices | url = https://www.analog.com/media/en/analog-dialogue/volume-52/number-4/over-the-air-ota-updates-in-embedded-microcontroller-applications.pdf | format = PDF | accessdate = 2026-03-29 | year = 2018 }}</ref>
==See also== * Infrastructure as code (IaC) which manages and provisions computer data center resources * Software-defined networking (SDN), which separates network control logic from hardware devices * Software-defined storage (SDS), which abstracts storage resources into software-managed pools * Software-defined radio (SDR), where radio signal processing is implemented in software rather than hardware circuits
Terms such as '''software-defined equipment''' ('''SDE''') or '''software-defined apparatus''' ('''SDA''') are sometimes used to describe hardware systems whose functionality is largely determined by software, though these terms are less standardized.
==References== {{Reflist}}
Category:Software design