MAST

Links

Home
Mighty Automated Build (MAB)

MAB Overview
Setting Up
Configure and Build
Mighty Automated Deployment (MAD)

MAD Overview
For Developers
For Administrators
External links

ArchStudio 3
xADL 2.0 Site
Official xArch Site
UCI Institute for Software Research
MAST: Mighty Automated Software Tools

Mighty Automated Software Tools

Welcome to the Mighty Automated Software Tools (MAST) homepage at the Institute for Software Research at the University of California, Irvine.

In the process of building and maintaining large Java-based software products like the xADL 2.0 tools and ArchStudio 3, we found that some automation in the build and deployment process saved us a lot of time. While there have been many build and deployment systems created already, none fit our precise needs. Our plan was to make a very easy, low-human-intervention way of building and deploying our software systems, and to make it easy to adapt those processes uniformly across new projects and products when we developed them. We wanted our solution to be cross-platform, since our products were in Java. Existing solutions (custom Ant scripts for each product, for example) were tied unnecessarily to the product and difficult to maintain. Other solutions like the custom installer products for Java again required a significant amount of scripting and binding to the product itself, and did not lend themselves well to a small development organization.

Instead, we created a few generically useful automated tools for building and deploying Java software. These were built solely to support and improve the processes in place here at ISR, but you may find them generally useful. They are:

Mighty Automated Build (MAB): A custom, parameterizable script for Apache Ant that is generally useful for building Java projects. Compiles all packages, separates source and .class files out into separate directories, automatically Javadocs all files, JARs the implementation up, and mixes in any additional static files that you want to distribute along with the build, and zips the whole thing up, among other little things. Also creates a build properties file suitable for use in deployment using MAD (see below).

Mighty Automated Deployment (MAD): A two-part system for deploying and distributing Java software. Part one is a Java-based command-line client for deploying just-built software to an FTP site that is also accessible from the Web. Part two is a Java 1.4 program with a GUI that runs either as a signed applet or a standalone application. This connects to the Web server and allows users to browse available products and install them on their local machine. It also provides a facility to detect whether the user has the latest version of the product, and can update the product with a simple wizard UI when necessary. It also provides uninstall support.

Please click one of the links to the left for more information.




Copyright (C)2000-2003 The Regents of the University of California. All Rights Reserved Worldwide.