Imran Sarwar Bajwa, M. Abbas Choudhary [2006], "A Language Engineering System for Graphical User Interface Design (LESGUID): A Rule based Approach", in IEEE 2nd International Conferences on Information & Communication Technologies: from Theory to Applications, (ICTTA 2006), Damascus, Syria pp:1307-1309
Feature Based Image Classification by using Principal Component Analysis
User Interface Design (ICTTA 2006)
1. Proceedings of 2nd IEEE International Conference on Information & Communication Technologies, ICTTA’06
April 24-28 2006, Damascus, Syria
A Language Engineering System for Graphical User Interface
Design (LESGUID): A Rule based Approach
Imran Sarwar Bajwa, Muhammad Abbas Chaudhary
Balochistan University of Information Technology and Management Sciences
Quetta, Pakistan.
Imransbajwa@yahoo.com , abbas@buitms.edu.pk
Abstract Interaction [6] or HCI. Interface Design can not be
conceived only in terms of computers as it is also referred
User interface is a way by which a user communicates to all other multimodal aspects where the user interacts
with a computer through a particular software application. with various controls or displays. Military aircraft,
It is the physical means of communication between a vehicles, airports, audio equipment, and computer
person and a software program or operating system. Often, peripherals, are a few products that extensively base on the
a user interface is composed of some common methods for User Interface Design [6]. As user interface is the physical
communication as various ActiveX controls as command means of communication between a person and a software
buttons, menus, icons, etc. User interface design is an program or operating system and usually composed of
integral part of software engineering process. some common methods for communication as commands,
Conventional coding schemes require a lot of time and menus, icons, etc.
effort from a programmer. The process of design and
coding of user interface can be simplified by generating A graphical user interface has solved so many problems
user interface automatically. A user interface can be of command line user interface. In a traditional manner, a
designed automatically on the basis of the design scenario user interface naturally follows some path through the parts
in the form of text provided by the programmer. A new of the interface, first using one window or kind of window,
model is presented in this research for analyzing the given then shifting the focus to another window [7]. To make the
text and extracting the relative and required information user interfaces easy, the user is enforced to jump back and
from the given guideline notes provided by the forth between different styles of windows used for text
programmer. After compound analysis and extraction of editing to form fill out to tabular presentation to direct
associated information, the designed system has ability to manipulation. The user is not allowed to violate this sense
generate the graphical user interface. The designed system of easy flow.
provides a quick and reliable way to generate a graphical
user interface to save the time and budget of both the user 2. Research Motivation and Objectives
and system analyst.
Software analysis and design phase of the software
Keywords: Automatic User interface generation, Natural development process entitles the key importance. User
language processing, Information extraction, Language interface design is the essential part of it. The visual tools
have made the design of graphical user interface very easy
Engineering
and convenient to perform [3]. Graphical User interface
design is an integral part of software engineering process.
1. Introduction Windows are the most essential component of modern
User interface is the only way through which a user can graphical user interface especially designed in visual
communicate with particular software. How much a languages. This sequence of windows often called wizards
software application is easy to use, it primarily depends [5] are composed of various unit controls as command
upon the easiness of a user interface. In software buttons, text boxes, labels etc. Traditionally, the
engineering paradigm, user interface owns lot much arrangement of these controls on a form window into
priority. Many technological advancements has been took various layouts as grids layout is very simple but time
place for the designing of User Interface Design [3]. User consuming task. Conventional coding schemes require a lot
interface design primarily depends upon the user’s of time and effort from a programmer.
experience, or how the user experiences the end product.
Modern software engineering requires quick and
In the field of computer software engineering, User automated solutions which may have ability to create the
Interface Design is also termed as Human-Computer user interface design so that a programmer may finalize the
2. Proceedings of 2nd IEEE International Conference on Information & Communication Technologies, ICTTA’06
April 24-28 2006, Damascus, Syria
user interface after making appropriate adjustments and ambiguity. Ambiguity could be easily solved at the syntax
alterations in the automated generated user interface with and semantic level by using a sound and robust rule-based
less effort in less time as compared to the traditional system.
approaches. 3.1. The problem of ambiguity
The conducted research provides a robust solution to the During the understanding and analysis process of the
addressed problem. The Language Engineering System for English language text, we have talked about previously
Graphical User Interface Design (LESGUID) provides the we use to distinguish such ambiguities in four classes:
solution of the problem. The functionality of the conducted lexical ambiguities, syntactic ambiguities, semantic
research was domain specific but it can be enhanced easily ambiguities and pragmatic ambiguities. Such distinction
in the future according to the requirements. Current is not exhaustive but it is useful to focus on the problem
designed system incorporates the capability of mapping and for practical purposes [6].
user requirements after reading the given requirements in
plain text and constructing the user interface according to 3.1.1. Lexical Ambiguity:
the given requirements. The designed systems offer various The problem of words written or pronounced not
options to the user after constructing an estimated design. correctly is omitted in this problem scenario. These
User selects the preferred options and verifies the kinds of errors are simply solvable through the
automatic design. In the end, the designed framework comparison with the expressions contained in a
generates a final user interface. dictionary. Lexical ambiguity is created when a same
word assumes various meanings [3]. In this case that
3. Processing Natural Language Text ambiguity is generated from the fact that which
The understanding and multi-aspect processing of the meanings will be incorporated in which scenario. As an
written text in any natural language can be very supportive example we consider the "cold" adjective in the
for the various computer–oriented applications. following sentences:
Particularly, the processing of natural languages that are - "That room is cold."
also termed as "speech languages" is actually one of the
arguments of greater interest in the field artificial - "That person is cold."
intelligence [6]. The natural languages are irregular and It turns out obvious that the same "cold" adjective
asymmetrical. Traditionally, natural languages are based assumes, in the two phrases different meanings. In the
on un-formal grammars. first sentence it indicate a temperature, in the second one
a particular character of a person.
There are the geographical, psychological and
sociological factors which influence and persuade the 3.1.2. Syntactic ambiguities:
behaviours of natural languages [17]. There are undefined
set of words and they also change and vary area to area and Syntax analysis is performed on world level to
time to time. Due to these variations and inconsistencies, recognize the word category [10]. The syntactic analysis
the natural languages have different flavours as English of the programs would have to be in a position to isolate
language has more than half dozen renowned flavours all subject, verbs, objects and various complements. It is
over the world. These flavours have different accents, set little complex procedure.
of vocabularies and phonological aspects. These ominous
- "Ahmed eats the cake."
and menacing discrepancies and inconsistencies in natural
languages make it a difficult task to process them as In this example, the actual meanings are that “Ahmed
compared to the formal languages [13]. eats the cake” but ambiguity can be asserted if this
sentence is conceived as “the cake eats Ahmed”.
In the process of analyzing and understanding the natural
languages, various problems are usually faced by the 3.1.3. Semantic ambiguities:
researchers. Human being uses common sense to
understand the natural language text at various stages To analyze a phrase from the semantic point of view
where basic rule and regulations of grammar are failed to means to give it a meaning. This should let you
understand and explain. The problems connected to the understand we arrived to a crucial point. Semantic
greater complexity of the natural language are verb’s ambiguities are most common due to the fact that
conjugation, inflexion, lexical amplitude, problem of generally a computer is not in a position to distinguish
ambiguity, etc. From this set of problems the problem the logical situations [12].
which ever causes more difficulties is problem of
3. Proceedings of 2nd IEEE International Conference on Information & Communication Technologies, ICTTA’06
April 24-28 2006, Damascus, Syria
- "The bus hit the pole while it was moving." - Object.left=120
- Object.top=40
All of us would surely interpret the phrase like "The - Object.font_Name= “Times New Roman”
bus, while moving, hit the pole.", while nobody would - Object.font_Size=12pt
be dreamed to attribute to the sentence the meant "the - Object.Back_Color=’White’
bus hit the pole while the pole was moving ". - Object.Fore_Color= ‘Red’
After extracting the information in this format it is very
3.1.4. Pragmatic ambiguities:
easy to code it in any language as java or visual basic. The
designed system codes the required user interface in the
Pragmatic ambiguities often born in the case when the
visual basic language.
communication happens between two persons who do
not share the same context. As following example:
5. Architecture of Designed System
- "I will reach Pakistan at 12 o'clock." The Language Engineering System for Graphical User
Interface Design (LESGUID) has insightful ability to
In this example, if the subject person belongs to a understand provided input text and generate the user
different continent, the meanings can be totally changed interface components according to the guided pattern. The
due to the difference in timings. designed system draws diagrams in five modules: Text
input acquisition, text understanding, knowledge
4. User Interface extraction, generation of user interface design and finally
producing the code in visual basic and java for the
The successful user interface is completely based on the
production of the actual user interface components. The
"user’s personal experience," [5] which may comprise and
designed system based on the architecture shown in the
constitute the visual appearance of the device, response
following fig.
time, and the content that is offered to the user within the
defined context of the user interface. The quality of a user
interface depends upon the various aspects. Among the Text
various standard principles for user interface, the designed
system considers some of them as reusability, consistency, Text Input Acquisition
etc. The user interface design should be organized [7].
The designed system has vigorous and profound ability
to read and understand the user given requirements. The Text Understanding
designed system uses a rule based algorithm to extract the
required contents from given text and model them into
desired pattern. User specifies that what will be the size of
a form window, what ActiveX controls will be added, what
will be the spatial arrangement and order of those controls Knowledge Extraction
and also their respective fonts and colors. All this
information will be provided in plain text. The output is
provided to the user according to his requirements for
example: User Interface Design
“Draw a text box, whose height is 10, width is 45, left is
120, top is 40, font name is ‘Times New Roman’, font size
is 12, back color is White and fore color is Red.” User Interface Code
The designed system will search for the keywords as
Text box, label, button etc. In this example Text box Code
keyword will be extracted and its relevant details will be
manifested in the following format.
Figure 1: Architecture of the language Engineering System
- Object =‘Textbox’ for Graphical User Interface Design
- Object.height=10
- Object.width=45
4. Proceedings of 2nd IEEE International Conference on Information & Communication Technologies, ICTTA’06
April 24-28 2006, Damascus, Syria
5.1. Text Input Acquisition arrangement and order of those controls. All this
information will be provided in plain text. The output is
This module helps to acquire input text scenario. User provided to the user according to his requirements.
provides the business scenario in from of paragraphs of the
text. This module reads the input text in the form The accuracy of the software is expected up to about
characters and generates the words by concatenating those 80% with the involvement of the software engineer
input characters. This module is the implementation of the provided that he has followed the pre-requisites of the
lexical phase. Lexicons and tokens are generated in this software to prepare the input scenario. The given scenario
module. should be complete and written in simple and correct
English. An elegant graphical user interface has also been
5.2. Text Understanding provided to the user for entering the Input scenario in a
This module reads the input provided by the module 1 in proper way and generating the desired user interface
from of words or tokens. These words are categorized into design.
various classes as verbs, helping verbs, nouns, pronouns,
adjectives, prepositions, conjunctions, etc for the various 7. Future Work
intentions as understanding and further processing of the The designed system for generating automatic design of
text. a user interface was started with the aims that there should
be a software which can read the scenario given in English
5.3. Knowledge Extraction language and can present the best few possibilities of the
desired user interfaces required by the user. The designed
This module, extracts different objects as text boxes,
system is still not very much intelligent to draw the user
labels, buttons, etc and their respective attributes on the
interface in more heuristic way. Still, there is some
basses of the input provided by the preceding module.
periphery of improvements in the algorithms for generating
Nouns are symbolized as objects and their associated
the more appealing and acceptable design of the user
features and traits are specified as the attributes.
interface. This enhancement can preamble acceptance for
the automated designed user interface.
5.4. User Interface Design
This module roughly sketches the estimated design of 8. References
the required user interface according to the guided pattern [1] A. Ralli, (2000) “A feature-based analysis of Greek nominal
by the user and available options are shown to the user. inflection”, Glossolojia, 11-12, pp.201-227.
The user finalizes his requirement parameters by selecting
required options from the available ones. [2] A. Ralli, “The role of morphology in gender determination:
evidence from Modern Greek”, Linguistics 40, 3, pp. 519- 551.
5.5. User Interface Generation
[3] A. Ralli and E. Galiotou, (2001) “A prototype for a
This module finally uses the extracted information from computational analysis of Modern Greek compounds”,
the previous modules to actually draw the user interface. Asymmetry Conference, Université de Québec, à Montréal
As the user specifies that what is the size of form window,
what Activex controls are be added, what is the spatial [4] K. Sgarbas, N. Fakotakis and G. Kokkinakis, (1995) “A PC-
arrangement and order of those controls. In response, the IMMO based morphological analysis of Modern Greek”, Literary
and Linguistic Computing, pp. 189-201
output is provided to the user according to his
requirements. [5] Ursula Dantin (1998) “Application of Personas in User
Interface Design for Educational Software”, Department of
6. Conclusion Information Systems and Operations Auckland, New Zealand
In this research papers, the addressed issue was the [6] Carroll, J.M. (2002), “Making Use: Scenario- Based
dynamic generation of the required user interface after Design of Human-Computer Interactions” San
analyzing the given story-line of requirements in plain Francisco, Morgan Kaufmann Publishers.
English language provided by the user. The designed
system has vigorous and profound ability to read and [7] Hartson, H.R. (1998), “Human-computer interaction:
understand the user given requirements. The designed Interdisciplinary roots and trends”, The Journal of
system uses a rule based algorithm for this purpose. User Systems and Software, vol 43, pp.103-118.
specifies that what will be the size of form window, what
ActiveX controls will be added, what will be the spatial
5. Proceedings of 2nd IEEE International Conference on Information & Communication Technologies, ICTTA’06
April 24-28 2006, Damascus, Syria
[8] J. M. Zelle and R. J. Mooney, (1993) “Learning
semantic grammars with constructive inductive logic
programming”, Proceedings of the 11th National
Conference on Artificial Intelligence (AAAI Press/MIT
Press, Washington, D.C., pp. 817-822
[9] Kowalski, G. (1998). “Information Retrieval Systems: Theory
and Implementation”, Kluwer, Boston
[10] Krovetz, R., & Croft, W. B. (1992). “Lexical ambiguity and
information retrieval”, ACM Transactions on Information
Systems, 10, 115–141
[11] Losee, R. M. (1988). “Parameter estimation for probabilistic
document retrieval models”, Journal of the American Society for
Information Science, 39(1), 8–16
[12] Losee, R. M. (1996). “Learning syntactic rules and tags with
genetic algorithms for information retrieval and filtering: An
empirical basis for grammatical rules”. Information Processing
and Management, 32(2), 185–197
[13] Manning, C. D., & Schutze, H. (1999). “Foundations of
Statistical Natural Language Processing”, MIT Press, Cambridge,
Mass
[14] Partee, B. H., Meulen, A. t., &Wall, R. E. (1990).
“Mathematical Methods in Linguistics”, Kluwer, Dordrecht, The
Netherlands.
[15] S. Weiss, C. Apte, F. Damerau, D. Johnson, F. Oles,
T. Goetz and T. Hampp, (1999) “Maximizing text-mining
performance”, IEEE Intelligent Systems 14, 63-69
[16] Strzalowski, T. (1995). “Natural language information
retrieval, Information Processing and Management”, 31(3), 397–
417
[17] Van Rijsbergen, C. (1977). “A theoretical basis for use of co-
occurrence data in information retrieval”, Journal of
Documentation, 33(2), 106–119
[18] L. Touratzidis and A. Ralli, (1995) “Stress in Greek inflected
forms: A computational treatment”, in Language and Speech, 35,
pp. 435- 453.
[19] K. Wallace, K. (ed.), (1998) “Morphology as a
Computational Problem”, UCLA Occasional Papers #7, Dept. of
Linguistics, UCLA.
[20] Fagan, J. L. (1989). “The effectiveness of a non-syntactic
approach to automatic phrase indexing for document retrieval”
Journal of the American Society for Information Science, 40(2),
115–132