Journal of Zhejiang University-SCIENCE A

, Volume 7, Issue 10, pp 1652–1661 | Cite as

Applying the model driven generative domain engineering method to develop self-organizing architectural solutions for mobile robot

  • Liang Hai-hua 
  • Zhu Miao-liang 


Model driven generative domain engineering (MDGDE) is a domain engineering method aiming to develop optimized, reusable architectures, components and aspects for application engineering. Agents are regarded in MDGDE as special objects having more autonomy, and taking more initiative. Design of the agent involves three levels of activities: logical analysis and design, physical analysis, physical design. This classification corresponds to domain analysis and design, application analysis, and application design. Agent is an important analysis and design tool for MDGDE because it facilitates development of complex distributed system—the mobile robot. According to MDGDE, we designed a distributed communication middleware and a set of event-driven agents, which enables the robot to initiate actions adaptively to the dynamical changes in the environment. This paper describes our approach as well as its motivations and our practice.

Key words

Domain engineering Agent oriented software engineering Mobile robot 

CLC number



Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Alami, R., Herrb, M., Morisset, B., Chatila, R., Ingrand, F., Moutarlier, P., Fleury, S., Khatib, M., Simeon, T., 2000. Around the Lab in 40 Days [Indoor Robot Navigation]. Proceedings of IEEE International Conference on Robotics and Automation. San Francisco, CA, 3:88–94.Google Scholar
  2. Arlow, J., Ila, N., 2003. Enterprise Patterns and MDA: Building Better Software with Archetype Patterns and UML. Addison-Wesley, p.25–30.Google Scholar
  3. Bass, L., Paul, C., Rick, K., 2000. Software Architecture in Practice (2nd Ed.). Addison-Wesley, p.17–20.Google Scholar
  4. Bordini, R.H., Dastani, M., Dix, J., El Fallah Seghrouchni, A., 2005. Multi-agent Programming: Languages, Platforms and Applications (1st Ed.). Springer, p.89–102.Google Scholar
  5. Bresciani, P., Perini, A., Giorgini, P., Giunchiglia, F., Mylopoulos, J., 2004. TROPOS: an agent-oriented software development methodology. Autonomous Agents and Multi-Agent Systems, 8(3):203–236. [doi:10.1023/B:AGNT.0000018806.20944.ef]CrossRefMATHGoogle Scholar
  6. Caire, G., Coulier, W., Garijo, F.J., Gomez, J., Pavón, J., Leal, F., Chainho, P., Kearney, P.E., Stark, J., Evans, R., et al., 2001. Agent Oriented Analysis Using MESSAGE/UML. Proceedings AOSE 2001. Springer, p.119–135.Google Scholar
  7. Consel, C., Latry, F., Révillère, L., Cointe, P., 2005. A Generative Programming Approach to Developing DSL Compilers. Proceedings of the Generative Programming and Component Engineering 2005, p.29–46.Google Scholar
  8. Czarnecki, K., Ulrich, W.E., 2000. Generative Programming: Methods, Tools, and Applplication. Addison-Wesley, p.44–78.Google Scholar
  9. DeLoach, S.A., Wood, M.F., Sparkman, C.H., 2001. Multiagent systems engineering. The International Journal of Software Engineering and Knowledge Engineering, 11(3): 231–258. [doi:10.1142/S0218194001000542]CrossRefGoogle Scholar
  10. Duffy, D.J., 2004. Domain Architectures: Models and Architectures for UML Applications. John Wiley & Sons, p.120–135.Google Scholar
  11. Evans, E., 2003. Domain-Driven Design: Tackling Complexity in the Heart of Software. Addison-Wesley, p.77–102.Google Scholar
  12. Filman, R., Elrad, T., Clarke, S., Aksit, M., 2004. Aspectoriented Software Development. Addison Wesley Professional, p.133–135.Google Scholar
  13. Gal, A., Wolfgang, S.P., Spinczyk, O., 2001. AspectC++: Language Proposal and Prototype Implementation. OOPSLA 2001 Workshop on Advanced Separation of Concerns in Object-oriented Systems. Tampa, Florida, p.20–36.Google Scholar
  14. Gamma, E., Helm, R., Johnson, R., Vlissides, J., 1995. Design Patterns: Elements of Reusable Object-oriented Software. Addison-Wesley, p.136–139.Google Scholar
  15. Kinny, D., Georgeff, M., Rao, A., 1996. A Methodology and Modeling Technique for Systems of BDI Agents. Proceedings of the Seventh European Workshop on Modeling Autonomous Agents in a Multi-agent World (MAAMAW 96). LNAI 1038, Springer.Google Scholar
  16. Kleppe, A., Warmer, J., Bast, W., 2003. MDA Explained: The Model Driven Architecture: Practice and Promise. Addison Wesley, p.33–45.Google Scholar
  17. Lohmann, D., Blaschke, G., Spinezyk, O., 2004. Generic Advice: On the Combination of AOP with Generative Programming in AspectC++. Proceedings of GPCE’04, p.55–74.Google Scholar
  18. Low, K.H., Leow, W.K., Ang, Jr M.H., 2002. A Hybrid Mobile Robot Architecture with Integrated Planning and Control. Proceedings of the 1st International Joint Conference on Autonomous Agents and Multiagent Systems. Bologna, Italy, p.219–226. [doi:10.1145/544741.544797]Google Scholar
  19. Ollero, A., Mandow, A., Munoz, V., Gomez de Gabriel, J., 1994. Control architecture for mobile robot operation and navigation. Robotics and Computer-Integrated Manurfacturing, 11(4):259–269. [doi:10.1016/0736-5845(95)00032-1]CrossRefGoogle Scholar
  20. Philip, G., 2003. The Laws of Software Process: A New Model for the Production and Management of Software. Auerbach Publications, p.136–148.Google Scholar
  21. Pons, N., Delaplace, S., Rabit, J., 1993. Mobile Robot Architecture Dedicated to Asynchronous Events Management. Proceedings of the 8th International Conference on Applications of Artificial Intelligence in Engineering. Toulouse, France, 2:547–560.Google Scholar
  22. Rosenblatt, J.K., Payton, D.W., 1989. Fine-grained Alternative to the Subsumption Architecture for Mobile Robot Control. Proceedings of IJCNN International Joint Conference on Neural Networks. Washington DC, p.317–323.Google Scholar
  23. Smaragdakis, Y., Batory, D., 2002. Mixin layers: an objectoriented implementation technique for refinements and collaboration-based designs. ACM Transactions on Software Engineering and Methodology. 11(2):215–255. [doi:10.1145/505145.505148]CrossRefGoogle Scholar
  24. Sowmya, A., 1992. Real-time Reactive Model for Mobile Robot Architecture. Proceedings of SPIE Conference on Applications of Artificial Intelligence X: Machine Vision and Robotics. Orlando, FL, 1708:713–721.Google Scholar
  25. Watanabe, M., Onoguchi, K., Kweon, I., Kuno, Y., 1992. Architecture of Behavior-based Mobile Robot in Dynamic Environment. Proceedings of IEEE International Conference on Robotics and Automation. Nice, France, 3:2711–2718. [doi:10.1109/ROBOT.1992.219996]Google Scholar
  26. Wooldridge, M., 1997. Agent-based software engineering. IEEE Proc. on Software Engineering, 144(1):26–37. [doi:10.1049/ip-sen:19971026]CrossRefGoogle Scholar
  27. Yao, Z., Zheng, Q.L., Chen, G.L., 2005. AOP++: A Generic Aspect-oriented Programming Framework in C++. GPCE 2005, p.94–108.Google Scholar
  28. Zhu, M.L., Zhang, X., Wang, X., Tang, W.J., 2000. Computer integration system of autonomous intelligent robot self-organization structure IRASO. Pattern Recognition and Artificial Intelligence, 13(1):36–41 (in Chinese).Google Scholar

Copyright information

© Zhejiang University 2006

Authors and Affiliations

  • Liang Hai-hua 
    • 1
  • Zhu Miao-liang 
    • 1
  1. 1.School of Computer Science and TechnologyZhejiang UniversityHangzhouChina

Personalised recommendations