embedded guis - hcl technologies: transformational global services

15
Embedded GUIs Can Impact the Bottom Line of Your Business Authors Shailesh Kumar Gupta & Neeraj Tiwari, ERS-SPG HCL Technologies, NOIDA Dr. Usha Thakur, ATS Technical Research HCL Technologies, Chennai

Upload: others

Post on 03-Feb-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Embedded GUIs - HCL Technologies: Transformational Global Services

                

Embedded GUIs Can Impact the Bottom Line of Your Business

Authors Shailesh Kumar Gupta & Neeraj Tiwari, ERS-SPG HCL Technologies, NOIDA

Dr. Usha Thakur, ATS Technical Research HCL Technologies, Chennai

Page 2: Embedded GUIs - HCL Technologies: Transformational Global Services

 

 

 

 

Embedded GUIs: Can Impact the Bottom Line of Your Business

© 2009, HCL Technologies Ltd. 

May, 2009 

  

Embedded GUIs     2 

 

Page 3: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     3 

 

Contents  

Users Vs Developers ..................................................................................................................................... 4 

Purpose ......................................................................................................................................................... 4 

GUI in Embedded Devices ............................................................................................................................. 5 

Challenges ................................................................................................................................................. 5 

Solution ..................................................................................................................................................... 6 

Market for Embedded GUI ............................................................................................................................ 6 

Players in the GUI Toolkit Space ............................................................................................................... 8 

EmPresent – HCL’s GUI Toolkit ................................................................................................................... 10 

Components ............................................................................................................................................ 10 

Concept to Deployment .......................................................................................................................... 11 

Architecture ............................................................................................................................................ 11 

Features .................................................................................................................................................. 12 

Why use EmPresent? .............................................................................................................................. 14 

Benefits ................................................................................................................................................... 15 

 

Page 4: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     4 

 

Users Vs Developers How many of you software developers feel that if only users were willing to educate themselves about your  application,  then  it would work  like  a  charm?  How many  of  you  (end)  users  feel  that  if  only software applications could do their job without you having to acquire IT skills, then there would be no problems  at  all?  The  gap between  the  two  communities  can be bridged by  a well–thought out  and‐designed  (i.e., highly usable and easy‐to‐use) Graphical User  Interface  (GUI). Since a GUI  is a point of entry as well as exit of a user’s interaction with software applications, there is a great deal of pressure on software developers from businesses to minimize the learning curve of users in the interest of faster‐time‐to market and from the Web 2.0‐savvy generation to make their user experience highly responsive and  intuitive.1  These  demands  are  leading  to  interesting  developments  and  breakthroughs  in  GUI technologies for all types of systems, especially embedded systems.2  

EmPresent is a platform‐independent GUI toolkit from HCL for embedded device application developers. It  comprises  a  set  of  powerful  visual  development  tools  and  widgets  to  build  versatile  embedded multilingual GUIs. 

Purpose Today, industry leaders are regarding GUIs as a business differentiator. Increasingly, GUIs are acting as a means of increasing the sale of products ranging from medical devices and flight entertainment systems to industrial and home automation devices.  

In this paper we will examine key developments in GUI technologies in the context of embedded devices and their impact on business goals. 

 

                                                            1 In this regard, see Ravi Kuppusamy and Usha Thakur, "Rich Internet Applications in Perspective" and Sanjeet Joshi and Subramanyam B.S., "Web 2.0 ‐ The Evolution and Growth of the Interactive Internet" http://www.hcltech.com/hcl‐research/ [April] ‐>represents when the website was accessed. 

2 Although the meaning of an embedded system is expressed in various ways, there is a consensus that an embedded system is a computer (with or without a GUI) that is inbuilt into a product and performs dedicated functions. For a fairly comprehensive interpretation of an embedded system, see http://searchenterpriselinux.techtarget.com/sDefinition/0,,sid39_gci837507,00.html [April 2009].  

 

Page 5: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     5 

 

GUI in Embedded Devices Modern day consumers do not want  to be aware of how a gizmo works;  they  just want  to use  (read ‘enjoy’) it with the shortest possible learning curve. Today, if there is a high quality home appliance or a medical device without a display screen on the market but has a very sophisticated manual explaining all its  features,  it will most  likely be driven out of  the market by  counterparts  that have a visual display along  with  features  that  could  be  learned  within minutes  without  requiring  a manual.  This  is  the expectation  that  businesses  have  to  meet  and  it  is,  therefore,  not  surprising  that  they  want  IT professionals  to  deliver  high‐performing  and  scalable  software  applications  that  have  a  short development  cycle, are easy  to  implement and maintain, and  can be  integrated with existing or new systems.  This  is,  of  course,  easier  said  than  done  because  the  IT  landscape  has  combinations  of hardware and software  that are not easily  interoperable, and  that makes  the work of GUI embedded designers even more challenging. 

Challenges The key challenges faced by embedded GUI designers are as follows:3 

Conceptualization 

Specialized widget sets required for each type of embedded device 

Continuous addition of features to improve performance 

Multiple prototypes before acceptance 

Unique development and production environments required for each device 

Development for multiple devices 

Parallel GUI Development 

Limited functionality for embedded platforms 

Non existence of windowing systems 

Inability to commence GUI development prior to hardware development 

Platform Scalability 

Multiple OS / processor combinations  

Requirement of a small footprint 

                                                            3 “EmPresent” – White Paper (2006) http://presenterdownloads.hcltech.com/downloads/EmPresent_Whitepaper_2_.pdf [April 2009]. 

Page 6: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     6 

 

Multiple I/O devices  

Solution In  response  to  the needs of businesses,  there  is a growing  trend among GUI embedded designers  to meet the above‐mentioned challenges by designing GUI Toolkits that will: 

Provide   Templates / layout feature for domain‐specific applications and designer tools 

Rich set of API’s for integration with other systems and libraries 

Simulator for quick prototyping 

Embedded graphics library consisting of a number of widgets or display controls 

Customizable navigation and dynamic flow of interactive UI application 

Support  Porting and easy changes to GUI 

Modular and adaptable architecture 

Drag and drop and eliminate the need for coding 

Localization and internationalization 

Predefined Industry Standards 

Market for Embedded GUI The market for embedded GUI and GUI Toolkits is dependent upon the demand for embedded systems. Today, the embedded chip systems are found in most products ranging from mobile phones and cars to handheld devices and refrigerators.4 Although there is no hard and fast correlation between the growth of  consumer  and  industrial  goods  and  a  rise  in  embedded  systems,  the  fact  is  that  the market  for 

                                                            4 For a good summary of the significance of embedded systems in contemporary society, see the following article by  Wayne Wolf, a renowned scholar, “The Embedded System Landscape,” (September 2007) http://www.computer.org/portal/site/computer/menuitem.5d61c1d591162e4b0ef1bd108bcd45f3/index.jsp?&pName=computer_level1_article&TheCat=1005&path=computer/homepage/Oct07&file=gei.xml&xsl=article.xsl& [April 2009]. 

Page 7: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     7 

 

embedded systems has been on the rise.5 According to a report by BCC Research, the world market  in 2004 for  

Embedded  software was  at  $1.6  billion  and  expected  to  grow  to  $3.5  billion  by  2009,  at  an average annual growth rate (AAGR) of 16% 

Embedded hardware was just over $40 billion and expected to grow to $78.7 billion by 2009, at an AAGR 14.2% 

Embedded board  revenues was $3.6 billion and expected  to  reach $5.9 billion by 2009, at an AAGR of 10%6  

In a recent study, Venture Development Corporation (VDC) estimated the global Market for Embedded Software Engineering alone to reach more than $25 billion in the coming years.7   The  outlook  for  current  and  future  IT  spending,  however,  is  rather  unclear. Gartner  has  predicted  a moderate growth in global IT spending for 2009 with the rider that while in some sector (e.g., Utilities, Healthcare,  and  Government)  the  share  of  IT  spending  is  growing;  in  others  (e.g.,  Transportation, Financial Services, and Manufacturing) it is declining.8 By contrast, a Forrester research has predicted an overall decline by 3%  in 2009 and a  rise by 9%  in 2010  for global  IT  spending when measured  in US 

                                                            5 What is interesting is that although the Americas (mainly US) is said to account for nearly half the total revenue,  it growth rate is only 11%; that of the Asia/Pacific region is the highest growth rate (22.7%), followed closely by Europe (13.2%). Cited in http://cordis.europa.eu/ist/embedded/facts_figures.htm  [April 2009]. To get a glimpse of the extent to which the European Union is investing in Embedded Systems R&D, see http://cordis.europa.eu/ist/embedded/, http://cordis.europa.eu/ist/embedded/projects.htm, and http://cordis.europa.eu/ist/embedded/investment‐growth.htm [April 2009]. In the Asia region, the growth of the software industry in China has been impressive in spite of the fact that its exports were down.  According to RNCOS, China’s software industry was up by 30% in 2008 over the previous year and is expected to grow at a CAGR of more than 24% by 2012. The basis for this optimism is the fact that IT spending by several industrial and service sectors is expected to continue growing. Cited in http://www.commodityonline.com/globalmarkets/Chinese‐exports‐down‐software‐industry‐up‐16216‐3‐1.html [April 2009]. CCID Consulting has identified home appliances, mobile computing device, network device automation and measuring & controlling instruments and transportation electronic device as key growth areas for embedded software. For further information, see CCID Consulting, "Five Embedded Market Deserves Attention"(29 October 2008) http://www.ccidconsulting.com/en/search/content.asp?Content_id=20270 [April 2009]. 

6 See BCC Research, "Future of Embedded Systems Technology" (June 2005)  http://www.the‐infoshop.com/study/bc31319‐embedded‐systems.html [April 2009]. See also http://cordis.europa.eu/ist/embedded/facts_figures.htm [April 2009].  

7 VCD Research, "Over $25 Billion: VDC Research Releases New Metric Measuring the Total Size of the Embedded Software Engineering Market" (18 February 2009) http://www.vdcresearch.com/PressCenter.asp?viewtype=detail&id=1501 [April 2009].  

8 For complete details on IT spending according to geographies and industries for 2009 and for the period 2007‐2012, see John‐David Lovelock, et al., "Dataquest Alert: Utilities, Healthcare and Government Lead IT Spending Growth in Challenging 2009" (10 February 2009) ID Number: G00165289 www.gartner.com [April 2009]. 

Page 8: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     8 

 

dollars.9 Over the same period Forrester has predicted a rise by 3% and then by 5% in 2010 for the Asia‐Pacific markets when IT spending is measured in local currencies10. Amidst all this, spending on software is expected to remain the same for 2009 as it was in 2008 and rise by 10% in 2010 when measured in US dollars.11 It will, therefore, not be an exaggeration to expect the potential market for embedded GUI to grow, albeit moderately, in the coming years.12 

Players in the GUI Toolkit Space We  are  living  at  a  time when we want everything done  fast  from  cooking,  cleaning,  and washing  to travelling,  medical  care,  access  to  entertainment  channels,  and  getting  in  touch  with family/friends/colleagues. And yes, as consumers we also want those devices to be intuitive and easy to use; that screen on the device should not give us  lengthy  instruction on ‘how to use this device’ but  it should follow our way of thinking! This cry from end users  is forcing device manufacturers to not only come up with innovative product designs but also ensure that the development cycle of their products is shortened. This  is music to the ears of embedded systems and GUI designers, and some have risen to the occasion to do just that – they are designing GUI toolkits for cutting down on development time and cost and for accelerating the time‐to‐market for embedded applications 

Today, some of the well‐known GUI Toolkits for embedded systems include, though not limited to:  

Qt/Embedded  from  QT  Software.  Qt  is  a  UI  framework  for  designing  applications  across platforms e.g., Embedded Linux, Mac OS X, Window CE, etc) once and deploying  them across many desktop and embedded operating systems without rewriting the source code. 13 

C/PEG™, PEG+™, and C/PEG™  from Swell Software  Inc. The different Portable Embedded GUI (PEG)  products  give  real‐time  embedded  system  developers  the  tools  for  designing  highly complex graphics applications particularly for automotive, consumer electronics,  infotainment, and medical devices.14  

                                                            9 When measured in Euros, the global IT market is said to show a rise by 6% in 2009 and a slide to 3% (based on the assumption that the Euro will begin to revive against the US dollar). For more details, see Andrew Bartels, "Global IT Market Outlook: 2009" (12 January 2009), pp. 2‐3 http://web1.forrester.com/Research/Document/Excerpt/0,7211,46676,00.html [April 2009]. 

10 Ibid., pp. 16‐17. 

11 Ibid., pp. 8‐10. 

12 This is probably the assumption on the basis of which a great deal of research is being undertaken on embedded systems and embedded GUI. To get a glimpse of the research areas, see the listings in the IEEE Computer Society’s CS Digital Library at http://www2.computer.org/portal/web/csdl [April 2009]. 

13 For further information, see http://www.qtsoftware.com/products/ [April 2009]. 

14 For more information, see http://swellsoftware.com/products/ [April 2009]. 

Page 9: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     9 

 

EmWIN  from  SEGGER Microcontroller  GmbH  &  Co.KG.  emWin  is  designed  for  providing  an efficient,  processor‐  and  LCD  controller‐independent  graphical  user  interface  (GUI)  for  any application  that  operates  with  a  graphical  LCD.  It  is  compatible  with  single‐  and multi‐task environment(s).  It may  be  used  on  a  proprietary  operating  system  or  commercial  RTOS  and adapted to any size of physical or virtual display with any LCD controller and CPU.15 

easyGUI  from  easyGUI.  easyGUI  is  a  full  development  system  for  creating  graphical  user interfaces in embedded systems. It supports virtually all embedded microcontrollers, compilers, and color / grayscale / monochrome displays.16 

Embedded  Wizard  (EmWi)  from  TARA  Systems.  EmWi  is  a  PC  tool  for  developing  and prototyping  of  platform  independent  Graphical  User  Interfaces  (GUI)  on  embedded  systems with a focus on consumer electronics devices.17 

MiniGUI  from  Beijing  Feynman  Software  Technology  Co.,  Ltd.  (FMSoft). MiniGUI  is  a  cross‐platform  tool  for designing  rich GUIs  in high‐performing  real‐time embedded devices  such as mobile phones, medical equipments,  industrial  systems,  set‐top boxes, multimedia  terminals, and so on.18 

SCADE Display™ from Esterel Technologies, Inc. SCADE Display™ is a flexible graphics design and code  generation  tool  suite  for  prototyping  and  developing  safety‐critical  embedded  display systems such as Cockpit Displays Systems, Head‐Up Displays, Helmet Mounted Displays, Flight Management  System  Displays,  On‐Board  Airport  Navigation  Systems,  Health  &  Usage Monitoring Displays, Traffic & Collision Avoidance Displays, Digital Maps, etc.19 

Nucleus UI  from Mentor Graphics®.   Nucleus UI  (part of  the Nucleus RTOS) offers a modular approach to UI development, giving developers fine‐grained control over the display and  input mechanisms of embedded devices.20 

                                                            15 For more information, see http://www.segger.com/emwin.html [April 2009]. 

16 For further details, see http://www.easygui.com/ [April 2009]. 

17 For further information, see http://www.tara‐systems.de/emwi/ [April 2009]. 

18 For more details, see http://www.minigui.com/index.php?id=106&L=0&gclid=CI_zw5zJkJoCFUcwpAodTQuQFg [April 2009]. 

19 For further information see http://www.esterel‐technologies.com/products/scade‐display/?gclid=COPNsOfKkJoCFQUwpAod2yUAGQ [April 2009]. 

20 For more information, see http://www.mentor.com/products/embedded_software/nucleus_rtos/user‐interface/  [April 2009]. 

Page 10: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     10 

 

tekUI from Schulze & Müller GbR. tekUI is a GUI toolkit (built using Open Source) for prototyping and rapidly developing embedded applications 32bit microcontrollers, set‐top boxes and kiosk systems.21 

Fusion GUI Toolkit  from Unicoi Systems. Fusion GUI Toolkit  is a set of user  interface software modules  that  embedded  system  designers  can  use  for  creating  and  managing  a  GUI  in embedded system. The Toolkit does not have dependencies on device, processor, OS, display‐size and platform.22 

EmPresent – HCL’s GUI Toolkit Innovation  has  long  been  a  guiding  principle  for  device  manufacturers  and  software  developers. However,  the  consumer  demand  for  easy‐to‐use  and  new  features  has  brought  embedded  GUI designers  into  the  limelight.  The  raison  d’être  of  EmPresent  is  to  reduce  the  embedded  application development cycle by 40% and time‐to‐market by 50% for complex product GUIs. EmPresent provides embedded  software  engineers  with  graphical  editing  tools,  powerful  APIs  and  structures,  and  an interactive design environment for developing embedded applications in a relatively short duration. 

As  illustrated  in  Figure 1,  EmPresent’s GUI  Framework  comprises  three  components  and  five phases (from concept to deployment) that support end‐to‐end embedded application design and development.  

Components VISUAL EDITOR – is for quickly designing GUI applications on desktops without requiring the target device or any programming background. This component automatically generates the code (which is linked to the EmPresent library) for the target device as well as for the simulated environment. The Visual Editor functionalities  are  provided  by  the  GUI  Browser,  GUI  Designer,  Application  Design,  and  Application Development. 

SIMULATOR –  is for rapidly prototyping and testing an embedded application on the target device. The Simulator component allows embedded application developers to concentrate more on the design and optimization of applications and less on the nitty‐gritty of GUI development.  

EMPRESENT GUI LIBRARIES – is for porting an embedded application to the target device with very minimal changes.  The Deployment  component  shown  in  Figure  1 provides  the API  interfaces  for  applications running in embedded domain.  

 

                                                            21 For further information, see http://www.schulze‐mueller.de/products_tekui.html [April 2009]. 

22 For further details, see http://www.unicoi.com/fusion_web/fusion_GUI_toolkit.htm [April 2009]. 

Page 11: Embedded GUIs - HCL Technologies: Transformational Global Services

Concept to Deployment GUI BROWSER – is for organizing information in a hierarchal format for better product feature map. 

GUI DESIGNER – is for designing individual GUI screens, using drag & drop and designer controls without any coding. 

APPLICATION DESIGN – is for dynamic functionality and behavior simulation on desktops where the code is generated automatically. 

APPLICATION DEVELOPMENT – is for integrating the business logic of a device in the GUI application.  

DEPLOYMENT  –  is  for  display  acceleration  in  virtually  any  device,  including  devices with  very  complex functionalities.  

 

Figure 1: EmPresent GUI Framework 

Architecture EmPresent’s architecture is platform‐independent, modular, adaptable, and event‐driven. As illustrated in  Figure  2,  EmPresent’s  architecture  has  two  significant  components:  Adaptation  Subsystem  and Graphical  Interface  System,  both  of  which  offer  high  flexibility  and  adaptability  to  embedded application designers.  

 

Embedded GUIs     11 

 

Page 12: Embedded GUIs - HCL Technologies: Transformational Global Services

 

Figure 2: EmPresent Architecture 

Features As  illustrated  in Figure 3, EmPresent has a  rich  set of GUI  framework and designing  features  for  fast application development  that are  likely  to appeal  to embedded developers. Since EmPresent  features are  easy‐to‐implement  and  integrate  with  the  existing  or  new  systems,  they  will  help  embedded developers  in  delivering  high‐performing  and  scalable  software  applications  in  a  relatively  short timeframe. The key features of EmPresent are as follows: 

 

Figure 3: EmPresent Features 

Embedded GUIs     12 

 

Page 13: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     13 

 

GUI FRAMEWORK  

Integrated Development Environment (IDE) for quick prototyping 

Import and export of GUI proprietary templates for easier migration 

Powering the innovative output devices and being sensitive to different Input devices 

Small, stable, and scalable windowing system for different platforms 

Desktop‐based visual development environment for embedded applications 

Wide range of ready‐made widgets   

Automated ANSI C and C++ code generation 

GUI DESIGNING 

Powerful well‐document 360  API’s 0

Event driven architecture to support real‐time application development 

Numerous look and feel for applications 

Support for  

o Different screen sizes, resolutions, and colors 

o Localization and internationalization 

o Multiple image codec (e.g., Bitmap, JPIG, GIFF) 

Page 14: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     14 

 

Why use EmPresent? EmPresent’s USP lies in the fact that it can deliver on the following promises: 

UNLEASH CREATIVITY 

GUI designing  is a real pleasure because EmPresent  is easy and  intuitive  to use, powerful and productive.  

Addition of new interface elements is a non‐issue because EmPresent allows quick and easy way of building visual components to GUI screens or panels.  

Screen rendering is fast and easy because EmPresent has a sophisticated set of GUI controls.  

User‐experience is highly enhanced. 

 PROTOTYPE MULTIPLE ALTERNATIVES FOR EVALUATION 

Easier to duplicate, change and distribute than paper and pencil designs. 

Visual design without coding is accessible to everyone. 

Software  prototyping  capabilities make  it  faster  to  develop  and  communicate  user  interface designs to everybody in the team. 

SAVE TIME AND MONEY 

Develop clear GUI designs thereby minimizing the need for rework. 

Shorter development cycles and lower costs. 

Tremendous saving  to device manufacturers  resulting  from a  ‘no  royalty and no‐hidden cost’ offering for customized GUI components. 

Flexible business models allowing reusable Intellectual Property with annuity options. 

Partnering for product success and profitability right from inception to rollout. 

TEST THE ENTIRE APPLICATION AT AN EARLY STAGE  

Artifacts developed for a specific platform configuration can be re‐used across multiple projects sharing the same configuration. This reduces development time and certification effort. 

Although EmPresent can bring valuable results in any industry, it has made serious inroads in the Home and Industrial Appliances, Aerospace, Manufacturing, and Medial domains.  

Page 15: Embedded GUIs - HCL Technologies: Transformational Global Services

Embedded GUIs     15 

 

Benefits EmPresent  is a GUI  toolkit  that empowers embedded application developers  to help  their  respective companies gain a competitive edge on the market. 

EMBEDDED DEVICE APPLICATION GAINS    

Automatic code generation  

Minimal need for embedded programming knowledge 

Parallel application development using X86 simulator capability 

Component / design reusability 

Embedded applications development cycle shrunk by 40% 

BUSINESS GAINS 

Increase operational efficiency 

Reduce maintenance cost 

Provide opportunities for collaborative business models in mega projects 

Reduce engineering cost by 40% 

Reduce time‐to‐market by 50%