Empirical Software Architecture Research
In conjunction with graduate students and researchers at NICTA, CSIRO and the University of Sydney, We are working on on a project in empirical aspects of software architectures and component technologies. This is a natural continuation of the MTE project (see past research). The difference is that we're now interested in building and validating predictive models that architects can use in the early stages of a project to help guide their decisions and designs.
The major current effort is developing modeling techniques to predict the performance of a component-based application before it has been built. We have some very promising, empirically validated results based on J2EE component technologies, and are now extending this work to encompass the .NET platform. This approach is novel and the results, focusing on black-box component technologies, are groundbreaking.
Publications on this work are:
1) Y. Liu, I. Gorton, Accuracy of Performance Prediction for EJB applications: A statistical analysis, accepted in Software Engineering for Middleware (SEM'04), Linz, Austria, Springer-Verlag, September 2004 (30% acceptance rate)
2) Y. Liu, I.Gorton, An Empirical Evaluation of Architectural Alternatives for J2EE and Web Services, accepted in 11th Asia-Pacific Software Engineering Conference, Busan, Korea, IEEE, November 2004
3) Y. Liu, A. Fekete, I. Gorton: Predicting the performance of middleware-based applications at the design level. ACM Proceedings of the International Workshop on Software Performance (WOSP): 166-170, Redwood Shores, California, USA, January 14-16, 2004.
4) S.Chen, Y. Liu, I.Gorton, A.Liu, Performance Prediction of Component-based Applications, in the Journal of System Software, Automated Component-Based Software Engineering Special Issue, to appear in 2004
5) P. Tran, J.Gosper, I.Gorton, Evaluating the Sustained Performance of COTS-based Messaging Systems, in Software Testing, Verification and Reliability, vol 13, Wiley and Sons, 2003
6) I.Gorton, A Liu, Performance Evaluation of Alternative Component Architectures for Enterprise JavaBean Applications, in IEEE Internet Computing, vol.7, no. 3, pages 18-23, 2003
7) S.Chen, I.Gorton, A Predictive Performance Model to Evaluate the Contention Cost in Application Servers, in Asia Pacific Software Engineering Conference, December 2002, IEEE
8) Y.Liu, I.Gorton, A.Liu, S.Chen, Evaluating the Scalability of Enterprise JavaBeans Technology, in Asia Pacific Software Engineering Conference, December 2002, IEEE
9) P.Tran, P. Greenfield, I. Gorton, Behavior and Performance of Message-Oriented Middleware Systems, Proceedings, 22nd Intīl Conf on Dist. Computing Systems Workshops, Vienna 2-5 Jul 2002. Pages 645-650.IEEE
10) Y. Liu, I. Gorton, A. Liu, N. Jiang, and S. Chen. (2002). Designing a test suite for empirically-based middleware performance prediction. In Proc.40th International Conference on Technology of Object-Oriented Languages and Systems (TOOLS Pacific 2002), Sydney, Australia. Conferences in Research and Practice in Information Technology, 10. ACS. Pp 123 -130, ISBN 0-909925-88-7
Novel Middleware Platform Development
We're working on two projects that are attempting to develop new middleware platforms. This is collaborative with PNNL.
The first is building on existing standards-based publish-subscribe middleware to create a comprehensive content-based message system for rapid and scalable information discovery in intelligence analysis. We have designed new scalable content-based matching algorithms, and integrated powerful text query engines without loss of performance and scalability.
The second, known as the Data Concierge, is inventing a novel dynamic technology for enterprise application integration (EAI). It has the capability to discover new data sources, attach to them with minimal human intervention, and assess whether the data source content is applicable to the work of users connected to the Data Concierge. The major focus at this stage is a new meta-data and ontology driven approach for connecting to data sources by dynamically generating the necessary query API calls.
There's four papers on these projects:
1) I.Gorton, J. Almquist, K.Dorow, P.Gong, D.Thurman, An Architecture for Dynamic Data Integration, accepted in Adaptive and Evolvable Software Systems: Techniques, Tools, and Applications Minitrack, 38th Hawaiian International Conference on System Sciences, Hawaii, IEEE, 2005
2) J.Almquist, I.Gorton, J. Haack, Integration of a Text Search Engine with a Java Messaging Service, accepted in Software Engineering for Middleware (SEM'04), Linz, Austria, Springer-Verlag, September 2004 (30% acceptance rate)
3) I.Gorton, D.Thurman, J.Thomson, Next Generation Application Integration: The Data Concierge, in Procs 27th IEEE Computer Systems and Applications Conference (COMPSAC),pages 576-581, Dallas, Nov 2003
4) I.Gorton, Justin Almquist, Nick Cramer, Jereme Haack, Mark Hoza, An Efficient, Scalable Content-Based Messaging System, in Procs The 7th IEEE International Enterprise Distributed Object Computing Conference
Architectures and Models for Autonomic Application Servers
This project is devising and empirically validating new models and architectures for building self-monitoring and dynamically re-configurable application server technologies. Commercially available application servers (e.g. IBM Websphere, Microsoft .NET, JBoss) are being used as test-beds.
This is a new project that has commenced in 2004. An architectural framework has been designed, and we are building a test bed so that various adoptive models can be designed and tested. Initial results are expected in early 2005.
Software Architecture Evaluation Tools
We are designing, building and empirically evaluating a collection of collaborative software tools to support architecture evaluation in geographically dispersed teams. The tools cover architecture capture, an architectural patterns knowledge base, and collaborative workspaces for performing reviews.
This research is in its early stages. Currently there are 2 PhD students and 5 Honours students working on designing, building and evaluating the toolset. We hope to have publishable results in early 2005.
