Karel Cemus
Czech Technical University in Prague
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Karel Cemus.
ACM Sigapp Applied Computing Review | 2013
Tomas Cerny; Karel Cemus; Michael J. Donahoo; Eunjee Song
The increasing use of Web-based applications continues to broaden the user groups of enterprise applications at large. Since ordinary users often equate the quality of user interface (UI) with the quality of the entire application, the importance of providing easy-to-use UIs has been significantly increasing. Unfortunately, designing a single UI satisfying all end users remains challenging. To address this issue, researchers and developers are looking to Context-aware/Adaptive UIs (CUIs) that aim to provide end users with more personalized user interaction experiences. Although multiple proposals have been made, very few production systems provide such malleable interfaces due to the excessive cost of development and maintenance. In this paper, we propose a technique that aims to reduce development and maintenance efforts of CUI to a level comparable with a single UI. Unlike most of the existing CUI approaches, our technique does not involve an external UI model. Instead, it aims to reflect runtime-information and structures already captured in the application, while extending them to provide an appropriate CUI. With this technique, developers do not design forms or tables directly for each page or panel. Instead they design generic and reusable transformation rules capable of presenting application data instances in the UI while considering the runtime context. To demonstrate our technique and its impact on CUI development and maintenance, we provide a case study. Moreover, we present our experience from its application to an existing production-level enterprise application, with high demands on performance.
conference on current trends in theory and practice of informatics | 2014
Karel Cemus; Tomas Cerny
Contemporary enterprise web applications deal with a large stack of different kinds of concerns involving business rules, security policies, cross-cutting configuration, etc. At the same time, increasing demands on user interface complexity make designers to consider the above concerns in the presentation. To locate a concern knowledge, we try to identify an appropriate system component with the concern definition. Unfortunately, this is not always possible, since there exist concerns cross-cutting multiple components. Thus to capture the entire knowledge we need to locate multiple components. In addition to it, often, we must restate the knowledge in the user interface because of technological incompatibility between the knowledge source and the user interface language. Such design suffers from tangled and hard to read code, due to the cross-cutting concerns and also from restated information and duplicated knowledge. This leads to a product that is hard to maintain, a small change becomes expensive, error-prone and tedious due to the necessity of manual changes in multiple locations.
Procedia Computer Science | 2015
Karel Cemus; Tomas Cerny; Michael J. Donahoo
Abstract Enterprise Information Systems maintain data with respect to various business processes. These processes consist of business operations restricted by business rules expressed as preconditions and post-conditions. Each rule must be considered and enforced throughout the system, from user interface to persistence storage. Such rule evaluation in multiple contexts results in both significant rule restatement and high maintenance complexity, as there is no single focal point for capturing and reusing these rules. In this paper, we apply the Aspect-Oriented Design Approach to the persistence layer to simplify business rules management, enforce business rules throughout the system and consequently decrease development and maintenance efforts. Our preliminary results show that it is possible to define business rules in a single place and then apply them automatically in a persistence layer. We retrieve data sets restricted by given operation post-conditions with respect to current execution context without any manual rule restatement. This paper provides a small case study emphasizing the benefits and future challenges.
Archive | 2015
Tomas Cerny; Lubos Matl; Karel Cemus; Michael J. Donahoo
User Interfaces (UI) play a significant role in contemporary web applications. Responsiveness and performance are influenced by the UI design, complexity of its features, the amount of transmitted information, as well as by network conditions. While traditional web delivery approaches separate out presentation of UI in the form of Cascading Style Sheets (CSS), a large number of presentation concerns are left tangled together in the structural description used for data presentations. Such tangling impedes concern reuse, which impacts the description size as well as caching options. This paper evaluates separation of UI concerns from the perspective of UI delivery. Concerns are distributed to clients through various resources/channels, which impacts the UI composition at the client-side. This decreases the volume of transmitted information and extends caching options. The efficacy is demonstrated through experiments.
Cluster Computing | 2017
Karel Cemus; Filip Klimes; Ondrej Kratochvil; Tomas Cerny
Modern applications aim to provide attractive, efficient and adaptive user interfaces (UIs). The UI code developed in conventional design approaches brings numerous of difficulties exacerbating the development and maintenance efforts resulting in limited separation of concerns. The limitation comes from multiple cross-cuts of tangled concerns, e.g. data representation tangled with layout, security, business rules, localization, etc. This results in high information restatement, code duplication, and tedious maintenance. This paper introduces an approach that separates UI concerns bringing a single focal point for particular concern definitions improving readability and maintenance. The approach performs concern tangling at runtime through a weaver considering the contextual information influencing the result. This enables UI context-awareness, while significantly reduces the development and maintenance efforts. Furthermore, we apply this approach into a distributed environment, which allows us to construct the same UI on various platforms and devices involving a single concerns description streamed from the server.
research in adaptive and convergent systems | 2015
Karel Cemus; Tomas Cerny; Michael J. Donahoo
Enterprise information systems maintain a significant number of business rules defining complex business processes and data constraints. Conventional frameworks distribute such rules over multiple layers, making consistent rule location discovery difficult. This lack of rule centrality results in complicated and even error-prone development and maintenance as future application changes may lead to inconsistencies. In this paper, we consider these aspects of business rule definitions in various software design approaches from the software metrics perspective. We research several design approaches in a case study, compare their qualities regarding business rule definitions/maintenance, and demonstrate the difficulties with these approaches. The results of the study indicate that conventional approaches are insufficient in this area. Future design approaches that involve separation of concerns provide mechanisms to address the inefficiency.
federated conference on computer science and information systems | 2017
Karel Cemus; Filip Klimes; Tomas Cerny
Nowadays enterprise software solutions must deal with ever-growing complexity and a multitude of business processes. The mainstream system design decomposes the system into small reusable services. While these services isolate certain system logic and address efficient elasticity towards growing user demands, there are multiple issues related to such a design, such as limitations to deal with restated information, information reuse or the ability to address cross-cutting concerns across multiple services. This paper highlights limitations of service-oriented architecture and proposes an alternative decomposition through aspect-driven service-oriented architecture. Such architecture involves adaptive, context-aware services preserving simple maintenance while addressing information reuse and crosscuts across services. The paper provides a formal description of the proposed architecture as well as a demonstration through a case study, showing approach properties and benefits.
ACM Sigapp Applied Computing Review | 2017
Karel Cemus; Tomas Cerny
Extracting business documentation from ever-evolving information systems is a challenging task that requires a lot of effort, focus and technical expertise. Such a documentation provides a detailed overview of the system, lists domain model, operations, pre and post-conditions that impact the business flow. While all this information is captured by a particular software system, domain experts interested in such knowledge have limited access to it, either due to the lack of technical and programming expertise, or because the knowledge tangles throughout the entire system. This paper introduces a novel approach in aspect-driven information systems enabling automated extraction of business documentation and its transformation to various perspectives allowing domain experts to acquire needed and up-to-date information and knowledge. Moreover, our approach makes it possible to transform system business rules into a formal language description verifiable by checkers validating the feasibility of business operations. We demonstrate the approach in a case study indicating its benefits.
research in adaptive and convergent systems | 2016
Karel Cemus; Tomas Cerny
Business documentation provides important overview of the system. It lists implemented business operations and their preconditions and post-conditions, as well as the architecture of the domain model. Such information is valuable for domain experts, who are able to review it, validate the conditions, and help to address errors in early phases of development. However, it is challenging to derive this documentation from existing systems as the business rules are tangled into source code. In this paper, we introduce a novel technique to business documentation derivation from aspect-driven enterprise information systems. These systems isolate business rules in a single focal point and we demonstrate its transformation into business documentation. In the combination with code inspection, we deliver reliable and easy to generate documentation significantly simplifying involvement of domain experts into development. Furthermore, we show the transformation of business rules into a formal language verifiable by a checker to validate the feasibility of business operations.
international conference on it convergence and security, icitcs | 2016
Karel Cemus; Filip Klimes; Ondrej Kratochvil; Tomas Cerny
User Interface (UI) of Enterprise Information Systems deals with various concerns such as the model structure, layouts, widgets, business rules, and localization tangled together. Unfortunately, conventional development approaches fail to efficiently maintain these concerns and forces developers to manually tangle them together. That results in high information restatement, code duplication, and error-prone maintenance. In this paper, we apply Aspect-Driven Design Approach to separate the concerns in UI, and have them automatically tangled together at runtime. Such separation introduces the single point to maintain, and the runtime weaving enables us to deliver context-aware UI. Furthermore, we apply this concept into distributed environment. This allows us to construct UI in various platforms on multiple client devices from the single concerns description streamed from the server.