Explanation Of Reasoning And Its Origin Of Thought

0 / 5. 0

Explanation of reasoning and its origin of thought

The formal word comes from formal logic, the science that studies reasoning from formal analysis according to its validity, and excludes the specific content of reasoning to consider only the structured form.  

The paradigm of formal methods grants systematic and rigorous techniques for software development and, due to the gradual difficulty and quality requirements of current products, it is necessary to fit the software engineering curricula. (Raccis, 2014)

The great path of the tools, which generate tests based on formal methods, is that the formal specification mathematically describes the behavior of the system.

The little reception of formal methods in the software industry is only a myth. The birth of this rumor is because until years ago there were several documented cases in the industry. With the goal that companies consider the acceptance of such methods, it is important to see the existence of success cases that show the advantages apply such methods.  

The fundamental stimulus for research work on formal methods in software engineering wasControl the gradual difficulty of open systems.  

This implies that formal methods are becoming a very common tool for those involved in the high quality systems development cycle, which compromises such formal methods to have to be stable, an issue that can only be guaranteedthrough their homogenization.  

One of the most scattered ideas about the use of formal methods is that they are not applied in the software industry. While it is true that its adoption has been slow, there are cases of important companies that have achieved success when applying them in real projects.

Advantages and disadvantages of the use of formal methods

The use of formal methods in software engineering is a topic that has been discussed for several years. Recently, with the appearance of knowledge engineering in the information society, and the use of formal methods in industrial processes, the debate arises again. 

Advantage

  • The specification. One of the most recognized problems in the development of

Software is the difficulty in detailing the behavior expected of the software, a problem that is declined with the current component -based development, since the engineer has only a textual description of the requirements, procedures, allowed entries and expected outputs. Ensure that this type of software is safe is a problem, not only because of its size and complexity, but because the source code is also not usually available for components acquired. One of the way of offering product guarantee is to establish, with precision, the expected software behavior. 

Formal specification gives greater precision in software development, and formal methods give tools that can increase the guarantee sought. Developing a specification requires detailed and precise knowledge of the system, which helps to find errors, and so the greatest advantage of formal methods occurs in the development of the specification.   

In the specification of the system description, ambiguities and omissions are detected, and a formal specification can improve communication between developers and users.

Formal methods developed to allow better reasoning about systems and software. After designing a specification, it can be analyzed, operating and reasoning on it, in the same way as on any mathematical expression. A difference that highlights between a formal software specification and a mathematical expression of calculation is that it is typically much larger often hundreds or thousands of lines.  

  • The verification. To make sure the quality of the systems it is necessary to test, and to

Ensure that rigorous tests are developed a precise and complete description of its functions is required, even when formal methods are used in the specification.

Although a large number of tools for testing are available in the market, most automates only their simplest aspects: they generate the test data, they enter the system and report results. Ending the correct response of the system, for a certain set of input data, is a difficult task, that most tools cannot achieve when the behavior of it is specified in natural language. Because the expected response of the system can be determined by reading the specification, engineers hope that this missing and critical component will be added to the tests. (Dan & Aichernig, 2002)

Formal verification methods depend on precise specifications and, from a beneficial point of view, that tests can be generated from the specification can be one of the most productive uses of formal methods. Nearly half of the work team, in a commercial software development, is invested in effort to develop tests, and even with this level of effort only the most notorious errors are erased.  

Some known measurements show that the tests, generated with automated tools, offer such good coverage that that reached by manuals, so engineers can choose between producing more tests at the same time, or reducing the number of hours needed to make them. 

  • Validation. While verification can be developed semi -automatically and

Mechanically testing, validation is a different problem. A precise difference between verification and validation is that the first responds to the fact that if the product is being built correctly, and the second to that if the correct product is being built. 

In a nutshell, verification is the set of activities that claim that the software correctly implements a specific function, and validation is a set of different activities that ensure that the built software corresponds to the user’s requirements.

From the set of requirements it is possible to validate, formally or informally, if the system implements them;However, validation is necessarily an informal process. Despite the need to use this trial in the validation process, formal methods have their place, especially in large and complex applications, as in modeling and simulation. One of their most promising applications is in the modeling of requirements, since, by formally designing them, the theorem provided in the test tool can be used to explore their properties, and often detect the dangers between them. This method does not replace human judgment, but it can help determine if the correct system was specified, so it is easier to establish whether the desired properties are maintained.  

We can summarize in a more punctual way than the advantages of formal methods are:

  • Communication with the user improves since it is oriented from a clear and not cloudy description of the user’s requirements.
  • The system is much better understood.
  • The system is detailed in a more precise way.
  • The system ensures exactly that it is correct according to the specifications.
  • Higher software quality regarding compliance with statements.
  • Improve productivity. 

 

Disadvantages

  • The improvement of tools that support the application of formal methods is difficult and the resulting programs are uncomfortable for customers.
  • Researchers are usually not aware of industrial reality.
  • There is little collaboration between industry and the academic world, which is sometimes too irrefutable.
  • It is reasoned that the application of formal methods increases the products and slows its development.

 

However, it is possible that orientation through formal methods have more supporters among software developers that must build high security software, and among developers who pass large economic needs when software errors appear.  

Bibliography

  • Amman, p., & Offutt, J. (2008). INTRODUCTION TO SOFTWARE TESTING. Obtained from Cambridge University Press.: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Anderson, r. J. (1998). Model Checking Large Specifications Software. Obtained from IEEE Transactions on Software Engineering: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Castillo, J. N. (November 2, 2011). Formal methods and object -oriented technologies. Obtained from Dialnet Unioja: File: /// f:/dialnet-formal methods and technologiesorientedaobjetos-4797247.PDF
  • Clarke, e. M., & Wing, J. (nineteen ninety six). Formal Methods: State of the Art and Future Directions. Obtained from Special ACM 50th-Anniversary Issue: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Universitary school of Caracas. (January 2012). Formal methods. Obtained from InnovacionPnFI2012: https: // innovacionpnfi2012.WordPress.com/Methods-formal-2/
  • Dan, l., & Aichernig, B. K. (2002). Automatic test generation for raise. Obtained from Report 273, UNU -IIST -UNITED NATIONS UNIVERSITY, International Institute for Software Technology: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Dasso, a., & Funes, to. (2007). Verification, Validation and Testing in Software Engineering. Obtained from Idea Group Publishing: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Flynn, s., & Hamlet, D. (2006). On formal specting of software components and systems. Obtained from Electronic Notes in Theoretical Computer Science: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Gabbar, h. A. (2006). Modern Formal Methods and Applications. Obtained from Netherlands: Springer: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Jorge. (May 23, 2011). Development models, techniques and temporary planning documents and monitoring of a computer project. Obtained from Software Engineering – Theme 3 Models Development: http: // topic3isoftware.Blogspot.com/
  • Montoya, e. S. (May 15, 2010). Formal methods and software engineering. Obtained from Virtual Magazine Norte Catholic University: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • NASA Office of Safety and Mission Assurance. (nineteen ninety five). Formal Methods Specification and Verification. Obtained from Guidebook for Software and Computer Systems: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Raccis. (December 4, 2014). The importance of training in formal methods in software engineering. Obtained from the Antioquia Magazine of Computer Sciences and Software Engineering: http: // Fundacioniai.Org/Raccis/V4N2/N7A8.PDF
  • Saiedian, h., & Fanchey, M. (nineteen ninety six). Challenges in the Successful Transfer of Formal Methods Technology Into Industrial Applications. Obtained from Information and Software Technology: https: // www.Redalyc.org/pdf/1942/194214476008.PDF
  • Mixteca Technology University. (January 30, 2011). Formal methods applied in the software industry. Obtained from UTM.mx: http: // www.UTM.MX/EDI_ANTERIORES/THEMES43/1ENSAYO_43_1-R.PDF

Free Explanation Of Reasoning And Its Origin Of Thought Essay Sample

Related samples

Zika virus: Transmission form Introduction The Zika virus belongs to the Flaviviradae family, was found for the first time in a monkey called Rhesus febrile and in...

Zika virus: cases and prevention Introduction The World Health Organization (WHO) has confirmed that Zika is a virus caused through the mosquito bite which is...

Zeus The King of Greek mythology Introduction Zeus is the Olympic God of heaven and thunder, the king of all other gods and men and, consequently, the main figure...

Zeus's punishment to Prometheus Introduction Prometheus, punished by Zeus Prometheus, punished by Zeus. Prometheus is a ‘cousin’ of Zeus. He is the son of the...

Comments

Leave feedback

Your email address will not be published. Required fields are marked *