In-Depth

Profile: It's All About Quality

Most organizations in software development are interested in application quality; Instantiations is doing something about it.

Mike Taylor, cofounder and CEO of Instantiations, Inc., knows through experience what enterprises seek in application development processes and tools. "In many cases, they have already spent several thousand dollars per developer in making sure that they can design and build useful applications. If they are going to spend anything more, they need an ROI [Return On Investment]," he explained.

Taylor and his colleagues have built products that try to make ROI clear and concise for enterprises. They build these products from a foundation of serving enterprises that dates back almost two decades.

"The first incarnation of Instantiations was sold to Digitalk in 1992," Taylor said. Digitalk Smalltalk was the first PC version of the language on the market at the time, and it was a low-priced product geared toward hobbyists.

"We helped make Digitalk Smalltalk more acceptable in enterprise development environments," he continued. This task involved raising the price of the product, providing quality support, and assisting enterprise development teams with the process of building high quality applications in Smalltalk. Digitalk later merged with ParcPlace, the other major provider of Smalltalk products (and a direct descendant the Smalltalk research completed at Xerox Palo Alto Research Center in the 1970s and 1980s), in an attempt to offer a unified picture of Smalltalk to the enterprise.

By 1997, Smalltalk was declining as an enterprise development platform. While the language was used in a number of enterprise development projects, it was not being taught in universities, and its value proposition was similar to that of Java, a platform rapidly growing in popularity. So ParcPlace-Digitalk was renamed to ObjectShare. ObjectShare was the entity that reinvented Instantiations t.

"We had several Smalltalk products that came with the spin off of Instantiations that enabled us to bootstrap into the Java market," said Taylor. The concept of quality as a product focus came naturally to Instantiations. With a strong background in enterprise application development, Taylor and his colleagues found quality was a key need for the applications that organizations depended upon for their business.

Smalltalk and Java have a number of similarities, which simplified the company's platform transition. Both languages are fully object-oriented, and both possess an extensive class library to ease the building and use of stock application constructs. Smalltalk also encouraged the development and use of certain disciplines, such as prototyping and iterative development, that are useful in building enterprise applications.

Two Product Lines and One Bridge
Today, Instantiations has two product lines. The first is the Windows Builder Pro line, a drag-and-drop graphical user interface (GUI) builder for Java applications, and CodePro Analytix, a rules-based automated testing tool for Eclipse and IBM WebSphere and Rational development environments. According to Taylor, Windows Builder Pro is the most popular GUI builder for Java Swing-based applications. It currently also supports the Standard Widget Toolkit (SWT) for Eclipse-based development, and the Google Web Toolkit (GWT) for AJAX-style development.

The company also recently launched a third product, Windows Tester Pro. Taylor describes Windows Tester Pro as a bridge between the other two product lines. He said, "We provide one of the most popular tools available for creating Java GUIs in Windows Builder Pro. We also focus on code quality through CodePro Analytix. It's only natural that we would devise a way to automate the functional testing of GUIs in order to improve code quality."

Windows Tester Pro provides a unique function. It enables functional testing of GUIs to begin during development, at an earlier stage than in QA testing. Developers record GUI scripts and save them in the JUnit framework as JUnit scripts. Developers can run these unit tests during the development process in the same way they run their other unit tests. With this methodology, functional testing isn't a separate task, but rather, it is an integral part of unit testing.

Once the application reaches QA testing, the functional tester can take the GUI unit tests and link them together to produce larger and more complete functional tests. The testing group can also produce its own tests and combine them with the scripts recorded by the developers These feature create a comprehensive and multi-facetted test regime for applications in development, and developers produce more thoroughly tested application, with testing started earlier in the development life cycle.

Beating Market Competition
Taylor agrees that the quality tools market is highly competitive. He explained, "The competition is especially tough when you consider that we compete not only with other commercial tools, but also with open source. We also sell into the Eclipse community. Developers have a broad choice of solutions, and they choose us pretty often." He notes that because Instantiations products support the Eclipse IDE, it is not uncommon to find development teams that are using the free and open source version of Eclipse and the commercial development and quality tools offered by Instantiations.

Instantiations does not have a free or open source offering, which is common among Eclipse vendors. So how does a company with purely commercial software compete in an area where software developers have a broad choice of both commercial and open source alternatives?

The answer to this question goes back to Taylor's experience in enterprise development, or more simply ROI. First, Instantiations products tend to cost less than some of the commercial alternatives; although, they are by no means free. The company prices software from $500 to $1000 per developer. Second, the products focus carefully on the features enterprise developers need to develop high-quality software. This means products include, at minimum, features that the Instantiations engineering team might consider "cool," and at maximum, effort on capabilities that are important when developers are under a tight deadline and have to make sure quality doesn't slip.

Taylor notes with pride that Instantiations has been doing very well over the last several years, with high rankings for growth from the Oregon Business Journal, where the company is headquartered. He does not envision drastic changes to the Instantiations business model in the foreseeable future. For a tools provider that has such a clear focus on development and quality, Taylor's outlook may not be a bad thing.

About the Author

Peter Varhol is the executive editor, reviews of Redmond magazine and has more than 20 years of experience as a software developer, software product manager and technology writer. He has graduate degrees in computer science and mathematics, and has taught both subjects at the university level.

comments powered by Disqus

Featured

  • Full Stack Hands-On Development with .NET

    In the fast-paced realm of modern software development, proficiency across a full stack of technologies is not just beneficial, it's essential. Microsoft has an entire stack of open source development components in its .NET platform (formerly known as .NET Core) that can be used to build an end-to-end set of applications.

  • .NET-Centric Uno Platform Debuts 'Single Project' for 9 Targets

    "We've reduced the complexity of project files and eliminated the need for explicit NuGet package references, separate project libraries, or 'shared' projects."

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

Subscribe on YouTube