908 resultados para systems design


Relevância:

30.00% 30.00%

Publicador:

Resumo:

Human-Centered Design (HCD) is a well-recognized approach to the design of interactive computing systems that supports everyday and professional lives of people. To that end, the HCD approach put central emphasis on the explicit understanding of users and context of use by involving users throughout the entire design and development process. With mobile computing, the diversity of users as well as the variety in the spatial, temporal, and social settings of the context of use has notably expanded, which affect the effort of interaction designers to understand users and context of use. The emergence of the mobile apps era in 2008 as a result of structural changes in the mobile industry and the profound enhanced capabilities of mobile devices, further intensify the embeddedness of technology in the daily life of people and the challenges that interaction designers face to cost-efficiently understand users and context of use. Supporting interaction designers in this challenge requires understanding of their existing practice, rationality, and work environment. The main objective of this dissertation is to contribute to interaction design theories by generating understanding on the HCD practice of mobile systems in the mobile apps era, as well as to explain the rationality of interaction designers in attending to users and context of use. To achieve that, a literature study is carried out, followed by a mixed-methods research that combines multiple qualitative interview studies and a quantitative questionnaire study. The dissertation contributes new insights regarding the evolving HCD practice at an important time of transition from stationary computing to mobile computing. Firstly, a gap is identified between interaction design as practiced in research and in the industry regarding the involvement of users in context; whereas the utilization of field evaluations, i.e. in real-life environments, has become more common in academic projects, interaction designers in the industry still rely, by large, on lab evaluations. Secondly, the findings indicate on new aspects that can explain this gap and the rationality of interaction designers in the industry in attending to users and context; essentially, the professional-client relationship was found to inhibit the involvement of users, while the mental distance between practitioners and users as well as the perceived innovativeness of the designed system are suggested in explaining the inclination to study users in situ. Thirdly, the research contributes the first explanatory model on the relation between the organizational context and HCD; essentially, innovation-focused organizational strategies greatly affect the cost-effective usage of data on users and context of use. Last, the findings suggest a change in the nature of HCD in the mobile apps era, at least with universal consumer systems; evidently, the central attention on the explicit understanding of users and context of use shifts from an early requirements phase and continual activities during design and development to follow-up activities. That is, the main effort to understand users is by collecting data on their actual usage of the system, either before or after the system is deployed. The findings inform both researchers and practitioners in interaction design. In particular, the dissertation suggest on action research as a useful approach to support interaction designers and further inform theories on interaction design. With regard to the interaction design practice, the dissertation highlights strategies that encourage a more cost-effective user- and context-informed interaction design process. With the continual embeddedness of computing into people’s life, e.g. with wearable devices and connected car systems, the dissertation provides a timely and valuable view on the evolving humancentered design.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

The increasing emphasis on energy efficiency is starting to yield results in the reduction in greenhouse gas emissions; however, the effort is still far from sufficient. Therefore, new technical solutions that will enhance the efficiency of power generation systems are required to maintain the sustainable growth rate, without spoiling the environment. A reduction in greenhouse gas emissions is only possible with new low-carbon technologies, which enable high efficiencies. The role of the rotating electrical machine development is significant in the reduction of global emissions. A high proportion of the produced and consumed electrical energy is related to electrical machines. One of the technical solutions that enables high system efficiency on both the energy production and consumption sides is high-speed electrical machines. This type of electrical machines has a high system overall efficiency, a small footprint, and a high power density compared with conventional machines. Therefore, high-speed electrical machines are favoured by the manufacturers producing, for example, microturbines, compressors, gas compression applications, and air blowers. High-speed machine technology is challenging from the design point of view, and a lot of research is in progress both in academia and industry regarding the solution development. The solid technical basis is of importance in order to make an impact in the industry considering the climate change. This work describes the multidisciplinary design principles and material development in high-speed electrical machines. First, high-speed permanent magnet synchronous machines with six slots, two poles, and tooth-coil windings are discussed in this doctoral dissertation. These machines have unique features, which help in solving rotordynamic problems and reducing the manufacturing costs. Second, the materials for the high-speed machines are discussed in this work. The materials are among the key limiting factors in electrical machines, and to overcome this limit, an in-depth analysis of the material properties and behavior is required. Moreover, high-speed machines are sometimes operating in a harsh environment because they need to be as close as possible to the rotating tool and fully exploit their advantages. This sets extra requirements for the materials applied.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

In 2002, The Ontario Federation of School Athletic Associations (OFSAA) identified that in providing extracurricular sport programs schools are faced with the 'new realities' of the education system. Although research has been conducted exploring the pressures impacting the provision of extracurricular school sport (Donnelly, Mcloy, Petherick, & Safai, 2000), few studies within the field have focused on understanding extracurricular school sport from an organizational level. The focus of this study was to examine the organizational design (structure, systems, and values) of the extracurricular sport department within three Ontario high schools, as well as to understand the context within which the departments exist. A qualitative multiple case study design was adopted and three public high schools were selected from one district school board in Ontario to represent the cases under investigation. Interviews, observations and documents were used to analyze the extracurricular sport department design of each case and to better understand the context within which the departments exist. As the result of the analysis of the structure, systems and values of each case, two designs emerged- Design KT1 and Design KT2. Differences in the characteristics of design archetype KT1 and KT2 centered on the design dimension of values, and therefore this study identified that contrasting organizational values reflect differences in design types. The characteristics of the Kitchen Table archetype were found to be transferable to the sub-sector of extracurricular school sport, and therefore this research provides a springboard for further research in organizational design within the education sector of extracurricular high school sport. Interconnections were found between the data associated with the external and internal contexts within which the extracurricular sport departments exist. The analysis of the internal context indicated the important role played by organizational members in shaping the context within which the departments exist. The analysis of the external context highlighted the institutional pressures that were present within the education environment. Both political and cultural expectations related to the role of extracurricular sport within schools were visible and were subsequently used by the high schools to create legitimacy and prestige, and to access resources.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

The "Java Intelligent Tutoring System" (JITS) research project focused on designing, constructing, and determining the effectiveness of an Intelligent Tutoring System for beginner Java programming students at the postsecondary level. The participants in this research were students in the School of Applied Computing and Engineering Sciences at Sheridan College. This research involved consistently gathering input from students and instructors using JITS as it developed. The cyclic process involving designing, developing, testing, and refinement was used for the construction of JITS to ensure that it adequately meets the needs of students and instructors. The second objective in this dissertation determined the effectiveness of learning within this environment. The main findings indicate that JITS is a richly interactive ITS that engages students on Java programming problems. JITS is equipped with a sophisticated personalized feedback mechanism that models and supports each student in his/her learning style. The assessment component involved 2 main quantitative experiments to determine the effectiveness of JITS in terms of student performance. In both experiments it was determined that a statistically significant difference was achieved between the control group and the experimental group (i.e., JITS group). The main effect for Test (i.e., pre- and postiest), F( l , 35) == 119.43,p < .001, was qualified by a Test by Group interaction, F( l , 35) == 4.98,p < .05, and a Test by Time interaction, F( l , 35) == 43.82, p < .001. Similar findings were found for the second experiment; Test by Group interaction revealed F( 1 , 92) == 5.36, p < .025. In both experiments the JITS groups outperformed the corresponding control groups at posttest.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Passive solar building design is the process of designing a building while considering sunlight exposure for receiving heat in winter and rejecting heat in summer. The main goal of a passive solar building design is to remove or reduce the need of mechanical and electrical systems for cooling and heating, and therefore saving energy costs and reducing environmental impact. This research will use evolutionary computation to design passive solar buildings. Evolutionary design is used in many research projects to build 3D models for structures automatically. In this research, we use a mixture of split grammar and string-rewriting for generating new 3D structures. To evaluate energy costs, the EnergyPlus system is used. This is a comprehensive building energy simulation system, which will be used alongside the genetic programming system. In addition, genetic programming will also consider other design and geometry characteristics of the building as search objectives, for example, window placement, building shape, size, and complexity. In passive solar designs, reducing energy that is needed for cooling and heating are two objectives of interest. Experiments show that smaller buildings with no windows and skylights are the most energy efficient models. Window heat gain is another objective used to encourage models to have windows. In addition, window and volume based objectives are tried. To examine the impact of environment on designs, experiments are run on five different geographic locations. Also, both single floor models and multi-floor models are examined in this research. According to the experiments, solutions from the experiments were consistent with respect to materials, sizes, and appearance, and satisfied problem constraints in all instances.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

The article discusses dipping vats and three basic types of dipping systems: Jump in Vat, Hydraulic Cage Vat, and the Box Sprayer.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Résumé Cette recherche a débuté avec l’idée que l’Internet est en train de changer la manière dont nous créons des connaissances et du contenu culturel. Notre point de départ était d’utiliser l’Internet afin de rassembler et amplifier plusieurs points de vue dans un processus de design. Une approche complexe a exposé l’Internet comme un système et conséquemment comme une plateforme pour l’innovation. La structure ouverte de l’Internet a soutenu le mouvement participatif des usagers qui ont choisi de partager leurs besoins, leurs désirs et leurs solutions. Notre recherche a pour but d’étudier ce contenu généré par les usagers en ligne et comprendre sa valeur pour les designers. Les usagers créatifs veulent s’exprimer et participer activement dans le processus de design. Notre recherche tente de démontrer que les designers ont beaucoup à apprendre du contenu généré par les usagers car ceux-ci soumettent des éléments qui ont attrait à toutes les étapes du processus de design et révèlent des relations présentes dans la situation de design à l’étude. Pour en apprendre plus sur ce contenu nous nous demandons : Quel type d’information offre le contenu généré par les usagers pour la phase de recherche dans le processus de design. Afin de centrer la portée de l’étude, nous nous sommes aussi questionné si cette information est plus pertinente au design de produits, au design de services ou au design de système de produits et de services. Aspirant aux idéaux du design participatif, notre méthodologie fut développée afin d’apprendre comment le contenu généré par les usagers pourrait influencer le processus de design. Pour ce faire, nous avons choisi de chercher sur l’Internet pour du contenu qui concerne la mobilité via l’usage d’une automobile. Les trois différents types de média considérés étaient les vidéos sur YouTube, les images sur Flickr et les textes sur Blogger. Afin de répondre à notre première question de recherche, nous nous sommes penchés sur deux éléments lorsque l’on recherche pour le design : les espaces de design et les relations de design. Premièrement, nous avons catégorisé le contenu récolté selon l’espace problème, créatif et solution. Deuxièmement, nous avons catégorisé le contenu dépendant de laquelle des relations de design elle démontrait soit une combinaison d’usagers, objets et contextes. Dans le but de répondre à la deuxième question de cette recherche, nous avons examiné trois types V de produits de design : les automobiles privées comme produit, le partage de voiture comme système de produit et de service, et le taxi comme service. Chaque élément pertinent généré par les usagés trouvé dans cette recherche fut catégorisé jusqu’à ce que l’on récolte 50 échantillons pour chaque combinaison de ces variables. Nous en sommes arrivés avec une matrice de 50 éléments de chaque produit de design, pour chacun des médias, puis catégorisé selon les espaces de design et les relations dans le design. Cette recherche démontre que l’Internet, comme médium, produit les conditions avantageuses pour que les usagers partagent de grandes quantités de contenu original et diversifié qui est pertinent aux situations de design. À partir de nos données de recherche, nous avons identifié des tendances dans le contenu généré par les usagers. Notamment, nous sommes en mesure d’affirmer que le contenu généré par les usagers offre de l’information pertinente à la recherche pour le design, et ce dans tous les espaces de design et toutes les relations de design. Il en fut de même pour les différentes issues du design car du contenu sur les produits, les systèmes de produits et de services et les services était présent et pertinent. Bref, nous avons démontré que l’Internet supporte la créativité et conséquemment il y abonde de contenu créatif produit par les usagers. Suivant dans les traces dessinées par d’autres chercheurs en design participatif, cette étude devrait être considérée comme un nouvel exemple des moyens qu’ont les designers pour percevoir les besoins tacites des usagers en leur permettant d’exprimer leurs idées. Alors que ceux-ci créent librement et intuitivement ainsi exposant leurs besoins, solutions et idées, les designers peuvent porter un regard de tierce partie sur les résultats. Jumelant des techniques comme le crowdsourcing et le brainstorming, nous avons créé une nouvelle activité et le néologisme : brainsourcing. En demeurant dans une forme de pratique réflexive, les designers peuvent réfléchir et ajouter au contenu généré par les usagers qui lui n’est pas biaisé par une éducation ou une culture du design. Ce processus est similaire au design participatif professionnel où le brainsourcing est une activité parallèle lorsque le designer fait des recherches pour le design. C’est cette perspective sur la somme des idées des participants qui peut contribuer à comprendre la complexité de la situation de design. VI Cette recherche a aussi soulevé des questions par rapport à l’effet de démocratisation de l’Internet. Bien que les usagers n’ont pas l’éducation, ni les habiletés des designers, ils aspirent à démocratiser le processus du design en voulant participer activement et en exposant leurs besoins, idées et solutions. Nous avons pu déterminer que les usagers n’étaient pas qualifiés pour entreprendre le processus complet du design comme les designers professionnels, mais nous avons observé directement la capacité des usagers à mettre de l’avant leur créativité. À propos de la relation entre les usagers créatifs et les designers, nous avons étudié des langages communs tels les scénarios et les prototypes. Tous deux sont présents dans le contenu généré par les usagers que nous avons récolté dans nos recherches sur Internet. Ceci nous a mené vers une nouvelle perspective sur l’activité du design où des opportunités créatives ressortent d’une conversation avec les usagers. Cette recherche a dévoilé de grandes tendances dans la manière dont les usagers communiquent naturellement dans un processus de design. Nous espérons avoir offert un aperçu de comment les designers peuvent prendre avantage de tous les types de contenu généré par les usagers en ligne. Dans le futur, nous souhaitons que les designers aient la possibilité d’interagir avec les participants en prenant le rôle de facilitateur de la conversation. La responsabilité du résultat ne tombe pas sur les épaules du designer car son mandat est d’assurer le bon fonctionnement du processus. Les designers rejoignent les usagers en ne demandant plus comment les choses peuvent être créées, mais pourquoi elles devraient exister. En tant que designers, nous aspirons à générer plus à partir de nouvelles connaissances, nous aspirons à créer plus de sens. Mots clés: Recherche en design, complexité, design participatif, contenu généré par les usagers, démocratisation, Internet, créativité, crowdsourcing, brainstorming, brainsourcing, réflexion-en-action.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Cette recherche pose un regard sur l’articulation des changements sociétaux émergeant de la négociation entre les mondes globaux et locaux et leurs impacts sur la sphère professionnelle du design industriel au Québec. Nous proposons de mettre en lumière les dimensions identitaires qui caractérisent la pratique du design industriel. Nous référons aux théories de l’identité, aux théories de la globalisation et au contexte particulier de la pratique du design québécois à travers ses aspects socioculturel, politique et économique. Le concept d’identité nous permet d’explorer l’interprétation des designers de leur pratique professionnelle dans un contexte désormais glocal (Robertson, 1995). Suivant une démarche qualitative basée sur les entretiens en profondeur, nous explorons l’interprétation du caractère identitaire de l’activité professionnelle auprès de trois générations de designers. Nous examinons également le sens qu’ils prêtent au concept de communauté du design, à leur système de valeurs et à l’avenir du design industriel québécois.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Lors de ces dix dernières années, le coût de la maintenance des systèmes orientés objets s'est accru jusqu' à compter pour plus de 70% du coût total des systèmes. Cette situation est due à plusieurs facteurs, parmi lesquels les plus importants sont: l'imprécision des spécifications des utilisateurs, l'environnement d'exécution changeant rapidement et la mauvaise qualité interne des systèmes. Parmi tous ces facteurs, le seul sur lequel nous ayons un réel contrôle est la qualité interne des systèmes. De nombreux modèles de qualité ont été proposés dans la littérature pour contribuer à contrôler la qualité. Cependant, la plupart de ces modèles utilisent des métriques de classes (nombre de méthodes d'une classe par exemple) ou des métriques de relations entre classes (couplage entre deux classes par exemple) pour mesurer les attributs internes des systèmes. Pourtant, la qualité des systèmes par objets ne dépend pas uniquement de la structure de leurs classes et que mesurent les métriques, mais aussi de la façon dont celles-ci sont organisées, c'est-à-dire de leur conception, qui se manifeste généralement à travers les patrons de conception et les anti-patrons. Dans cette thèse nous proposons la méthode DEQUALITE, qui permet de construire systématiquement des modèles de qualité prenant en compte non seulement les attributs internes des systèmes (grâce aux métriques), mais aussi leur conception (grâce aux patrons de conception et anti-patrons). Cette méthode utilise une approche par apprentissage basée sur les réseaux bayésiens et s'appuie sur les résultats d'une série d'expériences portant sur l'évaluation de l'impact des patrons de conception et des anti-patrons sur la qualité des systèmes. Ces expériences réalisées sur 9 grands systèmes libres orientés objet nous permettent de formuler les conclusions suivantes: • Contre l'intuition, les patrons de conception n'améliorent pas toujours la qualité des systèmes; les implantations très couplées de patrons de conception par exemple affectent la structure des classes et ont un impact négatif sur leur propension aux changements et aux fautes. • Les classes participantes dans des anti-atrons sont beaucoup plus susceptibles de changer et d'être impliquées dans des corrections de fautes que les autres classes d'un système. • Un pourcentage non négligeable de classes sont impliquées simultanément dans des patrons de conception et dans des anti-patrons. Les patrons de conception ont un effet positif en ce sens qu'ils atténuent les anti-patrons. Nous appliquons et validons notre méthode sur trois systèmes libres orientés objet afin de démontrer l'apport de la conception des systèmes dans l'évaluation de la qualité.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Dans les sphères du développement durable, des modèles d’affaires et du design de produit, certains leviers rendent le croisement de ces trois sphères de plus en plus pertinent. Au croisement de ces trois sphères se trouve une opportunité de comprendre les relations existantes entre le design de produit et les modèles d’affaires afin d’aider les décideurs à développer des solutions davantage durables. L’approche méthodologique de cette recherche utilise un système complexe et est basée sur un paradigme pragmatique. En vue de répondre à la question « Dans quelle mesure des modèles d’affaires et le design de produit sont liés dans un contexte de développement durable? », cette recherche a soigneusement analysé trois cas: Better Place, une compagnie californienne ayant développé une infrastructure permettant le chargement des voitures électriques; Interface Inc., un manufacturier mondial de tuiles de tapis commerciales établi à Atlanta; et Métacycle, un concept d’entreprise développé par une équipe de chercheurs en design à Montréal. Chaque cas a été analysé en corrélant des aspects du design de produit à des éléments de leur modèle d’affaires. Les résultats montrent que dans le contexte du développement durable, le design de produit et les modèles d’affaires sont interdépendants. Les résultats peuvent être résumés en six points: il existe des relations applicables universellement; les innovations de design substantielles jouent un rôle important dans le développement durable; la « durabilité » peut être une qualité émergente d’un modèle d’affaires; les partenariats peuvent être vitaux pour l’intégration des systèmes; un modèle de services a des bénéfices et des limitations considérables; le design peut agir comme levier à l’utilisation d’énergies renouvelables. Pratiquer simultanément l’innovation du modèle d’affaires et du produit peut apporter une valeur ajoutée, susciter des opportunités et augmenter l’efficience sur plusieurs facettes. Toutefois, les risques et les coûts de tels procédés sont souvent très élevés. En aidant à comprendre et définir comment les trois sphères mentionnées plus tôt sont interdépendantes, cette recherche pourrait idéalement inspirer des recherches supplémentaires sur le sujet. L’application par des organisations de la méthodologie et des apprentissages résultant de cette recherche peut permettre à d’autres d’utiliser le croisement entre l’innovation de produit et l’innovation du modèle d’affaires afin de résoudre des enjeux sociaux et environnementaux complexes.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Un objectif principal du génie logiciel est de pouvoir produire des logiciels complexes, de grande taille et fiables en un temps raisonnable. La technologie orientée objet (OO) a fourni de bons concepts et des techniques de modélisation et de programmation qui ont permis de développer des applications complexes tant dans le monde académique que dans le monde industriel. Cette expérience a cependant permis de découvrir les faiblesses du paradigme objet (par exemples, la dispersion de code et le problème de traçabilité). La programmation orientée aspect (OA) apporte une solution simple aux limitations de la programmation OO, telle que le problème des préoccupations transversales. Ces préoccupations transversales se traduisent par la dispersion du même code dans plusieurs modules du système ou l’emmêlement de plusieurs morceaux de code dans un même module. Cette nouvelle méthode de programmer permet d’implémenter chaque problématique indépendamment des autres, puis de les assembler selon des règles bien définies. La programmation OA promet donc une meilleure productivité, une meilleure réutilisation du code et une meilleure adaptation du code aux changements. Très vite, cette nouvelle façon de faire s’est vue s’étendre sur tout le processus de développement de logiciel en ayant pour but de préserver la modularité et la traçabilité, qui sont deux propriétés importantes des logiciels de bonne qualité. Cependant, la technologie OA présente de nombreux défis. Le raisonnement, la spécification, et la vérification des programmes OA présentent des difficultés d’autant plus que ces programmes évoluent dans le temps. Par conséquent, le raisonnement modulaire de ces programmes est requis sinon ils nécessiteraient d’être réexaminés au complet chaque fois qu’un composant est changé ou ajouté. Il est cependant bien connu dans la littérature que le raisonnement modulaire sur les programmes OA est difficile vu que les aspects appliqués changent souvent le comportement de leurs composantes de base [47]. Ces mêmes difficultés sont présentes au niveau des phases de spécification et de vérification du processus de développement des logiciels. Au meilleur de nos connaissances, la spécification modulaire et la vérification modulaire sont faiblement couvertes et constituent un champ de recherche très intéressant. De même, les interactions entre aspects est un sérieux problème dans la communauté des aspects. Pour faire face à ces problèmes, nous avons choisi d’utiliser la théorie des catégories et les techniques des spécifications algébriques. Pour apporter une solution aux problèmes ci-dessus cités, nous avons utilisé les travaux de Wiels [110] et d’autres contributions telles que celles décrites dans le livre [25]. Nous supposons que le système en développement est déjà décomposé en aspects et classes. La première contribution de notre thèse est l’extension des techniques des spécifications algébriques à la notion d’aspect. Deuxièmement, nous avons défini une logique, LA , qui est utilisée dans le corps des spécifications pour décrire le comportement de ces composantes. La troisième contribution consiste en la définition de l’opérateur de tissage qui correspond à la relation d’interconnexion entre les modules d’aspect et les modules de classe. La quatrième contribution concerne le développement d’un mécanisme de prévention qui permet de prévenir les interactions indésirables dans les systèmes orientés aspect.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Les logiciels sont en constante évolution, nécessitant une maintenance et un développement continus. Ils subissent des changements tout au long de leur vie, que ce soit pendant l'ajout de nouvelles fonctionnalités ou la correction de bogues dans le code. Lorsque ces logiciels évoluent, leurs architectures ont tendance à se dégrader avec le temps et deviennent moins adaptables aux nouvelles spécifications des utilisateurs. Elles deviennent plus complexes et plus difficiles à maintenir. Dans certains cas, les développeurs préfèrent refaire la conception de ces architectures à partir du zéro plutôt que de prolonger la durée de leurs vies, ce qui engendre une augmentation importante des coûts de développement et de maintenance. Par conséquent, les développeurs doivent comprendre les facteurs qui conduisent à la dégradation des architectures, pour prendre des mesures proactives qui facilitent les futurs changements et ralentissent leur dégradation. La dégradation des architectures se produit lorsque des développeurs qui ne comprennent pas la conception originale du logiciel apportent des changements au logiciel. D'une part, faire des changements sans comprendre leurs impacts peut conduire à l'introduction de bogues et à la retraite prématurée du logiciel. D'autre part, les développeurs qui manquent de connaissances et–ou d'expérience dans la résolution d'un problème de conception peuvent introduire des défauts de conception. Ces défauts ont pour conséquence de rendre les logiciels plus difficiles à maintenir et évoluer. Par conséquent, les développeurs ont besoin de mécanismes pour comprendre l'impact d'un changement sur le reste du logiciel et d'outils pour détecter les défauts de conception afin de les corriger. Dans le cadre de cette thèse, nous proposons trois principales contributions. La première contribution concerne l'évaluation de la dégradation des architectures logicielles. Cette évaluation consiste à utiliser une technique d’appariement de diagrammes, tels que les diagrammes de classes, pour identifier les changements structurels entre plusieurs versions d'une architecture logicielle. Cette étape nécessite l'identification des renommages de classes. Par conséquent, la première étape de notre approche consiste à identifier les renommages de classes durant l'évolution de l'architecture logicielle. Ensuite, la deuxième étape consiste à faire l'appariement de plusieurs versions d'une architecture pour identifier ses parties stables et celles qui sont en dégradation. Nous proposons des algorithmes de bit-vecteur et de clustering pour analyser la correspondance entre plusieurs versions d'une architecture. La troisième étape consiste à mesurer la dégradation de l'architecture durant l'évolution du logiciel. Nous proposons un ensemble de m´etriques sur les parties stables du logiciel, pour évaluer cette dégradation. La deuxième contribution est liée à l'analyse de l'impact des changements dans un logiciel. Dans ce contexte, nous présentons une nouvelle métaphore inspirée de la séismologie pour identifier l'impact des changements. Notre approche considère un changement à une classe comme un tremblement de terre qui se propage dans le logiciel à travers une longue chaîne de classes intermédiaires. Notre approche combine l'analyse de dépendances structurelles des classes et l'analyse de leur historique (les relations de co-changement) afin de mesurer l'ampleur de la propagation du changement dans le logiciel, i.e., comment un changement se propage à partir de la classe modifiée è d'autres classes du logiciel. La troisième contribution concerne la détection des défauts de conception. Nous proposons une métaphore inspirée du système immunitaire naturel. Comme toute créature vivante, la conception de systèmes est exposée aux maladies, qui sont des défauts de conception. Les approches de détection sont des mécanismes de défense pour les conception des systèmes. Un système immunitaire naturel peut détecter des pathogènes similaires avec une bonne précision. Cette bonne précision a inspiré une famille d'algorithmes de classification, appelés systèmes immunitaires artificiels (AIS), que nous utilisions pour détecter les défauts de conception. Les différentes contributions ont été évaluées sur des logiciels libres orientés objets et les résultats obtenus nous permettent de formuler les conclusions suivantes: • Les métriques Tunnel Triplets Metric (TTM) et Common Triplets Metric (CTM), fournissent aux développeurs de bons indices sur la dégradation de l'architecture. La d´ecroissance de TTM indique que la conception originale de l'architecture s’est dégradée. La stabilité de TTM indique la stabilité de la conception originale, ce qui signifie que le système est adapté aux nouvelles spécifications des utilisateurs. • La séismologie est une métaphore intéressante pour l'analyse de l'impact des changements. En effet, les changements se propagent dans les systèmes comme les tremblements de terre. L'impact d'un changement est plus important autour de la classe qui change et diminue progressivement avec la distance à cette classe. Notre approche aide les développeurs à identifier l'impact d'un changement. • Le système immunitaire est une métaphore intéressante pour la détection des défauts de conception. Les résultats des expériences ont montré que la précision et le rappel de notre approche sont comparables ou supérieurs à ceux des approches existantes.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Les changements sont faits de façon continue dans le code source des logiciels pour prendre en compte les besoins des clients et corriger les fautes. Les changements continus peuvent conduire aux défauts de code et de conception. Les défauts de conception sont des mauvaises solutions à des problèmes récurrents de conception ou d’implémentation, généralement dans le développement orienté objet. Au cours des activités de compréhension et de changement et en raison du temps d’accès au marché, du manque de compréhension, et de leur expérience, les développeurs ne peuvent pas toujours suivre les normes de conception et les techniques de codage comme les patrons de conception. Par conséquent, ils introduisent des défauts de conception dans leurs systèmes. Dans la littérature, plusieurs auteurs ont fait valoir que les défauts de conception rendent les systèmes orientés objet plus difficile à comprendre, plus sujets aux fautes, et plus difficiles à changer que les systèmes sans les défauts de conception. Pourtant, seulement quelques-uns de ces auteurs ont fait une étude empirique sur l’impact des défauts de conception sur la compréhension et aucun d’entre eux n’a étudié l’impact des défauts de conception sur l’effort des développeurs pour corriger les fautes. Dans cette thèse, nous proposons trois principales contributions. La première contribution est une étude empirique pour apporter des preuves de l’impact des défauts de conception sur la compréhension et le changement. Nous concevons et effectuons deux expériences avec 59 sujets, afin d’évaluer l’impact de la composition de deux occurrences de Blob ou deux occurrences de spaghetti code sur la performance des développeurs effectuant des tâches de compréhension et de changement. Nous mesurons la performance des développeurs en utilisant: (1) l’indice de charge de travail de la NASA pour leurs efforts, (2) le temps qu’ils ont passé dans l’accomplissement de leurs tâches, et (3) les pourcentages de bonnes réponses. Les résultats des deux expériences ont montré que deux occurrences de Blob ou de spaghetti code sont un obstacle significatif pour la performance des développeurs lors de tâches de compréhension et de changement. Les résultats obtenus justifient les recherches antérieures sur la spécification et la détection des défauts de conception. Les équipes de développement de logiciels doivent mettre en garde les développeurs contre le nombre élevé d’occurrences de défauts de conception et recommander des refactorisations à chaque étape du processus de développement pour supprimer ces défauts de conception quand c’est possible. Dans la deuxième contribution, nous étudions la relation entre les défauts de conception et les fautes. Nous étudions l’impact de la présence des défauts de conception sur l’effort nécessaire pour corriger les fautes. Nous mesurons l’effort pour corriger les fautes à l’aide de trois indicateurs: (1) la durée de la période de correction, (2) le nombre de champs et méthodes touchés par la correction des fautes et (3) l’entropie des corrections de fautes dans le code-source. Nous menons une étude empirique avec 12 défauts de conception détectés dans 54 versions de quatre systèmes: ArgoUML, Eclipse, Mylyn, et Rhino. Nos résultats ont montré que la durée de la période de correction est plus longue pour les fautes impliquant des classes avec des défauts de conception. En outre, la correction des fautes dans les classes avec des défauts de conception fait changer plus de fichiers, plus les champs et des méthodes. Nous avons également observé que, après la correction d’une faute, le nombre d’occurrences de défauts de conception dans les classes impliquées dans la correction de la faute diminue. Comprendre l’impact des défauts de conception sur l’effort des développeurs pour corriger les fautes est important afin d’aider les équipes de développement pour mieux évaluer et prévoir l’impact de leurs décisions de conception et donc canaliser leurs efforts pour améliorer la qualité de leurs systèmes. Les équipes de développement doivent contrôler et supprimer les défauts de conception de leurs systèmes car ils sont susceptibles d’augmenter les efforts de changement. La troisième contribution concerne la détection des défauts de conception. Pendant les activités de maintenance, il est important de disposer d’un outil capable de détecter les défauts de conception de façon incrémentale et itérative. Ce processus de détection incrémentale et itérative pourrait réduire les coûts, les efforts et les ressources en permettant aux praticiens d’identifier et de prendre en compte les occurrences de défauts de conception comme ils les trouvent lors de la compréhension et des changements. Les chercheurs ont proposé des approches pour détecter les occurrences de défauts de conception, mais ces approches ont actuellement quatre limites: (1) elles nécessitent une connaissance approfondie des défauts de conception, (2) elles ont une précision et un rappel limités, (3) elles ne sont pas itératives et incrémentales et (4) elles ne peuvent pas être appliquées sur des sous-ensembles de systèmes. Pour surmonter ces limitations, nous introduisons SMURF, une nouvelle approche pour détecter les défauts de conception, basé sur une technique d’apprentissage automatique — machines à vecteur de support — et prenant en compte les retours des praticiens. Grâce à une étude empirique portant sur trois systèmes et quatre défauts de conception, nous avons montré que la précision et le rappel de SMURF sont supérieurs à ceux de DETEX et BDTEX lors de la détection des occurrences de défauts de conception. Nous avons également montré que SMURF peut être appliqué à la fois dans les configurations intra-système et inter-système. Enfin, nous avons montré que la précision et le rappel de SMURF sont améliorés quand on prend en compte les retours des praticiens.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Les logiciels sont en constante évolution, nécessitant une maintenance et un développement continus. Ils subissent des changements tout au long de leur vie, que ce soit pendant l'ajout de nouvelles fonctionnalités ou la correction de bogues. Lorsque les logiciels évoluent, leurs architectures ont tendance à se dégrader et deviennent moins adaptables aux nouvelles spécifications des utilisateurs. En effet, les architectures de ces logiciels deviennent plus complexes et plus difficiles à maintenir à cause des nombreuses dépendances entre les artefacts. Par conséquent, les développeurs doivent comprendre les dépendances entre les artefacts des logiciels pour prendre des mesures proactives qui facilitent les futurs changements et ralentissent la dégradation des architectures des logiciels. D'une part, le maintien d'un logiciel sans la compréhension des les dépendances entre ses artefacts peut conduire à l'introduction de défauts. D'autre part, lorsque les développeurs manquent de connaissances sur l'impact de leurs activités de maintenance, ils peuvent introduire des défauts de conception, qui ont un impact négatif sur l'évolution du logiciel. Ainsi, les développeurs ont besoin de mécanismes pour comprendre comment le changement d'un artefact impacte le reste du logiciel. Dans cette thèse, nous proposons trois contributions principales : La spécification de deux nouveaux patrons de changement et leurs utilisations pour fournir aux développeurs des informations utiles concernant les dépendances de co-changement. La spécification de la relation entre les patrons d'évolutions des artefacts et les fautes. La découverte de la relation entre les dépendances des anti-patrons et la prédisposition des différentes composantes d'un logiciel aux fautes.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Cette thèse présente une revue des réflexions récentes et plus traditionnelles provenant de la théorie des systèmes, de la créativité en emploi, des théories d’organisation du travail et de la motivation afin de proposer une perspective psychologique de la régulation des actions des individus au sein d’environnements de travail complexes et incertains. Des composantes de la Théorie de la Régulation de l’Action (Frese & Zapf, 1994) ainsi que de la Théorie de l’Auto-Détermination (Deci & Ryan, 2000) sont mises en relation afin d’évaluer un modèle définissant certains schémas cognitifs clés associés aux tâches individuelles et collectives en emploi. Nous proposons que ces schémas cognitifs, organisés de manière hiérarchique, jouent un rôle central dans la régulation d’une action efficace au sein d’un système social adaptatif. Nos mesures de ces schémas cognitifs sont basées sur des échelles de mesure proposées dans le cadre des recherches sur l’ambiguïté de rôle (eg. Sawyer, 1992; Breaugh & Colihan, 1994) et sont mis en relation avec des mesures de satisfaction des besoins psychologiques (Van den Broeck, Vansteenkiste, De Witte, Soenens & Lens, 2009) et du bien-être psychologique (Goldberg, 1972). Des données provenant de 153 employés à temps plein d’une compagnie de jeu vidéo ont été récoltées à travers deux temps de mesure. Les résultats révèlent que différents types de schémas cognitifs associés aux tâches individuelles et collectives sont liés à la satisfaction de différents types de besoin psychologiques et que ces derniers sont eux-mêmes liés au bien-être psychologique. Les résultats supportent également l’hypothèse d’une organisation hiérarchique des schémas cognitifs sur la base de leur niveau d’abstraction et de leur proximité avec l’exécution concrète de l’action. Ces résultats permettent de fournir une explication initiale au processus par lequel les différents types de schémas cognitifs développés en emplois et influencé par l’environnement de travail sont associés à l’attitude des employés et à leur bien-être psychologique. Les implications pratiques et théoriques pour la motivation, l’apprentissage, l’habilitation, le bien-être psychologique et l’organisation du travail dans les environnements de travail complexes et incertains sont discutés.