Table Of ContentAvaliação da Teoria de Sistemas
Normalizados na Implementação de SI
Evolutivos
André Filipe Saraiva Varela
(Licenciado em Engenharia Informática e de Computadores)
Dissertação para obtenção do Grau de Mestre em
Engenharia Informática e de Computadores
Júri
Presidente Adefinir
Orientador Prof. DoutorCarlosNunodaCruzRibeiro
Co-Orientador Prof. DoutorAndréFerreiraFerrãoCoutoeVasconcelos
Co-OrientadorEmpresarial Eng. GonçaloCaseiro
Vogal Prof. AntónioManuelFerreiraRitodaSilva
Julho 2011
Abstract
Nowadays, there are increasingly volatile environments on enterprises. As these organizations face
even faster changes in terms of markets, stakeholders, technologies and products, these require ever
increasinglevelsofevolvabilityinordertorespondquickly. Additionally, therearemoremechanisms
toensurequalitythanbefore;servicesandproducts,andtheirdistributionarenowmoretailoredtothe
needsofcustomers,whichusuallyincreasethecomplexityofInformationSystems.
Nevertheless, thecurrentInformationSystemsfollowstrictlythecustomers’requirements, leading
to multiple dependencies. Whenever it’s needed to change/add business objectives, it becomes very
hard to modify these systems, increasing the risk of having to develop a new system (considering a
worstcase).
ThisdissertationgoalistoevaluateiftheNormalizedSystemstheoryallowsorganizationstodeliver
fastandeffectivechanges,aswellasincreasethecomplexityoftheInformationSystems(e.g. increase
numberoffunctionalities,requirementsandinterfaces)-makingthemagileandevolutionary.
The proposed methodology consists in applying Normalized Systems theory in the development
of an E-Voting System. Initially, in conformity with the theory of Normalized Systems, the mapping
of business processes relevant to the voting process was done; after this step, a Normalized E-Voting
Systemwasimplemented,basedonthismapping. Afterwards,byusinganothersystem(similartothe
onedeveloped)itwaspossibletoprovetheusefulnessofthetheoryinthedevelopmentofevolutionary
informationsystems,throughtheanalysisofsomequantitativesoftwareevaluationmetrics(appliedto
both).
i
Keywords:
NormalizedSystemstheory
Complexity
Change
Agility
Evolution
InformationSystem
ElectronicVoting
ii
Resumo
Actualmente, verifica-se que o ambiente das empresas é altamente volátil. À medida que as empre-
sas enfrentam uma mudança cada vez mais rápida em termos de mercados, stakeholders, tecnologias
e produtos, estas requerem níveis de capacidade evolutiva cada vez mais altos para poder responder
rapidamenteaestasmudanças. Paraalémdisto,existemmaiscontrolosdequalidadedoqueantes,os
benseserviçossãocomercializadosaummaiorecrescentenúmerodemercadosinternacionais,tendo
sempreematençãoaspreferênciasdocliente,oqueimplicaoaumentodacomplexidadedosSistemas
deInformação.
Contudo, a realidade é que os sistemas actuais são bastante fiéis ao que é pedido pelos clientes, o
quefazcomquetenhambastantesdependências. Quandoénecessáriomudar/adicionarobjectivosde
negócio torna-se, por vezes, complicado proceder a alterações em sistemas com muitas dependências,
existindooriscodesernecessárioodesenvolvimentodeumnovosistema(nopiorcaso).
O grande objectivo deste trabalho é avaliar se a teoria de Sistemas Normalizados permite às or-
ganizações, agir rápido e eficientemente à mudança e ao aumento da complexidade dos seus SI (e.g.
aumentodonúmerodefuncionalidades,requisitoseinterfaces)-tornando-aságeiseevolutivas.
AmetodologiapropostaconsisteemaplicarateoriadeSistemasNormalizadosnodesenvolvimento
deumSistemadeVotoElectrónico.Inicialmente,foiefectuadoomapeamentodosprocessosdenegócio,
respectivos ao processo de votação, nos elementos descritos na teoria; e de seguida, implementado o
Sistema de Voto Electrónico Normalizado, com base nesse mapeamento. Através da utilização de um
outrosistemasimilaraodesenvolvido,foipossívelcomprovar,posteriormente,autilidadedateoriano
desenvolvimentodeSIevolutivos,atravésdaanálisequantitativadealgumasmétricasdeavaliaçãode
software,aplicadasaosdoissistemas.
iii
Palavras-Chave:
TeoriadeSistemasNormalizados
Complexidade
Mudança
Agilidade
Evolução
SistemadeInformação
VotoElectrónico
iv
Agradecimentos
Gostaria de agradecer ao Professor André Vasconcelos pela orientação dada ao longo da realização
destadissertação,pelasuapersistência,disponibilidade,espíritocríticoefoconamelhoriacontínuano
decorrerdestainvestigação.
Doladoempresarial,gostariadeagradeceràEngenheiraFátimaCarrãoeaosEngenheiros,JoãoRi-
cardoVasconceloseGonçaloCaseiro,peloacompanhamento,disponibilidadeeajudaprestada,sempre
quenecessitava.
ÀAMA,pelacedênciadeumespaçofísico,agradável,paraarealizaçãodotrabalhodeMestrado.
Atodososcolegascomquemtrabalhei,emespecialoTiagoVieira,PedroVicente,RuiSilva,Pedro
JacintoeAntónioTomé, queaolongodocurso, eespecialmentenestaúltimafase, meauxiliaramcom
sugestões,informações,ideiasoupalavrasdeincentivo.
ÀAssociaçãodeEstudanteseaoalunoAndréBriosopormeforneceremosalicercesnecessáriosde
modoaconseguirtestareavaliaromeusistema.
AoLuísCrato,JoãoSantos,LilianaVeríssimo,SóniaFerreira,DéboraAndré,RitaOlivença,Roxanne
GarranaeFernandoSaraivaporestaremsemprepresentesnaminhavida.
Eporúltimo,masdefinitivamentenãomenosimportante,deixoumagradecimentoededicatóriaes-
pecialàminhafamília,emespecialàminhamãe-MariaAliceNunesSaraivaVarela,aomeupai-Nuno
PaulodeJesusVarela-eàminhairmã-PatríciaAlexandraSaraivaVarela,porteremsempreacreditado
em mim e pelo apoio constante ao longo de todo este tempo, sem o qual dificilmente conseguiria su-
perarosdesafiosquevãosurgindonodia-a-dia.
Julho2011
AndréFilipeSaraivaVarela
v
Emmemóriadosmeusavós,
FranciscoSaraiva,IvoneSaraivaeElisabeteVarela.
vi
Conteúdo
Abstract i
Resumo iii
Agradecimentos v
Notações xi
ListadeFiguras xiv
ListadeTabelas xv
ListadeProgramas xvii
Acrónimos xix
1 Introdução 1
1.1 Enquadramento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 DefiniçãodoProblema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2.1 HipótesesdeInvestigação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Objectivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 MetodologiadeInvestigação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.5 OrganizaçãodoDocumento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
I EstudodoProblema
2 Estado-da-Arte 7
2.1 Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 InflexibilidadedosSistemasdeInformação . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.1 ManutençãoCorrectiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.2 ManutençãodeMelhoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3 Métricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.1 MétricasdeSoftware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4 Sumário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3 TeoriadosSistemasNormalizados 13
3.1 AplicaçãodaTeorianoDesenvolvimentodeSistemasdeInformação . . . . . . . . . . . . 13
3.2 MapeamentodeProcessosdeNegócio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3 VantagensdeSistemasNormalizados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4 DesvantagensdeSistemasNormalizados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.5 Sumário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
vii
4 CasodeEstudo 19
4.1 Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.1.1 RecenseamentoEleitoral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.1.2 ProcessodeVotação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.1.3 ContagemdosVotos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.1.4 DivulgaçãodosVotos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.2 VotaçãoElectrónica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.3 ExperiênciasemTerritórioNacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.4 CasosdeEstudo-SistemasElectrónicosEstrangeiros . . . . . . . . . . . . . . . . . . . . . 26
4.4.1 CasodoBrasil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.4.2 CasodaEstónia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.5 ResumodosSistemasAnalisados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.6 Sumário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
II RespostaaoProblema
5 SoluçãoProposta 35
5.1 ModelodaTeoriadeSistemasNormalizados . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.2 MapeamentodosProcessosdeNegócioemFluxosdeNegócio . . . . . . . . . . . . . . . . 36
5.3 DesenhodoSistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.4 FluxosdeNegócio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.4.1 InscriçãodoUtilizadornoSistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.4.2 AutenticaçãodoUtilizadornoSistema . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.4.3 InscriçãodoEleitornoCadernoEleitoral . . . . . . . . . . . . . . . . . . . . . . . . 41
5.4.4 ValidaçãodoEleitornoCadernoEleitoral . . . . . . . . . . . . . . . . . . . . . . . . 42
5.4.5 CriaçãodeumBoletimdeVoto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.4.6 RealizaçãodoVotopeloEleitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.4.7 ProcessarcadaVotorecebido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.4.8 CalcularosResultadosdaEleição . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.4.9 Iniciar/EncerraraUrna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.5 Sumário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6 Implementação 49
6.1 ArquitecturadeSoftware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.1.1 Camada: Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.1.2 Camada: Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.1.3 Camada: Workflows-Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.1.4 Camada: Workflows-Connectors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.1.5 Camada: Workflows-Tasks-FunctionalTasks . . . . . . . . . . . . . . . . . . . . . . . 54
6.1.6 Camada: Workflows-Tasks-IOTasks . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.1.7 Camada: Workflows-Tasks-SupportTasks . . . . . . . . . . . . . . . . . . . . . . . . 55
6.1.8 Camada: Workflows-Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.1.9 Camada: Workflows-Workflows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.2 ExemplosdeCódigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.3 Sumário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
viii
Description:sempre em atenção as preferências do cliente, o que implica o aumento da complexidade dos Sistemas de Informação. A metodologia proposta consiste em aplicar a teoria de Sistemas Normalizados no desenvolvimento de um Sistema .. 6.13 Diagrama de classes em UML representando Views.