Square Peg in a Round Hole? I usually discuss software engineering topics in Notes from the Field, reserving this weblog for IT management issues. This entry falls into a grey area. I recently evaluated Webgain Studio to determine how viable it is as a development environment. Since product evaluation and cost/benefit are topics that fit here I am going to summarize my findings because I was impressed with the package and its parts.
Webgain Studio is an ideal development environment for start-ups and small organizations that want to cost-effectively implement an entire development environment for Java development and web services. There are a few issues and factors that need to be considered, however, when considering Webgain Studio:
This bundle includes:
- If you are not planning to align the many tools (more about them below) to a software engineering process, you'll probably not benefit from this package. This is because the components that ship with it are designed to work together as a process-oriented environment.
- Some of the components come with single-seat licenses, and the database that ships with it (PointBase) is only licensed for internal use (you have to negotiate separate licenses with PointBase if you want to use it with your product, either for internal end users or external customers.
- The learning curve is steep because this is really a bundle of tools, many of which come from other vendors.
Overall, this bundle puts a full-scale, process-oriented development environment within the reach of small companies that are budget constrained. In many ways it compares favorably to IBM's WebSphere and the Rational suite of tools, and certainly gives developers everything they need to be productive. What I like is the fact that Webgain has not just thrown together a collection of tools, many of which are from third parties, but has paid close attention to integrating them. In that respect the whole is greater than the sum of its parts. It supports the Rational Unified Process and other iterative development life cycle approaches, and also provides the tools to support CMM Level 2 key process areas. These reflect how well Webgain thought through the workflow integration as well as the technical integration of the tools.
- Visual Cafe (enterprise edition), which is a J2EE-compliant development environment that supports JSP, EJB and servlet development for multi-platform targets. It also has integrated UML modeling, JSP debugging and code optimizers. It also comes bundled with TurboXML and Dreamweaver Ultradev, rounding out the development environment with all of the major tools for developing web services and large-scale applications. See below for more about Visual Cafe.
- StructureBuilder, which allows you to model and generate code using UML. It is very tightly integrated into the Visual Cafe suite.
- Business Designer. This is one of the best features of the Webgain Studio bundle and the one that requires a mature software engineering process in order to realize the full benefits from the bundle. The main purpose is to manage requirements and team collaboration. I've discussed Business Designer 2.0 in more detail below.
- Quality Analyzer. This is a software auditing and quality assurance tool that collects and analyzes life cycle metrics. It is not an automated test suite, so you are going to need to add those tools to your environment (i.e., WinRunner, etc.). It will do whitebox testing to examine code coverage and has over 50 pre-defined rules for error checking.
- Bea WebLogic, which has become a standard J2EE execution platform. While the version that ships with this bundle almost self installs, it comes with a steep learning curve. You also get only a single developer seat license. On the value side of the equation, though, if your development plans include WebLogic this feature alone will save you a substantial amount if you invest in Webgain Studio.
Key Parts. Visual Cafe 4.5.2 Expert Suite is a full-featured development environment that is the core of Webgain's Studio suite (see that product for more details).
It contains a complete, open J2EE development environment, with debugging tools and VM support for JDK 1.3, 1.2.2 and 1.1.7a. It also comes bundled with TurboXML and Macromedia Dreamweaver Ultradev, which rounds out the development environment.
While Dreamweaver Ultradev is sufficiently well known, TurboXML (by Tibco) is not and merits a description of features. It includes three modules, XML Authority, XML Instance, and XML Console, which combine to provide a standards-compliant development environment for creating and validating schemas and DTDs. In short, it's a complete workbench for XML development and validation, and also supports document conversion.
Visual Cafe also ships with a relational database from PointBase. This is a relatively full-featured rdbms, but you need to be aware that it is only licensed for the Visual Cafe development environment. You will need to negotiate separate licensing directly from the PointBase vendor if you intend to deploy it with end user internal applications or products intended for external customers.
This expert edition of the product allows you to develop J2EE applications and web services. It's suitable for single developers and consultants. The Enterprise edition adds a single-seat license for Bea WebLogic, and an additional product called StructureBuilder, which allows you to model and generate code using UML. However, if you are looking for scalability and a more robust development environment I recommend bypassing the Enterprise Edition and looking instead at Webgain Studio, which contains these added components and much more.
Business Designer is a standalone product that is also bundled with Webgain Studio. It's designed to be a team-oriented requirements management package, as well as an integral part of a process-oriented software engineering approach that can align to the Rational Unified Process or similar iterative development life cycles.
What makes this program shine is the fact that it will integrate with Rational's ClearCase SCM product, as well as CVS and Microsoft's SourceSafe. Moreover, it can be configured to support project and development methodologies and team management. I especially like the role-based access control feature for managing content and code, because this adds a level of security that I have not seen in similar products (Rational's Requisite Pro, for example). The benefit is that you can keep company-sensitive information contained to only those who have a need to know. Considering the fact that many development projects employ consultants and contractors, many of whom are added to the team without extensive background checks, I think this feature sets Business Designer apart from the very few applications in its class.
I especially like the UML based workflow diagrams for business logic, which produce swimlane diagrams and the fact that you can attach files and annotations to them. This is a powerful feature that makes this a team-based requirements tool that captures and displays requirements based on business processes. More importantly, the swimlane diagrams mean something to business users who are major stakeholders, where the UML diagrams will be more meaningful to the developers. This separation of views, which caters to major stakeholder groups, is a major plus in my opinion. The fact that you can also capture business logic means that you can use this tool for business rules management.
Final Note. What I have not thoroughly investigated is the level of support that Webgain provides for the entire package, and that needs to be factored into your purchasing decision. From the features, and especially from the process-oriented design, Webgain Studio does appear to be a viable alternative to WebSphere and even Rational's suite of tools. This is especially the case for small shops or organizations that want to pilot J2EE development and web services projects.