1 |
Supporting Heuristic Evaluation for the WebFlores Mendoza, Ana 14 January 2010 (has links)
Web developers are confronted with evaluating the usability of Web interfaces.
Automatic Web usability evaluation tools are available, but they are limited in the types
of problems they can handle. Tool support for manual usability evaluation is needed.
Accordingly, this research focuses on developing a tool for supporting manual processes
in Heuristic Evaluation inspection.
The research was conveyed in three phases. First, an observational study was
conducted in order to characterize the inspection process in Heuristic Evaluation. The
videos of evaluators applying a Heuristic Evaluation on a non-interactive, paper-based
Web interface were analyzed to dissect the inspection process. Second, based on the
study, a tool for annotating Web interfaces when applying Heuristic Evaluations was
developed. Finally, a survey is conducted to evaluate the tool and learn the role of
annotations in inspection. Recommendations for improving the use of annotations in
problem reporting are outlined. Overall, users were satisfied with the tool.
The goal of this research, designing and developing an inspection tool, is
achieved.
|
2 |
Toward Tool Support for Usage of Object-Oriented Design Patterns Expressed in Unified Modeling LanguageBohdanowicz, Daniel January 2005 (has links)
Design patterns describe solutions that can be used in a particular context for commonly recurring problems at the detailed design level of a software system. Patterns have become an important concept in object-oriented development and their usage is a widely accepted practice. This thesis investigates issue of tool support for design patterns usage that can be offered by UML modelling tools, and proposes UML based method and notation for specification of the patterns, and documentation of their instances in a design model, facilitating such support. Different ways of such support are presented and classified, and comparison of tools offering assistance for patterns usage is depicted. UML profile supporting specification of structural aspects of solutions proposed by design patterns, and documentation of their instances is specified in the thesis.
|
3 |
Supporting Novice Usability Practitioners with Usability Engineering ToolsHowarth, Jonathan Randall 24 April 2007 (has links)
The usability of an application often plays an important role in determining its success. Accordingly, organizations that develop software have realized the need to integrate usability engineering into their development lifecycles. Although usability practitioners have successfully applied usability engineering processes to increase the usability of user-interaction designs, the literature suggests that usability practitioners experience a number of difficulties that negatively impact their effectiveness. These difficulties include identifying and recording critical usability data, understanding and relating usability data, and communicating usability information. These difficulties are particularly pronounced for novice usability practitioners.
With this dissertation, I explored approaches to address these difficulties through tool support for novice usability practitioners. Through an analysis of features provided by existing tools with respect to documented difficulties, I determined a set of desirable tool features including usability problem instance records, usability problem diagnosis, and a structured process for combining and associating usability problem data. I developed a usability engineering tool, the Data Collection, Analysis, and Reporting Tool (DCART), which contains these desirable tool features, and used it as a platform for studies of how these desirable features address the documented difficulties.
The results of the studies suggest that appropriate tool support can improve the effectiveness with which novice usability practitioners perform usability evaluations. More specifically, tool support for usability problem instance records helped novice usability practitioners more reliably identify and better describe instances of usability problems experienced by participants. Additionally, tool support for a structured process for combining and associating usability data helped novice usability practitioners create usability evaluation reports that were of higher quality as rated by usability practitioners and developers.
The results highlight key contributions of this dissertation, showing how tools can support usability practitioners. They demonstrate the value of a structured process for transforming raw usability data into usability information based on usability problem instances. Additionally, they show that appropriate tool support is a mechanism for further integrating usability engineering into the overall software development lifecycle; tool support addresses the documented need for more usability practitioners by helping novices perform more like experts. / Ph. D.
|
4 |
Tool Support For Distributed Agile Software DevelopmentUsta, Ahsen Serkan 01 May 2006 (has links) (PDF)
Agile Software Development has gained popularity with their people
centric view and their common practices for developing software in
today&rsquo / s volatile business world where change on requirements is
unavoidable. However / the efficiency of the project depends on the
communication and the collaboration of the team, which are
supported by the co-location of the team. But in some cases colocation
of the team cannot be realized, thus agile processes should
also support distributed teams. This point was observed by Kircher,
Jain, Corsaro, and Levine [31] and they suggested Distributed
eXtreme Programming (DXP) after they prepared a study using offthe-
shelf software products in order to replace the effect of face-toface
communication on the efficiency of the application of agile
processes with the aid gathered from tool support.
In this study some available tool support for distributed agile
software development is investigated and a tool is developed and
presented in order to support software configuration management
as well as increasing collaboration and communication of the team.
The tool is then evaluated from a user&rsquo / s perspective and it is
compared with some available software configuration management
tools.
|
5 |
Tool support for the derivation of product line use cases : A case study in the railway transportation domainForsman, Viking January 2021 (has links)
Use cases are textual artifacts used to define the expected behavior of a system. However, use cases become more complicated when applied in a product line context since they need to define the behavior of several systems. Product line use cases require knowledge of commonality and variability concepts, which all involved stakeholders do not necessarily possess. Product-specific use cases are more understandable since they do not include variability information. Therefore, it would be beneficial to derive product-specific use cases from the product line use cases once the variability has been bound. This derivation could alleviate communication and help create a shared understanding of the product's expected behavior amongst diverse stakeholders. In this thesis work, we have implemented a tool that can perform this type of derivation. The tool is divided into two collaborating parts. The first part is an extension to DOORS, which is responsible for creating and maintaining product line use cases. The second part is a third-party application responsible for binding the variability and deriving product-specific use cases. This tool was evaluated using a questionnaire with participants from Alstom, a company within the railway transportation domain. The evaluation showed that the tool has potential as a vehicle for communication amongst diverse stakeholders. / Use cases är textuella artefakter vilka används för att definiera det förväntade beteendet hos system. Dock så blir use cases mer komplicerade när de appliceras inom en produktionslinje-kontext, eftersom de då behöver definiera beteendet av flera olika system. Användandet av produktionslinje use cases kräver kännedom av kommonalitet och variabilitet koncept, vilket alla inblandade delägare inte nödvändigtvis behärskar. Därför skulle det vara gynnsamt om man kunde derivera produktspecifika use cases från produktionslinje use cases när dess variabilitet har bundits. Denna derivation skulle kunna underlätta kommunikation och skapa en gemensam förståelse av produktens förväntande beteende bland delägare med olika bakgrunder. I detta avhandlingsarbete har vi implementerat ett verktyg som kan utföra denna typ av derivation. Verktyget är uppdelat i två samarbetande delar. Den första delen är ett tilläggsprogram till DOORS, vilken är ansvarigt för att skapa och underhålla produktionslinje use cases. Den andra delen är en tredjeparts applikation vilken är ansvarig för att binda variabiliteten och derivera fram produktspecifika use cases. Verktyget evaluerades med ett frågeformulär med tio deltagare från Alstom, ett företag inom järnvägstransport området. Denna evaluering visade att verktyget har potential att användas som ett fordon för kommunikation mellan delägare med olika bakgrunder.
|
6 |
Realisierung einer Schedulingumgebung für gemischt-parallele Anwendungen und Optimierung von layer-basierten Schedulingalgorithmen / Development of a scheduling support environment for mixed parallel applications and optimization of layer-based scheduling algorithmsKunis, Raphael 25 January 2011 (has links) (PDF)
Eine Herausforderung der Parallelverarbeitung ist das Erreichen von Skalierbarkeit großer paralleler Anwendungen für verschiedene parallele Systeme. Das zentrale Problem ist, dass die Ausführung einer Anwendung auf einem parallelen System sehr gut sein kann, die Portierung auf ein anderes System in der Regel jedoch zu schlechten Ergebnissen führt.
Durch die Verwendung des Programmiermodells der parallelen Tasks mit Abhängigkeiten kann die Skalierbarkeit für viele parallele Algorithmen
deutlich verbessert werden. Die Programmierung mit parallelen Tasks führt zu Task-Graphen mit Abhängigkeiten zur Darstellung einer parallelen Anwendung, die auch als gemischt-parallele Anwendung bezeichnet wird. Die Grundlage für eine effiziente Abarbeitung einer gemischt-parallelen Anwendung bildet ein geeigneter Schedule, der eine effiziente Abbildung der parallelen Tasks auf die Prozessoren des parallelen Systems vorgibt. Für die Berechnung eines Schedules werden Schedulingalgorithmen eingesetzt.
Ein zentrales Problem bei der Bestimmung eines Schedules für gemischt-parallele Anwendungen besteht darin, dass das Scheduling bereits für Single-Prozessor-Tasks mit Abhängigkeiten und ein paralleles System mit zwei Prozessoren NP-hart ist. Daher existieren lediglich Approximationsalgorithmen und Heuristiken um einen Schedule zu berechnen. Eine Möglichkeit zur Berechnung eines Schedules sind layerbasierte Schedulingalgorithmen. Diese Schedulingalgorithmen bilden zuerst Layer unabhängiger paralleler Tasks und berechnen den Schedule für jeden Layer separat.
Eine Schwachstelle dieser Schedulingalgorithmen ist das Zusammenfügen der einzelnen Schedules zum globalen Schedule. Der vorgestellte Algorithmus Move-blocks bietet eine elegante Möglichkeit das Zusammenfügen zu verbessern. Dies geschieht durch eine Verschmelzung der Schedules aufeinander folgender Layer.
Obwohl eine Vielzahl an Schedulingalgorithmen für gemischt-parallele Anwendungen existiert, gibt es bislang keine umfassende Unterstützung des Schedulings durch Programmierwerkzeuge. Im Besonderen gibt es keine Schedulingumgebung, die eine Vielzahl an Schedulingalgorithmen in sich vereint. Die Vorstellung der flexiblen, komponentenbasierten und erweiterbaren Schedulingumgebung SEParAT ist der zweite Fokus dieser Dissertation. SEParAT unterstützt verschiedene Nutzungsszenarien,
die weit über das reine Scheduling hinausgehen, z.B. den Vergleich von
Schedulingalgorithmen und die Erweiterung und Realisierung neuer Schedulingalgorithmen. Neben der Vorstellung der Nutzungsszenarien werden sowohl die interne Verarbeitung eines Schedulingdurchgangs als auch die komponentenbasierte Softwarearchitektur detailliert vorgestellt.
|
7 |
Realisierung einer Schedulingumgebung für gemischt-parallele Anwendungen und Optimierung von layer-basierten SchedulingalgorithmenKunis, Raphael 20 January 2011 (has links)
Eine Herausforderung der Parallelverarbeitung ist das Erreichen von Skalierbarkeit großer paralleler Anwendungen für verschiedene parallele Systeme. Das zentrale Problem ist, dass die Ausführung einer Anwendung auf einem parallelen System sehr gut sein kann, die Portierung auf ein anderes System in der Regel jedoch zu schlechten Ergebnissen führt.
Durch die Verwendung des Programmiermodells der parallelen Tasks mit Abhängigkeiten kann die Skalierbarkeit für viele parallele Algorithmen
deutlich verbessert werden. Die Programmierung mit parallelen Tasks führt zu Task-Graphen mit Abhängigkeiten zur Darstellung einer parallelen Anwendung, die auch als gemischt-parallele Anwendung bezeichnet wird. Die Grundlage für eine effiziente Abarbeitung einer gemischt-parallelen Anwendung bildet ein geeigneter Schedule, der eine effiziente Abbildung der parallelen Tasks auf die Prozessoren des parallelen Systems vorgibt. Für die Berechnung eines Schedules werden Schedulingalgorithmen eingesetzt.
Ein zentrales Problem bei der Bestimmung eines Schedules für gemischt-parallele Anwendungen besteht darin, dass das Scheduling bereits für Single-Prozessor-Tasks mit Abhängigkeiten und ein paralleles System mit zwei Prozessoren NP-hart ist. Daher existieren lediglich Approximationsalgorithmen und Heuristiken um einen Schedule zu berechnen. Eine Möglichkeit zur Berechnung eines Schedules sind layerbasierte Schedulingalgorithmen. Diese Schedulingalgorithmen bilden zuerst Layer unabhängiger paralleler Tasks und berechnen den Schedule für jeden Layer separat.
Eine Schwachstelle dieser Schedulingalgorithmen ist das Zusammenfügen der einzelnen Schedules zum globalen Schedule. Der vorgestellte Algorithmus Move-blocks bietet eine elegante Möglichkeit das Zusammenfügen zu verbessern. Dies geschieht durch eine Verschmelzung der Schedules aufeinander folgender Layer.
Obwohl eine Vielzahl an Schedulingalgorithmen für gemischt-parallele Anwendungen existiert, gibt es bislang keine umfassende Unterstützung des Schedulings durch Programmierwerkzeuge. Im Besonderen gibt es keine Schedulingumgebung, die eine Vielzahl an Schedulingalgorithmen in sich vereint. Die Vorstellung der flexiblen, komponentenbasierten und erweiterbaren Schedulingumgebung SEParAT ist der zweite Fokus dieser Dissertation. SEParAT unterstützt verschiedene Nutzungsszenarien,
die weit über das reine Scheduling hinausgehen, z.B. den Vergleich von
Schedulingalgorithmen und die Erweiterung und Realisierung neuer Schedulingalgorithmen. Neben der Vorstellung der Nutzungsszenarien werden sowohl die interne Verarbeitung eines Schedulingdurchgangs als auch die komponentenbasierte Softwarearchitektur detailliert vorgestellt.
|
Page generated in 0.0558 seconds