Embedded systems represent fundamentally new challenges for software design, which render conventional approaches to software
composition ineffective. Starting with the unique challenges of building embedded systems, this paper discusses key issues
of model-based technology for embedded systems. The discussion uses Model-Integrated Computing (MIC) as an example for model-based
software development. In MIC, domain-specific, multiple view models are used in all phases of the development process. Models
explicitly represent the embedded software and the environment it operates in, and capture the requirements of the application,
simultaneously. Models are descriptive, in the sense that they allow the formal analysis, verification and validation of the embedded system at design time. Models
are also generative, in the sense that they carry enough information for automatically generating embedded systems from them using the techniques
of program generators.