• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 17
  • 4
  • 4
  • 2
  • 1
  • 1
  • Tagged with
  • 39
  • 39
  • 16
  • 15
  • 8
  • 7
  • 7
  • 6
  • 6
  • 5
  • 5
  • 5
  • 5
  • 5
  • 5
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
21

Evolution of model-driven engineering settings in practice

Hebig, Regina January 2014 (has links)
Nowadays, software systems are getting more and more complex. To tackle this challenge most diverse techniques, such as design patterns, service oriented architectures (SOA), software development processes, and model-driven engineering (MDE), are used to improve productivity, while time to market and quality of the products stay stable. Multiple of these techniques are used in parallel to profit from their benefits. While the use of sophisticated software development processes is standard, today, MDE is just adopted in practice. However, research has shown that the application of MDE is not always successful. It is not fully understood when advantages of MDE can be used and to what degree MDE can also be disadvantageous for productivity. Further, when combining different techniques that aim to affect the same factor (e.g. productivity) the question arises whether these techniques really complement each other or, in contrast, compensate their effects. Due to that, there is the concrete question how MDE and other techniques, such as software development process, are interrelated. Both aspects (advantages and disadvantages for productivity as well as the interrelation to other techniques) need to be understood to identify risks relating to the productivity impact of MDE. Before studying MDE's impact on productivity, it is necessary to investigate the range of validity that can be reached for the results. This includes two questions. First, there is the question whether MDE's impact on productivity is similar for all approaches of adopting MDE in practice. Second, there is the question whether MDE's impact on productivity for an approach of using MDE in practice remains stable over time. The answers for both questions are crucial for handling risks of MDE, but also for the design of future studies on MDE success. This thesis addresses these questions with the goal to support adoption of MDE in future. To enable a differentiated discussion about MDE, the term MDE setting'' is introduced. MDE setting refers to the applied technical setting, i.e. the employed manual and automated activities, artifacts, languages, and tools. An MDE setting's possible impact on productivity is studied with a focus on changeability and the interrelation to software development processes. This is done by introducing a taxonomy of changeability concerns that might be affected by an MDE setting. Further, three MDE traits are identified and it is studied for which manifestations of these MDE traits software development processes are impacted. To enable the assessment and evaluation of an MDE setting's impacts, the Software Manufacture Model language is introduced. This is a process modeling language that allows to reason about how relations between (modeling) artifacts (e.g. models or code files) change during application of manual or automated development activities. On that basis, risk analysis techniques are provided. These techniques allow identifying changeability risks and assessing the manifestations of the MDE traits (and with it an MDE setting's impact on software development processes). To address the range of validity, MDE settings from practice and their evolution histories were capture in context of this thesis. First, this data is used to show that MDE settings cover the whole spectrum concerning their impact on changeability or interrelation to software development processes. Neither it is seldom that MDE settings are neutral for processes nor is it seldom that MDE settings have impact on processes. Similarly, the impact on changeability differs relevantly. Second, a taxonomy of evolution of MDE settings is introduced. In that context it is discussed to what extent different types of changes on an MDE setting can influence this MDE setting's impact on changeability and the interrelation to processes. The category of structural evolution, which can change these characteristics of an MDE setting, is identified. The captured MDE settings from practice are used to show that structural evolution exists and is common. In addition, some examples of structural evolution steps are collected that actually led to a change in the characteristics of the respective MDE settings. Two implications are: First, the assessed diversity of MDE settings evaluates the need for the analysis techniques that shall be presented in this thesis. Second, evolution is one explanation for the diversity of MDE settings in practice. To summarize, this thesis studies the nature and evolution of MDE settings in practice. As a result support for the adoption of MDE settings is provided in form of techniques for the identification of risks relating to productivity impacts. / Um die steigende Komplexität von Softwaresystemen beherrschen zu können, werden heutzutage unterschiedlichste Techniken gemeinsam eingesetzt. Beispiele sind, Design Pattern, Serviceorientierte Architekturen, Softwareentwicklungsprozesse oder modellgetriebene Entwicklung (MDE). Ziel dabei ist die Erhöhung der Produktivität, so dass Entwicklungsdauer und Qualität stabil bleiben können. Während hoch entwickelte Softwareentwicklungsprozesse heute schon standardmäßig genutzt werden, fangen Firmen gerade erst an MDE einzusetzen. Jedoch zeigen Studien, dass der erhoffte Erfolg von MDE nicht jedes Mal eintritt. So scheint es, dass noch kein ausreichendes Verständnis dafür existiert, inwiefern MDE auch Nachteile für die Produktivität bergen kann. Zusätzlich ist bei der Kombination von unterschiedlichen Techniken damit zu rechnen, dass die erreichten Effekte sich gegenseitig negieren anstatt sich zu ergänzen. Hier entsteht die Frage wie MDE und andere Techniken, wie Softwareentwicklungsprozesse, zusammenwirken. Beide Aspekte, der direkte Einfluss auf Produktivität und die Wechselwirkung mit anderen Techniken, müssen aber verstanden werden um den Risiken für den Produktivitätseinfluss von MDE zu identifizieren. Außerdem, muss auch die Generalisierbarkeit dieser Aspekte untersucht werden. Das betrifft die Fragen, ob der Produktivitätseinfluss bei jedem Einsatz von MDE gleich ist und ob der Produktivitätseinfluss über die Zeit stabil bleibt. Beide Fragen sind entscheidend, will man geeignete Risikobehandlung ermöglichen oder künftige Studien zum Erfolg von MDE planen. Diese Dissertation widmet sich der genannten Fragen. Dafür wird zuerst der Begriff MDE Setting'' eingeführt um eine differenzierte Betrachtung von MDE-Verwendungen zu ermöglichen. Ein MDE Setting ist dabei der technische Aufbau, inklusive manueller und automatische Aktivitäten, Artefakten, Sprachen und Werkzeugen. Welche Produktivitätseinflüsse von MDE Settings möglich sind, wird in der Dissertation mit Fokus auf Änderbarkeit und die Wechselwirkung mit Softwareentwicklungsprozessen betrachtet. Dafür wird einerseits eine Taxonomie von Changeability Concerns'' (potentiell betroffene Aspekte von Änderbarkeit) vorgestellt. Zusätzlich, werden drei MDE Traits'' (Charakteristika von MDE Settings die unterschiedlich ausgeprägt sein können) identifiziert. Es wird untersucht welche Ausprägungen dieser MDE Traits Einfluss auf Softwareentwicklungsprozesse haben können. Um die Erfassung und Bewertung dieser Einflüsse zu ermöglichen wird die Software Manufaktur Modell Sprache eingeführt. Diese Prozessmodellierungssprache ermöglicht eine Beschreibung, der Veränderungen von Artefaktbeziehungen während der Anwendung von Aktivitäten (z.B. Codegenerierung). Weiter werden auf Basis dieser Modelle, Analysetechniken eingeführt. Diese Analysetechniken erlauben es Risiken für bestimmte Changeability Concerns aufzudecken sowie die Ausprägung von MDE Traits zu erfassen (und damit den Einfluss auf Softwareentwicklungsprozesse). Um die Generalisierbarkeit der Ergebnisse zu studieren, wurden im Rahmen der Arbeit mehrere MDE Settings aus der Praxis sowie teilweise deren Evolutionshistorien erhoben. Daran wird gezeigt, dass MDE Settings sich in einem breiten Spektrum von Einflüssen auf Änderbarkeit und Prozesse bewegen. So ist es weder selten, dass ein MDE Setting neutral für Prozesse ist, noch, dass ein MDE Setting Einschränkungen für einen Prozess impliziert. Ähnlich breit gestreut ist der Einfluss auf die Änderbarkeit.Zusätzlich, wird diskutiert, inwiefern unterschiedliche Evolutionstypen den Einfluss eines MDE Settings auf Änderbarkeit und Prozesse verändern können. Diese Diskussion führt zur Identifikation der strukturellen Evolution'', die sich stark auf die genannten Charakteristika eines MDE Settings auswirken kann. Mithilfe der erfassten MDE Settings, wird gezeigt, dass strukturelle Evolution in der Praxis üblich ist. Schließlich, werden Beispiele aufgedeckt bei denen strukturelle Evolutionsschritte tatsächlich zu einer Änderung der Charakteristika des betreffenden MDE Settings geführt haben. Einerseits bestärkt die ermittelte Vielfalt den Bedarf nach Analysetechniken, wie sie in dieser Dissertation eingeführt werden. Zum Anderen erscheint es nun, dass Evolution zumindest zum Teil die unterschiedlichen Ausprägungen von MDE Settings erklärt. Zusammenfassend wird studiert wie MDE Settings und deren Evolution in der Praxis ausgeprägt sind. Als Ergebnis, werden Techniken zur Identifikation von Risiken für Produktivitätseinflüsse bereitgestellt um den Einsatz von MDE Settings zu unterstützen.
22

Hemmnisse in Entscheidungsprozessen - Entstehungsfaktoren, deren Messung und Bewertung: Systematisierung und Analyse theoretischer und empirischer Ergebnisse

Hüske, Anne-Karen 20 April 2010 (has links) (PDF)
Die vorliegende Ausgabe untersucht theoretische und empirische Ergebnisse zu Hemmnissen in Entscheidungsprozessen in Organisationen. Zu Beginn steht die Aufarbeitung der Theorie zum Hemmnisbegriff anhand folgender Forschungsfragen: Wie wird der Hemmnisbegriff definiert? Welche Wörter werden synonym verwendet? Wie entstehen Hemmnisse? Was gibt es für Methoden zur Messung und Bewertung von Hemmnissen? Ausgehend von diesen theoretischen Betrachtungen erfolgt eine Zusammenschau von 104 empirischen Studien zu Hemmnissen in Entscheidungsprozessen unter der Fragestellung: Was gibt es für empirische Studien zu diesem Thema? Wie unterschieden sich diese bzw. wie lassen sie sich charakterisieren und systematisieren? Dabei werden der Hintergrund der Studien (Land, Branche, Ent-scheidungsprozess, Befragte), ihre Methodik, die Methodik der Hemmnisanalyse, der Hemmnisbegriff und die Entstehungsfaktoren betrachtet. Zur Systematisierung der Studien werden Gruppierungsansätze nach einzelnen Merkmalen (Veröffentlichungsjahrzehnt, Kontinent, Entwicklungsniveau des untersuchten Landes, Branche, Entscheidungsprozess, Studienmethodik) und eine Clusteranalyse über 49 Variablen durchgeführt. Die Gruppierungsansätze werden mittels ihrer Aussagekraft zum Entscheidungsprozess, zur Hemmnismethodik und zu den Entstehungsfaktoren von Hemmnissen beurteilt. Die Aufschlüsselung nach Entscheidungsprozessen erscheint als empfehlenswert. Die Ergebnisse der Clusteranalyse lassen darauf schließen, dass sich die Studien relativ ähnlich sind. Zusammenfassend gibt es keine allgemeingültige First-Best-Lösung zur Systematisierung der Studien. Die Gruppierungsansätze bewegen sich im Spannungsdreieck, möglichst von der Größe her vergleichbare aber vom Inhalt her unterscheidbare Studiengruppen zu bilden und dabei alle Studien in die Gruppierung einzubeziehen. Der zu wählende Gruppierungsansatz ist davon abhängig, welche Forschungsfragen im Vordergrund der jeweiligen Untersuchung stehen.
23

Comparing integration effort and correctness of different merge approaches in version control systems

CAVALCANTI, Guilherme José Carvalho 29 February 2016 (has links)
Submitted by Irene Nascimento (irene.kessia@ufpe.br) on 2016-09-27T18:16:18Z No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) dissertação_gjcc.pdf: 1929523 bytes, checksum: 59a910a15e3537942754d106de378d19 (MD5) / Made available in DSpace on 2016-09-27T18:16:18Z (GMT). No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) dissertação_gjcc.pdf: 1929523 bytes, checksum: 59a910a15e3537942754d106de378d19 (MD5) Previous issue date: 16-02-29 / FACEPE / During the integration of code contributions resulting from development tasks, one likely has to deal with conflicting changes and dedicate substantial effort to resolve conflicts. While unstructured merge tools try to automatically resolve part of the conflicts via textual similarity, semistructured tools try to go further by exploiting the syntactic structure of part of the artefacts involved. To understand the impact of the unstructured and semistructured merge approaches on integration effort (Productivity) and correctness of the merging process (Quality), we conduct two empirical studies. In the first one, aiming at increasing the existing body of evidence and assessing results for systems developed under an alternative version control paradigm, we replicate an experiment to compare the unstructured and semistructured approaches with respect to the number of conflicts reported by both merge approaches. We used both semistructured and unstructured merge in a sample 2.5 times bigger than the original study regarding the number of projects and 18 times bigger regarding the number of performed merges, and we compared the occurrence of conflicts. Similar to the original study, we observed that semistructured merge reduces the number of conflicts in 55% of the performed merges of the new sample. Besides that, the observed average conflict reduction of 62% in these merges is far superior than what has been observed before. We also bring new evidence that the use of semistructured merge can reduce the occurrence of conflicting merges by half. In order to verify the frequency of false positives and false negatives arising from the use of these merge approaches, we move forward and we conduct a second empirical study. We compare the unstructured and semistructured merge approaches by reproducing more than 30,000 merges from 50 projects, and collecting evidence about reported conflicts that do not represent interferences between development tasks (false positives), and interferences not reported as conflicts (false negatives). In particular, our assumption is that false positives amount to unnecessary integration effort because developers have to resolve conflicts that actually do not represent interferences. Besides that, false negatives amount to build issues or bugs, negatively impacting software quality and correctness of the merging process. By analyzing such critical factors we hope to guide developers on deciding which approach should be used in practice. Finally, our results show that semistructured merge eliminates a significant part of the false positives reported by unstructured merge, but brings false positives of its own. The overall number of false positives is reduced with semistructured merge, and we argue that the conflicts associated to its false positives are easier to resolve when comparing to the false positives reported by unstructured merge. We also observe that more interferences were missed by unstructured merge and reported by semistructured merge, but we argue that the semistructured merge ones are harder to detect and resolve than the other way around. Finally, our study suggests how a semistructured merge tool could be improved to eliminate the extra false positives and negatives it has in relation to unstructured merge. / Durante a integração de contribuições de código resultantes das tarefas de desenvolvimento, frequentemente desenvolvedores têm que lidar com alterações conflitantes e dedicar considerável esforço para resolver conflitos. Enquanto as ferramentas de integração não-estruturadas tentam resolver automaticamente parte dos conflitos através de similaridade textual, ferramentas semiestruturadas tentam ir mais longe, explorando a estrutura sintática de parte dos artefatos envolvidos. Para entender o impacto das abordagens de integração não-estruturada e semiestruturada sobre esforço de integração (Produtividade) e corretude do processo de integração (Qualidade), nós realizamos dois estudos empíricos. No primeiro, com o objetivo de aumentar o atual corpo de evidência e avaliar resultados para sistemas desenvolvidos usando um paradigma de controle de versão alternativo, nós replicamos um experimento para comparar a abordagem não-estruturada e semiestruturada de acordo com o número de conflitos reportados por ambas as abordagens. Nós usamos tanto a integração semiestruturada quanto a não-estruturada em uma amostra 2,5 vezes maior do que a do estudo original em relação ao número de projetos e 18 vezes maior em relação ao número de integrações realizadas, e comparamos a ocorrência de conflitos. Semelhante ao estudo original, observamos que a integração semiestruturada reduz o número de conflitos em 55% das integrações da nova amostra. Além disso, a redução de conflitos média observada de 62% nestas integrações é muito superior à observada anteriormente. Nós também trazemos nova evidência de que o uso da abordagem semiestruturada pode reduzir a ocorrência de integrações com conflitos pela metade. Com o intuito de verificar a frequência de falsos positivos e falsos negativos originados do uso dessas abordagens, nós seguimos adiante e conduzimos um segundo estudo empírico. Nós comparamos as abordagens reproduzindo mais de 30.000 integrações de 50 projetos, coletando evidência sobre os conflitos reportados que não representam interferências entre as tarefas de desenvolvimento (falsos positivos), e interferências não reportadas como conflitos (falsos negativos). Em particular, a nossa suposição é de que falsos positivos denotam esforço desnecessário de integração porque os desenvolvedores têm que resolver conflitos que, na realidade, não representam interferências. Além disso, falsos negativos denotam problemas de build ou bugs, impactando negativamente a qualidade do software e corretude do processo de integração. Ao analisar esses fatores críticos, esperamos orientar os desenvolvedores em decidir qual abordagem deve ser usada na prática. Finalmente, nossos resultados mostram que a abordagem semiestruturada elimina uma parte significativa dos falsos positivos reportados pela abordagem não-estruturada, mas traz falsos positivos próprios. O número global de falsos positivos é reduzido com a integração semiestruturada, e nós argumentamos que os conflitos associados aos seus falsos positivos são mais fáceis de resolver quando comparados aos falsos positivos reportados pela abordagem não-estruturada. Observamos, também, que mais interferências deixaram de ser detectadas pela abordagem não-estruturada, mas foram detectadas pela semiestruturada. No entanto, nós acreditamos que as interferências não detectadas pela abordagem semiestruturada são mais difíceis de detectar e resolver. Por fim, nosso estudo sugere como uma ferramenta de integração semiestruturada poderia ser melhorada para eliminar os falsos positivos e falsos negativos adicionados que possui em relação à não-estruturada.
24

EXPLORING THE BENEFITS AND CHALLENGES OF APPLYING AGILE METHODS IN OFFSHORE DEVELOPMENT / EXPLORING THE BENEFITS AND CHALLENGES OF APPLYING AGILE METHODS IN OFFSHORE DEVELOPMENT

FAROOQ, USMAN, FAROOQ, MUHAMMAD UMAR January 2011 (has links)
Context: Global software development is the emerging trend in today’s world as it provides the software companies with certain advantages like access to skill and cheap labor, low development cost etc. There are also many challenges and risks involved in globally distributed software project as compare to co-located projects like communication, coordination and control etc. due to geographical separation. There is also a recent interest in applying agile methods in offshore projects in order to minimize certain offshore challenges. Agile methods in collocated environment demands high communication, coordination and collaboration between the team members. However implementing agile methods in distributed environment is beneficial and challenging too, because of inherited GSD challenges. Therefore, it is necessary to carefully understand the benefits and challenges of applying agile methods in distributed project before actually initiating the development. Objectives: This research study aims to look at current empirical evidence regarding benefits and challenges of applying agile methods in offshore projects, in order to understand it properly. Furthermore, we have examined that which of the benefits and challenges reported in literature can be seen in practice. This helped us in finding out the similarities and differences between the benefits and challenges that are reported in literature and in practice. Methods: To fulfill our aims and objectives we have first conducted the detailed systematic review analysis of the empirical studies from year 2000-2010. The systematic review approach helped us to collect and summarize the empirical data available regarding the benefits and challenges of applying agile methods in offshore projects. The research studies were identified from the most authentic databases that are scientifically and technically peer reviewed such as Inspec and Compendex, IEEE Xplore, ACM digital library, Springer Link, Science Direct, Google Scholar, Scopus, ISI Web of Knowledge and Willey Inter Science Journal Finder. Furthermore, industrial survey was conducted in order to identify whether the benefits and challenges enlisted in literature can be confirmed by practitioners. This helped us in determining the similarities and differences between benefits and challenges that are reported in empirical literature and industrial survey. Results: From systematic review results, we have found the list of benefits and challenges of most applied agile practices such as daily scrum meetings, sprint planning meetings, sprint review meetings, retrospective meetings, pair programming, short release and on-site customer. The most common benefits related to above identified agile practices are early problem identification, project visibility, increase communication, coordination and collaboration, trust, clarification of work and requirements, early client feedback and customer satisfaction. Similarly the most common challenges associated with above identified agile practices are lack of linguistic skills, culture differences and temporal differences. From survey result, it was found that the majority of benefits and challenges identified through literature review are prevalent in software industries to some extent. We were able to identify the benefits and challenges of agile practices such as daily scrum, sprint planning meetings, sprint review, retrospective meetings and short release. The most common benefits of above identified agile practices highlighted by survey participants are project visibility, early problem identification, increase coordination, opportunity for knowledge sharing and transferring, immediate feedback from client, and opportunity for understanding the task properly. Similarly the most common challenges identified by survey participants are language problems, temporal difference and difficult to explain and understand problems or issues over communication technologies. However, there are certain challenges like trust and culture issues, which have received most attention in the empirical literature, but are not identified by majority of industry respondents. Conclusions: From the information attained so far regarding the benefits and challenges of agile methods in offshore projects, we observed that there is an emerging trend of using agile methods in offshore projects and practitioners actually found it beneficial. The benefits of agile practices does not achieve straightaway there are certain challenging factors of GSD too, which can restrict the implementation or make the methodology not useful such as communication, coordination and collaboration. These challenges are usually occurred due to geographical separation, lack of trust and linguistic skills, culture difference etc. The presented work add contribution in a sense as to the best of our knowledge no systematic review effort has been done in this area with specifically focuses on highlighting the benefits and challenges. From survey results we found that majority of benefits and challenges highlighted by survey participants are to some extent same with what we have already studied in literature. However there are certain important challenges which have received most attention in empirical literature but were less identified by the survey participants like trust issue and culture difference. The benefits and challenges identified through industrial survey do not add much information into our attention. This does not mean that all possible benefits and challenges of applying agile methods in offshore project have been explored. The responses which were received from industry practitioners were quite few to make any kind of arguments. There is a probability that we missed the important benefits and challenges related to particular agile practices during our industrial survey. Therefore we conclude that a much thorough and inclusive answers should be required to identify the benefits and challenges of applying agile methods in offshore projects.
25

Software-Assisted Knowledge Generation in the Cultural Heritage Domain: A Conceptual Framework

Martín Rodilla, Patricia 01 September 2016 (has links)
[EN] Software Engineering provides a repository of techniques, methods and tools to manage, process, use and exploit information. In recent decades, this corpus has not only been applied to domains that traditionally act as a receivers of software solutions, but also it has been expanded and enriched by contributions from other disciplines and domains with needs related to the information produced. One of the most common needs in these disciplines is the software assistance to experts or domain professionals in performing processes ranging from the analysis of raw gathered data to the generation of new knowledge based on these, thus allowing the continuous advance of the discipline. In order to assist knowledge generation processes through software, it is necessary a deep understanding of the Software Engineering corpus as well as the particularities of the domain assisted and how knowledge is generated inside it.This situation appears too in the Cultural Heritage domain, whose professionals produce and manage large amounts of data about evidences of our past and present, from which they create new knowledge that constitutes the knowledge about heritage of a particular community.Despite their relevance and the regular application of Software Engineering solutions to the Cultural Heritage domain, the knowledge generation process in Cultural Heritage poses a challenge for Software Engineering, mainly due to the low presence of formal studies of the process, making it difficult to assist it through software. The lack of formal studies implies that we do not know which particular processes in Cultural Heritage we must assist and what should be the appropriate assistance in each case. Furthermore, the Cultural Heritage domain and, in general, the humanities, possesses some particular characteristics that are especially difficult to deal with by software, such as the presence of high subjectivity, the fact that much information is uncertain or vague, and the importance of the temporal aspect in the information. In order to address these two challenges from a transdisciplinary perspective, this thesis presents a conceptual framework based on software models for the construction of software solutions to assist to the knowledge generation process in Cultural Heritage. Firstly, the thesis conducts a deep exploration of the knowledge generation processes in Cultural Heritage, whose inputs are mainly textual sources. As a result, the thesis proposes a methodology and a modelling language to use discourse analysis in Software Engineering. By using this approach, it is possible to relate elements of a text with the domain entities that are referenced and the argumentative mechanisms used during the knowledge generation process and captured in the text. Subsequently, the thesis proposes a conceptual framework whose implementation allows to manage the domain particularities mentioned above, providing a software assistance to the Cultural Heritage professionals through information visualization techniques.The proposed conceptual framework has been validated in two complementary ways. On the one hand, we have developed a full case study in the Cultural Heritage domain, for which we have instantiated all the software models proposed as part of the framework to represent a real-world scenario. This case study application has revealed the potential of the framework in terms of conceptual representation, technical support and software-assistance definition mechanisms.On the other hand, the proposed software models have been implemented as a functional iOS application prototype. The prototype has been validated empirically against professionals in Cultural Heritage, comparing the performance of knowledge generation processes using the proposed framework to the conventional ways without software assistance. The empirical validation has revealed how the proposed framework provides a robust solution for implementing software-assistance in Cultural Heritage. / [ES] La ingeniería del software ofrece un repositorio de técnicas, métodos y herramientas como soluciones para el manejo, tratamiento, uso y explotación de información. En las últimas décadas, este corpus no sólo ha sido aplicado a dominios tradicionalmente receptores de soluciones software, sino que se ha expandido y enriquecido con aportaciones de diversas disciplinas y dominios con necesidades relacionadas con la información que producen.Una de las necesidades más habituales es la asistencia a los profesionales de dichas disciplinas durante el proceso evolutivo que realizan desde el análisis de los datos más primarios hasta la generación de conocimiento nuevo que permita avanzar en la disciplina involucrada. Este es el caso del Patrimonio Cultural, cuyos profesionales producen y manejan ingentes cantidades de datos acerca de evidencias sobre nuestro pasado y presente, y desde los cuáles descubren y generan conocimiento nuevo, que supone la herencia cultural propia de una comunidad. Este conocimiento define la comunidad en el presente y es transmitido a las generaciones presentes y futuras. Pese a su relevancia y a la habitual aplicación de determinadas soluciones de ingeniería software en el dominio, el proceso de generación de conocimiento en Patrimonio Cultural representa en sí mismo un reto para la ingeniería del software, debido fundamentalmente a la poca presencia de estudios formales acerca del mismo, lo que dificulta su asistencia mediante software. Esto implica que no sabemos qué tipo de subprocesos debemos asistir mediante software ni cuál es la asistencia más adecuada. Además, el corpus actual en ingeniería del software debe soportar especificidades del dominio patrimonial y, en general, de las humanidades, como son la presencia de una alta subjetividad, el hecho de que mucha información es incierta o vaga, y la importancia del aspecto temporal en los datos. Con el objetivo de abordar estos dos retos desde una perspectiva co-investigadora y transdisciplinar, la presente tesis doctoral presenta un marco conceptual basado en modelos software para la construcción de soluciones software que asistan a la generación de conocimiento en Patrimonio Cultural. La tesis explora a fondo el proceso de generación de conocimiento en Patrimonio Cultural, cuyas fuentes eminentemente textuales han dado lugar a la propuesta de una metodología completa y un lenguaje de modelado para utilizar análisis del discurso en ingeniería del software. Esta propuesta permite que se puedan relacionar elementos de un texto con las entidades del dominio que se referencian, así como los mecanismos argumentativos que se emplean.Posteriormente, la tesis propone un marco conceptual completo cuya implementación permite gestionar las especificidades del dominio antes señaladas, ofreciendo una asistencia mediante técnicas de visualización de información software a los especialistas en Patrimonio Cultural. El marco conceptual propuesto ha sido validado de dos maneras complementarias. Por un lado, se ha desarrollado un caso de estudio patrimonial completo, para el cual se han implementado todos los modelos software del marco conceptual propuesto, representando un escenario de aplicación completo del mundo real. Este caso de estudio ha permitido comprobar la potencia del marco conceptual propuesto en cuanto a representación, soporte y definición de mecanismos de asistencia software. Por otro lado, los modelos software que conforman el marco conceptual propuesto han sido implementados en un prototipo funcional en forma de aplicación iOS. Esto ha permitido contar con una implementación real de asistencia software en Patrimonio Cultural. Dicha solución se ha validado empíricamente con profesionales del dominio, comparándola con los modos de generación de conocimiento habituales sin dicha asistencia.La validación empírica ha permitido comprobar cómo el marco propuesto constituye una solución sólida para la construcci / [CAT] L'enginyeria del programari ofereix un repositori de tècniques, mètodes i eines com a suport per la manipulació, tractament, ús i explotació d'informació. En les darreres dècades, aquest corpus no sols ha sigut aplicat a dominis tradicionalment receptors de solucions de programari, si no que s'han extés i enriquit amb aportacions des de diferents disciplines i dominis amb necessitats relacionades amb l'informació que produeixen. Una de les necessitats més habituals és l'assistència als professionals d'aquestes disciplines durant el procés evolutiu que realitzen des de l'anàlisi de les dades més primàries fins la generació de nou coneixement que permet avançar en la disciplina involucrada. Aquest és el cas del Patrimoni Cultural, el professionals del qual produeixen i manipulen grans quantitats de dades sobre evidències del nostre passat i present, i des de les quals descobreixen i generen nou coneixement, que suposa l'herència cultural pròpia d'una comunitat. A pesar de la seua relevància i a la normal aplicació de determinades solucions d'enginyeria de programari al domini, el procés de generació de coneixement en Patrimoni Cultural representa, en sí mateix, un repte per a l'enginyeria del programari, fonamentalment per la poca presència d'estudis formals sobre aquest domini, cosa que dificulta la seua assistència per programari. Açò implica que no sabem quin tipus de subprocessos hem d'assistir amb programari ni quina és l'assitència més adient. A més a més, el corpus actual en l'enginyeria del programari ha de suportar especifitats del domini patrimonial i, en general, de les humanitats, com són la presència d'una alta subjectivitat, i el fet que molta informació és incerta o imprescisa, o la importància de la dimensió temporal en les dades. Amb l'objectiu d'abordar aquestos dos reptes des d'una perspectiva de recerca colaborativa i transdisciplinar, aquesta tesi doctoral presenta un marc conceptual basat en models de programari per a la construcció de solucions de programari que assistisquen a la generació de coneixement en Patrimoni Cultural. En primer lloc, la tesi explora en profunditat el procés de generació de coneixement en Patrimoni Cultural, les fonts de les quals són majoritàriament textuals han sigut l'orige per a la proposta d'una metodologia completa i un llenguatge de modelatge per emprar anàlisi del discurs en enginyeria de programari. Aquesta proposta permet que es puguen relacionar elements d'un text amb les entitats del domini que es referencien, així com els mecanismes argumentatius que s'empren. Posteriorment, la tesi proposa un marc conceptual complet amb una implementació que permet gestionar les especificitats del domini abans esmentades, oferint una assistència mitjançant tècniques de visualització d'informació de programari als especialistes en Patrimoni Cultural.El marc conceptual proposat ha sigut validat de dues maneres complementàries. Per una banda, s'ha desenvolupat un cas d'estudi patrimonial complet, implementant tots els models de programari del marc conceptual proposat, representant un escenari d'aplicació complet del món real. Aquest cas d'estudi ha permés comprovar la potència del marc conceptual proposat en quant a la representació, suport i definició de mecanismes d'assistència de programari. Per una altra banda, els models de programari que conformen el marc conceptual proposat s'han implementat en un prototipus funcional en forma d'aplicació iOS. Aquest fet ha permés comptar amb una implementació real d'assistència de programari en Patrimoni Cultural. Aquesta solució s'ha validat empíricament amb professionals del domini, comparant-la amb els modes de generació de coneixement habituals sense aquesta assistència. La validació empírica ha permés comprovar com el marc conceptual proposat constitueix una solució sòlida per a la construcció, a partir dels models de programari especificats, dels sistemes de prog / Martín Rodilla, P. (2016). Software-Assisted Knowledge Generation in the Cultural Heritage Domain: A Conceptual Framework [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/68496 / TESIS
26

Empirical Assessment of UML Class Diagram Layouts Based on Architectural Importance

Sharif, Bonita 19 April 2010 (has links)
No description available.
27

Modelling software quality : a multidimensional approach

Vaucher, Stéphane 11 1900 (has links)
Les sociétés modernes dépendent de plus en plus sur les systèmes informatiques et ainsi, il y a de plus en plus de pression sur les équipes de développement pour produire des logiciels de bonne qualité. Plusieurs compagnies utilisent des modèles de qualité, des suites de programmes qui analysent et évaluent la qualité d'autres programmes, mais la construction de modèles de qualité est difficile parce qu'il existe plusieurs questions qui n'ont pas été répondues dans la littérature. Nous avons étudié les pratiques de modélisation de la qualité auprès d'une grande entreprise et avons identifié les trois dimensions où une recherche additionnelle est désirable : Le support de la subjectivité de la qualité, les techniques pour faire le suivi de la qualité lors de l'évolution des logiciels, et la composition de la qualité entre différents niveaux d'abstraction. Concernant la subjectivité, nous avons proposé l'utilisation de modèles bayésiens parce qu'ils sont capables de traiter des données ambiguës. Nous avons appliqué nos modèles au problème de la détection des défauts de conception. Dans une étude de deux logiciels libres, nous avons trouvé que notre approche est supérieure aux techniques décrites dans l'état de l'art, qui sont basées sur des règles. Pour supporter l'évolution des logiciels, nous avons considéré que les scores produits par un modèle de qualité sont des signaux qui peuvent être analysés en utilisant des techniques d'exploration de données pour identifier des patrons d'évolution de la qualité. Nous avons étudié comment les défauts de conception apparaissent et disparaissent des logiciels. Un logiciel est typiquement conçu comme une hiérarchie de composants, mais les modèles de qualité ne tiennent pas compte de cette organisation. Dans la dernière partie de la dissertation, nous présentons un modèle de qualité à deux niveaux. Ces modèles ont trois parties: un modèle au niveau du composant, un modèle qui évalue l'importance de chacun des composants, et un autre qui évalue la qualité d'un composé en combinant la qualité de ses composants. L'approche a été testée sur la prédiction de classes à fort changement à partir de la qualité des méthodes. Nous avons trouvé que nos modèles à deux niveaux permettent une meilleure identification des classes à fort changement. Pour terminer, nous avons appliqué nos modèles à deux niveaux pour l'évaluation de la navigabilité des sites web à partir de la qualité des pages. Nos modèles étaient capables de distinguer entre des sites de très bonne qualité et des sites choisis aléatoirement. Au cours de la dissertation, nous présentons non seulement des problèmes théoriques et leurs solutions, mais nous avons également mené des expériences pour démontrer les avantages et les limitations de nos solutions. Nos résultats indiquent qu'on peut espérer améliorer l'état de l'art dans les trois dimensions présentées. En particulier, notre travail sur la composition de la qualité et la modélisation de l'importance est le premier à cibler ce problème. Nous croyons que nos modèles à deux niveaux sont un point de départ intéressant pour des travaux de recherche plus approfondis. / As society becomes ever more dependent on computer systems, there is more and more pressure on development teams to produce high-quality software. Many companies therefore rely on quality models, program suites that analyse and evaluate the quality of other programs, but building good quality models is hard as there are many questions concerning quality modelling that have yet to be adequately addressed in the literature. We analysed quality modelling practices in a large organisation and identified three dimensions where research is needed: proper support of the subjective notion of quality, techniques to track the quality of evolving software, and the composition of quality judgments from different abstraction levels. To tackle subjectivity, we propose using Bayesian models as these can deal with uncertain data. We applied our models to the problem of anti-pattern detection. In a study of two open-source systems, we found that our approach was superior to state of the art rule-based techniques. To support software evolution, we consider scores produced by quality models as signals and the use of signal data-mining techniques to identify patterns in the evolution of quality. We studied how anti-patterns are introduced and removed from systems. Software is typically written using a hierarchy of components, yet quality models do not explicitly consider this hierarchy. As the last part of our dissertation, we present two level quality models. These are composed of three parts: a component-level model, a second model to evaluate the importance of each component, and a container-level model to combine the contribution of components with container attributes. This approach was tested on the prediction of class-level changes based on the quality and importance of its components: methods. It was shown to be more useful than single-level, traditional approaches. To finish, we reapplied this two-level methodology to the problem of assessing web site navigability. Our models could successfully distinguish award-winning sites from average sites picked at random. Throughout the dissertation, we present not only theoretical problems and solutions, but we performed experiments to illustrate the pros and cons of our solutions. Our results show that there are considerable improvements to be had in all three proposed dimensions. In particular, our work on quality composition and importance modelling is the first that focuses on this particular problem. We believe that our general two-level models are only a starting point for more in-depth research.
28

TechREF: uma técnica de engenharia reversa orientada a features

Santos, Maicon dos 18 January 2018 (has links)
Submitted by JOSIANE SANTOS DE OLIVEIRA (josianeso) on 2018-04-25T16:10:27Z No. of bitstreams: 1 Maicon dos Santos_.pdf: 3747706 bytes, checksum: ef8b81f35d6d19fc23c56bfba79044c5 (MD5) / Made available in DSpace on 2018-04-25T16:10:27Z (GMT). No. of bitstreams: 1 Maicon dos Santos_.pdf: 3747706 bytes, checksum: ef8b81f35d6d19fc23c56bfba79044c5 (MD5) Previous issue date: 2018-01-18 / Nenhuma / Engenharia reversa de código desempenha um papel fundamental em várias atividades de Engenharia de Software, tais como geração de modelos a partir de código legado e recuperação de funcionalidades (ou features) de sistemas. No contexto de Linha de Produto de Software (LPS), por exemplo, um produto de software é formado por um conjunto de features que são constantemente alteradas para acomodar mudanças de regras de negócio. Consequentemente, o modelo (por exemplo, diagrama de classes da UML) que representa toda LPS precisa ser modificado para refletir as atualizações realizadas. Neste contexto, várias ferramentas têm sido propostas nas últimas décadas, por exemplo, Astah e ArgoUML. Porém, as ferramentas (e suas técnicas) não dão suporte à engenharia reversa orientada a features, são imprecisas no que se refere à completude dos diagramas gerados, bem como exige um alto esforço para atualização dos modelos pois são manuais ou semiautomáticas. Para mitigar esta problemática, este trabalho propõe a TechREF, uma técnica de engenharia reversa orientada a features. De forma automática, a TechREF captura o fluxo de execução do código associado a uma feature, identifica as informações estruturais e comportamentais do código, e gera diagramas de classes UML, bem como persiste tais diagramas. A TechREF foi avaliada através de um estudo de caso tendo cenários reais de engenharia reversa. Esta avaliação buscou verificar o esforço e a corretude das atividades que serão realizadas no experimento com o uso dos modelos orientados a features. / Reverse code engineering plays a key role in various Software Engineering activities, such as model generation from legacy code and retrieval of system features. In the context of Software Product Line (LPS), for example, a software product is composed of a set features that are constantly changed to accommodate changes in business rules. Consequently, the model (for example, UML class diagram) that represents the entire LPS needs to be modified to reflect the updates made. In this context, several tools have been proposed in the last decades, for example, Astah and ArgoUML. However, the tools (and their techniques) do not support feature-oriented reverse engineering, are imprecise in terms of the completeness of the generated diagrams, as well as requiring a high effort to update the models because they are manual or semiautomatic. To mitigate this problem, this paper proposes TechREF, a reverse engineering technique oriented to features. Automatically, TechREF captures the execution flow of code associated with a feature, identifies the structural and behavioral information of the code, and generates diagrams of UML classes, as well as persists such diagrams. TechREF was evaluated through a case study having real reverse engineering scenarios. This evaluation sought to verify the effort and correctness of the activities that will be carried out in the experiment with the use of the models oriented to features.
29

A Case Study of High-School Student Self-Regulation Responses to Design Failure

Andrew M. Jackson (5929802) 16 January 2019 (has links)
<div>Although design is part of everyday experience, increased proficiency in managing and reflecting while designing signify greater proficiency as a designer. This capacity for regulation in design is crucial for learning, including from failure experiences, while designing. Failure and iteration are integral parts of design, with potential cognitive and psychological ramifications. On the one hand, failure can be framed as a learning experience that interrupts thinking and evokes reflection. On the other hand, it can be detrimental for confidence and motivation or derail the design process. Based on similarities between design and self-regulation, I articulate a framework whereby responses to failure might be regulated by beginning designers. Then, this case study applies the framework to describe the experiences and perspectives of beginning designers as they work and fail, illuminating issues of failure in design and the extent of their self-regulation.</div><div><br></div><div>The in situ design processes of four teams was examined to describe self-regulation strategies among student designers. Analysis was conducted with two methods: linkography and typological thematic analysis. Linkography, based on think-aloud data, provided a visual representation of the design process and tools to identify reflection, planning, and critical moments in the design process. Typological analysis, based on think-aloud data, follow-up interviews, and design journals, was used to investigate specific strategies of self-regulation. The complementary methods contribute to understanding beginning designers’ self-regulation from multiple perspectives.</div><div><br></div><div>Results portray varied trajectories in design, ranging from repeated failure and determination to fleeting success and satisfaction. Class structures emerge in designers’ patterns of planning and reflection. These highlight the contextualized and evolutionary nature of design and self-regulation. Furthermore, linkographic evidence showed a beginning sense-making process, followed by oscillating phases of forward and backward thinking, to various degrees. Moments of testing, both successes and failure, were critically connected in the design process.</div><div><br></div><div>Thematic analysis identified 10 themes, aligning with the self-regulatory phases of forethought, performance, and reflection. The themes highlight how regulation in forethought is used to shape performance based on past iterations; meanwhile, the identification and attribution of failures relays information on how, and whether to iterate. Collectively, thematic findings reinforce the cyclical nature of design and self-regulation.</div><div><br></div><div>Design and self-regulation are compatible ways of thinking; for designers, the juxtaposition of these concepts may be useful to inform patterns of navigating the problem-solving process. For educators, the imposition of classroom structures in design and self-regulatory thinking draws attention to instructional design and assessment for supporting student thinking. And for researchers of design or self-regulation, these methods can give confidence for further exploration.</div>
30

Modelling software quality : a multidimensional approach

Vaucher, Stéphane 11 1900 (has links)
Les sociétés modernes dépendent de plus en plus sur les systèmes informatiques et ainsi, il y a de plus en plus de pression sur les équipes de développement pour produire des logiciels de bonne qualité. Plusieurs compagnies utilisent des modèles de qualité, des suites de programmes qui analysent et évaluent la qualité d'autres programmes, mais la construction de modèles de qualité est difficile parce qu'il existe plusieurs questions qui n'ont pas été répondues dans la littérature. Nous avons étudié les pratiques de modélisation de la qualité auprès d'une grande entreprise et avons identifié les trois dimensions où une recherche additionnelle est désirable : Le support de la subjectivité de la qualité, les techniques pour faire le suivi de la qualité lors de l'évolution des logiciels, et la composition de la qualité entre différents niveaux d'abstraction. Concernant la subjectivité, nous avons proposé l'utilisation de modèles bayésiens parce qu'ils sont capables de traiter des données ambiguës. Nous avons appliqué nos modèles au problème de la détection des défauts de conception. Dans une étude de deux logiciels libres, nous avons trouvé que notre approche est supérieure aux techniques décrites dans l'état de l'art, qui sont basées sur des règles. Pour supporter l'évolution des logiciels, nous avons considéré que les scores produits par un modèle de qualité sont des signaux qui peuvent être analysés en utilisant des techniques d'exploration de données pour identifier des patrons d'évolution de la qualité. Nous avons étudié comment les défauts de conception apparaissent et disparaissent des logiciels. Un logiciel est typiquement conçu comme une hiérarchie de composants, mais les modèles de qualité ne tiennent pas compte de cette organisation. Dans la dernière partie de la dissertation, nous présentons un modèle de qualité à deux niveaux. Ces modèles ont trois parties: un modèle au niveau du composant, un modèle qui évalue l'importance de chacun des composants, et un autre qui évalue la qualité d'un composé en combinant la qualité de ses composants. L'approche a été testée sur la prédiction de classes à fort changement à partir de la qualité des méthodes. Nous avons trouvé que nos modèles à deux niveaux permettent une meilleure identification des classes à fort changement. Pour terminer, nous avons appliqué nos modèles à deux niveaux pour l'évaluation de la navigabilité des sites web à partir de la qualité des pages. Nos modèles étaient capables de distinguer entre des sites de très bonne qualité et des sites choisis aléatoirement. Au cours de la dissertation, nous présentons non seulement des problèmes théoriques et leurs solutions, mais nous avons également mené des expériences pour démontrer les avantages et les limitations de nos solutions. Nos résultats indiquent qu'on peut espérer améliorer l'état de l'art dans les trois dimensions présentées. En particulier, notre travail sur la composition de la qualité et la modélisation de l'importance est le premier à cibler ce problème. Nous croyons que nos modèles à deux niveaux sont un point de départ intéressant pour des travaux de recherche plus approfondis. / As society becomes ever more dependent on computer systems, there is more and more pressure on development teams to produce high-quality software. Many companies therefore rely on quality models, program suites that analyse and evaluate the quality of other programs, but building good quality models is hard as there are many questions concerning quality modelling that have yet to be adequately addressed in the literature. We analysed quality modelling practices in a large organisation and identified three dimensions where research is needed: proper support of the subjective notion of quality, techniques to track the quality of evolving software, and the composition of quality judgments from different abstraction levels. To tackle subjectivity, we propose using Bayesian models as these can deal with uncertain data. We applied our models to the problem of anti-pattern detection. In a study of two open-source systems, we found that our approach was superior to state of the art rule-based techniques. To support software evolution, we consider scores produced by quality models as signals and the use of signal data-mining techniques to identify patterns in the evolution of quality. We studied how anti-patterns are introduced and removed from systems. Software is typically written using a hierarchy of components, yet quality models do not explicitly consider this hierarchy. As the last part of our dissertation, we present two level quality models. These are composed of three parts: a component-level model, a second model to evaluate the importance of each component, and a container-level model to combine the contribution of components with container attributes. This approach was tested on the prediction of class-level changes based on the quality and importance of its components: methods. It was shown to be more useful than single-level, traditional approaches. To finish, we reapplied this two-level methodology to the problem of assessing web site navigability. Our models could successfully distinguish award-winning sites from average sites picked at random. Throughout the dissertation, we present not only theoretical problems and solutions, but we performed experiments to illustrate the pros and cons of our solutions. Our results show that there are considerable improvements to be had in all three proposed dimensions. In particular, our work on quality composition and importance modelling is the first that focuses on this particular problem. We believe that our general two-level models are only a starting point for more in-depth research.

Page generated in 0.4326 seconds