scholarly journals DSL-driven generation of Graphical User Interfaces

2014 ◽  
Vol 4 (4) ◽  
Author(s):  
Michaela Bačíková ◽  
Jaroslav Porubän

AbstractDomain-specific languages (DSLs) are becoming more and more popular. However, the number of DSLs is still small when comparing to the number of existing applications. The results of our previous research showed that it is possible to speed up the DSL development process by aiding the first development phases (design and implementation). More specifically it is possible to generate DSLs from existing GUIs (Graphical User Interfaces) of component-based applications. Now we want to use the generated DSLs and their models to generate new user interfaces or even whole new applications. To verify this claim, in this paper we use existing technologies which simplify the creation of web applications: iTasks. We also describe stereotypes of creating GUIs which we used to extract data from existing applications and to generate new applications. In the last part of this paper we limit the types of applications, which can be used for extraction based on our experiments with the prototype.

Author(s):  
Ankica Barišic ◽  
Vasco Amaral ◽  
Miguel Goulão ◽  
Bruno Barroca

Domain-Specific Languages (DSLs) can be regarded as User Interfaces (UIs) because they bridge the gap between the domain experts and the computation platforms. Usability of DSLs by domain experts is a key factor for their successful adoption. The few reports supporting improvement claims are persuasive, but mostly anecdotal. Systematic literature reviews show that evidences on the effects of the introduction of DSLs are actually very scarce. In particular, the evaluation of usability is often skipped, relaxed, or at least omitted from papers reporting the development of DSLs. The few exceptions mostly take place at the end of the development process, when fixing problems is already too expensive. A systematic approach, based on techniques for the experimental evaluation of UIs, should be used to assess suitability of new DSLs. This chapter presents a general experimental evaluation model, tailored for DSLs’ experimental evaluation, and instantiates it in several DSL’s evaluation examples.


2014 ◽  
pp. 2120-2141 ◽  
Author(s):  
Ankica Barišic ◽  
Vasco Amaral ◽  
Miguel Goulão ◽  
Bruno Barroca

Domain-Specific Languages (DSLs) can be regarded as User Interfaces (UIs) because they bridge the gap between the domain experts and the computation platforms. Usability of DSLs by domain experts is a key factor for their successful adoption. The few reports supporting improvement claims are persuasive, but mostly anecdotal. Systematic literature reviews show that evidences on the effects of the introduction of DSLs are actually very scarce. In particular, the evaluation of usability is often skipped, relaxed, or at least omitted from papers reporting the development of DSLs. The few exceptions mostly take place at the end of the development process, when fixing problems is already too expensive. A systematic approach, based on techniques for the experimental evaluation of UIs, should be used to assess suitability of new DSLs. This chapter presents a general experimental evaluation model, tailored for DSLs’ experimental evaluation, and instantiates it in several DSL’s evaluation examples.


2017 ◽  
Vol 13 (1) ◽  
pp. 39-60 ◽  
Author(s):  
Khalid Alemerien

The number of users in Social Networking Sites (SNSs) is increasing exponentially. As a result, several security and privacy problems in SNSs have appeared. Part of these problems is caused by insecure Graphical User Interfaces (GUIs). Therefore, the developers of SNSs should take into account the balance between security and usability aspects during the development process. This paper proposes a set of user-friendly security patterns to help SNS developers to design interactive environments which protect the privacy and security of individuals while being highly user friendly. The authors proposed four patterns and evaluated them against the Facebook interfaces. The authors found that participants accepted the interfaces constructed through the proposed patterns more willingly than the Facebook interfaces.


2012 ◽  
Vol 2 (3) ◽  
Author(s):  
Michaela Bačíková ◽  
Jaroslav Porubän

AbstractA graphical user interface (GUI, UI) is an important part of an application, with which users interact directly. It should be implemented in the best way with respect to understandability. If a user does not understand the terms in the UI, he or she cannot work with it; then the whole system is worthless. In order to serve well the UI should contain domain-specific terms and describe domain-specific processes. It is the primary source for domain analysis right after domain users and experts. Our general goal is to propose a method for an automatic domain analysis of user interfaces. First, however, the basic principles and stereotypes must be defined that are used when creating user interfaces and rules must be derived for creating an information extracting algorithm. In this paper these stereotypes are listed and analyzed and a set of rules for extracting domain information is created. A taxonomy of UIs and a taxonomy of components based on their domain-specific information is also proposed. Our DEAL method for extracting this information is outlined and a prototype of DEAL is presented. Also our goals for the future are listed: expanding the prototype for different components and different types of UIs.


Author(s):  
Merissa Walkenstein ◽  
Ronda Eisenberg

This paper describes an experimental study that compares a graphical user interface for a computer-telephony product designed without the involvement of a human factors engineer to a redesign of that interface designed with a human factors engineer late in the development cycle. Both interfaces were usability tested with target customers. Results from a number of measures, both subjective and objective, indicate that the interface designed with the human factors engineer was easier to use than the interface designed without the human factors engineer. The results of this study show the benefits of involving human factors engineers in the design of graphical user interfaces even towards the end of a development cycle. However, this involvement is most effective when human factors engineers are included as an integral part of the design and development process even at this late stage in the process.


2015 ◽  
Author(s):  
Βασίλειος Καρακόιδας

Οι Γλώσσες Ειδικού Πεδίου (Domain-specific Languages), γνωστές και ως μικρό-γλώσσες (mi- cro languages), αποτελούν γλώσσες προγραμματισμού των οποίων ο σχεδιασμός εστιάζει στην αντιμετώπιση προβλημάτων ενός συγκεκριμένου πεδίου ενδιαφέροντος. Πολύ συχνά, οι γλώσσες ειδικού πεδίου χρησιμοποιούνται στη βελτιστοποίηση της διαδικασίας ανάπτυξης λογισμικού (Soft- ware Development Process). Γνωστές γλώσσες ειδικού πεδίου αποτελούν οι κανονικές εκφράσεις (regular expressions), η γλώσσα markdown και η SQL. Στην αντίπερα όχθη, οι Γενικές Γλώσσες Προγραμματισμού (General-purpose Languages) έχουν ευρύτερες δυνατότητες. Αυτές παρέχουν όλες τις απαραίτητες δομές επεξεργασίας οι οποίες τις καθιστούν αποδοτικές σε ένα μεγαλύτερο εύρος προβλημάτων. Τυπικά παραδείγματα γενικών γλωσσών προγραμματισμού αποτελούν οι γλώσσες Java, C++ και Scala. Οι σύγχρονες προσεγγίσεις στην ανάπτυξη λογισμικού επιβάλουν οι γλώσσες ειδικού πεδίου να χρησιμοποιούνται παράλληλα με τις γενικές γλώσσες προγραμματισμού. Για παράδειγμα, η ενσωμάτωση της SQL σε διάφορες γενικές γλώσσες προγραμματισμού αποτέλεσε το πεδίο ενδια- φέροντος για πολλούς ερευνητές. Στην περίπτωση της Java, για την ενσωμάτωση της γλώσσας προγραμματισμού χρησιμοποιείται η βιβλιοθήκη εφαρμογής της Συνδετικότητας Βάσης Δεδομένων (JDBC, Java Database Connectivity). Ο προγραμματιστής εκτελεί το ερώτημα SQL στη βάση ως συμβολοσειρά (string). Μέσω αυτής της διαδικασίας ο μεταγλωττιστής της Java (Java compiler) αγνοεί εντελώς την SQL που περιέχεται στον κώδικα της Java, με αποτέλεσμα πολλά σφάλματα τύπων (type errors) ή συντακτικά σφάλματα (syntax errors) να εντοπίζονται τελικά κατά την εκτέλεση του προγράμματος. Ορισμένα από τα εν λόγω σφάλματα παραμένουν μη ανιχνεύσιμα ακόμα και μετά από παρατεταμένες δοκιμές κατά το στάδιο ανάπτυξης του λογισμικού. Υπάρχουν βέβαια και πιο εξελιγμένες μέθοδοι, η πλειοψηφία των οποίων χρησιμοποιούν κοινές τεχνικές προερχόμενες από μεταγλωττιστές και μεταπρογραμματισμό. Όλες όμως αυτές οι προσεγ- γίσεις πάσχουν κατά κανόνα ατό μια ή παραπάνω από τις κάτωθι αδυναμίες: - Αντιμετωπίζουν το πρόβλημα για ένα μόνο ζεύγος γλωσσών, μια γλώσσα ειδικού πεδίου και μια γλώσσα γενικού προγραμματισμού. Η ενσωμάτωση και άλλων γλωσσών ειδικού πεδίου είτε δεν υποστηρίζεται ή υποστηρίζεται μέσω πολύπλοκων συντακτικών μηχανισμών. - Συστήνουν σύνθετες λύσεις οι οποίες επιβαρύνουν τις κύριες γλώσσες προγραμματισμού, υποχρεώνοντας τους προγραμματιστές να χρησιμοποιούν πολύπλοκες σημασιολογίες οι οπ- οίες δεν είναι εναρμονισμένες με τη φιλοσοφία της εκάστοτε γλώσσας προγραμματισμού και των καλών πρακτικών προγραμματισμού. - Δεν είναι πρακτικές, αφού εισαγάγουν νέες γλώσσες προγραμματισμού, οι οποίες ενώ αντιμετωπίζουν το πρόβλημα αποτελεσματικά, απαιτούν την επανεγγραφή πολύπλοκων βιβλιοθηκών εφαρμογής για την εκάστοστε γλώσσα ειδικού πεδίου. Οι προτεινόμενες γλώσσες προγραμματισμού αποτελούν την επέκταση μιας υπάρχουσας γλώσσας, ή μιας νέας γλώσσας με τελείως διαφορετική σύνταξη. Η παρούσα διδακτορική διατριβή εισαγάγει την J%(j-mod), μια επέκταση της Java για την αποδοτική υποστήριξη γλωσσών ειδικού πεδίου. H επέκταση J% παρέχει έναν τρόπο ενσωμάτωσης γλωσσών ειδικού πεδίου στην Java με τη μορφή τμημάτων (modules) στον μεταγλωττιστή. Κατα την συγγραφή της παρούσης, το J% υποστηρίζει τη γλώσσα SQL και τις κανονικές εκφράσεις. Εκμεταλεύεται τις ήδη υπάρχουσες προγραμματιστικές διεπαφές της Java, όπως για παράδειγμα τη βιβλιοθήκη της Συνδετικότητας Βάσης Δεδομένων (JDBC). Εισαγάγει δε, τα κάτωθι χαρακτηρiστικά: - Τμηματικό Σχεδιασμό- Στατικό Έλεγχο Τύπων- Έλεγχος Συνταντικού Γλώσσας Ειδικού Πεδίου- Διατήρηση Συντακτικού Γλώσσας Ειδικού Πεδίου- Πρακτική- Βελτιστοποιήσεις Ειδικού Πεδίου



2021 ◽  
Author(s):  
Matheus De Souza ◽  
Eduardo Alves da Silva

There are several JavaScript technologies intended to assist in theconstruction of web systems user interfaces. Choose the most suitablefor a new project can be a difficult task. Three of these technologieshave gained prominence: Angular, Vue and React. All focusedon the front-end development of web applications. In order to facilitatethe process of decision making about which technology is themost suitable in a new project, this work establishes a comparativestudy of the three most used JavaScript technologies currently andto highlight the advantages and disadvantages of each one. Thiswork adopted performance, size and support for different browsersto carry out an experimental comparative study. An applicationwas developed as a use case and replicated in each of the technologies,in order to analyze the development process and the resultsunder the same set of tests. A software to perform the tests in anautomated way was implemented to collect the performance resultsusing the Google Chrome browser. It was possible to identify whichtechnology is most suitable in each test scenario. For example, theAngular framework performed better in 8 out of 10 scenarios evaluated,despite having a longer startup time and build size of theapplication compared to React and Vue. It is estimated that Angularloads more information in the initialization process to make thestate of the application “more prepared” for user interactions


Sign in / Sign up

Export Citation Format

Share Document