Revision with unchanged content. Attribute Enabled Programming (AEP) is a wide-spreading technique that uses attributes to decorate existing code entities. AEP is supported in several general purpose languages, such as, .NET and Java, and by modeling languages, such as, MOF / UML. Attribute annotations may, however, fail to scale. Attribute dependencies complicate the interpretation and add-hoc solutions are difficult to maintain. A well defined development methodology that covers all the steps of Attribute Enabled Software Development (AESD) needs to be applied. This book focuses on the domain of mobile device software applications, based on Java Micro Edition (Java ME), and discusses the complete steps of applying AESD to model domain specific abstractions. Relation to product-lines is explored, and a concept of attribute-supported mobile containers to organize domain services, adapted from the enterprise containers, such as, Java EE and COM+, is presented. A structured methodology to transform attribute-based abstractions that warranties termination is introduced and illustrated. The book targets software professionals, and researchers in software engineering, programming languages, and graph transformations.