Verdict: Recommended with reservations.
(Recommended if you are going to work on a military virtual prototyping project, otherwise ‘Interesting’.)
Whilst I’ve never really worked on a virtual prototyping tool directly, I do have a fair bit of experience in the not too distant domain of mixed signal simulation and standardisation. So when this book came up for review, I felt that it was sufficiently up my street. However, I’ll assume that most readers aren’t familiar with the concept, so I’ll start with a quick intro.
What is Virtual Prototyping? There are many software simulation tools and products, but as a rule they only simulate one thing (say mechanics, electrical, logistics etc.). Virtual Prototyping tools are multiphysics simulators – they will try to simulate many different physical aspects of an object. One example of an object they have often prototyped in this way is a smartphone. This could integrate simulation of the electronics, the electromagnetic radiation of the antenna, thermal simulation of heating, chemical simulation of the battery, optical simulation of the lenses and finally simulation of sensors (magnetism, acceleration, gyroscope, biometrics and lidar). In the case of this book, the objects are warships, tanks and aircraft (both rotary and fixed winged). The motivation for doing such prototyping is to save money. I can’t imagine that the US Navy would be very happy if their next aircraft carrier had the service life of the Vasa or the Mary Rose.
The book is organised into 12 chapters. The first couple of chapters give a background and examples of where virtual prototyping has been used successfully. A lot of the background is set in High Performance Computing (HPC). Virtual Prototyping would not be possible without the large supercomputers (at least not simulators incorporating large Computation Fluid Dynamics [CFD] simulations – that’s airflow over aeroplane wings and water flowing under a ships hull). One aspect of Virtual Prototyping is that it doesn’t end when the product ships. If a flaw in a ship is revealed over time it’s likely to need to go back to dry dock to have the problem rectified. This will be assisted by the simulation software. This is covered in chapter 4.
Chapter 3 talks about how Virtual Prototyping tools get assembled. This can be a mix of 3rd party commercial packages, in-house development and FOSS. One of the specific issues that the authors have had to deal with is IP management. In my day job, my commercial employer owns the IP of all the engineers that it employs. This is not the case for US government employees as the government is forbidden from holding copyrights. That means a bit more paperwork is required in job contracts so that the developers assign rights back to the government. It sounds quite complicated, but I’m sure that most of the time it does not make much difference.
The financial aspect of developing these tools is the subject of chapter 5. Whilst it is obvious that getting the design of an aeroplane wrong or having your ships sink is extremely expensive, the software tools have a budget of about $25 million a year. In the world of government projects, that needs to be justified.
The second half of the book is somewhat less specific to the requirements and challenges of Virtual Prototyping, and could probably apply to any large software development project. The topics covered including writing a project proposal, setting up and managing the team, with an emphasis on risk management. An annual development cycle is used with multiple minor releases. Having regular deliveries must be good for budget control meetings. Like many such large projects, the teams are geographically spread out – say with shipyards on the East coast and supercomputer centres in Texas.
Chapter 10 stood out for me, detailing some of the issues with testing physics simulation software. Verification is fairly standard – automatic builds and a hierarchy of tests. But validation? What do you compare the results to? Another simulation? Physical measurements (which may be some combination of expensive, incomplete and inaccurate)? In this book a complex set of metrics are used involving uncertainty quantification. I imagine that this is something of a black art and needs a lot of care to avoid problems like confirmation bias.
Chapter 11 is about hiring. It paints perhaps a slightly stereotyped image of software engineers being as much interested in peer recognition as financial rewards.
Chapter 12, the last, is a summary of the current uses of Virtual Prototyping and a few predictions for future applications.
At the end of the book is a compendious section on all the references. This really covers a very large amount of literature covering Virtual Prototyping, general software engineering, the world of ‘defense’.
One thing that I felt was somewhat missing was more coverage of non-military Virtual Prototyping. The book does mention modelling of weather systems and a tyre simulator used by Goodyear. Otherwise there is little or no mention of academic research into the subject or of commercially availably multiphysics simulators.