Cantitate/Preț
Produs

Java Software Development with Event B: Synthesis Lectures on Software Engineering

Autor Néstor Cataño Collazos
en Limba Engleză Paperback – 27 ian 2020

Abordarea practică a acestui volum propune o soluție tehnică pentru una dintre cele mai costisitoare probleme în ingineria software: identificarea erorilor de proiectare înainte de scrierea primei linii de cod. Reținem că autorul nu se limitează la prezentarea teoretică a metodelor formale, ci propune un flux de lucru iterativ, în care cerințele exprimate sub formă de User Stories sunt transpuse în specificații matematice prin EVENT B și rafinate până la stadiul de prototip funcțional. Merită menționat că procesul include o etapă critică de testare a inconsistențelor, unde eșecul unui test unitar declanșează revizuirea specificațiilor formale, asigurând astfel o corespondență riguroasă între intenție și execuție. Complementar lucrării The B-Book de J. R. Abrial, care servește drept referință teoretică fundamentală pentru metoda B, volumul de față se concentrează pe aplicabilitatea imediată în dezvoltarea de software Java, oferind o punte între rigoarea matematică și limbajele de programare moderne. Structura este organizată progresiv, începând cu o privire de ansamblu asupra Event B, urmată de două studii de caz detaliate: dezvoltarea unui sistem de chat și analiza rețelei sociale Poporo. Această organizare permite cititorului să urmărească modul în care conceptele de 'refinement calculus' sunt aplicate pentru a demonstra proprietățile unui sistem complex. Spre deosebire de Using Event-B for Critical Device Software Systems, care se axează pe dispozitive medicale critice, Java Software Development with Event B rămâne ancorat în sfera aplicațiilor software uzuale, făcând metodele formale accesibile programatorilor care doresc să elimine ambiguitatea limbajului natural din faza de analiză.

Citește tot Restrânge

Din seria Synthesis Lectures on Software Engineering

Preț: 20032 lei

Puncte Express: 300

Carte tipărită la comandă

Livrare economică 10-24 iunie


Specificații

ISBN-13: 9783031014222
ISBN-10: 3031014227
Pagini: 100
Ilustrații: X, 89 p.
Dimensiuni: 191 x 235 x 6 mm
Greutate: 0.21 kg
Editura: Springer
Colecția Synthesis Lectures on Software Engineering
Seria Synthesis Lectures on Software Engineering

Locul publicării:Cham, Switzerland

De ce să citești această carte

Această carte este esențială pentru inginerii software și arhitecții de sistem care doresc să implementeze metode formale de validare fără a abandona agilitatea. Cititorul câștigă o metodologie clară pentru a traduce cerințele ambigue în specificații verificabile, reducând drastic costurile de mentenanță. Este un ghid aplicat care demonstrează cum rigoarea matematică din EVENT B poate fi integrată în proiecte Java reale.


Despre autor

Néstor Cataño Collazos este un specialist recunoscut în domeniul metodelor formale și al ingineriei software. Expertiza sa se concentrează pe utilizarea instrumentelor matematice pentru a asigura corectitudinea și fiabilitatea sistemelor informatice complexe. Prin contribuțiile sale în cadrul seriei Synthesis Lectures on Software Engineering, autorul promovează adoptarea tehnicilor de rafinare și a formalismului Event B în dezvoltarea de software comercial, punând accent pe tranziția de la specificații teoretice la implementări robuste în Java.


Descriere scurtă

The cost of fixing software design flaws after the completion of a software product is so high that it is vital to come up with ways to detect software design flaws in the early stages of software development, for instance, during the software requirements, the analysis activity, or during software design, before coding starts. It is not uncommon that software requirements are ambiguous or contradict each other. Ambiguity is exacerbated by the fact that software requirements are typically written in a natural language, which is not tied to any formal semantics. A palliative to the ambiguity of software requirements is to restrict their syntax to boilerplates, textual templates with placeholders. However, as informal requirements do not enjoy any particular semantics, no essential properties about them (or about the system they attempt to describe) can be proven easily. Formal methods are an alternative to address this problem. They offer a range of mathematical techniques and mathematical tools to validate software requirements in the early stages of software development.This book is a living proof of the use of formal methods to develop software. The particular formalisms that we use are EVENT B and refinement calculus. In short: (i) software requirements as written as User Stories; (ii) they are ported to formal specifications; (iii) they are refined as desired; (iv) they are implemented in the form of a prototype; and finally (v) they are tested for inconsistencies. If some unit-test fails, then informal as well as formal specifications of the software system are revisited and evolved.This book presents a case study of software development of a chat system with EVENT B and a case study of formal proof of properties of a social network.

Cuprins

Introduction.- An Overview of Event B.- Software Development of a Chat System with Event B.- The Poporo Social Network.- Conclusion.- Bibliography.- Author's Biography.

Notă biografică

Néstor Cataño Collazos is a software engineer, computer scientist, and enthusiastic formal methods tool developer. His main research area is the use of formal methods for software engineering. Néstor specializes in program specification and verification using JML and design-by-contract, and in a formal method called EVENT B. His main goal is to build Formal Methods tools that increase peoples trust in the correct behavior of Software Systems. His main tool contributions are the design and implementation of the EVENTB2JAVA and EVENTB2JML code generators, the design and implementation of the EVENTB2DAFNY Proof Obligation generator, and the design and implementation of the Chase syntactic checker of JMLs assignable clause. Néstors research work with EVENTB2DAFNY was funded by Microsoft Research through the SEIF program in 2011. He has worked in academia since 2004 and regularly teaches software engineering, formal methods, and programming courses to graduate and undergraduate students. Dr. Collazos earned a Master Degree and a Ph.D. in Computer Science from The University Paris 7. He is currently taking part in the Master in Information and Cybersecurity at UC Berkeley.