Towards an Engineering Process for Developing Accessible Software
in Small Software Enterprises
Sandra Sanchez-Gordon
1
, Mary-Luz Sánchez-Gordón
2
and Sergio Luján-Mora
3
1
Escuela Politécnica Nacional, Quito, Ecuador
2
Universidad Carlos III de Madrid, Madrid, Spain
3
University of Alicante, Alicante, Spain
Keywords: Software Engineering, Very Small Entity, VSE, Small and Medium-sized Enterprises, SME, Accessible
Software, Web Accessibility Evaluation, WAVE, WCAG 2.0, ISO/IEC 29110.
Abstract: This study presents the results of a web accessibility evaluation performed on a sample of six software
products developed by small software enterprises of two countries. According to the International Standard
Organization (ISO), an enterprise, organization, department or project with up to 25 people is considered
small. All the products evaluated presented accessibility issues, mainly lack of HTML labels, alternative texts,
and color contrast errors. These results showed there is a need in small software enterprises of an engineering
development process that, taking into account their constraints of staff and budget, includes activities for
improving the accessibility of their software. We present the current state of an ongoing work to define such
process based on ISO/IEC 29110 that includes accessibility-related task in each of the following activities:
initiation, analysis, design, construction, integration and test, and delivery.
1 INTRODUCTION
The European Commission (EU, 2015) defines two
factors to define the size of a company: staff
headcount and annual turnover. A company with less
than 10 employees and less than 2 million annual
turnover is a micro enterprise; a company with less
than 50 employees and less than 10 million annual
turnover is a small enterprise, and a company with
less than 250 employees and less than 50 million
annual turnover is a medium-sized enterprise. Micro,
small and medium-sized enterprises (SMEs)
represent 90% of all businesses in the European
Union. Laporte et al. (2015) reports that in the United
States, micro enterprises with less than 10 employees
account for 57% of companies. Moreno-Campos et al.
(2014) presents statistics for the Information
Technology (IT) sector. In Europe, 85% of the IT
companies have less than 10 employees. In Montreal,
Canada, 80% of the IT companies have less than 25
employees. In Wallace, Belgium, 60% of the IT
companies have less than five employees. In
Northern, Ireland, 66% of the IT companies have less
than 20 employees. Sanchez-Gordon (2012) reports
that 90% of the Ecuadorian IT companies have less
than 10 employees.
ISO (2011a) defines a very small entity (VSE) as
an enterprise, organization, department or project
with up to 25 people. VSEs that develop software face
many challenges to embrace traditional software
engineering processes, let alone to include additional
tasks to improve the accessibility of the software they
produce.
In this study, we present the results of
accessibility evaluations performed to software
products developed by six VSEs. These results point
to the need of software engineering approaches with
accessibility considerations specifically designed for
VSEs.
This proposal is based on the standard ISO/IEC
29110 “Software Engineering -- Lifecycle profiles for
Very Small Entities (VSEs)” (ISO, 2011b). This
standard has two processes: Project Management and
Software Implementation. The Project Management
process carries out the tasks of the software project to
achieve the objectives with the expected quality, time
and cost. The Software Implementation process is the
systematic execution of initiation, analysis, design,
construction, integration and test, and delivery
activities for developing or maintaining software
products, as show in Figure 1 (Laporte et al., 2015).
Sanchez-Gordon, S., Sánchez-Gordón, M-L. and Luján-Mora, S.
Towards an Engineering Process for Developing Accessible Software in Small Software Enterprises.
In Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering (ENASE 2016), pages 241-246
ISBN: 978-989-758-189-2
Copyright
c
2016 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
241
Figure 1: ISO/IEC 29110 processes (Laporte et al., 2015).
In the literature review, we found some published
research about ISO/IEC 29110, including a
systematic review of 24 studies (Moreno-Campos et
al., 2014; Sanchez-Gordon et al., 2015). There is one
study about developing a social network website
using ISO/IEC 29110 (Laporte et al., 2014).
However, these studies do not considered
accessibility. Conversely, we found few published
research focused on accessibility in software
engineering (Goncalves de Branco et al., 2014).
Nevertheless, none of them applied to the specific
context of VSEs.
The goal of the present study is to introduce a
proposal for a software process for VSEs based on the
ISO/IEC 29110 that includes accessibility-related
tasks.
The rest of this paper is organized as follows:
Section 2 explains the research method; Section 3
presents the results; Section 4 discusses the proposed
engineering approach; and Section 5 presents final
remarks and future work.
2 METHOD
The following steps describe the method used in this
study. We selected the type of software product to be
evaluated and defined the evaluation dataset
consisting of a sample of six VSEs that have
developed this type of software product. Then, we
selected a tool to perform the accessibility evaluation
of the software products in the dataset. Based on the
analysis of the results and taking in account the
constrains for VSEs, we proposed a software
engineering process based on ISO/IEC 29110 that
includes accessibility-related tasks.
2.1 Software Product
In Ecuador, companies must issue sales invoices
electronically and these invoices must be available for
future reference through web portals (IRS, 2014).
Software companies have developed and deployed
web portals for electronic invoicing for Ecuadorian
customers. This is the type of software product
evaluated in this study. The two user interfaces of
interest are the Authentication web page and the
Invoices Viewing web page.
2.2 Evaluation Dataset
We selected a sample of six web portals for electronic
invoicing developed by five Ecuadorian VSEs and
one VSE from Spain. Table 1 shows the VSE names
and software product URLs.
Table 1: Accessibility evaluation dataset.
#
VSE Name Software Product URL
1
Tandicorp http://www.puntonatural.com.ec/
2
Under Media https://www.flacso.edu.ec/swinfo
3
GPF
https://www.corporaciongpf.com/
facturacionGPF
4
ANFAC https://facturas.com.ec
5
Boyaca IT http://facturacion.boyaca.com/
6 Zabyca http://72.52.152.44/entrepapeles/
2.3 Evaluation Tool
We performed the evaluation using the web
accessibility evaluation tool WAVE, developed by
WebAIM. Specifically, we used the WAVE Chrome
extension 1.0 released on November 2015 (WebAIM,
2015) and installed it on a Google Chrome Browser
Version 47.0.2526.106 running on Windows 8.
3 RESULTS
In this section, we present the accessibility issues
found in the software products evaluated, as well as
the most common accessibility errors and alerts.
Figure 2 presents the evaluation results for the
Authentication web page developed by VSE #5.
WAVE presents the evaluated page with embedded
icons. For example, red icons indicate errors and
yellow icons indicate alerts. The other icons indicate
accessibility features presented in the pages,
structural elements errors, HTML5/ARIA errors, and
contrast errors.
Table 2 summarizes the results of the
Authentication web pages. The less accessible web
page was developed by VSE #1 with 14 errors and 12
alerts, while the most accessible web page was
ENASE 2016 - 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering
242
developed by VSE #2 with two errors and two alerts.
Figure 2: Results of VSE #5 authentication web page.
Table 2: Results of authentication web pages.
Issue Type #1 #2 #3 #4 #5 #6
Errors 14 2 6 2 9 3
Alerts 12 2 3 7 3 5
Features 29 8 0 7 5 1
Structural 52 6 1 5 7 2
Contrast 2 2 2 6 5 2
ARIA 0 3 0 4 0 1
Similarly, Table 3 summarizes the results of the
evaluation of the six Invoices Viewing web pages. In
this case, the less accessible web page was also
developed by VSE #1 with 43 errors and 128 alerts,
while the most accessible web page was developed by
VSE #6 with three errors and one alert.
Table 3: Results for invoices viewing web pages.
Issue Type #1 #2 #3 #4 #5 #6
Errors 43 26 7 14 12 3
Alerts 128 89 124 4 2 1
Features 135 2 9 11 0 0
Structural 228 28 29 39 11 5
Contrast 6 4 11 0 12 1
ARIA 8 25 0 117 0 0
Figure 3 shows the five most common
accessibility errors found in the web pages evaluated.
The most common error was “Missing form labels”,
with 77 occurrences that accounts for 54% of the
errors. When a form control or input field does not
have a properly associated text label, the function or
purpose may be clear enough from the context when
the content is rendered visually, but the label still
needs to be provided to support other forms of
presentation and interaction, such as for screen reader
and speech input users. This corresponds to Web
Content Accessibility Guideline (WCAG) 2.0 1.1.1
Level A, Controls and Input: “If non-text content is a
control or accepts user input, then it has a name that
describes its purpose” (W3C, 2008).
Figure 3: Five most common accessibility errors.
Figure 4 shows the five most common
accessibility alerts found in the web pages evaluated.
The most common alert was “Device dependent event
handler”, with 258 occurrences that accounts for 68%
of the alerts.
Figure 4: Five most common accessibility alerts.
Finally, the VSE #5 Invoices Viewing web page
was the page with the highest number of color
contrast errors: twelve. The color contrast between
background and foreground colors was 3.6:1, which
is low compared with the minimum of 4.5:1
recommended by WCAG 2.0 1.4.3 Level AA (W3C,
2008). This type of accessibility error has a huge
negative impact in users with low vision.
4 DISCUSSION
In this section, we present the current state of an
ongoing effort to define a software engineering
process for VSEs that includes accessibility-related
tasks. For each activity of the ISO/IEC 29110
software implementation process as explained by
Gonzalez and Hernandez (2012), we present main
constraints faced by VSEs and a preliminary list of
tasks to improve the accessibility of the software
products developed. For now, these lists are not
exhaustive and once completed, they will serve as
input for a comprehensive method.
Towards an Engineering Process for Developing Accessible Software in Small Software Enterprises
243
The goal of the software implementation process
is to achieve a software product that satisfies the
needs and expectations of all potential users,
including users with accessibility needs due to
permanent, temporal, or environmental disabilities,
e.g. users born blind, users with temporary
immobilized arm due to surgery, or users working
under extreme light conditions.
4.1 Software Implementation Initiation
This activity prepares the team for the rest of
activities and it selects the tools to accomplish the
project. Table 4 shows the tasks and roles.
Table 4: Initiation tasks.
ID Task Name Roles
SI.1.1 Review the project plan to
achieve a common understanding
and commitment.
Manager
Team
SI.1.2 Set or update the implementation
environment.
Team
In this stage, the main constraint for VSEs is
limited budget for setting up the environment. The
proposed accessibility-related tasks are (Keates and
Looms, 2014):
Select simulations aids for testing purposes, e.g.
blindfolds, ear defenders.
Select simulators for different types of
disabilities, e.g. SimDaltonism simulates eight
types of colour blindness (Fortin, 2014).
Select assistive technologies, e.g. NVDA screen
reader (Nvacess, 2015).
Select accessibility evaluation tools, e.g. WAVE
(WAVE, 2015).
Select HTML and CSS checkers, e.g. W3C
HTML Validator (W3C, 2013).
4.2 Software Analysis
This activity studies users’ needs and expectations to
define the project scope and identify key
functionalities, including non-functional
requirements. Table 5 shows the tasks and roles.
In this stage, the main constraints for VSEs are
cost and time. Recruiting users with disabilities is
costly. Moreover, it is unfeasible to include all types
of potential users with disabilities. Including an
accessibility expert is also costly. A participatory
approach with users with disabilities and experts also
demands time.
Table 5: Analysis tasks.
ID Task Name Roles
SI.2.1
Assign tasks to the team
according to their role and the
plan.
Manager
Team
SI.2.2
Create or update the
Requirements Specification.
Identify information sources.
Determinate the scope and
feasibility.
Verify the correctness and
testability.
Team
Customer
SI.2.3
Validate and obtain approval of
the Requirements Specification.
Validate the Requirements
Specification traceability with
the needs and expectations.
Customer
The proposed accessibility-related tasks are:
Sensitize the team members through the
observation of users with disabilities interacting
with software products.
Use a cost-effective and quick approach to gather
and validate accessibility requirements based on
guidelines and standards, e.g. WCAG 2.0 (W3C,
2008), ISO/IEC 13066 (ISO, 2011c).
Include accessibility requirements in the
Requirements Specification.
When using agile development, include
accessibility requirements in the product stack.
4.3 Software Design
This activity is the keystone of a software project.
Failure to describe a design architecture that will
incorporate all the requirements is a common reason
for project failure. Table 6 shows the tasks and roles.
In this stage, the main constraint for VSEs is the
size of the development team. The proposed
accessibility-related tasks are:
Review the design architecture, software
components and interfaces for traceability with
accessibility requirements in the Requirements
Specification.
Guide team members in getting accessibility
knowledge and using techniques for building
accessible software components, e.g. use of WAI
ARIA in HTML5 (W3C, 2015).
ENASE 2016 - 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering
244
Table 6: Design tasks.
ID Task Name Roles
SI.3.1 Assign tasks to the team
according to their role and the
plan.
Manager
Team
SI.3.2 Understand Requirements
Specification.
Team
SI.3.3 Create or update the Software
Component Identification.
Analyze the Requirements
Specification to generate the
components.
Provide details of the software
components and their interfaces.
Team
4.4 Software Construction
This activity involves programmers producing
components using a systematic approach. Table 7
shows the tasks and roles.
Table 7: Construction tasks.
ID Task Name Roles
SI.4.1 Assign tasks to the team
according to their role and the
plan.
Manager
Team
SI.4.2 Understand the Software
Component Identification.
Team
SI.4.3 Construct or update the
Software Components.
Team
SI.4.4 Create or update Test Cases and
Test Procedures for unit and
integration.
Customer provides testing data.
Team
SI.4.5 Test the Software Components.
Correct the defects found until
successful unit test is achieved.
Team
In this stage, the main constraint for VSEs is the
size of the development team and the short time to
deliver. The proposed accessibility-related tasks are:
Built accessibility features in the Software
Components.
Create Test Cases and Test Procedures for testing
the accessibility requirements.
Use accessibility checklists, e.g. WebAIM´s
WCAG 2.0 Checklist (WebAIM, 2014).
4.5 Software Integration and Tests
This activity involves executing different types of
tests and identifying issues that must be addressed.
Table 8 shows the tasks and roles.
Table 8: Integration and tests tasks.
ID Task Name Roles
SI.5.1 Assign tasks to the team
according to their role and the
plan.
Manager
Team
SI.5.2 Understand the Test Cases and
Test Procedures.
Set or update the testing
environment.
Team
SI.5.3 Integrate the software using
Software Components and
update Test Cases and Test
Procedures for integration
testing, as needed.
Team
SI.5.4 Perform software tests using
Test Cases and Test Procedures
for integration and create the
Test Report.
Team
SI.5.5 Correct the defects found until
successful test is achieved.
Team
SI.5.6 Incorporate the Requirements
Specification and Software to
the Software Configuration.
Team
In this stage, the main constraint for VSEs is the
size of the development team. The proposed
accessibility-related tasks are:
Use automated tools in the testing environment.
When using agile development, include
accessibility testing in the Definition of Done.
4.6 Software Product Delivery
This activity ensures there would be no delays to
obtain product acceptance. Table 9 shows the tasks
and roles.
Table 9: Delivery tasks.
ID Task Name Roles
SI.6.1 Assign tasks to the team
according to their role and the
plan.
Manager
Team
SI.6.2 Review the Software
Configuration for
understandability.
Team
SI.6.3 Perform delivery to the Manager
and support.
Manager
Team
At this stage, the main constraint for VSEs is short
time to deliver. The proposed accessibility-related
task is to include the accessibility assets in the
Software Configuration.
Towards an Engineering Process for Developing Accessible Software in Small Software Enterprises
245
5 CONCLUSIONS
Building accessible software is the right thing to do
because it benefits all users – both able and disabled.
Besides, web accessibility is a legal requirement in
several countries, the United States being the first
country to have legislation on web accessibility since
1998. There have been more than 230 related
settlements and lawsuits.
In the evaluation presented in this study, we found
that all the software products in the sample have
accessibility issues. The most common accessibility
errors were missing form labels, missing alternative
texts in linked images and image buttons, and
document language missing. The most common
accessibility alerts were device dependent error
handlers and very small text. These errors and alerts
prevent certain users from fully interacting with the
software web pages.
In our proposal, for each activity of the ISO/IEC
29110 software implementation process, we
identified constraints faced by VSEs and presented
preliminary lists of accessibility-related tasks. We are
working on improving these accessibility-related lists
since they are not exhaustive.
As future work, we plan to systematize these lists
to obtain a comprehensive method that can be applied
for VSEs that develop software to improve the
accessibility of their products. This method will have
to be empirically validated in pilot software projects.
ACKNOWLEDGEMENTS
This research is partially supported by the Prometeo
Project by SENESCYT, Ecuadorian Government.
REFERENCES
EU, 2015. SME Definition. Available online:
http://ec.europa.eu/growth/smes/business-friendly-
environment/sme-definition/index_en.htm.
Fortin, M., 2014. Sim Daltonism. Available online:
https://michelf.ca/projects/sim-daltonism/
Goncalves de Branco, R., Cagnin, M. I., Barroso Paiva, D.
M., 2014. AccTrace: Accessibility in phases of
requirements engineering, design, and coding software.
In Computational Science and Its Applications, pp.
225-228.
Gonzales, W., Hernandez, G. 2012. Entry-profile DP-
Software Implementation Engineering - Lifecycle
Profiles for Very Small Entities (VSEs) - Part 5-1-2:
Management and engineering guide.
IRS, 2014. Electronic vouchers scheme. Available online:
http://www.sri.gob.ec/de/10109.
ISO, 2011a. ISO/IEC TR 29110-4-1:2011, Software
Engineering -- Lifecycle Profiles for Very Small
Entities (VSEs) -- Part 4-1: Profile Specifications.
ISO, 2011b. ISO/IEC TR 29110-1:2011, Software
Engineering -- Lifecycle Profiles for Very Small
Entities (VSEs) – Part 1: Overview.
ISO, 2011c. ISO/IEC 13066-1:2011 Information
technology -- Interoperability with assistive technology
(AT) -- Part 1: Requirements and recommendations for
interoperability.
Keates, S., Looms, P. O., 2014. The role of simulation in
designing for universal access. In Universal Access in
Human-Computer Interaction. Design and
Development Methods for Universal Access, pp. 54-63.
Springer International Publishing.
Laporte, C., Hébert, C., Mineau, C., 2014. Development of
a social network website using the new ISO/IEC 29110
standard developed specifically for very small entities.
In Software Quality Professional, 16(4), pp. 4-25.
Laporte, C., O'Connor, R., Garcia Paucar L., 2015.
Software engineering standards and guides for very
small entities: implementation in two start-ups. In
Evaluation of Novel Approaches to Software
Engineering ENASE 2015, pp. 5-15.
Moreno-Campos, E., Sanchez-Gordon, M.L., Colomo, R.,
De Amescua Seco, A., 2014. Towards Measuring the
Impact of the ISO/IEC 29110 Standard: A Systematic
Review. In Systems, Software and Services Process
Improvement, pp. 1-12. Springer Berlin Heidelberg.
Nvaccess, 2015. NVDA Screen Reader. Available online:
http://www.nvaccess.org/
Sanchez-Gordon, S., 2012. Criteria for the adaptability of
software process models and standards in Ecuadorian
SMEs. In International Conference of Software
Engineering and New Technologies in Systems
Engineering.
Sanchez-Gordon, M.L., O’Connor R.V., Colomo, R., 2015.
Evaluating VSEs Viewpoint and Sentiment towards the
ISO/IEC 29110 Standard: A Two Country Grounded
Theory Study. In Software Process Improvement and
Capability Determination, pp. 114-127. Springer
International Publishing.
WebAIM, 2014. WCAG 2.0 Checklist. Available online:
http://webaim.org/standards/wcag/checklist.
WebAIM, 2015. WAVE Chrome Extension. Available
online: http://wave.webaim.org/extension/
W3C, 2008. Web content accessibility guidelines WCAG
2.0. Available online: http://www.w3.org/TR/WCAG/
W3C, 2013. Markup Validation Service. Available online:
http://validator.w3.org.
W3C, 2015. Notes on Using ARIA in HTML. Available
online: http://www.w3.org/TR/aria-in-html/
ENASE 2016 - 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering
246