The CoventorWare 2014 release has been announced and is now available to customers. I presided over the first release of CoventorWare in 2001 and eight major releases since then with numerous updates in between. With each release, we added new capabilities, and capacity, speed, and accuracy improvements to address the ever more demanding requirements of our users. The new capabilities and performance improvements in each release are easy to talk about and receive all the glory. In this respect, CoventorWare 2014 is no different: the highlights are covered in our press release; I won’t repeat them here. Instead, I want to talk about the steady improvements in the usability, robustness and quality of the software and the documentation. These improvements aren’t as glamorous as the shiny new stuff, but I believe they really matter to users. Our quality assurance team and our documentation team deserve a lot of credit for these improvements. They’re the unsung heroes of CoventorWare.
CoventorWare is a Swiss Army knife for MEMS design and analysis. In order to address the wide variety of MEMS devices and physics, it has lots of different analysis capabilities, certainly far more than any one user ever needs. The challenge in developing this software suite has been to strike a balance between providing users with flexibility to address different kinds of MEMS while constraining user input and use cases to paths that “make sense”. Good tools have enough flexibility that users can solve problems that the developers never conceived. For example, a user recently found that CoventorWare’s MemMech solver was more efficient than its MemElectro solver for extracting the parasitic capacitance of a piezomechanical device with an extraordinarily high dielectric constant. We never thought of MemMech as a tool for parasitic extraction, but fortunately we didn’t build in constraints to prevent it, either. On the other hand, without some constraints a user has too many ways to “shoot himself (herself) in the foot”.
The question is: what happens when a user provides inputs that are incompatible or don’t make sense? Does the software crash or, worse, does the user lose valuable data? Does the user get an indecipherable warning or error message? As developers, we strive for no crashes or data loss, and we spend a lot of time providing warning and error messages that clearly indicate the cause of a problem and provide a hint about a possible solution. It would be nice to get all this right with release 1.0, but the reality of software development is that there’s no substitute for baking in years of user experience from a series of releases. With each release, our quality assurance team identifies and tests many of the “corner cases” that the developers never conceived, and makes sure that the software stays alive and provides useful warning or error messages. With so many new releases since 2001, CoventorWare has become a robust, high quality tool. Still, there’s always room for improvement. For CoventorWare 2014, we’ve taken special pains to make the warning and error messages from the MemMech and CoSolveEM solvers more accessible and more useful.
With so many inputs and so many possible uses, good documentation is also critical. CoventorWare has long had context-sensitive help links throughout the software that take users directly to the pertinent reference material, a global search function via the Advanced Search capability in Adobe Reader, and MEMS-specific tutorials. For CoventorWare 2014, considerable effort has gone into refining and extending the documentation content. The reference material for the field solvers has been thoroughly reviewed or rewritten in the case of the new CoSolveEM solver. And, we’ve rewritten some existing tutorials, notably the gyroscope tutorial, and added a new tutorial on microbolometer analysis. Still, most users would rather go to the dentist than read software documentation, turning to it only when they have a problem. With all the improvements to the CoventorWare documentation, I advise even experienced users to take time to scan the new reference material and work through at least the Basic MEMS Device tutorial and one of the more advanced tutorials that’s relevant to their practice.
Usability, robustness, quality and documentation may not be glamorous topics, but I expect that long-time CoventorWare users will really notice and appreciate the improvements while new users will simply enjoy the benefits of many years of experience. Happy MEMS designing with CoventorWare!