Beginning in the 1980s, software began to play an increasing role in all areas of life. Today, there is a growing need for software on practices that are the subject of human life. Therefore, the development of software should be based on availability, reliability, and other compulsory standards and audits. Human beings make mistakes by their nature but software has to be developed by people. As a result, today's engineers are struggling against a big challenge like developing software that does not make mistakes. The goal in this critical software development cycle is to discover and implement new methods for finding and preventing errors. We can say that the aviation availability requirements are the whole of these methods and requirements applied in this critical software development cycle.