University of Technology
Email: atang [at] swin.edu.au
Tel: +61 3 9214 8739
Fax: +61 3 9819 0823
My main research interest is in software architectural design and design reasoning. Most research on improving software development processes focus on analysis and design processes and methods. There is little understanding on how design decisions are made and their influences on systems. As designers, we assume that we make the correct design decisions based on our intuition and experience. A deeper understanding of design decisions and the process to reach decisions will provide insights into whether decisions are sound and if they can be improved. Such research can help software architects and designers to better design, evaluate, trace and maintain complex systems.
My other project is to build accurate indoor location systems and use it to help elderly people in nursing home and patients in hospital.
Industry Collaborations: I have worked in the software industry for over 20 years as a developer, designer, architect, consultant and project manager. I appreciate the issues that the software industry faces. My research is about reflecting how we can improve software design and development practices to reduce design failures and to improve design and development efficiencies. If you are interested in my research or if you want to learn more about my research, you are welcome to contact me.
I managed Technology Student Accelerator Projects for Swinburne. It was a program sponsored by the Victorian Government to help SMEs to innovate. Details of past projects can be found here.
Current Research Projects: (1) Real-Time Location System (RTLS): this comprises several projects. The objective of this project is to accurately locate the movements of people in an indoor environment. This technology can be used to help elderly people living in nursing home and alone, and patients and workers in hospitals. My collaborators are Luan Lam, Michelle Dunn and John Grundy. My industry collaborator is Adilam Technologies. (2) Software Architecture Knowledge Management (SAKM) - I am collaborating with Hans van Vliet and Peng Liang on understanding how ontology and semantic wiki may help to improve the capture and use of software architecture knowledge. (3) Design Reasoning - I am collaborating with Hans van Vliet, Maryam Razavian and other researchers on understanding and improving design thinking and reasoning. I co-authored an opinion piece with Rick Kazman about software engineering research worthiness to the software industry. Comments are welcome.
Past Research Projects: (1) Through AutoCRC support, we worked with GM Holden to design a remote vehicle monitoring system. Using a remote monitoring system, we can selectively collect vehicle information from ECUs and probe ECUs. (2) I studied the use of DSRC to reduce vehicle collisions and to improve the safety and efficiency of transport systems. My research involved studying and building intelligent software to detect collision dangers and compute the best way to avoid collisions under different traffic scenarios. (3) performance monitoring and prediction of meter systems at PowerCor. (4) Intelligent Transport - Markus Lumpe and I built a tool to investigate the traffic flow of Melbourne based on VicRoads historical data. We intend to investigate how to predict traffic jam and give advice to motorists. A brief video of our work can be seen here.
- Associate Professor and Researcher at Swinburne University of Technology (July 2011 - )
- Visiting VU University Amsterdam (Jan 2010- June 2011)
- Stephenson Project - a knowledge management project between Oce Technologies and VU University Amsterdam
- study various aspects of agile software development process
- Senior Research Fellow / Senior Lecturer at Swinburne University of Technology (Nov 2006- Jan 2010)
- research into software architecture design reasoning
- manage a R&D team on a AutoCRC/ General Motors Holden project
- develop vehicle monitoring systems
- research into DSRC-based vehicle collision avoidance software
- PhD Study at Swinburne University of Technology (Apr 2004- Nov 2006)
- Senior Project Manager at Volante Solutions (2001 - 2004)
- manage document management and software development projects
- Project Manager at Open Telecommunications (2001)
o project planning and management of telecommunication software development
- Senior Manager at Tom.Com (2000)
- manage the architecture and software development, deployment and implementation of a horizontal portal
- Senior Consultant, R&D Manager at AT&T-GIS / NCR (1994-2000)
- project manage and architect a number of electronic-based and cheque-based payment solutions for central banks and commercial banks
- manage E-payment R&D team in the Payment Systems Division
- provide IT consulting services to clients in the Asia Pacific region
- Independent Senior Consultant (1986-1994)
- design & develop database kernels for Olivetti / AT&T
- design & develop front and back office stockbroking systems for ANZ McCaughan
- design decision support systems development for Telecom Australia and Hong Kong Telecom
- Consultant & Senior Consultant at Price Waterhouse (1984-1986)
- develop software applications on UNIX and MS platforms
- provide IT consulting services
- Part-time programmer (1982-1984)
Qualifications and Professional Affiliations
B.Com / B. Sc (Computer Science) - University of Melbourne, Grad Dip Project Management, PhD - Swinburne University of Technology
Member of ACM
Publications - Peer-reviewed Journal and Magazine Articles
1. L.D.M. Lam, A. Tang, J. Grundy, Heuristics-based Indoor Positioning Systems: A Systematic Literature Review, Journal of Location Based Services, Accepted for publication Sep 2016.
2. M. Razavian, A. Tang, R. Capilla, P. Lago, In Two Minds: How Reflections Influence Software Design Thinking, Journal of Software: Evolution and Process, Vol 28(6), pp 394-426, 2016.
3. H. van Vliet and A. Tang, Decision Making in Software Architecture, Journal of Systems and Software, Vol 117, pp 638-644, July 2016. http://dx.doi.org/10.1016/j.jss.2016.01.017
4. K.A. de Graaf, P. Liang, A. Tang, H. van Vliet, How Organisation of Architecture Documentation Affects Architectural Knowledge Retrieval, Science of Computer Programming, 121(6), pp 75-99, 2016.
5. R. Capilla, A. Jansen, A. Tang, P. Avgeriou, M.A. Babar, 10 years of Software Architecture Knowledge Management: Practice and Future, Journal of Systems and Software, Vol 116, pp 191-205 June 2016. http://dx.doi.org/10.1016/j.jss.2015.08.054
6. W. Ding, P. Liang, A. Tang, H. van Vliet, Understanding the Causes of Architecture Changes using OSS Mailing Lists, International Journal of Software Engineering and Knowledge Engineering, 25(9), pp1633-1651, Dec 2015.
7. M. Autili, L. Grunske, M. Lumpe, P. Pellicione, A. Tang, Aligning Qualitative, Real-Time, and Probabilistic Property Specification Patterns Using a Structured English Grammar, IEEE Transactions on Software Engineering, 41(7), 620-638, 2015.
8. P. Lago, I. Malavolta, H. Muccini, P. Pelliccione, A. Tang, The Road Ahead for Architectural Languages, IEEE Software, 98-105, Jan/Feb 2015.
9. K.A. de Graaf, P. Liang, A. Tang, W. van Hage, H. van Vliet, An Exploratory Study on Ontology Engineering for Software Architecture Documentation, Computers In Industry, 65(7), 1053-1064, 2014.
10. W. Ding, P. Liang, A. Tang, H. van Vliet, Knowledge-based Approaches in Software Documentation: A Systematic Literature Review, Information and Software Technology, 56: 545-567, 2014. http://dx.doi.org/10.1016/j.infsof.2014.01.008
11. A. Tang, M.F. Lau, Software Architecture Review by Association, Journal of Systems and Software, 88(2014):87-101, Feb 2014. http://dx.doi.org/10.1016/j.jss.2013.09.044
12. U. van Heesch, P. Avgeriou, A. Tang, Does decision documentation help junior designers rationalize their decisions? - A comparative multiple-case study, Journal of Systems and Software, 86(6):1545-1565, June 2013.
13. I. Malavolta, P. Lago, H. Muccini, P. Pellicione, A. Tang, What Industry Needs from Architecture Languages: A Survey, IEEE Transactions on Software Engineering, 39(6): 869-891, June, 2013.
14. A. Tang, H. van Vliet, Design Strategy and Software Design Effectiveness. IEEE Software, 51-55, Jan-Feb 2012. (Excerpt of paper).
15. P. Liang, A. Jansen, P. Avgeriou, A. Tang, L. Xu, Advanced quality prediction model for software architectural knowledge sharing. Journal of Systems and Software, 84(5):786-802, May 2011. (PDF)
16. A. Tang, A. Aleti, J. Burge, H. van Vliet, What makes software design effective?, Journal of Design Studies, 31(6): 614-640, Nov 2010. (PDF)
17. A. Tang, P. Avgeriou, A. Jansen, R. Capilla and M. A. Babar, A Comparative Study of Architecture Knowledge Management Tools, Journal of Systems and Software, 83(3): 352-370, Mar 2010. (PDF)
18. A. Tang, A. Yip, Collision Avoidance Timing Analysis of DSRC-based Vehicles, Accident Analysis and Prevention, 42(1): 182-195, Jan 2010. (PDF)
19. A. Tang, J. Han and R. Vasa. Software Architecture Design Reasoning: A Case for Improved Methodology Support. IEEE Software, 43-49, March/April 2009. (PDF)
20. A. Tang, Y. Jin and J. Han. A Rationale-based Architecture Model for Design Traceability and Reasoning. Journal of Systems and Software, 80(6):918-934, June 2007. (PDF)
21. A. Tang, A. Nicholson, Y. Jin and J. Han. Using Bayesian Belief Networks for Change Impact Analysis in Architecture Design. Journal of Systems and Software, 80(1):127-148, January, 2007. (PDF)
22. A. Tang, M.A. Barbar, I. Gorton and J. Han. A Survey of Architecture Design Rationale. Journal of Systems and Software, 79(12):1792-1804, December 2006. (PDF)
Publications - Book Chapters
1. A. Tang, P. Liang, V. Clerc, H. van Vliet, Supporting Co-evolving Architectural Requirements and Design through Traceability and Reasoning, Relating Software Requirements to Software Architecture, Avgeriou, P., Grundy, J., Lago, P. & Mistrik, I. (ed.), pp.35-60, Springer, 2011. (PDF)
2. A. Tang, H. van Vliet, Software Architecture Design Reasoning, Software Architecture Knowledge Management: Theory and Practice, Babar, M. A.; Dingsoyr, T.; Lago, P. & van Vliet, H. (ed.), pp.155-174, Springer, 2009. (PDF)
Publications - Books
1. Ivan Mistrik, Antony Tang, Rami Bahsoon and Judith A. Stafford, Aligning Enterprise, System, and Software Architectures, pp.369, IGI Global, 2012.
Publications - Peer-reviewed Conference and Workshop Papers
1. C. Schriek, J.M. van der Werf, A. Tang, F. Bex, Software Architecture Design Reasoning: A Card Game to Help Novice Designers, European Conference on Software Architecture (ECSA 2016), Accepted for publication.
2. S. Sohrabi, A. Tang, I. Moser, A. Aleti, Adaptive virtual machine migration mechanism for energy efficiency, 5th International Workshop on Green and Sustainable Software (GREENS16), pp 8-14, 2016.
3. M. Razavian, A. Tang, R. Capilla, P. Lago, Reflective Approach for Software Design Decision Making (QRASA 2016), 2016.
4. A. Tang, H. van Vliet. Software Designers Satisfice. European Conference on Software Architecture (ECSA 2015), pp 105-120, 2015.
5. W. Ding, P. Liang, A. Tang, H. van Vliet. Causes of Architecture Changes: An Empirical Study through the Communications in OSS Mailing Lists, Software Engineering and Knowledge Engineering (SEKE 2015), 2015.
6. S. Barnett, R. Vasa, A. Tang. A Conceptual Model for Architecting Mobile Applications, in Proceedings of Working IEEE/IFIP Conference on Software Architecture (WICSA 2015), pp. 105-114, 2015.
7. K.A. de Graaf, P. Liang, A. Tang and H. van Vliet. Supporting Architecture Documentation: A Comparison of Two Ontologies for Knowledge Retrieval, in Proceedings of 19th International Conference on Evaluation and Assessment in Software Engineering (EASE 2015), pp. 3:1-3:10, 2015.
8. K.A. de Graaf, P. Liang, A. Tang and H. van Vliet. The Impact of Prior Knowledge on Searching in Software Documentation, in Proceedings of the 2014 ACM Symposium on Document Engineering (DocEng 2014), pp. 189-198, 2014. doi>10.1145/2644866.2644878.
9. W. Ding, P. Liang, A. Tang, H. van Vliet, and M. Shahin, How do open source communities document software architecture: An exploratory survey, in Proceedings of the 19th International Conference on Engineering of Complex Computer Systems (ICECCS), Tianjin, China, IEEE Computer Society, pp. 136-145, 2014. http://dx.doi.org/10.1109/ICECCS.2014.26.
10. K.A. de Graaf, A. Tang, P. Liang and H. van Vliet. Ontology-based Software Architecture Documentation, Proceedings of the 2012 Joint Working Conference on Software Architecture & 6th European Conference on Software Architecture (WICSA-ECSA 2012), 121-130, 2012.
11. A. Tang, T. Gerrits, P. Nacken and H. van Vliet, On the Responsibilities of Software Architects and Software Engineers in an Agile Environment: Who Should Do What? 4th International Workshop on Social Software Engineering (SSE 11) at FSE/ESEC, 2011.
12. C. Manteli., B. van den Hooff, A. Tang, H. van Vliet, The impact of Multi-site Software Governance on Knowledge Management, Proceedings of the 6th International Conference on Global Software Engineering (ICGSE), 40-49, 2011.
13. R. Premraj, G. Nauta, A. Tang, H. van Vliet, The Boomeranged Software Architect, Proceedings of the 9th Working IEEE/IFIP Conference on Software Architecture (WICSA 2011), 73-82, 2011. (PDF)
14. A. Tang, P. Liang, H. van Vliet, Software Architecture Documentation: The Road Ahead, Proceedings of the 9th Working IEEE/IFIP Conference on Software Architecture (WICSA 2011), pp. 252-255, 2011. (PDF)
15. R. Premraj, A. Tang, N. Linssen, H. Geraats, H. van Vliet, To Branch or Not To Branch?, Proceedings of the 2011 International Conference on Systems and Software Process (ICSSP 2011), pp 81-90, 2011. doi>10.1145/1987875.1987890. (PDF)
17. A. Tang, T. de Boer, H. van Vliet, Building Roadmaps: A Knowledge Sharing Perspective, Accepted for Publication in Sixth Workshop on SHAring and Reusing architectural Knowledge (SHARK 2011), pp 13-20, 2011. doi>10.1145/1988676.1988681. (PDF)
18. A. Tang, W. Couwenberg, E. Scheppink, N. A.de Brugh, S. Deelstra, H. van Vliet, SPL Migration Tensions: An Industry Experience, 1st Knowledge-Oriented Product Line Engineering Workshop (SPLASH 2010), pp 1-6, 2010. doi>10.1145/1964138.1964141 . (PDF)
16. A. Tang, A. Aleti, Human Reasoning and Software Design: An Analysis, Proceedings Workshop Studying Professional Software Design, University of California, Irvine, 2010. (PDF)
17. P. Zhang, L. Grunske, A. Tang, and B. Li, Probabilistic Timed Property Sequence Charts- A Formal Syntax, Automated Software Engineering (
ASE2009), short paper, pp 500-504, 2009. (PDF)
18. A. Tang, H. van Vliet, Modeling Constraints Improves Software Architecture Design Reasoning, In Proceedings of the Joint Working IEEE/IFIP Conference on Software Architecture 2009 & European Conference on Software Architecture 2009 (WICSA/ECSA 2009), 253-256, 2009. (PDF)
19. M. van den Berg, A. Tang, R. Farenhorst, A Constraint-Oriented Approach to Software Architecture Design, In Proceedings of the Quality Software International Conference 2009 (QSIC 2009), 396-405, 2009. (PDF)
20. W.F. Bu, A. Tang, J. Han, An Analysis of Decision-Centric Architectural Design Approaches, In Fourth Workshop on SHAring and Reusing architectural Knowledge (SHARK 2009), 33-40, 2009. (PDF)
21. A. Tang, F.C. Kuo, and M. F. Lau, Towards Independent Software Architecture Review. In Proceedings of the Second European Conference on Software Architecture (ECSA '08), 306-313, 2008. (PDF)
22. A. Tang, M. Tran, J. Han, H. van Vliet, Design Reasoning Improves Software Design Quality. In Proceedings of the Fourth International Conference on the Quality of Software-Architectures (QoSA '08), 28-42, 2008. (PDF)
23. R. Capilla, F. Nava, A. Tang, Attributes for Charactering the Evolution of Architectural Design Decisions. In Proceedings of the Third International IEEE Workshop on Software Evolvability at IEEE International Conference on Software Maintenance (ICSM 2007), 15-22, 2007. (PDF)
24. Y. Jin, A. Tang, J. Han, Y. Liu, Performance Evaluation and Prediction for Legacy Information Systems. In Proceedings of the 29th International Conference on Software Engineering (ICSE 2007), 540-549, 2007. (PDF)
25. M. A. Babar, A. Tang, I. Gorton and J. Han. Industrial Perspective on the Usefulness of Design Rationale for Software Maintenance: A Survey. In Proceedings of the Quality Software International Conference 2006 (QSIC 2006), 201-208, 2006. (PDF)
26. A. Tang, M. A. Babar, I. Gorton, J. Han. A Survey of the Use and Documentation of Architecture Design Rationale. In Proceedings of the 5th Working IEEE/IFIP Conference on Software Architecture (WICSA 2005), 89-98, 2005. Best paper. (PDF)
27. A. Tang, Y. Jin, J. Han, A. Nicholson. Predicting Change Impact in Architecture Design with Bayesian Belief Networks. In Proceedings of the 5th Working IEEE/IFIP Conference on Software Architecture (WICSA 2005), 67-76, 2005. Best paper. (PDF)
28. A. Tang, J. Han. Architecture Rationalization: A Methodology for Architecture Verifiability, Traceability and Completeness. In Proceedings of the 12th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS 2005), 135-144, 2005. (PDF)
29. A. Tang, J. Han, P. Chen. A Comparative Analysis of Architecture Frameworks. In Proceedings of the 11th Asia-Pacific Software Engineering Conference (APSEC 2004), 640-647, 2004. (PDF)
30. T.Y. Chen, F.C. Kuo, Y. Liu, A. Tang. Metamorphic Testing and Testing with Special Values. In Proceedings of the 5th International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD 2004), 128-134, 2004. (PDF)
Publications - Technical Reports and Other Articles
1. H. Muccini, A. Tang, Special issue: Selected papers from the 12th International Conference on Quality Software (QSIC 2012), Science of Computer Programming 97 (2015): 381-382.
2. S. Deelstra, J. Kesseler, A. Tang, H. van Vliet, Knowledge in the Field of Software Architecture, Informatie, 52(9):48-53, Nov 2010.
3. A. Tang, P. Lago, Notes on Design Reasoning Techniques, Technical Report SUTIT-TR2010-01, Faculty of ICT, Swinburne University of Technology, 2010. (PDF)
4. A. Tang, A. Yip, Collision Avoidance Timing Analysis for DSRC-based Vehicles, Technical Report C401 M48 AutoCRC, 2009.
5. A. Tang, Vehicle-to-Vehicle Communications for Accident Mitigation - A Preliminary Report, Technical Report C4-01 TR10 AutoCRC, 2008.
6. A. Tang, Managing project risks with architecture modelling, Australian Project Manager - Journal of the Australian Institute of Project Management, , 25(2):13-14, June 2005. (PDF)
7. A. Tang, M.A. Babar, I. Gorton, J. Han. A Survey on Architecture Design Rationale. Technical Report SUTICT-TR2005.02, Faculty of ICT, Swinburne University of Technology, 2005.
8. A. Tang, J. Han. Architecture Rationalization: A Methodology for Architecture Verifiability, Traceability and Completeness. Technical Report SUTIT-TR2004.05, School of Information Technology, Swinburne University of Technology, 2004.
9. A. Tang, J. Han, P. Chen. A Comparative Analysis of Architecture Frameworks. Technical Report SUTIT-TR2004.01, School of Information Technology, Swinburne University of Technology, 2004.
- Ms. Ting-Ting Bi, (current PhD, co-supervise with Prof. P. Liang and Prof. H. van Vliet)
- Mr. Luan Lam (Masters in 2013, co-supervise with A/Prof. B. Vu and current PhD, co-supervise with Prof. J. Grundy)
- Mr. Wei Ding (PhD in 2015, co-supervise with Prof. P. Liang and Prof. H. van Vliet)
- Mr. Klaas de Graaf (Masters in 2011, co-supervise with Prof. P. Lago and PhD in 2015, co-supervise with Prof. P. Liang and Prof. H. van Vliet)
A. Tang. A Rationale-based Model for Architecture Design Reasoning. February 2007. (PDF)
- A. Tang, A. Yip, I. Lei, Software development system having particular adaptability to financial payment switches. United States Patent, Number 7,131,108. 31st October 2006.
- A. Tang and M. Anderson, Position Tracking by RFID and Video Imaging, Victorian Government Technology Voucher, 2015-2016.
- A. Tang, Context-based Indoor Movement Positioning Prediction, NICTA-Swinburne Software Innovation Laboratory, 2015-2017.
- P. Liang, A. Tang, H.v. Vliet, Combining Software Architecture and Agile Development Process, National Natural Science Foundation of China (NSFC), 2015-2018.
- P. Stoddart et al., Industry Transformation Training Centre in Biodevices and Diagnostics, Australian Research Council (ARC) Grant, 2013-2016.
- P. Liang, A. Tang, H.v. Vliet, C.Z. Xu, B. Wen, A Knowledge-enabled Approach for Flexible Software Documentation, National Natural Science Foundation of China (NSFC), 2011-2015.
- A. Tang and M. Harrigan, Wildcard Project, Victorian Government Technology Voucher, 2013
- A. Tang, Proactive Vehicle Communications Demonstrator, AutoCRC, 2009.
- A. Tang, An Investigation into the Impact of Architectural Constraints on Software Architecture, Swinburne University of Technology Research Development Scheme, 2008.
- A. Tang, F.-C. Kuo, M.F. Lau, Verification of Software Architecture Design, Faculty of ICT - Dean's Collaborative Grants Scheme, 2007
- J. Han, A. Tang, C.F. Liu and J-G Schneider. Proactive Maintenance (Dynamically Reconfigurable Monitoring and Diagnostic Systems), AutoCRC, 2006-2008.
- J. Han, A. Tang and Y. Jin. System Performance and Scalability, CitiPower and Powercor Australia, 2005-2006.
Tool Support and Research Instruments
- This XML file is an extension to UML to support the capture and representation of the Architecture Rationale and Element Linkage (AREL) model. It provides the stereotyped template for architects to enter design reasoning information. It requires Enterprise Architect (version 7.1) tool to run. Click here to download version 1.2 of the XML file and instructions. You could download Enterprise Architect version 7.1. from http://www.sparxsystems.com.au/.
- The AREL Model Checking tool (version 1.2) is a .Net program to trace and check correctness of design reasoning models stored in Enterprise Architect. It also integrates with Netica, a Bayesian Belief Network tool, to capture and compute decision dependency probabilities.
- I have prepared a demonstration of the AREL tool using Enterprise Architect, you will need to have Adobe Flash installed to run it.
- Hans and I conducted an experiment on how students and professionals reason. We used vignettes as our research instruments. We concluded that many software designers use satisficing approach in their design reasoning. Some information about this experiment design can be found here.