[Esug-list] [SPAM] Re: Concurrency Best Practices + Tests

Nowak, Helge HNowak at cincom.com
Tue Sep 10 09:51:29 EDT 2019

Dear Noury,

I didn’t had the time to do a thorough web search. You certainly did. I found several references that look very promising. Mny of them were concerning Java and OS threads. Othes are about Erlang (https://mariachris.github.io/Pubs/ERLANG-2011.pdf ). I think not only the concurrency problem but also the base technology matters. I couldn’t find anything about Smalltalk yet. So you are probably conquering new land.

Here is a quote from the preface of “Test Driven Development: By Example” from 2003 by Kent Beck: “There certainly are programming tasks that can’t be driven solely by tests (or, at least not yet). Security and concurrency, for example, are two topics where TDD is insufficient to mechanically demonstrate that the goals of the software has been met.” “Subtle concurrency problems can’t be reliably duplicated by running the code.”

Good luck! I am looking forward to your findings.


Helge Nowak
Cincom Smalltalk Technical Account Manager
Cincom Systems GmbH & Co. oHG
Humboldtstraße 3
60318 Frankfurt am Main

+49 89 89 66 44 94
+49 172 74 00 402

hnowak at cincom.com
A standpoint is an intellectual horizon of radius zero. -- Albert Einstein

Geschäftsführer/Managing Directors: Thomas M. Nies, Donald E. Vick
oHG mit Sitz/based in Frankfurt am Main (Amtsgericht Frankfurt am Main HRA 50297)
Pers. haftender Gesellschafter/Partner liable to unlimited extent:
Cincom Systems Verwaltungsgesellschaft mbH (Amtsgericht Königstein/Ts. HRB 5069)

This e-mail transmission contains information that is intended to be privileged and confidential. It is intended only for the addressee named above. If you receive this e-mail in error, please do not read, copy or disseminate it in any manner. If you are not the intended recipient, any disclosure, copying, distribution or use of the contents of this information is prohibited, please reply to the message immediately by informing the sender that the message was misdirected. After replying, please erase it from your computer system. Your assistance in correcting this error is appreciated.

From: Esug-list <esug-list-bounces at lists.esug.org> On Behalf Of Noury Bouraqadi
Sent: Tuesday, 10 September 2019 15:12
To: Members ESUG <esug-list at lists.esug.org>
Subject: Re: [Esug-list] [SPAM] Re: Concurrency Best Practices + Tests

Thanks you all  for your answers.


On 7 Sep 2019, at 18:42, James Foster <Smalltalk at JGFoster.net<mailto:Smalltalk at JGFoster.net>> wrote:

The point of noury is what is the way to approach concurrency when doing TDD.
Now how to build reliable ….

I won’t pretend to answer such a broad question with anything definitive, but I’d start my investigation of concurrency with a look at databases. One of the primary features of any multi-user database (not just GemStone!) is that transactions are in practice concurrent but the system is designed to apply them as if they were serial and in a way where order does not matter. So I would attempt to identify the concurrent tasks and verify that they each got the result that they would have obtained had they been applied in various serial fashions.

Imagine that DrTDD should be extended to support concurrent programming.
Then this is the question that we want to get answer.

I would look for a way to pass a set of repeatable tasks to DrTDD and let the testing framework run them in various orders then run them concurrently with interrupts and switching contexts.

Esug-list mailing list
Esug-list at lists.esug.org<mailto:Esug-list at lists.esug.org>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.esug.org/pipermail/esug-list_lists.esug.org/attachments/20190910/d401fad8/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 1652 bytes
Desc: image001.png
URL: <http://lists.esug.org/pipermail/esug-list_lists.esug.org/attachments/20190910/d401fad8/attachment-0001.png>

More information about the Esug-list mailing list