Tuesday, June 9, 2015

The programmer is just a man, that is why there are errors in the … – PC World

 

The technological progress promotes the formation of vast amounts of new software. Increasingly, for this progress corresponds broadly understood not so much equipment, but that software. Strict capabilities of modern engines to be installed in the newest cars, amazing functionality of washing machines, refrigerators or televisions or even the amazing capabilities of modern construction machinery would not be possible to achieve, if not the software.

We are accustomed also to the ubiquity of the internet, the possibility of using mobile banking, online shopping, social networking, streaming music and video. That’s all well would not exist if not for software. Experts increasingly stress that today dominates the software outright, pushing modern materials and original design concepts for second place. Moreover, since the software depends not only functionality, but also the quality of modern equipment.

See also:

Where do bugs in the software. Problems programmer

Today’s programs are made up of hundreds of thousands and even, increasingly, millions of lines of code. It happens that in order to achieve the simple effect even need to write hundreds of lines of code – usually happens in the case of event generation graphics on the screen, which for some reason you can not use the standard graphic libraries. The writer software programmers are not robots. Each of them can happen to a bad day, or a moment of inattention. The human factor affects the fact that it is impossible to avoid errors in the programs – especially if the software is created under the pressure of time in not always favorable environment and circumstances. Errors are present in every product programming, and the more lines of code, and the more software is created, the more bugs. In software engineering phenomenon known as pyramid of error propagation .

The formation and replication of errors in the software is also reflected adopted in the early development of computer software design methods. Initially both operating systems and applications that were not designed to be safe – were simply efficiently and as quickly as possible to do its job. There was also a need to reflect on isola- each other programs or data. The first computers were used by scientists and engineers in research centers and universities, and their service dealt with their creator, who knew exactly what you can and can not do with your computer.

Over time, computers began ordinary work, but still very experienced users. When constructing the first mainframe was decided to introduce security mechanisms. They were, however, the separation of users of the system to another, but not the separation and isolation of programs to be executed by a single user. Similar assumptions accompanied the creators of the first operating systems on PCs. Pretty soon it turned out that the programs, even if they were not running at the same time, they can interfere with each other causing system failures (eg. When you complete the cleaning is not just used memory area).

What’s more, created the then the needs of the operating system model assumed the existence of a large kernel of acting with highest privileges and the allocation of very high powers for the programs. Such a business model of the IT environment created stability problems. It often happened that caused the failure of one program to crash the entire operating system -all certainly remember the famous blue screens in Windows . Currently, departs from this model, well isolating programs from each other, slimming making them modular kernel, but some developed over the years the mechanisms of the system and how to write applications remaining, making errors associated with interaction between applications and the system still around and are very difficult to spot.

The fight with errors

It is impossible to write complex software that would not contain errors. Therefore, companies engaged in software development in addition to programmers also employ teams of people involved in the testing and removal of software errors found. Finding fault diagnosis is a time-consuming task. It requires multiple running applications in a variety of specific conditions, on different platforms and different versions of operating systems.

The diagnosis is used special software that allows you to preview the inner workings of the application. Such software often allows it to make changes to the code “on the fly”, making it easier to determine whether repair the error will not occur next.

In addition to software testing under normal operating conditions shall also be conducted stress testing (ie. Stress testing). They are designed to capture errors related to the work program under overload conditions, ie for example. When the application logs on too many users, provides to it or gets too much data, or in a situation of insufficient system resources.

LikeTweet

No comments:

Post a Comment