You are on page 1of 15

8.2.

DEVELOPMENT AND IMPLEMENTATION OF MODULES OF THE STATE


AUTOMATED INFORMATION SYSTEM “ELECTIONS”

The increase of the level of society computerization implies the diversification of forms and
methods of organization and conduct of elections and referendums. Automatization of all stages of
electoral process allows substantial reduction of manual labor and a more effective control of legality
and transparency of the electoral process.
By adoption of Law no. 101 of 15 May 2008 on the Concept of the state automated information
system “Elections” (hereinafter – SAISE), the forward-looking target of automatization of the electoral
process was clearly outlined – the voter could vote at any polling station regardless of its geographical
location, or through the information portal of the Central Electoral Commission, given the specific of
national and local ballots. In the context of the implementation of law, the automatization of electoral
processes has become one of main prerequisites in the activity of the Central Electoral Commission, and
the component of development and implementation of SAISE modules has been since then included in
all activity plans of the Commission.
Designed to be a modular system, SAISE should ensure the automatization of a range of
activities of the Commission, logically divided into 7 blocks of functions:
- block of functions “Voters’ list”, which includes the function of compiling of voters’ list;
- block of functions “Preparation”, which includes the functions of registration of the polling
stations, of members of district electoral councils and of precinct electoral bureaus, of
members of the initiative group for the conduct of referendum, of accredited observers, of
representatives of the electoral competitors;
- block of functions “Competitors”, which includes the functions of registration in SAISE of
electoral competitors or of their trustworthy persons;
- block of functions “Documentation”, which includes the functions of issue of registration
and accreditation documents; issue of cards to the persons selected; generation of templates
of organization and ruling documents (such as, voters’ lists, minutes of opening of a polling
station, lists of members of electoral bodies of all levels, lists of representatives of the
electoral competitors, lists of trustworthy persons of the electoral competitors, lists of
accredited observers, lists of members of the initiative group for the conduct of referendum,
minutes of meeting of the central (territorial) body of the party, of other social and political
organization on the nomination of a candidate (list of candidates), signature collecting lists,
including the required number of signatures for the support of independent candidate,
document of registration of the independent candidate, of party, of members of electoral
bodies, of trustworthy persons of the candidates, of representatives of the electoral
competitors, of members of the initiative group for the initiation of referendum, accreditation
document of observers, service card of the member of electoral body, minutes of the polling
station on the tabulation of elections results, minutes of district electoral council on the
tabulation of elections results, financial reports submitted by the electoral competitors, card
of MP, councilor, mayor and other documents); generation of technological documents (such
as, registry of complaints and petitions, document on the ballot papers circulation, report of
the electoral bureau, including data on the elections held at the polling station, report of
district electoral council, including data on the elections/referendum held in the electoral
district, minutes of the Central Electoral Commission on the results of elections/referendum);
- block of functions “Voting”, which includes the functions of registration of voting, of votes
cast to the candidates, electronic voting, calculation of the number of voters who participated
in the vote, preliminary tabulation;
- block of functions “Rotation”, which includes the record functions of persons dismissed
from the elective office, of persons who can take up vacant elective office;
- block of functions “Financial control”, which includes the functions of control of the use of
financial resources by the electoral competitors during the electoral campaign, record of loans
provided by the state, control of the use and reimbursement of the loans granted by the state,
etc.
The table below shows the dynamics of development and piloting of the first version of SAISE
in the period 2009–2012:
No Date of elections No of
District Locality Type of elections p/s

1 29 November 2009 Stefan Voda Stefanesti village New local 1


2 13 May 2010 Chisinau Singera town New local 5
3 5 September 2010 Chisinau Centru sect., Chisinau mun. Referendum 43
4 28 November 2010 Chisinau Centru sect., Chisinau mun. Parliamentary 43
5 5, 19 June 2011 Chisinau Centru sect., Chisinau mun. General local 43
6 13, 27 May 2012 Floresti Trifanesti village New local 2

To perform the piloting, personal data of voters from the locality, where the piloting of the
system took place, was imported from the State Registry of Population directly into SAISE. Then, the
data was compared with the voters’ lists submitted by the local public authorities, with synchronization;
data that was absent in the lists submitted by the local public authorities was excluded, then it was used
on the day of elections in the polling stations, subject to system piloting.
The implementation of the State Registry of Voters in 2014 allowed performing SAISE piloting
at the national level within the parliamentary elections of 30 November 2014.
Having the database of all voters of the Republic of Moldova, an architectural structure
composed of 2 web servers and 2 data-base servers bought and installed in 2008-2009, about 4,200
SAISE operators trained, the Central Electoral Commission performed the national testing of the system
on 18, 22 and 26 November 2014. As a method of SAISE testing was suggested the testing according to
load and stress principles. These were to be performed within the national testing of 18.11.2014,
22.11.2014 and 28.11.2014. This testing method was discussed and accepted as the most efficient, due
to the rate of active participation of the national operators (50-80%).
Practical testing exercises were selected as the testing scenario and provided to operators during
training sessions. The operators were tasked with the continuous introduction of data in the system
during at least 3 hours, passing different stages similar to those from the day of elections. However, at
the time of testing the presence in the system made up at most 1,080 users simultaneously, or about 25%
of the total number of operators; besides, they did not act according to provided instructions and
guidelines. The operators introduced only a part of the data provided and did not comply with the 3-hour
duration, specified by the Central Electoral Commission.
An attempt of a stress testing was done 14 days before the elections. The Commission requested
support from a third company with an extensive experience in the field of testing of information
systems. However, due to the restricted deadlines for the performance of stress testing, which could be
critical in finding gaps and/or system breaches and would have allowed resolving eventual problems that
could be found, the company did not accept the testing, because of the pressure and too much
responsibility and very limited deadlines.
Nevertheless, SAISE operated normally during the whole period of the elections day, except
about 3 hours of partial inaccessibility (8:30 a.m. – 11:45 a.m.). Thus, it was found that the servers
designated for a good operation of the system were unable to process the data flow from the operators.
The number of simultaneous users connected to the system made up around 4,127 and was maintained
practically throughout the day. The issue of partial inaccessibility was settled due to the fact, that
together with technical specialists of CST (Center of Special Telecommunications), additional WEB
servers (6 units) for the increase of the processing capacity of 56 existent CPU cores with 76 CPU cores
(132 CPU cores in total) were configured and installed, with the greatest of urgency and in real time, for
further normal SAISE operation; and, due to the fact, that the method of balancing and distribution of
intranet traffic by SAISE was reconfigured (reconfiguration of balancing method from virtual to
physical, on servers within CST data center). This balancing method has proven to be more efficient for
such number of requests.
The figure below shows that after the capacity of WEB servers was increased to 132 CPU cores
(8 WEB servers) and the load balancing on the physical platforms of CST was optimized, starting with
11:45 a.m. – 12:00 a.m., the situation returned to normal, thus ensuring operators’ access to SAISE.

The SAISE piloting at the parliamentary elections of 30 November 2014 allowed identifying a
range of recommendations for improving the infrastructure of the system and the application, such as:
- review of servers’ architecture (whether the installation of best-performing servers is
required or not), increase of the processing capacity of hardware components (servers) by
connecting a larger number of servers;
- for the elections period, contracting of an IT company, which would provide complex
services and solutions of servers location and transfer of qualified technical staff (operation
systems, security, networking, load balancing), including management of platforms installed
on leased servers;
- review and optimization of out-of-date programming functions used in SAISE (improvement
of transactions between the application and the database);
- separation of SAISE modules used on the day of elections (“Election turnout” and
“Minutes”) by developing an isolated subsystem that would allow decreasing the system
overload as a whole;
- contracting of a company which would perform load and stress testing, on request, including
for the whole period of SAISE improvement;
- development of a separate interface of reporting the complex data for the day of elections,
etc.
Following the results of SAISE piloting at the national level, in order to identify and settle the
issues faced at the parliamentary elections (PE) of 2014, the specifications for a stress testing of SAISE
were developed from on January to April 2015 to identify the stages and scenarios of testing. Thus, until
general local elections (GLE) of 2015, there were 3 phases of SAISE testing. In the first two stages the
simulation of parliamentary elections of November 2014 was performed and the scenarios of testing of
the system were applied, configured on an enhanced performance infrastructure versus that used in the
PE of 2014, with the analysis of the system behavior and identification of the existing issues.
Behavior of servers in initial configuration:
Behavior of servers on an enhanced performance infrastructure:

The automated stress testing allowed detecting the breaches in the system and identifying crucial
actions of increase and improvement of SAISE productivity; there was set out a range of findings and
recommendations written in an executive report, among which the recommendations of SAISE
reengineering by decoupling its modules and their integration through a SOA architecture, optimization
of modules “Election turnout” and “Transmission of the results”, implementation of a balancing solution
designed for nominal reduction of servers load through equitable sharing of requests between them.
Simultaneously with the performance of stress testing was initiated the procedure of
optimization/decoupling of modules “Election turnout” and “Transmission of the results”, were set out
the terms of reference for the new SAISE module – “Election turnout”, so that the application allowed
checking IDNP structure, introduction of minutes for each type of “ballot category” (local mayors,
general mayors, local councilors, rayon councilors, municipality councilors), automatic checking of
formula of validation of the minutes of votes counting.
In May-June 2015, the stress testing of new module “Election turnout” A and B were developed
and performed – 2 interchangeable information systems, focused on different information technologies,
a solution consisting in the use of resources of WEB servers, and another one was designed to use the
resources of BD servers.
Behavior of servers with new applications:

Newly developed applications brought the expected result. Thus, if the old version of application
(with the load of 35 requests/second) loaded server processors up to 100% (Figures 1, 2), then newly
developed applications (with the capacity of 500 requests/second) allowed the servers operating within
the acceptable limit of processors’ load – 80%.
The decision on reengineering of the system and the support of the United Nations Development
Program within the “Program for Democracy” project implied an impressive evolution of information
systems used by the Central Electoral Commission. Thus, in 2015-2017, a new system architecture was
developed and implemented, focused on the principles of architecture divided by levels, service oriented
architecture (SOA), scalability and expansibility, so that furtherly it would correspond to the figure
below:
Spațiul informatic al CEC

SIASA
Pe rim e trul proie ctului SAISE Adm in Aplicații
Informatice CEC (SI
SIASA Admin Contabil, alte SI
relev ante)

Blocul de funcții Gestiunea utilizatorilor Gestiunea Gestiunea


„Pregătirea” rolurilor și drepturilor resurselor metadatelor

Stoc de date

BD producție
WS: WS: WS: Livrez WS: WS:
Autentific Autorizez metadate Notific Jurnalizez

Magistrala de serv icii CEC BD alegeri

Depozit de Date

BF „Lista BF BF BF BF BF „Control
Electorală” „Concurenți” „Documentarea” „Votarea” „Rotația” Financiar”
(RSA) Platformă de
generare a
rapoartelor

MCloud

Magistrala de serv icii guv ernamentale (M-Connect)

M-Pass M-Sign M-Notify M-Log


Aplicații
Informatice
MJ

Infrastructura TIC a AP furnizoare de date

Aplicații Aplicații Aplicații Aplicații Aplicații


Informatice Informatice Informatice Informatice Informatice
MAI MA MAIE ME MS

The infrastructure also evolved from 4 physical servers into 10 physical machines, a
virtualization environment with 15 virtual machines distributed in 5 subnetworks, and 7 virtual machines
placed in a cloud outsourced environment according to the charts below:
The new infrastructure allows a proper management of the system at high demand, even for a
longer period, as it was the case on 13-14 November 2016 – the day of the second round of the
presidential elections.
As it was already mentioned, the used applications and the web pages of the Commission were
subject to performance and stability tests; also, the procedures of putting into operation of new systems
were reviewed, so that the newly developed applications were subject to performance testing (load
testing and stress testing) and functional testing before launching, with the subsequent signature of
acceptance.
Some SAISE modules have been redesigned; the new ones have been developed, such as:
- “Competitors” module, which in the general local elections in 2015 allowed, within the
limited deadlines, collecting and processing by each second level District Electoral Council
(DEC) of data of 66,813 candidates for all elective positions that participated in the ballot;
- “Ballot paper” module, which allows automated generation of files with customized ballot
papers for each polling station and each type of ballot, the files being systematized and ready
to be sent to printing;

- “Preliminary registration module, which allows the voters to express their willingness to vote
on the territory of another country. Based on the preliminary registration, the authorities of
the Republic of Moldova seek to open additional polling stations abroad, through diplomatic
channels and with the agreement of the host countries.
- “Verification of signatures collecting lists”, which ensures the possibility to check the
signatures collecting lists submitted to the Central Electoral Commission in order to support
the candidates or the referendums:
- Module of verification of election turnout on the ballot day, which is used to collect data on
the election turnout of citizens from the country and abroad and exclude the possibility of
multiple voting, the data, which through the module of information submission on election
day, could be further submitted in real time, giving the possibility to provide information on
the voter’s profile (sex, age, turnout rate) individually for each locality within the republic
and abroad:
- Module of electronic drawing up of minutes with the elections results, which allows
centralizing and preliminary tabulating the votes counted by the polling stations immediately
after the completion of counting of voters’ lists.

- Module of presentation of preliminary results on the elections day, which allows the
Commission announcing the preliminary results of the ballot, in 3 hours, at most, reducing
the errors related to the human factor:

- “Rotation” module, which ensures the full management and recording of the processes of
assigning the seats to the electoral competitors according to their rotation, providing real data
on the distribution of elected representatives according to sex and political party:
The data collected through SAISE interfaces is highly appreciated by the centers of survey,
analysis and research, being further used for comparative studies:

Nowadays, the Central Electoral Commission uses an instrument with a high degree of reliability
and industrial maturity, able to satisfy a good part of specialized software needs of the institutions
SAISE ”Elections”
Department of “Candidates” module
Penitentiary
Institutions, Signature collecting lists
Ministry of Justice
E- Generating and printing of ba
MC
G onn
SRV ect S
AI
AIP SE E-Day Module
SRP
Electoral turnouts and prelimin
“Rotation” module
Prior registration
However, in order to maintain its competitiveness and to face the changes of processes that take
place in the electoral systems, and the ever-growing requirements, SAISE, as any other advanced
information system, is being constantly developed and adapted to new requirements. New modules such
as “Financial Control of Political Parties” or “I-Voting” will be developed in the next years. Through the
MConnect platform, SAISE will be interconnected with electronic registers (State Registry of
Addresses, Military Registry, Civil Status Registry) of other state institutions, as the Ministry of
Defense, the Public Services Agency, the Ministry of Justice, the Ministry of Internal Affairs, etc. At the
same time, following the introduction of the mixed electoral system, by Law no. 154 of 20 July 2017 on
the amendment and addendum of some legislative act, SAISE modules require an adaptation of business
processes to face new realities.

You might also like