Invited Speaker

Invited Talk from Thomas Cottenier of Hengsoft LLC

Thomas Cottenier is a Member of the Technical Staff at Hengsoft LLC, a newly established software company with operations in the USA, Ukraine, Russia and China. Prior to joining Hengsoft, Thomas worked as a researcher in the Software and System Engineering Research Lab at Motorola where he designed an aspect-oriented extension to the UML modelling language tailored to the development of telecom infrastructure software. Over three years, Thomas has been actively involved in the design, development and deployment of custom Aspect-Oriented Software Development solutions in different business units at Motorola, including the Wireless Broadband division and the Mobile Device division.

Thomas holds a Ph.D. in Computer Science from the Illinois Institute of Technology, Chicago and a MS in Telecom System Engineering from the Université Libre de Bruxelles, Belgium.

 

Title: Aspect-Oriented Software Development and the Division of Labour in Industrial Software Development Projects

Abstract

We discuss the impacts of AOSD technologies on the division of labour within large software development organizations. We use a real-world case study from an industrial telecom software development project at Motorola. First, we present a traditional software development organizational structure composed of one hundred software engineers, organized into a dozen development teams. We discuss the decomposition of the control software into modules, their mapping to the physical components of the system and the allocation of responsibilities with respect to the implementation of different features the system. Second, we consider an aspect-oriented decomposition of the system based on an analysis of the system requirements. AOSD enables the division of labour within the organization to be structured according to more specialized, cohesive slices of behaviour. Development teams can be assigned responsibilities with respect to the implementation of more specific requirements of the system. We show that such decomposition increases the productivity of the development teams. Yet, it requires more effort with respect to the coordination of development tasks and the resolution of interactions between behaviours. Hence, we argue that rigorous software architecture is a necessity for the adoption of AOSD in large software development organizations.