Browsing by Author "Maurer, F."
Now showing 1 - 6 of 6
Results Per Page
- ItemMetadata onlyA generative layout approach for rooted tree drawings(IEEE, 2013) Schulz, H.-J.; Akbar, Z.; Maurer, F.In response to the large number of existing tree layouts, generic “meta-layouts” have recently been proposed. These generic approaches utilize layout design spaces to pinpoint a tree drawing with desired characteristics in the wealth of available drawing options and parameters. While design-space-based generic layouts work well for the confined set of implicit space-filling tree layouts, they have so far eluded their extension to explicit node-link diagrams. In order to produce both, implicit and explicit tree layouts, this paper parts with the descriptive nature of the design spaces and instead takes a generative approach based on operators. As these operators can be combined into operator sequences and be used at different stages of the layout process, a small operator set already suffices to yield a large number of different tree layouts. To this end, we present a generic tree layout pipeline and give examples of suitable layout operators to plug into the pipeline. A prototypical implementation of our pipeline and operators is presented, and it is illustrated with space-filling and node-link examples. Furthermore, the paper presents results from a user study evaluating our generative approach as it is realized by the prototype.
- ItemMetadata onlyA Language to Define Multi-Touch Interactions(ACM, 2010) Khandkar, Shahedul Huq; Maurer, F.Touch has become a common interface for human computer interaction. From portable hand held devices like smart phones to tabletops, large displays and even devices that project on arbitrary surfaces support touch interface. However, at the end, it is the applications that bring meaning for these technologies to people. Incorporating a touch interface in application requires translating meaningful touches into system recognizable events. This process often involves complex implementations that are sometimes hard to fine tune. Due to the lack of higher-level frameworks, developers often end up writing code from scratch to implement touch interactions in their application. To address this, we present a domain-specific language to define multi-touch interaction that hides the low level implementation complexities from application developers. This allows them to focus on designing touch interactions that are natural and meaningful to the application context without worrying about implementation complexities.
- ItemOpen AccessManaging Multitasking in Software Development Tasks Using Visual Analytics and Machine Learning(2018-09-13) Shakeri Hossein Abad, Zahra; Barker, Ken E.; Høyer, Peter; Maurer, F.Task switching and interruptions are a daily reality in software development projects: developers switch between Requirements Engineering (RE), coding, testing, daily meetings, and other tasks. As developing software involves a mix of analytical and creative work, and requires a significant load on brain functions, such as working memory and decision making, task switching in the context of software development imposes a cognitive load that causes software developers to lose focus and concentration thereby taking a toll on their productivity. Task switching may increase productivity through increased information flow and effective time management. However, it might also cause a cognitive load to reorient the primary task, which accounts for the decrease in developers? productivity and increases in errors. Thus, there is a need to understand and explore the multitasking behavior of software developers to model the factors that make task switchings more disruptive in development tasks through a multidisciplinary combination of software engineering, cognitive psychology, information visualization, and machine learning researches. Moreover, recent advances in visual analytics, e.g. visual storytelling, natural language processing, and classification methods offer an opportunity to advance the understanding of and support for multitasking in software development teams through the integration of cognitive psychology, machine learning, and information visualization. This dissertation studies the behavior of multitasking and task switching in software development teams through designing and implementing five in-depth comprehensive, explorative and retrospective studies aiming at explorations of the concept of task switching and interruption in the context of software development as well of the operationalization of the interruption characteristics that impact the vulnerability of development tasks to task switching. Following the outcomes of these explorations, and to assist analysts by identifying relevant information from documental sources during an interactive interview or after resuming an information-intensive task, a novel machine learning technique is proposed to dynamically extract requirements-relevant knowledge from existing documents. On the technical side, this technique proposes to use non-contiguous n-gram kernels in the context of requirements classification and applies rational kernels combined with SVMs to model and analyze the incoming information in real-time.
- ItemMetadata onlyA Network Analysis of Stakeholders in Tool Visioning Process for Story Test Driven Development(IEEE, 2010) Park, S.; Maurer, F.Participation from all stakeholders is important in a successful software development project, especially if the development project is complex and has many stakeholders. Identifying the key stakeholders is very difficult in a large community-based open source development project, because a lot of conflicting ideas exist in the community and not all of the necessary stakeholders are represented in the discussions. We analyzed the homogeneity of the stakeholders in the story-test driven development tool community and the diversity of the opinions represented by the stakeholders. We gathered opinions from the agile software engineering community on a list of desired features in a story testing tool. Then we categorize the community using a social network analysis to analyze the consensus building process. The network analysis reveals that the community has several key people with dominant degree centrality in the social network and the tool development community is remarkably homogeneous. Our research shows that a social network analysis is a good way to analyze the characteristics of consensus reached during a product visioning process.
- ItemMetadata onlyTesting of web services - A systematic mapping(IEEE, 2012) Sharma, A.; Hellmann, T.D.; Maurer, F.Web services have been gaining popularity since the introduction of Service-oriented architecture and cloud computing. With more and more legacy systems migrating to service-oriented architectures and the cloud, an urgent need for proper testing techniques is becoming apparent. This paper provides an overview of the current state of research into testing of web services. To understand this subject, we conducted a systematic mapping. The results suggest that research into testing web services is still in its early stages. We provide recommendations about holes in existing research that need to be addressed and directions for future research that will have maximum novelty and potential for impact on the field.
- ItemMetadata onlyUnit tests as API usage examples(IEEE, 2010) Nasehi, S.M.; Maurer, F.This study aims to find out if API unit tests can provide good usage examples, and if so, what prevents developers from finding and using those examples. The results of an experiment we performed with two groups of developers showed that unit tests can be very helpful, especially when the task is complicated and involves multiple classes and methods. Well-written tests proved to be a good source of examples, but finding the relevant examples using the standard tools might be very difficult. We propose to supplement the standard API documentation with relevant examples taken from the unit tests. To further improve the learnability of the API, presentation of the documentation and examples has to be tailored in a way that separates or hides advanced usage scenarios from the commonly used ones.