ICWE 2008 Workshops, 7th Int. Workshop on Web-Oriented Software Technologies – IWWOST 2008 A MDD Approach for Modelling Web Accessibility Lourdes Moreno, Paloma Martínez, Belén Ruiz Universidad Carlos III de Madrid {lmoreno, pmf}@inf.uc3m.es Abstract accessibility in the modelling, etc. These difficulties, amongst others, make accessibility development very Accessibility requirements must be considered in Web difficult. applications development processes. A domain-specific There are mechanisms for facing this situation: metamodel for Web accessibility is introduced in this directives, norms, legislation and standards which identify paper as a way of modelling aspects of accessibility. This the problems and help to design web pages in an metamodel could be used in techniques offering by Web accessible way. But from a software engineering point of Engineering methodologies, respecting their domain- view, there is no framework which integrates accessibility specific metamodels for each method and used in MDD parameters in the whole life cycle of a web application. development environments. MDA standards such as MOF With this motivation, AWA (Accessibility for Web and tools such as EMF have been used. This proposal is Applications) was created. AWA provides a framework included in AWA (Accessibility for Web Applications), for the development process of software in accessible web a methodological framework for including accessibility in applications. This framework offers certain flexibility so Web applications. that it can be adopted by organizations, independently of the methodology and processes which they may follow in 1. Introduction their developments. In this work we show a detailed AWA module for giving support to methods of web engineering The web offers many services including job searches, with respect to how to include accessibility aspects in the on-line education, documentation, news, games, leisure, models, following a Model Driven Development (MDD) administrative management, etc. However, all of these focus. types of services are not accessible to all of us. Many web In section two we review related studies which sites present barriers which make their access very consider accessibility from an Engineering perspective. difficult, and in some cases impossible. The users with the AWA is described in Section 3, showing the proposal for biggest problems are those with disabilities, but how to model accessibility. The last section includes our accessibility barriers affect a wider range of users and use conclusions and ideas for future research. contexts as well. For this reason, web access should be assured for any person, regardless of how he or she may 2. Related work access it. From a business point of view, there is a generalized In the accessibility processing in the development idea that accessibility means higher costs and problems processes, technological, human and legislative aspects due to a lack of knowledge in this area. Consequently, must be considered, and from there, related works from accessibility is not taken into account in the processes of numerous disciplines have been considered. In web application development. However, accessibility not standardization, the W3C [1] must be highlighted along only assures access but contributes to many benefits, such with the Web Accessibility Initiative (WAI) [2]. WAI as an agile maintenance, scalability with new business includes documentation of suggestions on how to use the lines, better positioning in search engines, etc. guidelines in the developments [3]. The Web Content Accessible development implies some present Accessibility Guidelines (WCAG) [4] is one of the most difficulties: cost previsions, which method to follow to important components, and is considered to be the official include accessibility criteria in the process, how the standard in the European Union. These guidelines appear artefacts change from the client and the organization, how in the majority of legislation worldwide. There are other the roles vary in the development group, how to include laws such as DDA [5] in Australia or in the United Kingdom, Section 508 [6] in the USA, and in Spain there 1 ICWE 2008 Workshops, 7th Int. Workshop on Web-Oriented Software Technologies – IWWOST 2008 is a standard [7], but they are all similar to those some areas of accessibility are starting to include established by WCAG. However, the WCAG do not cover accessibility in web engineering. all situations, and the resources can be inaccessible, even The diversity of active methods in the web engineering when they adjust completely to the directives WCAG [8]. has led to the association of methods in a joint project The WCAG 1.0 is a referential version, although the [27]. This project MDWEnet is a initiative started by approval of the WCAG 2.0 is foreseen for the latter part of a group of researchers working on model-driven Web 2008, elaborated with a different focus in comparison with Engineering (MDWE) and want to develop common tools WCAG 1.0. and define transformations between models following the There are many relevant studies based on WCAG Model-Driven Engineering [28]. This idea has been guidelines, most of them dealing with the accessibility followed in this work through the abstraction mechanisms evaluation [9] [10] the definition of metrics [11], and that MDE proposes to include accessibility requirements. studies where indications on how to use the WCAG guidelines [12] are given. But no approximations on 3. AWA: Accessibility for Web Applications adaptability of WCAG have been found as a framework for the development process in the whole life cycle. AWA (Accessibility for Web Applications) want to There are peculiarities in the area of accessibility, offer a domain specific methodological framework for the closely related to usability, which lead us to consider the development of accessible web applications, which covers techniques of the disciplines which deal with the user’s the whole life cycle. The main points are: experience, such as the Human-Computer Interaction (HCI). Along these lines there are studies which Integration in different methods demonstrate the relationship between usability and The development of accessible web applications does accessibility [13] [14], others establish a framework for not require specific methodology in itself; this only makes designing the introduction of accessibility in the User sense when the methodological approach includes Centred Design (UCD) methodologies, applying accessibility criteria. In this way, the purpose of AWA is techniques of usability [15] [16]. There are proposals on to offer flexibility in its use so that it can be adopted by usability integration in the development process of different existing methods which comply with the software engineering that discuss accessibility [17], but minimum conditions required. they do not consider it in its integrity or in the whole life cycle of the application. Based on various disciplines The related work of web semantic technologies such as On one hand, AWA is based on web engineering which XML, ontology, etc. have been found and resources are provides specific modelling techniques as well as marked according to accessibility criteria. The Semantics development processes some of which are based on code Design Method (WSDM) has an ontology developed in generation, and some on Model Driven Development the context of accessibility for the visually impaired [18]. (MDD). On the other hand it can also be based on the In this scope there are works of formalization of traditional software engineering approaches, which guidelines WCAG [19] and others that offer direct access although they are heavy processes, they provide with adaptability contents following the standard models methodological support for characteristics of the of "Access for all" used in e_learning platforms [20]. development team and project management which are In the area of web engineering, accessibility is referred useful and necessary for accessibility processing. to in literature [21] [22], sometimes considered as part of usability [23]. There are several projects that consider A User-Centred Approach accessibility, such as the WebML method [24] which Both the software engineering as well as the web focuses on user friendly and efficient access in the engineering approaches are very much centred in the recovery and navigation of the information for a web site, architecture, which are normally very distant to the user. but not how to carry out the accessibility model according Thus, to achieve a rapprochement with the user the to the WCAG standard which covers important and necessary requirement in this proposal is to have an necessary technical aspects so as to avoid access barriers, inclusive User Centered Design (UCD), with the use of or a work of the evaluation for the web applications, usability techniques proceeding from HCI discipline. taking into account only some aspects of accessibility to offer text versions as alternative for contents with Compliance with standards images [25] In AWA there is a requirement to follow standards in From a research perspective, there is the recently the web offered by W3C (WCAG, XHTML, CSS, etc.), as created WUAnet network [26], framed as an activity of well as in the development processes making use of “International Society for Web Engineering”, in which Object Management Group standards (OMG) [29]: 2 ICWE 2008 Workshops, 7th Int. Workshop on Web-Oriented Software Technologies – IWWOST 2008 Unified Modelling Language (UML), Meta-Object 3.1.2. AWA-Modelling Facility (MOF) [30] amongst others. With respect to the methodological view, it is important Web accessibility is more than the WCAG to use the modelling techniques that Web engineering AWA considers web accessibility in various methods offer us as well as the MDA framework [31]. The dimensions. Thus, the WCAG standards not only have to objective is trying to use any one of them, without be understood, but will be globally considered, giving applying a specific method, in order to be able to include great support to the capture of requirements in order to accessibility aspects in the modelling of the content, identify other requirements, as well as those from WCAG presentation and navigation models of the method and other derivations to keep in mind such as: the concerned. The strategy in AWA, as shown in Figure 1, inclusion of interactivity with the user in development, to consists of offering a CIM, domain-specific metamodel include aspects of modelling accessibility, include plans for the Web accessibility, denominated AWA-Metamodel, and management of the accessibility in the organization, so that it can be used by these models. accessibility monitoring, etc. 3.1. Structure of the AWA AWA provides a methodological framework with: (1) a specific accessibility process so that it can be adopted by other processes, indicating activities, artefacts and their sequence in the different phases of integrating accessibility criteria, and (2) support for the modelling by using the techniques provided by web engineering methods, as well as MDE, the focus of this paper. The accessibility achieved in developing a web application will be greater if all the mechanisms of accessibility defined in AWA are implemented; if they are only partially applied, then the web accessibility achieved will be limited. Thus, AWA is structured around two modules in order to incorporate accessibility mechanisms as is explained below. 3.1.1. AWA-Process Figure 1. AWA for MDA development process. The process view is based on a wide support for capturing accessibility requirements, including, apart from AWA-Metamodel can be used to build PIM models of Non-Functional Requirements (NFR) which are web engineering methods wherever it is desirable to considered in the majority of approaches, the Functional include aspects of accessibility in the design of its Requirements (FR) of accessibility in the development applications. To give support to the designer, it provides process. In this way, related to process accessibility a graphic editor called AWA-MetamodelEditor, so the different typologies of requirements are included such as: designer may include objects on AWA-Metamodel for following the WCAG standard, assuring the quality and their PIM models in a transparent way. management of the accessibility during the process, an For the final web code generation, which includes accessibility plan in the development team, an aspects of accessibility that have been considered in accessibility policy in the organization and finally, AWA-Metamodel, there is the AWA-toCode resource. evaluation and monitoring of accessibility. The strategy used is to generate code from the PSM This module is not explained in this paper but briefly, models in accordance with the method by using the traditional software methodologies are followed, and a transformation Model-to-Text (M2T). specific requirements; phases, artefacts, roles, etc., are Up until now, according to research that has been offered in the development process as well. Moreover, carried out, the AWA-toCode will not be completely UML is used along with techniques proceeding from the independent of the method. It must be understood as HCI area, especially those dealing with usability. a transformation of PSM into web code. This transformation must be kept in mind together with aspects 3 ICWE 2008 Workshops, 7th Int. Workshop on Web-Oriented Software Technologies – IWWOST 2008 of the presentation, navigation and content models hold properties that define objects to be included in the integrated into the method used in their application, in PIM models. order to achieve the highest degree of compliance with accessibility in accordance with WCAG Web resulting Concept properties WCAG 1.0 WCAG 2.0 Associations DOCTYPE lang 4.3. 3.1.1 ROOT (1..1) code. BODY 3.2 4.1.1. ROOT (1..1) HEAD title 2.4.2 ROOT (1..1) META name/content 13.2. HEAD (1..*) 3.2. AWA-Metamodel HEADING level 3.5 1.3.1,2.4.10 BODY (1..*) contentDescription 2.4.6 css 3.3, 6.1,14.3 1.3.1,1.3.2, The designer has to know about accessibility issues if LINK 1.4.1,1.4.4,1.4.5, 2.4.7,1.4.8, 1.4.9 HEAD (1..*) WACG standard is to be considered in the modeling href 3.2 4.1.1. type phase. We want to enclose this knowledge into a domain href 3.2 4.1.1. model to serve as a bridge for the web application analyst accesskey 9.5 2.4.1 tabindex 9.4 2.4.3 and designer, modelling and describing the requirements title 13.1. 2.4.4, 2.4.5, 2.4.6, 2.4.7, BODY (0..*), and how to use them later in the system. HIPERLINK 2.4.8, 2.4.9 IMAGE (0..1) Concepts based on the WCAG standard and derived target 10.1 3.2.1, 3.2.5 3.2.2, restrictions have been modelled in the AWA-Metamodel. contextDescribe 2.4.4, 2.4.9 hreflang 3.1.2 The purpose is for these accessibility aspects to be src 3.2 4.1.1. encapsulated in the whole development cycle. IMAGE alternativeText 1.1 1.1.1 BODY (0..*) longAlternativedesc 1.1 1.1.1 Technical aspects of getting valid and accessible web MEDIA uri 3.2 4.1.1. code according to standard WCAG (aspects that can be AlternativeCaption alternativeAudioDesc 1.3, 1.4 1.3, 1.4 1.2.2, 1.2.4 1.2.3, 1.2.5, MEDIA (1..*), automated) have been modelled, but this metamodel does 1.2.7 BODY (0..*) alternativeText 1.3, 1.4 not deal with aspects of accessibility valued by the human alternativeSignLang 1.2.6 factor. For that purpose, AWA offers other mechanisms. alternativeFullText format 11.3 1.2.3 With the use of AWA-Metamodel full accessibility is not TECHNICAL duration 11.3 MEDIA (1..*), MEDIA completely obtained but the inclusion of knowledge in content type size 11.3 11.3 models increases levels of accessibility as do WCAG LANG name 4.1. 3.1.2 QUOTATION content 3.7 1.3.1, 1.3.4 guidelines. Moreover, the application of AWA-Modelling caption TABLE BODY (0..*) provides sufficient knowledge to meet the checkpoint summary 5.5 contentTHead 5.1., 5.2 1.3.1 applied in AWA (shown in Table 1), in relation to the THEAD_TABLE abbreviation 5.6 TABLE (1..*) different levels: A, AA and AAA according to WCAG. ROW_THEAD contentRow 5.1., 5.2 1.3.1 THEAD_TAB LE (1..*) LIST type 3.6 1.3.1 BODY (0..*) ITEM_LIST content 3.6. 1.3.1 LIST (1..*) A AA AAA FORM name BODY (0..*) WCAG 1.0 7/12 9/19 9/17 FIELDSET type legend FORM (0..*) for_id 10.2, 12.4 1.3.1 FORM (1..n), LABEL_FORM FIELDSET Table 1. Ratio of achieved checkpoints according (0..1) to WCAG. Table 2. Concepts to be modelled following The UML metamodel, MOF, has been chosen as a tool WCAG. for modelling purposes so that it can be used by other methods which follow the OMG standards. In this way, As mentioned before, the current version of reference modelling aspects of accessibility can be used and at the is the WCAG 1.0, but it has also been taken into account same time the specific-domain metamodels of the method for the next launch of the WCAG version 2.0. concerned are respected. With this aim, AWA offers As a first approximation some meta-objects based on a specific metamodel of the web accessibility domain. a study on the standards have been identified, as shown in Depending on the method, it will be necessary use Table 2. Model_to_Model (M2M) transformations. For instance (see Figure 2), several constructs have been defined in MOF to support the abstraction of web 3.2.1. Modelling the WCAG accessibility concepts, including one for the concept of image that includes required attributes to enable it to meet To obtain a CIM regardless of the method, concepts the standard WCAG such as the "AlternativeText" and their relationship to the standard WCAG, along with "AlternativeLongText" (1.1. of WCAG 1.0 and 1.1.1 of other aspects of accessibility, have been modelled; it is WCAG 2.0) and others such as "src". necessary to model requirements, those concepts which A graphic element representing an image (MOF meta- object) has been defined in the AWA-Editor, and may be 4 ICWE 2008 Workshops, 7th Int. Workshop on Web-Oriented Software Technologies – IWWOST 2008 included in the PIM models, which contain the knowledge translating these accessibility concepts included in the included in AWA-Metamodel necessary for the web code AWA-Metamodel into a valid and accessible web code. generation in the final phase. Figure 3. Ecore_diagram of web body package. Figure 2. Image concept instance in MDA. AWA-Modelling can be applied in the methods that Aspects of accessibility not included in the standard follow standards of the OMG, and is easier than using WCAG, have also been included in the AWA-Metamodel, Eclipse tool. However, EMF provides the mechanism for since they are thought to be important properties following storing models in XMI format which can be exchanged research carried out in AWA, such as the attribute “type” with other tools. of LINK construct, or the TECHNICAL_MEDIA meta- object. The domain experts use their own vocabularies to 4. Some conclusions and future work specify the CIM, however, in this proposal the meta- objects are familiar with any web applications designer Web accessibility problems are increasing with the using them in a easy way, but the requirements and how to rapid advance of web technologies and how these are use them are described. Thus, the designer will be use being used. We also find ourselves facing a crisis in the instances of usual images, tables, multimedia elements, development of web sites, where there is a tendency etc. but an alternate content or semantic information will towards ad-hoc designs which in most of the cases do not be required to comply with the checkpoints of WCAG. follow any methods or standards. This view complicates the establishment of procedures on how to include accessibility criteria from the start of the development 3.2.1. AWA-Modelling Tool process. From an engineering perspective, the solution should be guided towards the training of those To give CASE support and more interoperability, due professionals who develop web sites with methods which to the fact that it is based on standards, the Eclipse help and guide the processes in order to achieve the Modelling platform has been used. For the metamodel, objective of accessibility. EMF (Eclipse Modelling Framework) [32] with Ecore From this perspective we question whether or not to language has been used. It has been designed with three integrate mechanisms of accessibility into the software packages: one for modelling concepts of the web "page", development process following web engineering another corresponding to the web "head", and finally the methodologies. package for the web "body" as Figure 3 shows (Ecore A domain-specific metamodel for the Web metamodel). accessibility, AWA-Metamodel, as a first approximation, The graphical AWA-MetamodelEditor editor from the is introduced as a solution to be adopted by different AWA-Metamodel, has been made using GMF plug-in existing methods. (Graphical Modelling Framework) [33]. Finally, a code In future research, we will work on the AWA generator at the end of the MDA process will be offered, definition and validation. Related to the focus of this 5 ICWE 2008 Workshops, 7th Int. Workshop on Web-Oriented Software Technologies – IWWOST 2008 paper, we would like to apply AWA-Modelling to OOWS [15] Henry, Shawn Lawton. Just Ask: Integrating Accessibility Model-Driven Approach [34], because OOWS is a web Throughout Design. 2007. Madison, WI: ET\Lawton. engineering method that ensures the minimum conditions, www.uiAccess.com/justask/ such as standards fulfilment, required by AWA. [16] Moreno, L., Martínez, P. and Ruiz, B. Inclusive Usability Techniques in Requirements Analysis of Accessible Web Applications, 1st IWWUA WISE 2007, LNCS 4832 5. Acknowledgments [17] Granollers,T., MPlu+a. PhD Thesis. (2004). Universidad de Lleida. Spain This work has been supported by The Spanish Center [18] Plessers, P., Casteleyn, S., Yesilada, Y., De Troyer, O., of Captioning and Audiodescription (CESYA)1 and Stevens, R., Harper, S., and Goble, C. 2005. Accessibility: TIN2004-0783 Project (Software Processes Platform: a Web engineering approach. 14th WWW '05. ACM modelling, reuse and measurement) [19] Moreno, L., Martínez, P., Contreras, J. and Benjamins, R. Towards Accessible Semantic Web Applications. 2005. Conference on Dublin Core and Metadata Aplications. 6. References [20] IMS Global Learning Consortium, 2004 AccessForAll Meta-data Guide Version 1.0 [1] W3C, http://www.w3.org/ http://www.imsglobal.org/accessibility/accmdv1p0/imsacc [2] Web Accessibility Initiative (WAI), md_bestv1p0.html http://www.w3.org/WAI/ [21] Murugesan S. Web application development: challenges [3] WAI Resources on Managing Accessibility, 2005, and the role of web engineering, Chapter 2 in Book: Web http://www.w3.org/WAI/managing.html Engineering, Rossi, G. et al. , 2008, Springer. [4] Web Content Accessibility Guidelines (WCAG), [22] Gaedke M. and Meinecke J., The web as an application http://www.w3.org/WAI/intro/wcag.php platform, Chapter 3 in Book: Web Engineering, Rossi, G. [5] Americans with Disabilities Act (ADA), 1990, et al. , 2008, Springer. http://www.ada.gov/ [23] Kappel G.. Web Engineering The Discipline of Systematic [6] United States Laws, Overview of the Rehabilitation Act of Development of Web Applications. 2006. Edited by Gerti 1973 (Sections 504 and 508), 1998, Kappel, Birgit Pröll, Siegfried Reich, Werner http://www.webaim.org/articles/laws/usa/rehab.php Retschitzegger, by John Wiley & Sons Ltd. [7] AENOR, Spanish technical standards. Standard UNE [24] Ceri, S., Matera, M., Rizzo, F., and Demaldé, V. 2007. 139803:2004: Requirements for WebPages accessibility. Designing data-intensive web applications for content http://www.aenor.es accessibility using web marts. Commun. ACM. [8] DDC report The Web Access and Inclusion for Disabled [25] Olsina L., Papa F., Molina H., How to measure and People, 2004, evaluate web applications in a consistent way. Chapter 13 http://www.drc.gov.uk/publicationsandreports/2.pdf in Book: Web EngineeringRossi, G. et al. , 2008, Springer. [9] Abascal J., Arrue M., Fajardo I., Garay N. and Tomás J., [26] ISWE, WUAnet (Web Usability and Accessibility The use of guidelines to automatically verify Web Network). 2008. accessibility, Universal Access in the Information Society , http://www.editthis.info/wuanet/Main_Page 2004, Springer [27] Vallecillo A. et al, 2007. MDWEnet: A Practical Approach [10] Xiong J., Farenc C., Winckler M. Analyzing Tool Support to Achieving Interoperability of Model-Driven Web for Inspecting Accessibility Guidelines during the Engineering Methods, 7th ICWE, Workshop Proceedings, Development Process of Web Sites. 1st Workshop on Web Dipartimento di Elettronica e Informazione, Politecnico di Usability and Accessibility. WISE 2007, LNCS 4832 Milano, Italy, p. 246 – 254. [11] Vigo M., Arrue M., Brajnik G., Lomuscio R., Abascal J., [28] Schmidt, D.C., Model-Driven Engineering, IEEE Quantitative Metrics for Measuring Web Accessibility. Computer Society. 2006. pp. 25 – 31. 2007. ACM international cross-disciplinary conference on [29] The Object Management Group (OMG), Web accessibility (W4A). http://www.omg.org/ [12] Nykänen O., Kaikuvuo I., Adapting Web Accessibility [30] OMG MetaObject Facility (MOF), Guidelines to an Application Development Process. 2006. http://www.omg.org/mof/ International Design for All Conference. [31] OMG Model Driven Architecture (MDA), [13] Petrie, H. and Kheir, O. The relationship between http://www.omg.org/mda/ accessibility and usability of websites. 2007. Conference [32] The Eclipse Foundation. EMF (Eclipse Modelling on Human Factors in Computing Systems. CHI '07. ACM Framework) http://www.eclipse.org/modeling/emf/ [14] Moreno, L., Castro, E., Cuadra, D. and Martinez, A [33] The Eclipse Foundation. GMF (Graphical Modelling Framework for Developing Accessible and Usable Web Framework) http://www.eclipse.org/modeling/gmf/ Applications. 2007. Handbook of Research on Public [34] Fons J., Pelechano V., Pastor O., Valderas P., Torres V. Information Technology, G. David Garson. Applying the OOWS Model-Driven Approach for Developing Web Applications. The Internet Movie Database Case Study. Chapter 5 in Web Engineering: Modelling and Implementing Web Applications, Rossi, G. 1 et al. , 2008, Springer. www.cesya.es 6