Documente Academic
Documente Profesional
Documente Cultură
Content
Content
Introducere ......................................................................................................................................................... 6
1 Sisteme informaionale de sincronizare i organizare a fiierelor ................................................................... 8
1.1 Necesitatea sistemelor de sincronizare a fisierelor ................................................................................... 8
1.2 Sincronizarea datelor ................................................................................................................................ 8
1.3 Resursele partajate.................................................................................................................................. 10
1.4 Documentum Foundation Classes (DFC) ............................................................................................... 14
1.5 Documentum D2 .................................................................................................................................... 17
2 Descrierea funcional a aplicaiei, principalele module ............................................................................... 21
2.1 Descrierea modelului existent ................................................................................................................ 21
2.2 Necesitatea sistemului de sincronizare ................................................................................................... 21
2.3 Termeni specifici sincronizatorului ........................................................................................................ 22
2.4 Exportul entitilor ................................................................................................................................. 24
2.5 Importul entitilor ................................................................................................................................. 26
2.6 Gestionarea tergerile locale .................................................................................................................. 28
2.7 Gestionarea tergerile externe ................................................................................................................ 30
2.8 Procesul de sincronizare ......................................................................................................................... 32
2.9 Arhitectura agentului de sincronizare..................................................................................................... 33
3 Implementarea sistemului informaional de sincronizare a entitilor .......................................................... 36
3.1 Sync setul HR (Human Resources) ........................................................................................................ 36
3.1.1 Structura de foldere ......................................................................................................................... 36
3.1.2 Securitatea (grupurile i permisiunile) ............................................................................................ 37
3.1.3 Modele de date ................................................................................................................................ 38
3.1.4 Cutarea ........................................................................................................................................... 40
3.2 Strategii de implementare ....................................................................................................................... 40
3.2.1 Puncte de extindere ......................................................................................................................... 41
3.3 Adugarea unui sync set job nou la Spring Quartz ................................................................................ 46
3.4 Configurarea i implementarea sistemului informational ...................................................................... 48
3.5 Testarea produsului ................................................................................................................................ 53
3.5.1 Cutarea ........................................................................................................................................... 57
3.5.2 Cutarea avansat ............................................................................................................................ 57
3.5.3 Compararea sistemelor de sincronizare ........................................................................................... 57
3.6 Problemele aprute n timpul implementrii i soluionarea acestora .................................................... 58
3.6.1 Factori subiectivi ............................................................................................................................. 58
3.6.2 Factorii obiectivi.............................................................................................................................. 60
Concluzie.......................................................................................................................................................... 62
Bibliografie....................................................................................................................................................... 63
Introducere
Locuim ntr-o socieate n permanenta evoluie i n plin proces de adaptare i integrare n
mediul internaional. Extinderea planurilor de comunicare datorat tehnologiei avansate ne pune n
postura de a interaciona cu un volum informaional sporit, lucru care poate conduce foarte uor la
focalizarea eforturilor unei instituii aproape exclusiv pe gestionarea corecta a resurselor.
Informaia parcurge un traseu complex n interiorul societii, fiind de fapt cea mai variat
forma de schimb, ea nglobnd multiple sensuri, cu impact diferit, n funcie de perspectiva din care
este asimilat.
Competitivitatea n mediul de afaceri contemporan nseamn a controla informaia. Procesul
de comunicare a unei imagini, brand, serviciu, implic selectarea informaiei relevante, prelucrarea
i transformarea acesteia n forma finala, cea care va fi comunicat societii. Amploarea utilizrii
sistemelor informatice n mediul de afaceri contemporan se datoreaz multiplelor beneficii pe care
acestea le ofer.
Sistemele de tipul ERP (Enterprise Resource Planning), construite pe structura modulara,
integreaz o gama variata de indicatori necesari n evaluarea resurselor reale ale companiilor, cum
ar fi: gestiunea materiilor prime, a furnizorilor, dar i a aspectelor legislative, economico-financiare
i a celor de marketing.
Controlul tuturor proceselor implicate n activitatea unei firme amplific ansele de
poziionare optim n piaa de consum vizat, contribuind activ la dezvoltarea companiei. Punctul
central al demersurilor de mbuntire permanent a produselor i serviciilor l constituie
satisfacerea clientului, anticiparea dorinelor acestuia. Societatea actuala determina o ampl
diversitate n opiuni, determinat de un ritm accelerat al schimbrii. De aceea, adaptarea la
schimbare este o calitate numai n condiiile n care se realizeaz n timp util. Din considerente
induse de ritmul competiional susinut, companiile utilizeaz n prezent sisteme informatice de
tipul CRM (Customer Relationship Management). Cu ajutorul acestora putem realiza o comunicare
mult mai eficienta cu segmentul de consumatori crora ne adresam direct.
In prezent, tehnologia este factorul decisiv pentru consolidarea relaiilor inter umane datorita
atributelor sale incontestabile: circuitul informaional se integreaz intr-un mediu extrem de flexibil,
ce permite interaciunea pe multiple planuri, n timp foarte scurt.
Impactul este msurabil n definirea a doua dintre cele mai utilizate strategii de abordare a
afacerilor: B2B (Business to Business) i B2C (Business to Customer).
n era informaiei, utilizarea sistemelor de file sharing se impune deja ca un element de baz
iar pastrarea documentelor n cloud este ceva firesc. Pentru acestea, devine important s gseasc
soluii eficiente de reducere a timpului alocat unor activiti consumatoare de timp, dar lipsite de
valoare adugat.
Pstrarea n siguran a documentelor confideniale i eliminarea riscului de pierdere a
acestora sunt considerate cele mai importante beneficii asociate utilizrii documentelor n format
electronic. Alturi de acestea, accesul simultan la documentele originale reprezint, n concepia
companiilor respondente, un alt argument semnificativ n favoarea utilizrii unei arhive electronice.
Un sistem de management a coninutului ofer ordine asupra informaiei nestructurat. Un
asemenea sistem gestioneaz crearea, gestionarea, procesarea, distribuirea i arhivarea oricrui tip
de coninut n legtur cu business logica definit de utilizator. Sistemul stabilete legaturile dintre
buci de coninut, permind aceluiai coninut s fie utilizat n diferite contexte i rendiii. El
adaug inteligen, scheme categorizate la creare, i metadate care fac cutarea i extragerea mai
rapid i mai eficient. Poate automatiza procesarea contentului prin cicluri de via. Poate facilita
publicarea coninutului prin mai multe canale cum ar fi publicarea pe un site Web, transfer la fax,
printarea ca document text sau transfer ctre un dispozitiv fr cablu. Sistemele de acest tip
promoveaz integrarea ntre sisteme sau departamente care conlucreaz.
Aplicaiile pentru lucru cu coninutul sunt acele aplicaii care utilizeaz coninutul n-e
structurat cum ar fi documente, imagini, email-uri, pagini web. Rangul aplicaiilor care utilizeaz
coninut n-e structurat este foarte mare n comparaie cu aplicaiile care utilizeaz baze de date
pentru managementul datelor structurate.
fiierelor deja identice, astfel se economiseste timp considerabil n raport cu o copie manual,
de asemenea, fiind mai rapid i mai puin predispus la erori.
b) Instrumentele de control a versiunii sunt destinate pentru a face fa situaiilor n care mai
mult de un utilizator ncearc s modifice simultan acelai fiier, n timp ce sincronizatoarele
de fiiere sunt optimizate pentru situaii n cazul n care doar o singura copie a fiierului va
fi editat ntr-un moment. Din acest motiv, dei instrumentele de control a versiunii pot fi
folosit pentru sincronizarea de fiiere, pentru astfel de operaiuni se utilizeaz instrumente
dedicate.
c) Sistemele de fiiere distribuite de asemenea, pot fi utilizate deasemenea pentru a asigura
sincronizarea mai multor versiuni a unui fiier sincronizat. Acest lucru necesit n mod
normal ca dispozitivele de stocare a fiierelor s fie ntotdeauna conectate, dar unele sisteme
de fiiere distribuite ca Coda permit operarea deconectat urmat de reconcilieri. Facilitile
care fuzioneaz un sistem de fiiere distribuite sunt de obicei mai limitate dect cele ale unui
sistem de control al versiunilor, deoarece majoritatea sistemelor de fiiere nu ine un grafic
de versiunea.
d) Mirroring este o copie exact a unui set de date. Pe internet, un site oglind este o copie
exact a unui alt site de pe internet. Oglinda site-urilor sunt cel mai frecvent utilizate pentru
a oferi mai multe surse de aceeai informaie, i au o valoare deosebit ca o modalitate de a
furniza acces fiabil la volume mari de descrcri.
Sincronizarea poate fi de asemenea util n criptare pentru sincronizare ntre servere a cheilor
publice.[2]
caracterizat prin:
1. Transferul masiv n acest caz toate datele sunt transferate gramad pentru o comparaie
local.
9
presupune c aceste iruri de caractere difer cu un anumit numr de modificri (caracterul inserri,
tergeri sau modificrii). Sincronizarea datelor const n procesul de reducere i edita distana ntre
i
, la distana ideal de zero. Acest lucru se aplic n toate sincronizrile pe baz de fiiere
(n cazul n care datele sunt comandate). Multe aplicaii practice n acest sens sunt discutate sau
menionat mai sus.
Uneori este posibil de a transforma problema la una dintre datele neordonate printr-un
proces cunoscut sub numele de shingling (impartirea sirurilor de caractere n zona zoster).[2]
10
partajarea de fiiere, n timp ce dispozitive de calcul necesit uneori software suplimentare pentru
accesul la fiiere partajate.[3]
Cele mai frecvente sisteme de operare i protocoalele utilzate sunt prezentate n tabelul 1.1:
Tabelul 1.1: Sistemele de operare i protocoalele utilizate.[3]
Sistemul de operare de baza
Protocolul de aplicaie
Protocolul de transport
TCP,
Mac OS
UDP or
AppleTalk
Unix-like systems
TCP or
UDP
TCP,
MS-DOS, Windows
NCP and
SAP
TCP
Un pool de resurse este mai uor de a administra persoanele sau echipamentele atribuite
sarcinilor n mai multe fiiere ale proiectului. Resursele disponibile centralizeaz informaii despre
resurse, precum numele resursei, calendarul folosit, uniti de resurse, i tabele a ratei de cost.
"Sistemul de operare de baz" este sistemul de operare pe care protocolul de partajare a
fiierelor este cel mai frecvent utilizate.
Pe sistemul de operare Microsoft Windows, partajarea pe reea este oferita de componenta
de reea Windows "File and Printer Sharing for Microsoft Networks", utiliznd protocolul
Microsoft SMB (Server Message Block). Alte sisteme de operare, de asemenea, ar putea pune n
aplicare acest protocol; de exemplu, Samba este un server SMB care ruleaz pe sisteme de operare
Unix-like i alte sisteme de operare non-MS-DOS/non-Windows cum ar fi OpenVMS. Samba poate
fi folosit pentru a crea partajri pe retea care pot fi accesate folosind SMB, la computere care
ruleaza Microsoft Windows. O abordare alternativ este un sistem de fiiere partajate pe disc, n
cazul n care fiecare computer are acces la sistemul de fiiere "nativ" pe un disk partajat.
Acces la resursele partajate, de asemenea, pot fi implementate pe baza a Web-based
Distributed Authoring and Versioning (WebDAV).[3]
11
12
13
Unul sau mai multe locaii unde poate fi pstrat coninutul i metadatele asociate
unei companii. Metadatele se pastreaz ntr-o baz de date relaional, i
coninutul se afl pe diverse elemente de stocare.
Content
Server
Client
Software-ul care ofer interfee ntre Content Server i utilizatorii finali. Cei mai
programs
End Users
Sub aceast forma funcionalitile Documentum Foundation Classes (DFC) fac legatura
ntre Content Server i clieni. Documentum Foundation Services sunt interfeele client de baza ale
platformei Documentum. Documentum Foundation Classes sunt folosite pentru server side bussines
logic i costumizri.
DFC este bazat pe Java. Prin urmare, programele clientului care sunt bazate pe Java pot
interera direct cu DFC.
Cnd dezvoltatorii de aplicaii utilizeaz DFC, de obicei se face n cadrul modelului de
personalizare a clientului Documentum, dei este posibil de a utiliza DFC pentru a dezvolta metode
asociate cu funcionalitate a Content cum ar fi ciclurile de via al documentelor.
n mediul de aplicaii server Java, software-ul client Documentum se st la temelia oferit[ de
Web Development Kit (WDK). n mediul calculatoarelor personale Microsoft, multi clienti folosesc
Documentum Desktop, o integrare cu Windows Explorer. Fiecare dintre acesti clienti are un model
de personalizare, care permite de a fi modificat interfaa cu utilizatorul i, de asemenea, pune n
aplicare logica de afaceri. Cu toate acestea, instrumentul principal pentru adugarea de logica de
afaceri personalizate pentru un sistem de Documentum este de a utiliza Business Object Framework
(BOF).[4]
BOF permite de a incorpora regulile de afaceri i modele n elemente reutilizabile, numit
module. Cele mai importante module pentru dezvoltatorii de aplicaii sunt obiecte de tip pe baza
(TBOs) i servicii bazate pe obiecte (SBOs). BOF face posibil s se extind unele dintre clasele de
implementare DFC. Ca rezultat, poatefi introdus o nou funcionalitate n aa fel nct programele
existente sa ramna ne modificate ncepnd imediat s ofere noua funcionalitate. Aspect modulele
sunt similare cu TBO-urile, dar v permite s ataai proprietile i comportamentul pe o baz
instancebyinstance, independent de tipul de obiect.
DFC ofer un framework pentru accesarea a acestor capaciti. Folosind acest framework
codul este mult mai probabil ca sa fie utilizat pe viitor pentru si n alte arhitecturi si sisteme
Documentum.[4]
15
De exemplu, pe un server de aplicaie pentru a suporta WDK sau pentru a executa metode
de la server.
Pentru maini de client, Documentum 6 acum ofer Documentum Foundation Services
(DFS) ca suport principal pentru aplicaiile ce comunic cu platforma Documentum.
Referitor la lansare DFC pentru versiuni de suport a JVM, acestea se pot schimba de la o
versiune minor la urmtoarea.[4]
16
1.5 Documentum D2
1.5.1 D2 Client Architecture
Acest paragraf descrie arhitectura D2 UI, configurare UI-ului, componentele server
instalatepe un Documentum Content Server. Aplicaiile D2 poate fi descriese prin 3 niveluri, aa
cum este n figura 1.1.
Browser Layer
D2 este o aplicaie browser web 2.0 ca i alte aplicaii client web-based, utilizatorii finali D2
interacioneaz cu produsul prin pornirea browser-ului de dorina lor, navigarea ctre URL-ul
aplicaiei D2 i logare n aplicaie.
Cu toate acestea, exist cteva caracteristici distinctive logicii clientului D2ce trebuie
remarcate:
a) GWT/GXT based: D2 utilizeaz Sencha GXT i Google Web Toolkit (GWT) pentru a
gestiona client JavaScript. Ca urmare, marea majoritate a codului clientului este scris n Java, i
compilate n JavaScript "permutare", care este livrat la browser-ul ntr-un singur fiier mare. Ca un
rezultat, clientul JavaScript este livrat obfuscat, i nu este uor extensibil sau debuggable fr codul
surs original.
b) Single Page: ca i muli ali clienti web 2.0, D2 este ncrcat ntr-o singur pagin
HTML, i nu se pleac de la aceast pagin pn cnd nu nchidem aplicaia. Motivul principal este
faptul c de fiecare dat cnd pagina se ncrc, tot client JavaScript, de asemenea, trebuie s fie
17
interpretat i ncrcat n memoria browser-ului. Pentru o aplicatie complexa, precum D2, aceasta ia
o cantitate semnificativ de timp pentru procesor. Dar este mult mai rapid dect trecerea de la o
pagina HTML la alta, D2 manipuleaza HTML DOM pentru a elimina pri ale UI-ului i nlocuii-le
cu piese noi. Rezultatul final este c se poate menine o aplicaie mai bogat, pentru c nu este nevoie
de a reconstrui ntregul UI la fiecare navigare.
c) GWT RPC comunication: orice comunicare ntre clientul browser-ului i aplicaia D2 este
realizat prin intermediul standard-ului de cereri HTTP, i unele dintre aceste cereri sunt cereri
simple pentru resurse statice (eg. imagini, script-uri statice, CSS, etc. ). Majoritatea schimburilor
ntre client i aplicarea, sunt prin apeluri GWT RPC pentru a prelua date dinamice, de obicei,
susinute de stratul de servicii D2FS. GWT RPC este un strat triaj GWT care permite codului
generat de clientul JavaScript sa fac apeluri de procedur la distan la codul Java care ruleaz pe
server. Clienii care monitorizeaz traficul web ntre browser i serverul de aplicaii vor observa c
ncrctura util de date pentru aceste apeluri nu este nici XML nici JSON, ci mai degrab o
legtur de protocol specific pentru GWT RPC care sunt greu de analizat.[5]
metadate sau ca xml content. Tipul acesta din urm este utilizat n principal pentru a reprezenta
formele, dialoguri, e-mail template-uri sau alt continut structurat, n cazul n care un set de atribute
se repet nu este suficient pentru a reprezenta configurare.
b) D2Widget-DAR.dar include noi tipuri de configurare legate de generaie 4.x a D2 UI. De
exemplu, tipuri de configurare pentru widget-uri, machete pentru spaiu de lucru i teme, toate
acestea sunt incluse n D2Widget-DAR.dar.
c) Collaboration_Services.dar ofer tipuri i BOF module pentru capabilitile de colaborare
Documentum. D2 necesit acest fiier DAR pentru a activa capaciti comentate n clientul D2.[5]
1.5.2 D2-Config
Arhitectura pentru D2-Config client-ul de configurare care difer n mod semnificativ de cea
a clientului D2 UI. n timp ce D2-Config este, de asemenea, un client web 2.0 care ruleaz pe un
browser i un server de aplicaii, este bazat pe arhitectura mai veche D2 3.x. Mai degrab dect s
foloseasc GXT pentru a genera UI ntr-un HTML, UI este distribuit catre browser n form de
XML, iar runtime-ul D2-Config utilizeaz transformrii XSL ca s transforma acel XML n
HTML/JavaScript UI.[5]
19
20
Este necesar ca sistemul informaional s aiba grija de un set de operaiuni asupra business
obiectelor din repozitoriu:
a) Detectarea datelor noi care trebuie sa fie transferate la sistemele ndepartate;
b) Prepararea datelor pentru transfer;
c) Transferarea datelor la sistemele ndeprtate;
d) Importarea datelor n sistemele ndeprtate, aplicarea oricrei business logici necesara;
Principalele funcionaliti de care trebuie s rspund sincronizatorul sunt prezentate n
figura 2.2.
2.3.2 OfflineCopy
Pentru a sincroniza mai multe sisteme Documentum, business obiectele din baza de
documente vor fi transformate n obiecte file system pentru a fi mai comod de transferat prin
reeaua internet. Dupa aceasta urmeaz a fi importate n bazele de documente din aceste systeme.
22
2.3.4 GUID
Un business obiect care este sincronizat pe baze de documente diferite i care trebuie s
menin o proprietate pentru a evita ambiguitile.
23
Un identificator business care este unic (GUID globally unique identifier) poate fi creat
prin a face hashing la atributele care l identific unic pe un business obiect (eg. Nume, Prenume,
Cod personal al angajatului).
24
n figura 2.4 este prezentat diagrama de secven pentru cazul de extragere a entitilor din
repozitoriul local.
25
La mpachetarea entitilor procesul este gestionat de ctre un modul numit local packager
acesta este raspunztor de a cere de la alt modul numit local entity provider s returneze din
registrul local ID-urile entitilor ce trebuie mpachetate i exportate. Tot local packager are
responsabilitatea de a chema modulul de mpachetare iar dupa finisarea procesului s copie pachetul
nou creat pe folder-ul de Syncplicity care la rndul lui va face sincronizarea cu toi userii care au
dreptul de a descrca aceste obiecte i de a le sincroniza cu repozitoriul local.
este condus de un modul care este numit entity pusher i care cere la rndul su de la input entity
provider s interogheze baza de documente pentru a detecta entitile care au aprut ultimile pe
folderul de Syncplicity. Dupa detectarea acestor entii tot entity pusher este rspunztor de
nregistrarea entitilor n registrul local.
returneze din registrul local ID-urile entitilor strine care au fost nregistrate i care trebuie
despachetate. Tot local unpackager are responsabilitatea de a chema modulul de despachetare iar
dupa finisarea procesului, s importe datele care au fost preluate din reprezentarea file system n
baza de documente ca un business obiect pentru sync setului respectiv.
2.6 Gestionarea tergerile locale
Procesul de tergere local a entitilor din repozitoriu include un set de operatiuni. n figura
2.9 este reprezentat diagrama use case care explic procesul de identificare i tergere a business
obiectelor din baza de documente. Din diagram poate fi observat c tergerile locale implic cteva
operaiuni cum ar fi scanarea repozitoriului pentru a obine lista obiectelor existente n acesta.
Paralele acestui proces se scaneaz i registrul local pentru a obtine o list de entiti exportate deja.
Dup o comparare simpl a acestor liste vom gsi obiectele file system care trebuie terse din
folderul de Syncplicity.
28
n figura 2.10 este prezentat diagrama de secven pentru cazul de tergere a entitilor din
repozitoriul local.
29
La tergerea packetelor procesul este gestionat de ctre un modul numit local handler acesta
este raspunztor de cererea de la alt modul numit local entity provider s returneze din registrul
local ID-urile entitilor strine care au fost nregistrate i care trebuie terse. Tot local handler are
responsabilitatea de a chema modulul de tergere a pachetelor de pe file system.
2.7 Gestionarea tergerile externe
Procesul de tergere a entitilor externe de pe file system include un set de operatiuni. n
figura 2.12 este reprezentat diagrama use case care explic procesul de tergere a business
obiectelor care au fost terse din alte repozitorii. Din diagram poate fi observat c tergerea
depinde de cteva operaiuni cum ar fi scanarea folderului offline pentru a obine lista obiectelor
existente pe file system. Paralele acestui proces se scaneaz i registrul local pentru a obtine o list
de entii importate deja. n urma unei comparri simple ntre aceste liste vom gsi obiectele care
trebuie terse.
plasare este condus de un modul care este numit entity pusher i care cere la rndul su de la input
entity provider s interogheze baza de documente pentru a detecta entitile care au fost terse din
folderul de Syncplicity. Dupa detectarea acestor entiti tot entity pusher este rspunztor de
nregistrarea entitilor n registrul local.
handler are responsabilitatea de a chema modulul de tergere iar dupa finisarea procesului s
verifice dac business obiectele au fost terse.
32
35
cratim de GHRS_ID-ul angajatului. n interior sunt documentele angajatului care pot fi de tip CAR
sau CAR attachment.
n figura 3.2 este prezentat un exemplu de cum ar trebui s arate o structur de foldere cu date
reale.
Permision
dm_world
None
dm_owner
Delete
hr_admins
Delete
hr_writers
Write
hr_readers
Read
a) "hr_admins" acest profil este destinat pentru a acorda utilizatorilor drepturi de "Delete" pe
toate obiectele i de s permite operaiuni de ntreinere i tergere;
b) "hr_writers" acest profil permite utilizatorilor drepturile de a efectua operaiuni de ncrca
documente, de a efectua pe ntreg spaiu de lucru;
37
c) "hr_readers" acest profil acord utilizatorilor drepturi de "citire" pe oricare dintre folderele
aflate n spaiu de lucru;
Employee folder
Atunci cnd un CAR este ncrcat n D2, sistemul trebuie s creeze directoriul angajatului cu
urmtoarele proprieti recuperate n timpul importului:
Numele obiectului: spm_hr_employee
Motenete de la : dm_folder
i are urmtoarele atribute custom:
Tabela 3.2: Atributele pentru employee folder.
Name
Type
Size
Repeating
Requied
Comments
employee_code
String
32
GHRS ID
employee_name
String
100
a) " employee_name " este un string, ne null, care permite repetri cu o lungime maxim de
100 de caractere care stocheaz informaii despre numele i prenumele angajatului;
b) " employee_code " este un string, ne null, unic cu o lungime maxim de 32 de caractere care
este un identificator unic a angajatului ;
c) "Folder name" este un string, ne null, care se completeaz automat de ctre D2 dupa
modelul "employee_name employee_code");
38
Type
Size
Repeating
Required
Comments
employee_code
String
32
GHRS ID
car_id
String
32
Generated by D2?
employee_name
String
100
job_title
String
50
job_role
String
50
company_role
String
50
creation_date
Time
operator_name
String
32
a) "employee_name " este un string, ne null, care permite repetri cu o lungime maxim de
100 de caractere care stocheaz informaii despre numele i prenumele angajatului;
d) employee_code este un string, ne null, unic cu o lungime maxim de 32 de caractere
care este un identificator unic a angajatului;
b) job_title este un string read only ne null care are o lungime maxim de 50 de carcatere
i este destinat pstrrii titlului angajatul;
c) car_ideste un string, ne null, unic care nu poate s se repete i cu o lungime nu mai
mare de 32 de caractere care se seteaz automat de ctre sistem i specific un
identificator pentru documentul asociat unui angajat;
d) job_role este un string read only ne null care are o lungime maxim de 50 de carcatere
i este destinat pstrrii rolului pe care l are angajatul;
e) company_role
f) creation_date este o variabil de tip dat care automat se seteaz la importarea
documentelor;
g) operator_name este un string cu o lungime maxim de 32 de caractere i este setat
automat cu numele utilizatorului care a incrcat CAR-ul;
Un document CAR va fi importat automat i salvat sub folderul angajatului dorit dup
valoarea employee_code care este setat de ctre utilizatori n timpul procesului de import.
Motenete de la : spm_hr_car
Documentele de tip CAR attachment au nevoie doar de proprietile pe care le mostentes de la
super clas, ele nu au atribute proprii costumizate:
Un document CAR attachment va fi automat importat n docbase i salvat sub folderul
angajatului cruia i corespunde, raportnd la valorea car_id care este setat n timpul procedurii de
import. Deasemenea aceste documente trebuie s fie relaionate cu documentele de baz CAR prin
atributul car_id.
3.1.4 Cutarea
CAR-urile i documentele anexate trebuie s fie cutate prin intermediul instrumentelor de
cutare oferite de D2, n funcie de formele de cutare predefinite, n special sistemul trebuie s
ofere posibilitatea de a cuta rapid toate documentele pentru un anumit angajat. De asemenea,
utilizatorii ar trebui s poat cuta un document CAR specificnd numele angajatului sau codul
personal.
DFC
Pentru executarea interogrilor i a lucrului cu baza de documente a fost utilizat Documentum
Foundation Classes. Acestea includ un set de biblioteci destinate lucrului cu bazele de date
documentum.
Java SE
Codul core-ului este scris n Java SE i n rezultat se obine o aplicaie consol.
42
4. Marshal service
n figura 3.6 este reprezentat diagrama de clase pentru modulul marshal service. Acest modul
este destinat pentru conversia pachetelor offline n business obiecte i a business obiectelor n
pachete offline. Pentru a face aceast lucru, serviciul de marshaling parseaz fiierul xml pentru a
restabili business obiectele utiliznd JAXB sau creaz fiierul xml dintr-un business obiect existent.
Pentru a extinde acest modul putem s implementm interfaa IEntityMarshalService sau s
extindem clasa abstract AbstractMarshalService.
43
n figura 3.8 este prezentat diagrama de clase a sincronizatorului cu toate modulele de baz
i punctele de extindere. Diagrama respectiv este destinat prezentrii dependenelor ntre module.
Clasele prezentate cu alb sunt clase de baz alctuite din interfee i clase abstracte. Clasele
colorate cu sur sunt implementri de baz a modulelor definite. Cu culoare albastr sunt
implementrile concrete pentru plugin-ul HR.
n figura 3.9 este prezentat diagrama de componente a sistemului informaional. Aici sunt
artate cele componentele de baz pe care le utilizeaz sistemul i dependea ntre acestea. Dup
cum se vede din imagine aplicaia este separat n dou pari. Una este D2 care constituie o interfa
de lucru cu utilizatorul unde documentele pot fi create, citite sau modificate i partea a doua care
este serviciul de sincronizare ce se ocup de detectarea obiectelor create de utilizator sau a celor
venite din exterior. Acest lucru se face prin scanarea bazei de documente i a folderului offline de
syncplicity
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="jobDetails">
<list> <ref bean="testQuartzJob" />
</list>
</property>
<property name="triggers">
<list> <ref bean="testTrigger " />
</list>
</property>
</bean>
Pentru a crea matricea de configurare D2, este necesar de creat unu sau mai multe contexte.
Pentru aceasta selectm File->New->Context. n figura 3.17 putem vedea pagina de creare a unui
context nou. Pentru configurarea contextului este suficient de adugat un nume pentru acesta i tipul
asupra cruia se aplic, n cazul respectiv vom crea un context pentru tipul spm_hr_employee.
48
n fugara 3.19 este prezentat pagina de auto linking pentru documentele CAR. n ablonul
descris se specific folderul n care va fi creat documentul. Aceast regula se aplica la importarea
documentului n docbase i nainte de a crea documentul, D2 va lua valorile de pe atributele
obiectului i va crea automat calea unde s il linkeze.
50
51
Dup logare se va deschide interfaa aplicaiei D2 care este asemnatoare celei din figura 3.28
unde este deschis cabinetul Human Resources ce contine mai multe entiti de test care au fost create
pentru testarea rezistenei acesteia la volume mari de date.
ncepe cu selectarea din meniul cu tipuri a CAR documentelor. Dup selectare trebuie apsat
butonul Edit Properties pentru a trece la urmtorul pas unde se vor edita propriettile acestui
document.
56
3.5.1 Cutarea
n modulul de cutare care poate fi gsit pe partea dreapt a interfeei cu utilizatorul din
aplicaia D2 selectm Public Searches de unde vom avea acces la urmtoarele optiuni:
a) Cutarea de CAR-uri: este posibil de a cuta CAR documente n legtur cu criteriile
definite, prin completarea unei forme de cutare cu cele mai importante atribute a CAR
documentelor.
b) Cutarea Documentelor pentru un angajat: este posibil de a cuta toate documentele
pentru un anumit angajat, prin completarea simpl a unei forme de interogare cu numele angajatului
sau cu GUID-ul personal.
3.5.2 Cutarea avansat
D2 ofer o funcionalitate de cutare avansat, acest instrument permite efectuarea cutrilor
pe atribute i pe coninut (cu excepia imaginilor i a pdf-urilor care nu sunt scanate) a tuturor
obiectelor salvate n sistem. Forma de cutare este foarte util pentru cutarea de definiii a
criteriilor care este mult mai complex i mai puternic dect cutarea predefinit prin forme de
interogare care au fost descrise mai nainte, sau dect cutarea standart. Figura 3.36 demostreaz
cum trebuie de lansat o cutare avansat.
Factor de conducere
Factorul de conducere - este cel mai important, lipsa de voin a conducerii instituiei poate
duce la urmri de diferit nivel de graviditate. De obicei n acest caz sistemul este implementat
59
numai n unele subdiviziuni, doar la unele niveluri, sau pentru unele clase de procese
de
colaboratori din diferite locaii ale globului care s fie capabil s fac ca de exemplu: nlturarea sau
adugarea unor documente n interiorul business obiectului, economisirea locului pe disc din contul
migraiei documentelor nvechite pe alte suporturi mai ieftine etc. La etape mult mai avansate se
poate de nceput formalizarea circulaiei documentelor in acele desprituri, care sau utilizat
maximal. Prin calea indicat este foarte important de gsit compania partener pentru implementarea
sistemului, care s fie orientat spre lucru pe termen lung, dar nu pentru un contract de moment cu
pre maximal. n afar de aceasta, sistemul ales trebuie sa fie modular, care sa permit creterea
funcionalitii n procesul de exploatare.
Lipsa sistemului de sincronizare a entitilor
Ce e de fcut daca ntr-o organizaie lipsete sistemului de sincronizare a entitilor? n
aceast situaie sunt de asemenea avantaje. n primul rnd este lipsa necesitii de a instrui pe
cineva. n afar de asta, este o condiie prealabil obiectiv spre ceea de a convinge conducerea de a
utiliza un sistem de sincronizare a documentelor. Se nelege c, dac dumneavoastr propunei sa
aleag: s continue cu modelul nvechit pe hirtii, sau s utilizeze un sistem modern de sincronizare
a entitilor, cel mai mult probabil este c vor alege ultima variant. Problema cea mai important se
rezuma la aceea c, daca organizaia e mare i nu are nici un sistem de sincronizare a entitilor,
atunci n ea ntotdeauna apar o groaza de probleme, i conducerea nu ntotdeauna nelege, ca
rdcinile lor se gsesc n lipsa unei scheme de conducere a organizaiei. In rezultat asupra
conducerii ntotdeauna sunt ncrcai cu o mulime de probleme i lor nu le este de un oarecare
sistem de gestiune a documentelor. Aceast situaie este foarte grea, dar, dup cum arat
experiena, nu ntotdeauna fr speran.
Soluia n aceste cazuri este simpl. E nevoie de a crea un proiect pilot. Pentru aceasta este
nevoie de analizat lucrul organizaiei si de gsit problemele, care ndeosebi sufer din cauza lipsei
unui sistem de gestiune a documentelor. Apoi, dup ce proiectul pilot a fost cu succes implementat
i avei susinerea din partea conductorilor de departamente, problemele crora au fost soluionate
(fii ateni, nu dumneavoastr le-ai gsit, dar ei, datorit implementrii sistemului), se poate cu
siguran de insistat asupra petrecerii ntrunirilor la aceasta tem. Cnd este sigur cunoscut ce e de
fcut, este desigur satisfacie n lucrul cu sistema din partea efilor de departamente, i e fcut un
calcul rezonabil a cheltuielilor efectuate pentru implementarea sistemei n ntregime pentru
organizaie, chiar i o conducere foarte ocupat va gsi timp pentru luarea deciziilor. Conductorilor
le este ntotdeauna plcut sa participe la ntruniri care se petrec sub tema de raportare a succeselor,
i e simplu de susinut nceputul, care dup cum lor le pare au destui adepi, aceasta nsemn, ca se
va realiza fr eforturi prea mari din partea conductorului.
61
Concluzie
62
Bibliografie
1.
A. Tridgell (February 1999). Efficient algorithms for sorting and synchronization. The
Australian National University. [http://www.samba.org/~tridge/phd_thesis.pdf]
2.
3.
4.
5.
architecture.pdf
63