Abstract :
Over the past 5 years, the Subscriber Software group of the Motorola Networks and Enterprise division has been engaged in establishing a Model-Driven software development approach to allow the efficient creation of quality software to be used in a variety of different product lines produced. Historically, this division has operated internally as three independent product groups, with each group producing a new product line every 2 to 3 years. In addition, each product line may contain 10-20 product variants, often distinguished through software with an expected lifetime of a particular product to exceed 10 years. A clear challenge for the division was to cope with the ever increasing rate of change in technology, the growing number of active product lines, accelerating the introduction of new product lines to meet customer demands, while simultaneously maintaining the current workforce size. This paper seeks to capture the experiences over these past 5 years, covering the challenges encountered in deploying this approach to a global workforce, redefining the organizational boundary lines, and overcoming the difficulties in meeting both short term product centric development time constraints while balancing a longer term strategic objective. In particular, the paper will focus on aspects on Model-driven development that are critical to large scale deployment, such as model(s) organization, distribution and control, in addition to component creation and management and quality aspects of multi-product line software. In addition, the paper will address the importance of formal architectures and design as applied to this approach... The paper concludes with the establishment of a cohesive environment for large-scale component based model-driven software development, with an emphasis on minimizing the overhead associated with artifact management, while maximizing consistency across the entire environment.
Keywords :
object-oriented programming; software quality; Motorola network; artifact management; independent product groups; large-scale component based model-driven software development; multiproduct line software; product centric development; software quality; Computer architecture; Emergency services; Fires; Large-scale systems; Mobile communication; Product safety; Programming; Protocols; Software development management; Software quality;