zirias@
Developer
Hi all,
I've seen quite a few threads now where the "stability" of an OS, a system configuration, an application etc. is discussed and I think most of the time, what people really mean is reliability and availability.
In my view, stability of a software product refers to the amount and frequence of "breaking changes". An update or security hotfix that has architecture implications, so it breaks e.g. a library interface, a configuration file format, a network protocol, an OS ABI/API, etc -- anything that makes work on other components necessary -- reduces stability. As a consequence, to reach stability, you have to put quite some thought in designing your interfaces and integrating new stuff without breaking them. FreeBSD does a very good job at this, much better than e.g. Linux (and IMHO even a bit better than Windows).
What many people refer to is how long their system and/or application is running without problems or crashes, how much load it handles, etc. This is another dimension of quality and depends mostly on the implementation. Fewer bugs, better algorithms, etc mean more reliability and more availability. It's quite important, but I wouldn't call ist "stability", to avoid confusion. What do you think?
BR, Felix
I've seen quite a few threads now where the "stability" of an OS, a system configuration, an application etc. is discussed and I think most of the time, what people really mean is reliability and availability.
In my view, stability of a software product refers to the amount and frequence of "breaking changes". An update or security hotfix that has architecture implications, so it breaks e.g. a library interface, a configuration file format, a network protocol, an OS ABI/API, etc -- anything that makes work on other components necessary -- reduces stability. As a consequence, to reach stability, you have to put quite some thought in designing your interfaces and integrating new stuff without breaking them. FreeBSD does a very good job at this, much better than e.g. Linux (and IMHO even a bit better than Windows).
What many people refer to is how long their system and/or application is running without problems or crashes, how much load it handles, etc. This is another dimension of quality and depends mostly on the implementation. Fewer bugs, better algorithms, etc mean more reliability and more availability. It's quite important, but I wouldn't call ist "stability", to avoid confusion. What do you think?
BR, Felix