THE DEGREE of DOCTOR of PHILOSOPHY Ph. D
Total Page:16
File Type:pdf, Size:1020Kb
ECOLE DE TECHNOLOGIE SUPERIEURE UNIVERSITE DU QUEBEC THESIS PRESENTED TO ECOLE DE TECHNOLOGIE SUPERIEURE IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY Ph.D. BY TALEB, Mohamed A PATTERN-ORIENTED AND MODEL-DRIVEN ARCHITECTURE FOR INTERACTIVE SYSTEMS MONTREAL, DECEMBER 11, 2008 © Mohamed Taleb, 2008 Library and Bibliotheque et 1*1 Archives Canada Archives Canada Published Heritage Direction du Branch Patrimoine de I'edition 395 Wellington Street 395, rue Wellington Ottawa ON K1A0N4 Ottawa ON K1A0N4 Canada Canada Your file Votre reference ISBN: 978-0-494-47241-5 Our file Notre reference ISBN: 978-0-494-47241-5 NOTICE: AVIS: The author has granted a non L'auteur a accorde une licence non exclusive exclusive license allowing Library permettant a la Bibliotheque et Archives and Archives Canada to reproduce, Canada de reproduire, publier, archiver, publish, archive, preserve, conserve, sauvegarder, conserver, transmettre au public communicate to the public by par telecommunication ou par I'lnternet, prefer, telecommunication or on the Internet, distribuer et vendre des theses partout dans loan, distribute and sell theses le monde, a des fins commerciales ou autres, worldwide, for commercial or non sur support microforme, papier, electronique commercial purposes, in microform, et/ou autres formats. paper, electronic and/or any other formats. The author retains copyright L'auteur conserve la propriete du droit d'auteur ownership and moral rights in et des droits moraux qui protege cette these. this thesis. Neither the thesis Ni la these ni des extraits substantiels de nor substantial extracts from it celle-ci ne doivent etre imprimes ou autrement may be printed or otherwise reproduits sans son autorisation. reproduced without the author's permission. In compliance with the Canadian Conformement a la loi canadienne Privacy Act some supporting sur la protection de la vie privee, forms may have been removed quelques formulaires secondaires from this thesis. ont ete enleves de cette these. While these forms may be included Bien que ces formulaires in the document page count, aient inclus dans la pagination, their removal does not represent il n'y aura aucun contenu manquant. any loss of content from the thesis. •*• Canada THIS THESIS HAS BEEN EVALUATED BY THE FOLLOWING BOARD OF EXAMINERS Mr. Alain Abran, Thesis Director Software Engineering & Information Technology Department Ecole de technologie superieure Mr. Ahmed Seffah, Thesis Co-director Computer Science Department, Concordia University Me. Veronique Francois, President of the Board of Examiners Electrical Engineering Department, Ecole de technologie superieure Mr. Hakim Lounis Computer Science Department, Universite du Quebec A Montreal Mr. Eric Lefebvre Software Engineering & Information Technology Department Ecole de technologie superieure THIS THESIS WAS PRESENTED AND DEFENDED BEFORE A BOARD OF EXAMINERS AND PUBLIC DECEMBER 15, 2008 AT ECOLE DE TECHNOLOGIE SUPERIEURE La reutilisation de solutions eprouvees permet de resoudre un certain nombre de problemes de conception tels que : (1) le decouplage des divers aspects des systemes interactifs (par exemple, rarchitecture de la logique de sujet, de l'interface utilisateur, de la navigation et de 1'information; et (2) la separation des aspects specifiques lies aux plates-formes des caracteristiques communes a tous les systemes interactifs. Cette these identifie une liste de patterns et differents modeles visant a fournir, sous forme d'une architecture orientee patterns et dirigee par des modeles, une solution globale et integrative. Les modeles de patterns couvrent plusieurs niveaux d'abstraction, tels que: domaine, tache, dialogue, presentation, et layout. L'architecture montre comment plusieurs modeles peuvent 6tre combines a differents niveaux d'abstraction dans des structures heterogenes, qui peuvent alors etre utilises comme elements de base dans le developpement des systemes interactifs. A number of design problems continue to arise, such as: (1) decoupling the various aspects of interactive systems (for example, business logic, the Ul, navigation, and information architecture) and (2) isolating platform specifics from the concerns common to all interactive systems. In the context of a proposal for a Pattern-Oriented and Model-driven Architecture (POMA) for interactive systems, this thesis identifies an extensive list of pattern categories and types of models aimed at providing a pool of proven solutions to these problems. The models of patterns span several levels of abstraction, such as domain, task, dialog, presentation and layout. The proposed POMA architecture illustrates how several individual models can be combined at different levels of abstraction into heterogeneous structures which can then be used as building blocks in the development of interactive systems. UNE ARCHITECTURE ORIENTEE PATTERN ET DIRIGEE PAR DES MODELES POUR LES SYSTEMES INTERACTIFS TALEB, Mohamed RESUME La pratique quotidienne montre qu'il ne suffit pas d'aborder une conception equipe de directives et de guides conceptuels. Les developpeurs logiciels se doivent d'etre en mesure d'appliquer des solutions eprouvees extraites des meilleures pratiques de conception. Sans cela, le concepteur ne peut appliquer correctement les directives ni tirer pleinement profit de la puissance de la technologie et cela sans compromettre la qualite du produit final: performance, evolutivite, utilisabilite ou facilite d'utilisation. De plus, le concepteur ne peut « reinventer la roue » a chaque fois qu'il implemente une solution de conception dans un projet ou contexte particulier. La reutilisation de solutions eprouvees permet de resoudre un certain nombre de problemes de conception tels que : (1) le decouplage des divers aspects des systemes interactifs (par exemple, l'architecture de la logique de sujet, de l'interface utilisateur, de la navigation et de l'information; et (2) la separation des aspects specifiques lies aux plates-formes des caracteristiques communes a tous les systemes interactifs. Cette these identifie une liste de patterns et differents modeles visant a fournir, sous forme d'une architecture orientee patterns et dirigee par des modeles, une solution globale et integrative. Les modeles de patterns couvrent plusieurs niveaux d'abstraction, tels que: domaine, tache, dialogue, presentation, et layout. L'architecture montre comment plusieurs modeles peuvent etre combines a differents niveaux d'abstraction dans des structures heterogenes, qui peuvent alors etre utilises comme elements de base dans le developpement des systemes interactifs. Ce document est divise en six chapitres. Le premier chapitre presente l'etat de Part sur les « Patterns » en general et sur les differentes architectures de developpement pour les systemes interactifs telles que «les architectures N-tiers», «Pattern-Oriented Design (POD)», «Pattern-Supported Approach (PSA)», et «Model-Driven Architecture (MDA)». Le deuxieme chapitre introduit la problematique de la recherche avec ses objectifs, ses limites, la methodologie de la recherche et ses etapes de la recherche. Le troisieme chapitre decrit principalement les parties les plus importantes de la recherche qui est de developper une nouvelle architecture appelee architecture orientee pattern et dirigee par des modeles (POMA) pour faciliter le developpement des systemes interactifs incluant ses fondements et ses concepts cles, sa vue d'ensemble, ses justifications versus les architectures N-tiers, POD, PSA, MDA, et ses specifications. Le quatrieme chapitre decrit les niveaux architecturaux et les categories de patterns utilises dans POMA. Le cinquieme chapitre decrit les categories V de modeles utilises dans POMA. Le sixieme chapitre presente une etude de cas exploratoire appliquee a 1'architecture proposee dans cette recherche. Le dernier chapitre presente une conclusion sur les travaux de recherche et son evolution dans le futur. Mots-clcs: Pattern-Oriented and Model-driven Architecture (POMA), Pattern, Model, Interactive System, Software Engineering, Usability, MDA, POD, PSA, N- tiers. PATTERN-ORIENTED AND MODEL-DRIVEN ARCHITECTURE FOR INTERACTIVE SYSTEMS TALEB, Mohamed ABSTRACT Day-to-day experiences suggest that it is not enough to approach a complex design equipped with design tips, guidelines, and hints. Developers must also be able to use proven solutions emerging from the best design practices to solve new design challenges. Without these, the designer is unable to properly apply guidelines or take full advantage of the power of technology, resulting therefore in poor performance, poor scalability, and poor usability. Furthermore, the designer might "reinvent the wheel" when attempting to implement a design solution. A number of design problems continue to arise, such as: (1) decoupling the various aspects of interactive systems (for example, business logic, the UI, navigation, and information architecture) and (2) isolating platform specifics from the concerns common to all interactive systems. In the context of a proposal for a Pattern-Oriented and Model-driven Architecture (POMA) for interactive systems, this thesis identifies an extensive list of pattern categories and types of models aimed at providing a pool of proven solutions to these problems. The models of patterns span several levels of abstraction, such as domain, task, dialog, presentation and layout. The proposed POMA architecture illustrates how several individual models can be combined at different levels of abstraction