What is Software? – Definition, Presentation, Developments, and More
A software or an application is a set of programs, which allows a computer or a computer system to achieve an exacting task or function
(Example: customer relationship management software, production software, accounting software, etc., loan management software).
It is an indefinable good, but above all, it is a non-rival good. It does not wear out.
Usually, programs come with a set of data to make them work (e.g. a game will come with lots of pictures, animations, sounds, etc.).
This requires a computer (microcomputer, computing station, mainframe, supercomputer, etc.)
On which there is initially an “engine software” (operating system) that accepts the “software application”. The fundamental need has the need for a power supply.
Various Software Presentations
- Programs can take different forms:
- Executables: they can be executed directly by the computer.
- Generally, they can performing on a particular type of machine and operating system ( Microsoft Windows on a compatible PC).
- However, there is executables (in bytecode ) executable on various platforms (such as those of the Java language).
- They aim to execute a virtual machine, which is itself available on multiple platforms.
- Source files: this is generally a text respecting the writing rules of a particular programming language.
- As a suggestion, the order of magnitude of the size of it such as Microsoft Word is one million lines of code;
- For a compiled language: they must be translated into an executable by a compiler.
- For an interpreter: they can execute directly on reading (Perl or PHP scripts).
- Libraries: this is a set of functions that, by themselves, are not directly executable and do not provide the functionality to the user.
- (For example, on will find libraries that allow a program to load animations or play sounds).
- In particular there are dynamic libraries ( Windows DLL or so GNU / Linux).
- The data associated with this can also be of different formats: classic files, databases (relational, hierarchical, etc.).
- Its data can be broken down into many files, or all of this can be combined into a single file.
- For example, in Windows, the definition of the user interface, the drawing of icons etc., often integrated into the same file as the main application.
Depending on its size, this can be developed by a single person, a small team, or a set of coordinate teams.
Significant development program by large groups poses major coordination problems.
Due to a large amount of information communicated between the stakeholders: documentation, meetings.
For these reasons, it is development in a professional context often follows strict rules allowing group work and code maintenance.
Often, the people who need to make subsequent modifications to the code are no longer the people who developed it.
However, a new development model is tending to spread: the bazaar (the model used for the design of GNU / Linux).
The beta version (or beta-test) software is unfinished. For which a series of tests is carrying out until relative stability can reach.
People who look for the latest flaws in these versions of this is called beta testers.
Open source code
This is classified according to the availability of the source code and the license that governs the distribution of the program:
Open code: the whole world can read the source code. This term is not synonymous with free software;
Closed principle: the source code is only available to a minority of people;
Free software: anyone can study, copy, modify and distribute modified versions of this (definition of the free software foundation).
A user license protects most free software; However, this does not mean that it is free.
Proprietary software: at least one of these rights is not fulfill for users. Most of the time, acquiring a user license requires the payment of a certain sum to the creators of it;
Commercial software: It is intend for sale. It can be free or proprietary.
Critical software: For the overall security of an entity’s information systems.
It may be necessary to define application profiles to identify essential software. It is in need to pay particular attention from a security point of view.
What is an angel investors? – Origin, Features and More
The angel investors business model consists of diversifying, placing his fortune in various ventures. Thus, it is enough that only…
What are amazon planes ? – How does it work, and more
Amazon launched its first planes of Amazon’s air fleet operations in 2016. Amazon’s plan to build its fleet of delivery…