Software is a collection of programs and data that tell a computer how to perform specific tasks.
Software is a term that opposes to hardware, from which the system is built and which actually performs the work. You can read more about hardware on this post.
Software Development
Software development is the process used to conceive, specify, design, program, document, test, and bug fix in order to create and maintain software.
You can find an index to software development on this post.
Software Concepts
Emulation involves mimicking the functionality of one system on a different system. It allows software or hardware designed for one platform to run on another platform that may be incompatible with the original system. Emulators essentially translate instructions from one architecture to another, allowing software to run as if it were on its native system.
An example of emulator is Bluestacks Android emulator. You can read more about it on this post.
Virtualization is the act of creating a virtual version of physical hardware, including servers, storage devices, and computer network resources. You can read more about it and related terms like containerization on this post.
Infrastructure as Code is closely related to DevOps concept. You can read more about it on this post.
Automation software:
- Robotic process automation (RPA)
- Browser automation
Robotic Process Automation (RPA) on this post.
Browser automation on this post.