Lars Hupel

When testing just doesn’t cut it

How do you find a bug that lets users duplicate money before writing a single line of code?

When testing just doesn’t cut it
#1about 5 minutes

Why high code coverage is not enough

Even well-tested software like Java's JDK can have critical bugs, such as the famous integer overflow in binary search, demonstrating the limits of unit testing.

#2about 1 minute

Defining formal methods for software verification

Formal methods are mathematically rigorous techniques for specifying, designing, and verifying software systems, used by organizations like NASA to ensure correctness.

#3about 4 minutes

Recognizing formal methods in everyday tools

Common tools like standardized flowcharts and static type systems in languages like TypeScript are practical examples of formal methods already in use.

#4about 5 minutes

How formal verification proves code correctness

Formal verification involves creating a mathematical proof that a software implementation correctly adheres to its formal specification, going beyond simple testing.

#5about 5 minutes

Applying formal methods to central bank digital currency

Building a Central Bank Digital Currency (CBDC) requires a higher level of assurance than testing can provide to prevent financial loss or money duplication.

#6about 4 minutes

Using the Isabelle proof assistant for financial logic

The Isabelle proof assistant is used to model financial operations and mathematically prove that properties like the total money supply remain constant.

#7about 3 minutes

Integrating formal verification into the development workflow

A practical approach involves prototyping new, high-risk features in Isabelle to find design flaws before committing to a full implementation in languages like Go.

#8about 2 minutes

Answering questions on writing good specifications

The discussion covers the challenges of writing complete specifications, deriving programs from them, and why even a partial specification is better than none.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

Related Articles

View all articles
DC
Daniel Cranney
Dev Digest 188: CfP time, the risks of NPM and IKEA algorithms
Inside last week’s Dev Digest 188 . 🤖 GitHub Copilot CLI is now in public review 💻 Microsoft is bringing ‘vibe working’ to office apps 🎣 Attackers abuse AI tools to generate captchas in fishing attacks ⚠️ When LLMs autonomously attack 🧠 Common cause...
Dev Digest 188: CfP time, the risks of NPM and IKEA algorithms
BR
Benjamin Ruschin
What Developers Really Need to Create Great Code Demos
Every developer on earth has, at some point, had another developer to thank for a breakthrough, a success, an aha moment they wouldn’t have had without coming across that blog post, that open-source contribution, that reply on socials or that humble ...
What Developers Really Need to Create Great Code Demos
DC
Daniel Cranney
Dev Digest 194: AI vs. Version Control, Password Louvre & Cursed Webdev
Inside last week’s Dev Digest 194 . 🧠 Learn how to become an AI-native software engineer 🤷‍♂️ How can you stand out when anyone can build anything? 👂 Whisper Leak allows listening to encrypted chats 🐝 What’s new the OWASP2025 Top Ten List 🙅‍♀️ Curse...
Dev Digest 194: AI vs. Version Control, Password Louvre & Cursed Webdev
BR
Benjamin Ruschin
Boring Tech Is What Matters
Every year, the Stack Overflow Developer Survey gives us an insight into the state of the industry, the tools and tech that developers love or loathe, and what’s changed from the year before. Some of the headlines that came out of the 2025 results w...
Boring Tech Is What Matters

From learning to earning

Jobs that call for the skills explored in this talk.

Automated Tester

Automated Tester

The Trust
Rishangles, United Kingdom

Remote
GIT
Java
JIRA
REST
+4