Documente Academic
Documente Profesional
Documente Cultură
CUPRINS
1.
11
15
18
2.
23
23
24
3.
27
Analizele de fezabilitate
28
30
34
34
36
38
42
44
5.1. Hardware
44
5.2. Software
45
48
6. Codificarea datelor
50
52
55
56
61
61
73
74
75
87
88
92
95
103
103
104
105
108
112
112
115
117
Bibliografie
120
Capitolul 1.
Sistemul informatic, parte componenta a sistemului informational
In contextul evolutiei tehnologiilor informationale si a comunicatiilor, nu mai exista astazi
practic domeniu de activitate care sa nu recurga la utilizarea calculatoarelor - intr-un sens foarte
restrans, sau sa nu aibe implementate diferite sisteme infornatice pentru executarea operatiunilor
de baza sau pentru sprijinirea deciziilor.
Scopul acestei discipline este insusirea metodologiilor si tehnicilor de realizare si implementare a
sistemelor informatice intr-o unitate economica.
1.1. Elemente fundamentale de teoria sistemelor
Sistemul poate fi definit ca o entitate alcatuita din doua sau mai multe componente sau
subsisteme, care interactioneaza intre ele pentru atingerea unui scop (obiectiv). Orice sistem
este caracterizat prin faptul ca este legat de mediul ambiant, ca are o anumita structura,
functioneaza dupa anumite reguli si urmareste un anumit scop.
Orice sistem se constituie din intrari, prelucrari si iesiri. Pentru o unitate economica, intrarile
sunt reprezentate de resursele economice pe care intreprinderea le utilizeaza in activitatile sale;
prelucrarile sunt procesele prin care intrarile sunt transformate in iesiri; iar iesirile sunt
reprezentate de bunurile si serviciile obtinute de intreprindere si pe care le schimba cu mediul
sau.
Exemplu. Pentru sistemul de productie dintr-o intreprindere, intrarile sunt reprezentate de
materii prime si materiale, care sunt supuse procesului de prelucrare, in urma caruia rezulta
produsele finite, ca iesiri din acest sistem.
Forma de reprezentare conventionala a sistemului este urmatoarea:
Se poate spune ca, orice subsistem de ordin superior este compus dintr-o multime de subsisteme
de ordin inferior, sau cu alte cuvinte orice sistem este un subsistem al unui sistem mai mare:
S1 < S2 < S3 . < Sn,
3
Cu cat complexitatea sistemului este mai mare, cu atat scade posibilitatea de a-l descrie mai
riguros. Oricat de independent ar fi un sistem, in realitate nu poate fi vorba decat de o
independenta relativa, deoarece el este integrat, impreuna cu celelalte sisteme, cu care se afla in
interactiune, intr-un sistem mai mare.
La studierea unui sistem trebuiesc analizate in principal urmatoarele aspecte:
obiectivul(ele) sistemului
hardware
software
personal de specialitate
bazele de date
Resurse:
materiale
financiare
umane
informatii
INTRARI
PROCESE DE
TRANSFORMARE
Iesiri:
Produse/
servicii
profit /
pierdere
IESIRI
Management
O unitate economica, poate fi privita ca un sistem cibernetic (fig.1.2.). Atunci cand se constata,
de exemplu, o scadere a volumului vanzarilor, deci o abatere de la obiectivul propus,
managementul firmei trebuie sa identifice cauzele si sa ia masurile corective necesare. Acest
lucru inseamna ca intreprinderea este un sistem cibernetic.
sistemul operational , care mai este denumit si sistemul condus sau sistemul de baza
sistemul informational
Obiective, Sarcini
Mediu
SISTEM INFORMATIONAL
Resurse
Produse, servicii
SISTEM OPERATIONAL
putem spune ca fluxul informational este compus din informatii strategice, tactice si operative.
La nivel strategic sistemul informational sprijina luarea deciziilor de catre conducere. Acestea
sunt rezultate pe termen lung, privesc intreaga activitate desfasurate in intreprindere. Informatiile
se refera la:
-
La nivel tactic, informatiile oferite de sistemul informational sprijina luarea deciziilor privind
planificarea activitatilor ce vor fi desfasurate in firma pe termen mediu.
La nivel operational sistemul informational sprijina luarea deciziilor pentru desfasurarea
activitatilor curente ale firmei, informatii referitoare la productie (stoc de materii prime,
materiale), aprovizionare cu materii prime, materiale, la desfacere, situatia mijloacelor fixe,
situatia necesarului de mijloace de plata, a obligatiilor de plata , cu termene de scadente.
Intelegerea structurii organizatorice din intreprindere este foarte imporanta in procesul
dezvoltarii unui sistem informational, intrucat acesta este grefat pe structura organizatorica a
intreprinderii. Determinarea necesarului de informatii din unitate depinde de modalitatea de
distribuire a autoritatii si responsabilitatii, realizata in functie de structura organizatorica.
Dezvoltarea economica a intreprinderilor este determinata de realizarea sistemelor informatice.
Sistemele informatice ocupa un loc din ce in ce mai important in gestiunea intreprinderilor. In
procesul conducerii sunt solicitate tot mai multe informatii care sa puna in valoare toate resursele
materiale, financiare, umane si spirituale pentru realizarea in conditii optime a obiectivelor
propuse.
Modelul traditional al fluxului informational dintr-o unitate economica se poate prezenta ca in
figura 1.4:
Conducere
Contabilitate
Desfacere
Personal
Productie
Financiar
Aprovizionare
Sistem
informational
manual
Sistem
informational
asistat de
calculator
Sistem
informational
automatizat
Sistem informatic
Din fig. 1.5 se observa ca informatizarea poate cuprinde obiectiv numai acele parti ale sistemului
informational care sunt formalizabile, prin definirea unor functii de transformare a intrarilor in
iesiri.
Analizand resursele care sunt antrenate pentru obtinerea unui scop, putem defini sistemul
informatic ca fiind un ansamblu tehnico-organizatoric de metode, procedee, echipamente de
calcul si personal de specialitate, prin care se asigura culegerea, verificarea, transmiterea,
stocarea si prelucrarea informatiilor in vederea fundamentarii si elaborarii deciziilor
Dupa cum rezulta si din definitie, putem spune ca sistemul informatic este format din
urmatoarele componente principale:
-
baza de date ansamblul datelor stocate in vederea prelucrarilor prin programele de aplicatii.
personalul intregul personal care intr-un fel sau altul folosesc sistemul informatic:
specialisti (analisti de sistem, programatori, proiectanti de sisteme, ingineri de sistem,
administratori baze de date, operatori) si nespecialisti (consultanti, utilizatori finali
beneficiari ai serviciilor oferite de sistemele informatice etc.)
10
sa fie flexibil, adica sa poata fi usor modificat la aparitia unor noi situatii
sa redea datele intr-un mod ierarhizat si rational, iar forma de prezentare sa fie accesibila si
corespunzatoare
inregistrarea datelor (prin scrierea lor din documentele sursa sau prin captarea lor sub
diferite forme cu ajutorul unor echipamente speciale)
11
clasificarea datelor implica atribuirea de coduri de identificare (cod material, simbol cont,
numar gestiune etc.) pentru ca datele sa poate fi incluse in submultimile corespunzatoare
sortarea datelor, prin care datele acumulate in loturi sunt ordonate dupa diverse criterii
calcule matematice
compararea - supune unei examinari simultane doua sau mai multe tipuri de date intre care
exista o logatura logica
In functie de metoda de culegere a datelor folosite, pentru prelucrarea datelor din tranzactii
putem avea :
- prelucrarea pe loturi (batch processing) - datelor acumulate intr-o anumita perioada, sunt
prelucrate la sfarsitul perioadei. Avantaje: utilizarea mai eficienta a resurselor informatice si un
mai bun control asupra datelor.
Dezavantaje: nu se poate obtine o informatie la zi despre activitatea intreprinderii, ca urmare a
decalajului dintre timpul de culegere si de obtinere a informatiilor. Prelucrarea pe loturi este
recomandata doar pentru acele aplicatii care nu necesita actualizarea bazei de date pe masura ce
au loc tranzactii si atunci cand sunt solicitate rapoarte doar la intervale bine definite.
12
- prelucrarea in timp real presupune prelucrarea datelor imediat dupa ce a avut loc o
tranzactie.Daca dam ca exemplu tranzactiile cu materiale, un sistem bazat pe prelucrari in timp
real preia datele privind o tranzactie (aprovizionare cu materiale) imediat ce aceasta are loc
(primirea facturii de la furnizor), le prelucreaza si actualizeaza imediat stocul acelui material. In
cazul in care conducerea solicita o informatie privind stocul unui material, ea poate fi furnizata
imediat printr-o simpla consultare a bazei de date.
Dezavantaje: necesitatea existentei a numeroase proceduri de control privind controlul
continutului bazei de date, impotriva accesului neautorizat sau a distrugerii accidentale a datelor,
lucru care inseamna implicit cheltuieli suplimentare.
O comparatie intre cele doua tipuri de prelucrari este realizata in tabelul de mai jos:
Caracteristica
Prelucrarea datelor
Prelucrarea pe loturi
Datele
colectate,
tranzactionate
grupate,
Dupa
prelucrarea
tranzactiei
Timpul de raspuns
secunde
dupa
producerea tranzactiei
actualizarea datelor
indexarea datelor
protectia datelor
13
14
SI pentru activitati speciale. SI speciale sunt destinate unor domenii specifice de activitate ca
de ex. : informarea si documentarea tehnico-stiintifica, medicina etc.
2. Din punctul de vedere al nivelului ierarhic ocupat de sistemul economic in cadrul societatii
-
SI cu organizare in fisiere
programele pot fi pastrate intr-o singura copie (pe server) si sunt folosite de oricare din
utilizatorii retelei
5. Dupa tipul software-ului folosit in scrierea programelor, putem avea sisteme informatice in
care aplicatiile au fost scrise in:
- limbaje de nivel inalt (ex. Pascal, C++, Visual Basic etc)
- limbaje orientate pe calcul tabelar (ex. Lotus, Quatro Pro, Excel etc)
- limbaje orientate pe gestiunea bazelor de date (Dbase, Foxpro, Oracle, Informix etc)
Un limbaj de programare este un sistem de conventii adoptate pentru realizarea unei comunicari
intre programator si calculator.
Un limbaj de nivel inalt manipuleaza concepte apropiate de limbajul natural, concepte de nivel
logic, cum ar fi: colectie de date, nume de operatie (open, write etc). Cu ajutorul unui limbaj
inalt, programatorul se face mai usor inteles de catre calculator. Uneori o singura linie de
program scrisa cu un astfel de limbaj, poate echivala cu sute de linii de program scrise in limbaj
masina.
Limbajele orientate pe gestiunea bazelor de date presupun posibilitatea manipularii bazele de
date cu mari dimensiuni prin intermediul conexiunilor logice stabilite. Avantajele folosirii unor
astfel de limbaje:
-
16
SI autonome - specifice unei activitati economice (aplicatii pentru rezolvarea unui pachet
omogen de lucrari)
sisteme total integrate - pentru gestionarea intregii activitatii a unei unitati economicosociale
17
Subsistem de marketing
Sistem
informatic
Subsistem financiarcontabil
Subsistem de resurse
umane
18
19
20
angajatii unitatii - vor sa cunoasca salariul mediu, ce parte din profit li se cuvine, alte
informatii non-contabile
creditorii de cele mai multe ori bancile, nu numai ca se intereseaza dar si verifica
majoritatea datelor contabile alte unitatii
Dupa criteriul circuitelor contabile putem spune ca SIC este compus din:
-
componenta cumparari-vanzari
componenta incasari-plati
componenta productie-stocuri-imobilizari
Daca vom avea in vedere criteriul etapelor procesului de productie, atunci componentele SIC
sunt:
-
aprovizionare
productie
stocuri
desfacere
terti
trezorerie
componenta capitaluri
componenta imobilizari
componenta stocuri
coponenta terti
componenta trezorerie
componenta extra-bilantiera
21
de aportul actionarilor
22
Capitolul 2.
Ciclul de viata al sistemelor informatice
Mutatiile din domeniul tehnologiilor informationale si al metodelor de abordare s-au reflectat si
in ciclul de viata al dezvoltarii sistemelor, fie prin schimbarea etapelor acestora, fie prin
modificarea opticii de parcurgere a lor.
Prin parcurgerea materialelor de specialitate, se poate constata ca numarul fazelor/etapelor
variaza de la trei (ex. : analiza, proiectare, implementare) la peste douazeci, in functie de locul
in care a fost studiata implementarea metodei respective, sau de gradul de detaliere abordat.
Indiferent de numarul si numele etapelor ciclului de viata al dezvoltarii sistemelor, o problemea
este mult mai importanta, si anume ordinea si felul in care se parcurg etapele respective, ceea ce
in literatura de specialitate se trateaza sub numele de modele ale ciclului de viata al dezvoltarii
sistemelor.
2.1. Modelul cascada
Ciclul de via
concurand pentru atingerea obiectivului final i anume realizarea unui produs program eficient.
Facilit ile acestui model sunt viabile n condi iile n care se au n vedere urmatoarele aspecte:
- orice faz s fie ncheiat prin trecerea cu succes a unor verific ri de sfr it.
- produsele realizate ntr-o faz servesc ca punct de plecare ptr. dezvolt ri ulterioare, calitatea i
exactitatea lor fiind determinate .
Schematic, acest model poate fi reprezentat ca in figura 2.2.
Concluzii:
-
23
Studiul de
fezabilitate
Validare
Analiza cerintelor planificareaValidare
Proiectarea de
ansamblu
Verificare
Proiectarea de
detaliu
Verificare
Elaborarea si
testarea
Test unitar
Implementarea
Test de sistem
Exploatarea si
intretinerea
Revalidare
24
succesiune bine definita de etape si faze care reprezinta stadii succesive de dezvoltare a
sistemului informatic.
In opinia celor mai multi autori, metodologia de proiectare si realizare a sistemelor
informatice se desfasoara prin parcurgerea urmatoarelor etape:
1. identificarea cerintelor si a fezabilitatii sistemului:
-
6. implementarea sistemului
-
25
26
Capitolul 3.
Analizele de fezabilitate
Analizele de fezabilitate au rolul de a asigura informatiile obiective necesare pentru a cunoaste
daca un proiect de realizare a unui sistem informational poate fi demarat sau nu, sau daca un
proiect deja inceput mai poate fi continuat. Proportiile si durate studiilor de fezabilitate variaza,
in functie de marimea si natura sistemului de implementat.
Echipele de studiu trebuie sa includa in structura lor reprezentanti ai conducerii, ai echipelor de
control intern, specialisti, reprezentanti ai utilizatorilor finali. Unul dintre membrii echipei va fi
manager de proiect, care raspunde de :
-
ofera unitatea conditii persoanelor care vor proiecta, implementa si exploata sistemul
propus ?
2. Fezabilitatea economica
-
justifica sistemul propus timpul, banii, alte resurse si costurile necesare pentru a fi
implementat ?
27
3. Fezabilitatea exploatarii
-
este posibil ca noul sistem sa fie utilizat de catre persoanele carora le este adresat ?
Noul sistem informatic poate sa conduca atat la schimbari formale cat si neformale.
Schimbarile formale pot afecta granitele compartimentelor si relatiilor de lucru dintre
executanti si personalul de conducere. Schimbarile neformale au o mare importanta
deoarece: fiecare sistem nou sau transformare a altuia existent are rolul de a-l imbunatati si ,
firesc de a-l face mai eficient. Cei afectati insa nu pot vedea schimbarea in acelasi fel. O
persoana va vedea schimbarea ca buna sau rea, in functie de modul cum ea este afectata.
Factorii de conducere, de exemplu, vad in schimbare ceva pozitiv, daca se concretizeaza in
cresterea profitului sau a realizarilor sau daca se reduc costurile, in timp ce un angajat poate
sa vada aceeasi schimbare ca fiind rea, daca este desfiintat postul sau sau daca are o influenta
nefasta.
4. Fezabilitatea legalitatii urmareste sa se determine daca se pot inregistra conflicte intre
sistemul propus si posibilitatea organizatiei de a nu avea anumite conflicte fata de obligatiile
legale. De asemenea, sistemul trebuie sa respecte toate statutele, deciziile, regulamentele, legile
si alte acte normative si juridice.
5. Fezabilitatea programarii, raspunde la urmatoarea intrebare :
-
ECHIPAMENTE
-
SOFTWARE
-
sisteme de operare
28
utilitare
DOCUMENTATIE
-
documentaita programelor
documentatia utilizatorilor
PERSONAL
-
consultanta
instalatii de iluminat
CHELTUIELI DE INSTALARE
-
CONVERSIA
-
testarea sistemului
exploatari paralele
instruiri
FURNITURI DE BIROU
-
formulare preimprimate
29
INTRETINERE/SIGURANTA
-
intretinere hard/soft
FINANCIAR
-
taxe legale
asigurari
taxe de consultanta
30
GESTIUNEA STOCURILOR
Nr. Nume activitate
crt.
1.
2.
3.
4.
5.
Martie
Aprilie
Mai
Iunie
2004
2004
2004
2004
Colectarea
cerintelor
Proiectare
ecrane
Proiectare
rapoarte
Proeictare baze
de date
Documnetatie
utilizator
6.
Programare
7.
Testare
8.
Instalare
31
reprezentare grafica a activitatilor unui proiect si a relatiilor dintre ele. Caracterstica esentiala a
acestui tip de diagrama este fapul ca scoate in relief ordinea in care se executa activitatile, prin
prezentarea predecesorilor si succesorilor.
Astfel, secventele de activitati ale unui proiect sunt prezentate sub forma unei retea de
sageti si noduri. Sagetile reprezinta sarcinile sau activitatile care presupun anumite resurse si un
anumit timp de executie. Nodurile retelei simbolizeaza evenimentele sau reperele proiectului,
reprezentand indeplinirea uneia sau mai multor activitati si/sau initierea uneia sau mai multora
activitati in continuare.
Unul din primele aspecte ale tehnicii PERT consta in analiza retelei prin prisma timpilor
necesari fiecarei activitati si ai proiectului in intregime.
Primul pas in aplicarea diagramelor PERT consta in determinarea tuturor actiunilor
persoanelor din proiect, dupa care se stabilesc relatiile de precedenta dintre actiuni. Aceasta
inseamna ca, daca actiunea A este urmata de B, atunci intai trebuie sa demareze actiunea A si
dupa terminarea ei se continua cu B. Unele actiuni pot avea mai multi predecesori si nu pot
incepe pana nu au fost realizate toate actiunile anterioare. Pentru fiecare activitate se estimeaza
timpul de realizare in ore, zile, saptamani sau luni. Dupa ce au fost determinate toate activitatile
si relatiile de precedenta, poate fi schitata reteaua PERT.
Dupa aceasta, se continua cu determinarea drumului critic al retelei calea activitatilor
de la evenimentul de inceput pana la cel de sfarsit care ar necesita volumul maxim de timp
consumat. Orice intarziere in executia unei actiuni este critica intrucat se reflecta imediat
asupra intregului proiect.
Nr.
crt.
1.
Denumire activitate
Colectarea
cerintelor
Start
Sfarsit
Predecesor
planificat
planificat
3,5 sapt
05/01/2004
31/01/2004
Durata
2.
Proiectare ecrane
6 sapt
01/02/2004
15/03/2004
3.
Proiectare rapoarte
6 sapt
01/02/2004
15/03/2004
3 sapt
16/03/2004
07/04/2004
2,3
5 sapt
08/04/2004
15/05/2004
4.
5.
Proiectare baze de
date
Documentatie
32
utilizator
6.
Programare
5 sapt
08/04/2004
15/05/2004
7.
Testare
3 sapt
16/05/2004
07/06/2004
8.
Instalare
1 sapt
08/06/2004
15/06/2004
5,7
Documentatie
utilizator
Proiectare
ecrane
2
6 sapt
01/02/2004
15/03/2004
Proiectare
baze de date
4
5 sapt
08/04/2004
15/05/2004
Instalare
Colectarea
cerintelor
1
15/06/2002
3 sapt
16/03/2004
07/04/2004
Programare
05/01/2003
1 sapt
08/06/2004
6
08/04/2004
5 sapt
15/05/2004
Testare
7
16/05/2004
3 sapt
07/06/2004
3,5 sapt
31/01/2003
Proiectare
rapoarte
3
01/02/2004
6 sapt
15/03/2004
Utilizarea diagramelor PERT sau Gantt este preferata in functie de aspectele urmarite :
-
Gantt evidentiaza suprapunerea unor activitati in timp, PERT nu, dar poate sa prezinte in
paralel activitatile respective
Unele forme ale diagramei Gantt vizualizeaza si diferenta de timp in cazul celui mai
timpuriu start sau al celui mai intarziat final. Diagramele PERT indica elementele
respective doar prin mentionarea datelor in interiorul dreptunghiurilor.
33
Capitolul 4.
Analiza sistemului informational existent
In general, la culegerea datelor colectivul de analiza poate intimpina doua categorii de dificultati:
-
din partea sistemului (conducatorii compartimentelor cand sunt intrebati in detaliu cu privire
la sistemul existent, impotriva aparentelor, de multe ori nu stiu sau mai curand raspund ce
cred sau cum ar vrea sa functioneze sistemul pe care il conduc).
din partea analistor din cadrul colectivului de analiza, care pot fi superficiali, slab pregatiti
profesional, fara spirit analitic, lipsiti de tenacitate etc.
In analiza unui sistemu informational contabil se utilizeaza mai multe procedee sau metode de
culegere a datelor:
- observarea directa
- studierea documentatiei existente
- participarea personala la intocmirea activitatilor
- inventarierea documentelor sistemului informational
- chestionarul
- interviul
34
Folosirea unui procedeu nu exclude folosirea concomitenta sau ulterioara si a unui alt procedeu.
Alegerea unui anumit procedeu de culegere a datelor depinde de:
-
35
Fiecare compartiment si post din organigrama este privit sub aspectul legalitatii si oportunitatii,
al sarcinilor ce-I revin, al functiilor si numarului de personal incadrat, a posibilitatilor de
perfectionare a organizarii si functionarii, avand in vedere avantajele prelucrarii automate a
datelor.
b) Studiul activitatilor si a dotarii cu tehnica de calcul vizeaza:
-
36
Analiza are menirea sa puna in evidenta gradul de automatizare a executarii lucrarilor sistemului
informational contabil, limitele mijloacelor de calcul folosite si posibilitatile de integrare a
acestora in sistemele de calcul mult mai evoluate.
c) Studiul fluxurilor informationale are ca obiective:
-
prezentarea intr-o forma grafica cat mai sugestiva, uzand de semne conventionale, a
prelucrarilor la care sunt supuse datele din documente in cadrul compartimentelor unde
circula
Informatiile pentru stabilirea volumului de date din sistemul informational contabil se culeg
odata cu studiul documentelor si al circulatiei acestora. Analiza volumului datelor se realizeaza
prin intocmirea unui tabel cuprinzand elementele cantitative de date despre fiecare document
cum ar fi:
-
denumirea documentului
frecventa intocmirii
nr. mediu de randuri completate pentru fiecare fel de document pe perioada frecventei
37
evolutia probabila a numarului mediu din fiecare fel de document in urmatorii 5 ani
38
Diagrama fluxurilor de date poate fi utilizata in doua moduri: pentru documentarea unui sistem
existent sau pentru schitarea unuia in curs de proiectare.
DFD pot fi clasificate in :
-
Diagrame de context
In practica cele mai multe produse de proiectare automata a sistemelor informatice (produsele
CASE), apeleaza la doua tehnici de construire a DFD: Gane&Sarson si Yourdon & DeMarco.
Aceste tehnici, in general, folosesc patru simboluri de baza pentru a reprezenta sistemele
informationale si anume :
Obiect
Entitate externa
Flux de date
Loc de memorare /
pastrare
Proces (prelucrare)
Simbolul
Gane & Sarson
Patrat ingrosat
Simbolul
Yourdon & DeMarco
Patrat
Sageata
Sageata
care poate
lua diverse
forme
Linii paralele
Dreptunghi
deschis
la dreapta
Dreptunghi
cu colturi
rotunjite
Cerc
a) Diagrama de context este diagrama de pe cel mai inalt nivel al sistemului informational, prin
care se descriu fluxurile datelor in si din sistem, din si spre entitatile externe sistemului analizat.
Exemplu: Descrierea activitatii de incasare a unui client
Plata
CLIENT
Depunere
Proces de
incasare
BANCA
39
Plata
CLIENT
Validare
incasari
Incasare
Depunere
Pregatire
depunere bani
Contabilizare
BANCA
Inregistrare
vanzare
Jurnal_vanzari
Dupa cum se observa, din aceasta diagrama nu putem sti cum este efectuata "plata", sub forma
de cec, bani lichizi ? etc.
c) Diagramele fluxului de date ale sistemului fizic sunt o reprezentare schematica a sistemului
prin care sunt scoase in evidenta entitatile interne si externe ale sistemului, precum si fluxul
datelor in si din aceste entitati.
O entitate interna poat fi o persoana, un loc (sectie, compartiment) sau un echipament
(calculator) din sistem cate contribuie la transformarea datelor.
Din aceasta cauza diagrama fluxului de date fizice (DFDF) specifica unde, cum si de cine este
realizat acest proces al sistemului.
40
Bani
CLIENT
Monetar +
Bani
Vanzator
Casier
Contabilitate
Jurnal_vanzari
Foaie de
varsamant +
Bani
BANCA
Registru de
casa
41
pana la 7 diagrame de nivel 1, indicand principalele functii (aplicatii) ale fiecarui subsistem
pana la 49 de diagrame de nivel 2, indicand detaliile fiecarei functii sai ale fiecarei aplicatii
Comenzi
vanzare
BANCA
Documente
de
Comenzi
aproviziona
Prelucrare stocuri
vanzari si
cunmparari de
marfuri
FURNIZORI
Date vanzari
MANAGEMENT
42
PRODUSE
Date
despre
Clienti
Comen
zi
Prelucrare
comenzi
Date vanzari
VANZARI
43
Capitolul 5
Modalitati de obtinere a hardware-ului si software-ului
Sistemul informatic cuprinde:
hardware
software
bazele de date
personal de specialitate
5.1. Hardware
(Proiecte studenti componenta unui calculator, preturi, periferice)
a) Selectarea hardware-ului
Raspunsul la intrebarea ce tip de calculator trebuie sa achizitionam ? ar fi acel calculator care
sa satisfaca toate cerintele si care sa ofere, cu un cost redus, siguranta in functionare, precum si
servicii cat mai bune si diversificate.
Progrsul tehnologic atat de rapid in acest domeniu, faca ca un sistem cumparat astazi sa devina
depasit peste doi sau cinci ani.
Cele mai comune criterii de selectarea a unui sistem de calcul pot fi:
-
cost
facilitatile de intrare/iesire
capacitatea de interconectare
intretinere usoara
garantia sistemului
restrictii de costuri
sistemul va putea fi folosit pe toata durata lui de utilizare ? va avea nevoie de modificari ?
ati utilizatori au fost multumiti de sistem ? Ce probleme au avut, ce limite au observat la el?
Cat de eficient este softul ? Cat timp ia in executie ? De cata memorie principala si secundara
ar fi nevoie ?
este un furnizor cu multa experienta si este bine consolidat pe piata ? Mai are sistme
asemanatoare instalate la alte firme?
5.2 Software
Softul necesar sistemului poate fi obtinut pe urmatoarele cai:
-
cu forte proprii
la comanda
la cheie
la cheie modificat
a) Softul realizat cu forte proprii
45
unitatea poate functiona conform solutiei dorite si nu cum este prezentata prin pachetele la
cheie
pachetele proprii sunt mult mai compatibile cu alte softu-ri existente in unitate, si deci
integrarea poate fi usor realizata
Dezavantaje:
-
softul elaborat poate sa utilizeze si componente din programele deja existente la client, prin
adaptarea, completarea si combinarea lor
realizatorul softului trebuie sa inteleaga in profunzime modul cum lucreaza unitatea, calitatea
analizei sistemului jucand un rol important in performantele softului realizat
46
c) Softul la cheie
Softul la cheie realizat de catre companii specializate de software, este vandut pe piata pentru o
mare diversitate de utilizatori cu cerinte similare. Unii producatori de soft combina softul cu
hardul si la vand ca pachete. Aceasta combinatie este numita si sistem la cheie
Producerea softului la comanda presupune o munca anevoioasa si de aceea scumpa. Ca urmare,
tot mai multe organizatii se indreapta spre pachetele la cheie, care sunt mai putin costisitoare pe
de o parte , iar pe de alta parte s-a ajuns la concluzia ca nu este cazul sa se reinventeze roata,
scriind programe care deja se comercializeaza pe piata.
Odata cu trecerea timpului, apar pachete-program tot mai performante, raspunzand cerintelor
unitatilor, ca si cand ele ar fi elaborate cu forte proprii.
Avantaje:
-
costul este mult mai redus fata de celelalte variante, deoarece costul elaborarii si intretinerii
se imparte la numerosi utilizatori
cumparatorul minimizeaza riscul prin testarea softului inainte, si prin chestionarea altor
utilizatori ai aceluiasi pachet
utilizatorul poate sa aleaga pachetul care se raspunda cel mai bine propriilor cerinte
unitatea nu are nevoie de prea multi analisti sau programatori, sau chiar nu este nevoie de ei
pentru a intretine softul.
Dezavantaje
-
exista riscul ca realizatorul softului sa dea faliment sau sa nu mai fie de gasit si astfel sa nu se
mai poate efectua actualizarea.
d) Modificarea softului la cheie
Modificarile pot fi facute de catre cel care a livrat softul si este considerata o cale foarte eficienta
de a satisface cerintele utilizatorilor.
47
Avantaje:
-
Unitatea poate lucra conform stilului pe care si-l doreste si nu cum se impune prin programul
la cheie
Pot fi mai ieftine si solicita mai putin timp decat softul realizat cu forte proprii
Dezavantaje:
-
nu de putine ori modificarea programelor este mai dificila decat scrierea lor initiala
producatori de calculatoare
48
birourile de servicii acele firme care asigura servicii de prelucrare a datelor cu propriile
echipamente contra unor tarife. Serviciile sunt mai ieftine decat daca s-ar apela la propriile
calculatoare, insa securitatea datelor nu mai este la fel de bine asigurata.
49
Capitolul 6
Codificarea datelor
Prin codificare se intelege activitatea prin care se stabileste o corespondenta biunivoca intre o
multime de elemente si o multime de simboluri astfel constituite incat sa permita identificarea
unica a elementelor, si eventual, exprimarea unor caracteristici ale acestora.
C1
P1
P2
C2
P3
C3
regulile de scriere a denumirilor sunt mult mai complexe si mai greu de respecat in
comparatie cu utilizarea unor simboluri restranse, fapt pentru care si erorile sunt cu mult mai
reduse in conditiile folosirii simbolurilor;
50
denumirile se compun dintr-un numar mai mare de caractere decat simbolurile, ocupand un
volum sporit de suport si necesitand un timp marit de prelucrare
Cerintele codificarii
1. unicitatea codului - presupune existenta unei valori unice atribuite elementului codificat
(corespondenta biunivoca).
2. stabilitatea si supletea in timp a codului - exprima necesitatea utilizarii unui tip de cod pe
toata perioada de existenta a bazei informationale, cu posibilitatea realizarii in timp a
extensiilor impuse de cresterea volumului datelor supuse codificarii.
3. comoditatea utilizarii codului - se refera la facilitatea operatiilor de codificaredecodificare precum si la detectarea si corectarea erorilor. Codurile trebuie sa fie usor se
inteles si aplicat, a.i. personalul unitatii economice beneficiare sa asimileze intr-un timp
cat mai scurt noul sistem de coduri.
4. concizia codului - se refera la necesitatea utilizarii unui numar cat mai mic de caractere
pentru reprezentarea elementelor codificate. Astfel se asigura reducerea timpului de
manipulare a codului, eliminarea eventualelor erori si folosirea eficienta a spatiului de
memorie.
Functiile codului
Prin constructia sa, codul asigura realizarea urmatoarelor functii:
1. functia de identificare - permite identificarea rapida si cu usurinta a elementului codificat
datorita unicitatii codului.
2. functia de caracterizare - asigura exprimarea intr-o forma concisa, unica si stabila in
timp, a continutului semantic a fiecarui atribut.
3. functia de manipulare a atributelor codificate - faciliteaza introducerea eficienta in
memorie a acestora, reducerea timpului de prelucrare.
4. functia de control - presupune existenta unui caracter de control care se ataseaza in
ultima pozitie din dreapta structurii codului, pe baza caruia, prin intermediul unor metode
(artimetica sau geometrica) si algoritmi specifici, sa se poata verifica corectitudinea
simbolurilor care intra in structura codurilor.
51
elementare:
-
coduri secventiale
complexe
-
coduri ierarhizate
coduri juxtapuse
numerice
alfabetice
alfanumerice
cu lungime fixa
cu lungime variabila
autodetectoare de erori
autocorectoare de erori
Codurile secventiale se formeaza prin atribuirea unii sir de caractere fiecarui element al
multimii, stabilind o corespondenta (in ordine crescatoare) intre elementele acestora si multimea
numerelor naturale. - fiecarui element supus codificarii i se asociaza un cod crescator, imediat
disponibil.
Ex. marca salariatialor: ,1410, 1411, 1412 etc.
Pentru a avea o lungime fixa a codului, este indicat a se stabili dimensiunea maxima a acestuia,
ceea ce va asigura si estimarea dimensiunii fizice a codului.
52
Codurile secventiale pe grupe sau clase se formeaza prin rezervarea unui set maxim de
simboluri pentru pentru fiecare grup de elemente caracterizat prin particularitati comune, iar in
interiorul grupelor elementele sunt codificate serial.
De exemplu, in planuri de conturi pentru conturile de stocuri si productie in curs de executie s-au
atribuit codurile 30-39, iar in cadrul acestor grupe se acorda coduri seriale pentru fiecare
element:
Clasa 3
Materii prime
301
Materiale consumabile
3011
Materiale auxiliare
3012
Combustibili
3013
3014
Piese de schimb
Codurile cu semnificatie mnemonica se formeaza fie din consoanele unui cuvant, fie prin
prescurtarea (abrevierea) denumirii elementului codificat.
De exemplu:
CIM - ciment
MBL - mobila
ALIM
- produse alimentare
IND
- produse industriale
53
Codurile complexe se folosesc pentru elementele care pot sa apartina mai multor multimi
distincte, ele fiind structurate in asa fel incat sa reflecte apartenenta multipla. In categoria
codurilor complexe sunt cuprinse codurile ierarhizate si codurile juxtapuse.
Codurile ierarhizate se utilizeaza pentru atributele pentre care exista relatii de incluziune a.i.
acestea sa poata fi reprezentate prin intermediul unei structuri arborescente.
Grupa de produse
3
Casetofoane
Televizoare
Aparate radio
Aparate video
Treapta 1
1
2
TV color
TV alb-negru
Treapta 2
2
Goldstar
Treapta 3
Samsung
Sony
Structura concreta a acestui cod ierarhizat se determina practic in functie de doi factori:
-
Ex.:
TV Samsung:
223
TV Sony
222
TV alb-negru
210
Codurile juxtapuse se utilizeaza pentru elemente ce apartin mai multor multimi si se construiesc
prin concatenarea codurilor ierarhizate si/sau a codurilor elementare.
De exemplu : la codificarea personalului unei unitati, codul va specifica: sectia, atelierul, echipa
si marca:
54
2431231
T1 T2 T3
T4
9999
sectie
-----|------|---------- atelier
-------|---------- echipa
---------- marca
Atribuirea codurilor poate fi realizata manual sau automat. Codificarea manuala este utilizata
pentru orice tip de cod, in timp ce codificarea automata se aplica numai la codurile pentru care se
poate defini un algoritm de atribuire programabil pe calculator.
55
Cc = Z
CiPi
i =1
unde:
Cc
= cifra de control
= cifra zecilor imediat superioara sumei produselor dintre cifra codului Ci si ponderea Pi
= cifra i a codului
Pi
= ponderea i
Exemplu. Fiec codul 5237, iar ponderile alese pentru calculul cifrei de control sunt 1 si 2. Cifra
de control se calculeaza astfel:
Ci
Pi
______________________________________
n
CiPi
= 5+
4+
3+
(1+4) = 17
i =1
Cc = 20 - 17 = 3
Codul complet va fi : 5 2 3 7 3
b) Metoda geometrica consta in stabilirea cifrei de control prin intermediul uneia sau mai
multor cifre obtinute ca rest al impartirii sumei dintre cifrele codului si puterile crescatoare ale
lui 2, la un numau par/impar (X), ales conventional.
Expresia de calcul este:
n
CiPi
i =1
=Q + Cc
56
unde
Q = ctul impartirii
Cc = restul mp r irii
Ci
24
23
22
21
______________________________________
90 +
16 +
12 +
14
= 132
132 : 19 = 6 rest 18
57
A = 10
G = 16
M = 22
S = 28
Y = 34
B = 11
H = 17
N = 23
T = 29
Z = 35
C = 12
I = 18
O = 24
U = 30
D = 13
J = 19
P = 25
V = 31
E = 14
K = 20
Q = 26
W = 32
F = 15
L = 21
R = 27
X = 33
Ex. 3
Structura Codului Numeric Personal
Codul Numeric Personal constituie numarul de ordine atribuit de Evidenta Populatiei unui
individ la nastere.
Conform articolului 5 din Legea nr.105 din 25 septembrie 1996 privind evidenta populatiei si
cartea de identitate, fiecarei persoane fizice i se atribuie, incepand de la nastere, un cod numeric
personal care se inscrie in actele si certificatele de stare civila si se preia in celelalte acte cu
caracter oficial, emise pe numele persoanei respective, precum si in Registrul permanent de
evidenta a populatiei.
Codul numeric personal reprezinta un numar semnificativ ce individualizeaza o persoana fizica
si constituie singurul identificator pentru toate sistemele informatice care prelucreaza date
nominale privind persoana fizica.
Gestionarea si verificarea atribuirii codului numeric personal revine Ministerului de Interne, prin
formatiunile de evidenta a populatiei.
Pentru persoanele fizice romane cu domiciliul in Romania codul de identificare fiscala este codul
numeric personal atribuit de Ministerul de Interne.Persoanele fizice straine si persoanele fizice
romane fara domiciliu in Romania vor beneficia de numar de identificare fiscala (NIF).
Un CNP este alcatuit astfel :
|S| |AA| |LL| |ZZ| |JJ| |ZZZ| |C|
|_| |__| |__| |__| |__| |___| |_|
:
59
:
--> Cifra sexului (M/F) pentru:
1/2 - cetateni romani nascuti intre 1 ian 1900 si 31 dec 1999
3/4 - cetateni romani nascuti intre 1 ian 1800 si 31 dec 1899
5/6 - cetateni romani nascuti intre 1 ian 2000 si 31 dec 2099
7/8 - rezidenti
Persoanele de cetatenie straina se identifica cu cifra "9"
60
Capitolul 7
Modelarea conceptuala a datelor
Cele mai multe metode de analiza si proiectarea a sistemelor informatice prevad urmatoarele
niveluri de abstractizare in descrierea datelor:
modelul conceptual al datelor, prin care se descriu datele asa cum sunt ele in realitate,
independent de cerintele functionale ale utilizatorilor si de cerintele de natura tehnica care
privesc stocarea si accesul la date. Modelarea datelor la acest nivel se realizeaza cu ajutorul
modelului entitate-asociere (EA) sau variante ale acestuia.
Entitatea
Atributul
Asocierea
61
Entitatea constituie unitatea functionala ireductibila din cadrul structurii bazei informationale,
reprezentata printr-un ansamblu de atribute, care are o existenta de sine statatoare si poate fi
identificata in raport cu celelalte obiecte de acelasi tip.
Exemple: angajat, produs, utilaj, client, factura etc.
ANGAJAT
Nume entitate
Nume
Prenume
Data nasterii
Salariu lunar
Atribute
Entitatea este definita printr-un nume unic, de un numar mare de realizari, de un grup de atribute,
precum si de o multime de legaturi cu alte entitati, care redau asocieri de tipul 1-1, 1-n, m-n.
Obiectele lumii reale care sunt descrise in modelul EA, pot fi simple, compozite si complexe.
Obiectele simple sunt acele obiecte carora in modelul conceptual al datelor le va corespunde cate
un tip de identitate (ex. ANGAJAT)
Ex. Reprezentarea obiectelor compozite sub forma de tipuri de entitati
BON DE CONSUM
Nr. bon
Data bon
Sectia
Gestiunea
Obiect
Cod material
Cantitate eliberata
Pret unitar
Bon de consum
Nr. bon
Data bon
Sectia
Gestiunea
Material eliberat
Cod material
Cantitate eliberata
Pret unitar
62
Obiectele compozite se caracterizeaza prin faptul ca ele contin una sau mai multe caracteristici
multivaloare si va determina ca in modelul conceptual optimizat al datelor, sa-i corespunda mai
multe tipuri de entitati (atributele multivaloare se vor regasi intr-un tip de identitate distinct)
Obiectele compuse grupeaza in structura lor obiecte simple intre care exista o anumita legatura.
Chiar daca in modelul EA initial pentru un obiect compus s-a definit un singur tip de entitate,
ulterior acesta se va descompune in tipuri de entitati de sine statatoare corespunzatoare obiectelor
elementare care intra in structura obiectului compus.
CARTE
CARTE
COTA
TITLU
EDITURA
AN APARITIE
COTA
Obiect
TITLU
EDITURA
AN APARITIE
AUTOR
NATIONALITATE
AUTOR
NUME
NATIONALITATE
Tipul de entitate CARTE definit initial, s-a descompus apoi in doua entitati de sine statatoare.
AUTOR este de fapt un obiect al problemei de modelat si lui trebuie sa-i corespunda un tip de
entitate distinct; mai mult o carte poate avea mai multi autori, deci atributul AUTOR - din tipul
entitate CARTE definit initial - este multivaloare si deci, trebuie sa se regaseasca intr-un tip de
entitate separat.
Atribut = o caracteristica sau proprietate a unei entitati.
Vasilescu
Gheorghe
Valori ale
atributelor
ENTITATEA
Ionescu
Marian
15/03/1965
7000000
Realizari ale
entitatii
ANGAJAT
Nume
Prenume
Data nasterii
Salariu lunar
Atribute
63
d.p.d.v. structural:
-
optionale - sunt atribute care pot sa nu prezinte nici o valoare in cadrul unei entitati (ex.
telefon, e_mail)
monovaloare - atribute care prezinta o singura valoare in cadrul unei entitati (ex.
nr_matricol, CNP)
multivaloare - atributele care prezinta mai multe realizari in cadrul aceleiasi entitati (ex.
functia, sectia, studii)
fiind
invariabile
in
timp
(COD_FURNIZOR,
COD_PRODUS,
COD_UM)
-
Identificatorul entitatii un atribut sau un grup de atribute care primesc valori unice pentru
fiecare realizare a entitatii respective si pot servi astfel pentru identificarea fara echivoc a
acestora.
64
Pentru simplitate se recurge frecvent la coduri, care sunt atribute construite special a.i. sa
raspunda cerintelor de identificare (ex. marca salariat).
In reprezentarea grafica, identificatorul entitatii se subliniaza:
Identificator
ANGAJAT
ANGAJAT
Marca
Nume
Prenume
Data nasterii
Salariu lunar
Nume
Prenume
Data
nasterii
Salariu lunar
Asocierea exprima legatura stabilita intre entitati si rolul pe care il joaca fiecare entitate
participanta la legatura.
CLIENT
Cod client
Nume
Adresa
0,n
1,1
EMITE
COMANDA
Nr. comanda
Data comanda
Produs
Cantitate
Fiecare entitate participanta la asociere joaca un anumit rol. Astfel, entitatea CLIENT joaca rolul
emite (clientul A emite comanda B) si entitatea COMANDA joaca rolul este emisa (comanda B
este emisa de clientul A).
Asociere
ANGAJAT
Marca
Nume
Prenume
Data nasterii
Salariu lunar
COMPARTIMENT
INCADRAT_L
A
Cod compartiment
Den compartiment
Data_incadrarii
O asociere poate prezenta unul sau mai multe atribute proprii cu rol de a caracteriza legatura
stabilita intre entitatile participante la asociere.
65
Cardinalitatea cuplului entitate-asociere reprezinta cuplul de valori intregi (x,y) astfel incat:
x (cardinalitate minimala) exprima numarul minim de realizari ale legaturii (asocierii) ce pot
exista pentru o realizare a entitatii;
Cardinalitate minimala 0 indica faptul ca pot exista realizari ale entitatii care sa nu participe la
nici o asociere.
ex. Exista clienti care nu au emis nici o comanda, si orice comanda a fost emisa de un client.
Cardinalitate minimala 1 indica faptul ca toate realizarile entitatii trebuie sa participe la o
realizare a asocierii.
CONTRIBUABIL
1,1
Cod-identificare
Nume
Adresa
1,1
ARE
ROL
Nr.rol
Data deschiderii
Orice contribuabil aflat in evidenta administratiei financiare are deschis un singur rol.
Cardinalitate maximala 1 indica faptul ca numarul de roluri deschise unui contribuabil la
administratia financiara nu poate fi mai mare de 1.
Cardinalitate maximala n indica faptul ca mai mai multe realizari ale unui anumit tip participa la
o asociere (valoarea lui n poate fi precizata).
BON CONSUM
Nr bon
Data bon
Gestiune
Sectie
1,6
CUPRINDE
0,n
Cantitate
MATERIAL
Cod material
Denumire
Unitate de masura
66
A. Restrictii de integritate
Restrictiile de integritate definesc cerintele pe care datele trebuie sa le respecte pentru a fi
coerente in raport de realitatea pe care o reflecta.
Restrictiile de integritate privesc:
-
PRODUS
DISP_LIVRARE
Nr_doc
Data_doc
1,n
CUPRINDE
0,n
Cantitate
Cod produs
Denumire
UM
Pret
TVA
Data fabricatiei
1,n
GESTIUNE
1,n
Cod_gestiune
Nume gestionar
DEPOZITA
T Stoc
Pentru acest model pot fi definite urmatoarele restrictii de integritate privitoare la realizarile
atributelor:
-
RI pot fi:
-
67
restrictii de domeniu
restrictii structurale
a) Restrictiile de domeniu sunt conditii impuse asupra ansamblului de valori acceptate pentru
un atribut in cadrul tipului sau. Restrictiile pot viza realizarilor unui/unor atribute apartinand
aceleiasi entitati sau asocieri, caz in care se numesc restrictii intraentitate sau a unui/unor
atribute apartinand unor entitati si/sau asocieri diferite, caz in care se numesc restrictii
interentitati.
Restrictiile de domeniu se pot exprima cu privire la:
1. continutul unui singur atribut al unei entitati sau asocieri:
UM = {KG, BUC}
TVA = {0,19}
Cantitate > 0
Data_doc apartine intervalului [01/01/01 - 31/12/01]
2. corelatiile ce trebuiesc sa se respecte intre valorile valorile mai multor atribute sau
asocieri:
ex. Daca Cod_gestiune=1 atunci Cod_produs = {1000,1001, 1999} (in gestiunea 1 se
stocheaza doar produsele avand codurile in multimea 1000 - 1999)
Daca cod_produs = 17 atunci UM = KG
3. corelatiile ce trebuie sa existe intre atributele apartinand mai multor entitati sau asocieri
diferite
Exemplu:
4. corelatii realizate pe baza unor valori obtinute prin operatii de sintetizare (numarare,
insumare, calculul mediei etc) a unui ansamblu de entitati.
Exemplu: valoarea medie a pretului <= 100.000
b) Restrictiile structurale se refera la identificarea entitatilor - valorile luate de identificatorul
entitatii trebuie sa fie unice si nenule
c) Restrictiile de integritate pe roluri
68
Plecand de la rolurile jucate de entitati in cadrul asocierilor, putem defini o serie de restrictii de
integritate si anume:
-
egalitate
incluziune
excluziune de roluri
Restrictia de incluziune de roluri - daca o entitate E1 joaca rolul r1 in asocierea A1, atunci va
trebui sa joace si rolul r2 in asocierea A2. Rezulta ca rolul r1 include rolul r2.
Restrictia de egalitate de roluri - presupune ca restrictia de incluziune intre roluri sa fie
reciproca.
Restrictia de ecluziune de roluri - specifica faptul ca un rol r1 jucat de o entitate E1 in asocierea
A1 exclude existenta rolului r2 jucat in asocierea A2.
B. Dependente functionale
Conceptul de dependenta functionale (DF) este fundamental in analiza structurii datelor. Studiul
dependentelor functionale stabilite intre atribute ne permite obtinerea unei reprezentari
formalizate a structurilor de date.
O dependenta functionale pune in relatie doua atribute: determinatul si determinatul.
Determinant
Determinat
Exemplu:
cod_localitate
CNP
localitate
nume_persoana
Numar_matricol
nume_student
69
Rezulta ca determinantul reprezinta atributul/grupul de atribute din stanga DF care prin valoarea
sa determina valoarea luata de atributul/atributele cu rol de determinat. DF este o legatura
(relatie) stabilita intre atributel apartinand acleluiasi tip de entitate.
Dependenta functionala simpla
Intre doua atribute A si B exista o dependenta functionala notata
A
B,
Nume
care exprima faptul ca unui angajat (identificat print-un numar de marca) ii corespunde un
singur nume. Relatia inversa:
Nume
Marca
nu este adevarata, deoarece pot exista mai multe persoane cu acelasi nume dar cu numere de
marca diferite.
Pentru un angajat mai pot fi definite si alte dependente functionate:
Marca
Prenume
Marca
Data nasterii
Marca
Functie
Pret aprovizionare
70
COD_SECT
COD_ATEL
Dezvoltarea
Daca X
Ex.
Y atunci X,Z
Cod client
Den Client
Tranzitivitate
Daca X
Ex.
Y si Y
Z, atunci X
Cod client
localitate, Localitate
Cod client
Judet
Judet
Aditivitatea
Daca X
Ex.
Den_client
Y si X
Z, atunci X
Y,Z
Cod client
Den client,
Cod client
Cod client
Adresa client
Proiectia
Daca X
Ex.
Y,Z atunci X Y si X Z
Cod client
Cod client
Den client,
Cod client
Adresa client
pret_aprovizionare
rezulta ca pretul nu depinde numai de codul materialului ci si de furnizor, acelasi material putand
fi aprovizionat la preturi diferite de la furnizori diferiti.
71
Dependenta functionala X
72
Capitolul 8
Modelarea logica a datelor
Modelarea logica a datelor are ca obiectiv trecerea de la MCD - Modelul Conceptul al Datelor,
care este un model universal, spre o solutie informatica care sa corespunda cerintelor regasite in
formulare si rapoarte.
Pentru sistemele informatice financiar contabile transpunerea bazei informationale intr-o baza de
date se asigura in cele mai bune conditii prin intermediul modelului relational.
Regulile de trecere de la MCD la MLD
1. o entitate devine o relatie, cu un nume distinct. Identificatorul entitatii devine cheie primara a
relatiei. Atributele relatiei vor deveni structura relatiei.
2. o asociere devine o legatura intre relatii. Concret, relatia provenind din entitatea pentru care
cardinalitatile sunt 1-1 "absoarbe" identificatorul celeilalte entitati, care se transforma in
cheie externa (secundara). Daca se intampla ca asocierea sa aiba proprietate specifica,
atributul respectiv este transferat si devine camp al relatiei care provine din entitatea cu
cardinalitate maxima 1.
3. o restrictie de integritate multipla devine o relatie, a carei cheie primara este constituita prin
concatenarea identificatorilor entitatilor participante la asociere. Totodata, atributele proprii
asocierii devin campuri in relatia nou determinata.
Modelul logic al datelor se poate prezenta in doua variante, si anume:
a) scriind numele relatiei, urmat de atributele sale intre paranteze; cheia primara se subliniaza
cu linie continua, iar cheia externa cu linie punctata sau se marcheaza cu semnul diez - #
Exemplu:
Factura_livrare(nrfactura, datafactura, cota_TVA, cod client ) sau
Factura_livrare(nrfactura, datafactura, cota_TVA, #cod_client)
b) grafic, utilizand pentru relatie simbolul din MCD pentru entitate, iar pentru evidenta
legaturilor linii orientate.
73
FACTURA_LIVRARE
CLIENT
nrfactura
cod_client
nume_client
sediu
datafactura
cota_TVA
cod_client
relatie (tabel),
atribut
domeniu
tuplu
valoare
cardinalitate
gradul relatiei
cheie candidata
cheie primara
cheie externa.
fiecare coloana este identificata distinct printr-un nume ce desemneaza un atribut, ale carui
realizari sunt omogene dar distincte intre ele, motiv pentru care ele se numesc domenii
la intersectia unei linii (tuplu) cu o coloana (domeniu) din tabelul asociat relatiei, se gaseste o
valoare specifica atributului
corespondetele dintre tabele (relatii) sunt asigurate in mod implicit prin intermediul cheilor
(atributelor) de legatura
74
C2
C3
C4
C5
Cheia candidata o cheie candidata este unul sau mai multe atribute care ar putea identifica
unic o realizare a unei relatii. Doua chei candidate au fost imediat identificate: C3 si C4.
O cheie primara este o cheie candidata care a fost selectata pentru a juca rolul de identificator
unic a unei realizari intr-o tabela. In exemplul nostru pot fi chei primare C3 si C4. Un rol
important in alegerea cheii primare il are contextul relatiei.
Cheile alternate sunt cheile care pot candida sa devina chei primare. Odata selectata o cheie
primara, celelalte chei candidate care au ramas devin chei alternate. Ele sunt disponibile in
dezvoltarea aplicatiei ca o alternativa in cautarea informatiei in entitati.
Cheia externa - este un atribut al unei relatii care poate lua valori egale cu ale unui atribut
declarat cheie primara intr-o alta relatie.
75
Bazele de date care nu au fost proiectate prin aplicarea regulilor de normalizare, prezinta riscul
ca in exploatarea aplicatilor sa apara diverse anomalii care, potential pot corupe datele. Pot apare
trei tipuri de anomalii:
-
anomaliile la adaugare
anomaliile la stergere
anomaliile la modificare
Anomalia de adaugare rezulta din faptul ca nu pot fi incluse noi informatii intr-o relatie
deoarece nu se cunosc si alte informatii cerute pentru adaugarea unui nou tuplu la acea
relatie, in principal valorile pentru atributele din cheie
Anomalia de stergere rezulta din faptul ca stergand un tuplu al unei relatii, odata cu
stergerea anumitor informatii se pierd si informatiile utile, existente in tuplul respectiv
Anomalia de modificare rezulta din faptul ca este dificil de modificat o valoare a unui
atribut atunci cand ea apare in mai mult decat intr-un tuplu al relatiei.
EXEMPLU
Fie relatia CAMINE, definita sa retina modul de repartizare a studentilor in cadrul caminelor:
STUDENT
CAMIN
TAXA
CAMIN
Popescu Vasile
C1
500000
Ionescu Adrian
C2
550000
Popovici Iulian
C2
550000
Andreescu George
C3
450000
anomalie la inserare:
introducerea datelor privitoare la un nou camin (de ex. C4), pentru care s-a fixat taxa
de cazare (de ex. De 600.000 lei) , nu se poate pana cand nu este repartizat primul
student in camin
Ce s-ar intampla daca vom avea inca un student cazat in caminul C2 ? Se vor
multiplica in tabel valorile pentru Student, Camin, Taxa camin, ori de cate ori va fi
cazat un student in acest camin. Acest lucru reprezinta o risipa de spatiu de memorie
si o anomalie la introducere. La fiecare nou tuplu apare o multiplicare a informatiei
existente.
76
anomalie la stergere:
anomalie la modificare:
Daca studentul Popescu Vasile se muta din caminul C1 in C3, se pierd datele despre
caminul C1
Aceasta inseamna ca relatia CAMINE nu a fost bine definita si ea trebuie supusa procesului de
normalizare.
Intuitiv, fara sa stim nimic de normalizare, putem veni cu o solutie mai buna spargand tabela in
doua, una care sa contina toate informatiile despre camin si o a doua care se contina informatiile
despre studenti:
CAMINE
Camin
Taxa camin
C1
500000
C2
550000
C3
450000
Camin
Popescu Vasile
C1
Ionescu Adrian
C2
Popovici Iulian
C2
Andreescu George
C3
77
Specializarea
Grupa
Disciplina
Data
Nota
Aelenei Catalin
Contabilitate si
531
05.02.2002
informatica de
gestiune
Aelenei Catalin
Contabilitate si
531
01.02.2002
532
10.02.2002
informatica de
gestiune
Anchidin
Contabilitate si
Lucian
informatica de
gestiune
Anchidin
Contabilitate si
Lucian
informatica de
532
01.02.2002
10
541
06.02.2002
gestiune
Ionescu Lucian
Marketing
78
Ce observam?
-
tabela contine grupuri de date care sunt redundante se repeta pentru aceeasi valoare a unui
atribut
Examen, i-l codificam tot printr-un cod cu semnificatie mnemonica si definim atributul Cod_examen
79
STUDENTI
Matricola_student
Nume_student
1670
Aelenei Catalin
1671
Anchidin Lucian
1705
Ionescu Lucian
.
SPECIALIZAREA
Cod_specializ
Specializarea
CIG
MK
Marketing
EXAMENE
Cod_examen
Examen
PSIFC
FP
Finante Publice
Cod_specializ
Grupa
Cod_examen
Profesor
Data
Nota
1670
CIG
531
PSIFC
Adam R.
05.02.2002
1670
CIG
531
FP
Simbotin S
01.02.2002
1671
CIG
532
PSIFC
Adam R.
10.02.2002
1671
CIG
532
FP
Simbotin S
01.02.2002
10
1705
MK
541
PSIFC
Adam R.
06.02.2002
- Care este cheia primara ? Cand cheia primara este formata din mai mult de un atribut se poate
spune ca acea tabela nu este normalizata
Tot nu am inlaturat redundantele. Exista grupuri care se repeta. Vom separa grupul
Cod_specializ si Grupa atasandu-l la relatia Studenti si vom obtine:
80
NOTE_EXAMENE
Matricola_student
Cod_examen
Profesor
Nota
1670
PSIFC
Adam R.
1670
FP
Simbotin S
1671
PSIFC
Adam R.
1671
FP
Simbotin S
10
Nume_student
Cod_specializ
Grupa
1670
Aelenei Catalin
CIG
531
1671
Anchidin Lucian
CIG
531
1672
CIG
532
.
Cheia primara = Matricola_student
2. O entitate este in forma normala doi (FN2) daca aceasta realizeaza proprietatile formei
normale unu si daca toate atributele non-cheie sunt dependente functional de cheia primara
Cheie primara
Atribut 1
Atribut i
dependente functionale:
81
Matricola_student
Nume_student
Cod_specializ
Entitatea NOTE_EXAMENE:
-
dependente functionale:
Matricola_student
Nota
Cod_examen
Profesor
nu pot sa introduc datele despre un profesor si disciplina pana nu exista un student care a dat
examenul
daca ar exista doar un singur student care a dat examenul la o disciplina, stergerea acestuia ar
elimina informartiile despre profesor si disciplina
Obiectivul celei de-a doua forme de normalizare este de a extrage dependentele functionale
partiale. Acest lucru conduce la descompunerea entitatii in alte doua relatii.
EXAMENE
Cod_examen
Examen
Profesor
PSIFC
Adam R.
financiar contabile
FP
Finante Publice
Simbotin S
82
NOTE_EXAMENE
Matricola_student
Cod_examen
Nota
1670
PSIFC
1670
FP
1671
PSIFC
1671
FP
10
Se observa ca anomaliile din prima forma au fost eliminate in noile relatii. In plus, prin separarea
totala a datelor despre examene decele despre studenti pot fi adaugate si sterse disciplinele de
examen, fara sa aiba legatura cu datele despre studenti.
3. o entitate ste in forma normala trei (FN3) daca aceasta realizeaza proprietatile formei
normale doi si nu contine dependente tranzitive.
Dependentele tranzitive simple apar sub forma:
Cheie_primara
Atribut_i
Atribut_k
4. O entitate este in forma normala 4 (FN4) daca aceasta realizeaza proprietatile formei
normale trei si nu contine dependente multiple
O dependenta multipla exista atunci cand pentru trei atribute A,B, C ale unei relatii avem:
pentru fiecare valoarea a lui A exista o multime bine definita de valori a lui B si alta bine
definita de valori a lui C. Multimea valorilor lui B este independenta de multimea valorilor lui
C.
83
5. Forma normala cinci (FN5) . o relatie este in FN5 daca este in forma a patra si daca din
relatiile descompuse pot fi reconstruite informatiile prin intermediul jonctiunii (intervine asa-zisa
dependenta de jonctiune si daca in urma jonctiunii se pierd tupluri atunci baza de date nu este in
FN5)
Observatie Nu in toate cazurile se impune parcurgerea tuturor etapelor de normalizare, insa
prima forma normala este obligatorie.
84
Din acest exemplu, rezulta ca unele atribute (NUME, ADRESA) ce apartineau celor doua relatii,
acum apar o singura data, inclusiv cheia primara, acesta fiind avantajul fuzionarii relatiilor.
Observatie. Fuziunea poate de conduca si la situatii prin care sa contravina celei de-a treia forme
normalizate, respectiv sa duca la aparitia dependentelor tranzitive. Adica daca avem doua relatii
, care au aceeasi chei primara A, si in care avem:
A
B si A
C, ele pot fuziona intr-o singura relatie, cu conditia sa nu existe intre atributul B
II. O a doua problema ce poate sa apara in timpul integrarii este cand avem legaturi de tip clasasubclasa. De exemplu, avem urmatoarele doua relatii:
STUDENT1 (MATRICOLA, NUME, SECTIE)
STUDENT2 (MATRICOLA, CAMERA_CAMIN)
In timp ce STUDENT1 contine atributele valabile tuturor studentilor, relatia STUDENT2
contine un atribut caracterisitic doar studentilor interni (pot exista studenti interni -cazati in
camin si externi - cazati in oras). In acest caz , ar trebui create legaturi de tip clasa si subclasa
pentru astfel de entitati:
STUDENT (MATRICOLA, NUME, SECTIE)
INTERN (MATRICOLA, CAMERA_CAMIN)
EXTERN (MATRICOLA, DOMICILIU_ORAS)
Asadar, in locul fuzionarii se creeaza chiar a trei relatie pentru a rezolva o astfle de situatie.
III. O a treia problema se iveste in cazul sinonimelor. Sinonimele intervin atunci cand doua sau
mai multe atribute au nume diferite, dar aceeasi semnificatie. De exemplu:
NR_MATRICOL
MATRICOLA
COD_STUDENT
85
Rezolvarea acestei probleme consta in folosirea unui singur nume de atribut, de ex.
MATRICOLA, sau apelarea la un alt nume , inexistent printre sinonime, uneori chiar cu un
continut diferit, dar care sa deserveasca scopului de identificare unica (de ex. CNP)
IV. A patra problema apare in cazul omonimelor. Omonimele apar cand doua sau mai multe
atribute au nume identice, insa continutul este altul. De exemplu, PRET poate sa insemne pret de
productie, pret de livrare, pret cu tva sau fara tva etc.
86
Capitolul 9
Proiectarea schemei bazei de date
Procesul de alegere a unui SGBD presupune realizarea urmatoarelor activitati:
tipurilor de aplicatii
timpului de raspuns
confidentialitatii datelor
securitatii datelor
usurintei de utilizare
portabilitatea SGBD
portabilitatea datelor.
Pentru realizarea unot programe portabile este necesar ca programele sa contina cat mai
putine elemente legate de echipament.
Portabilitatea datelor se refera la posibilitatea de a folosi o serie de date utilizate in cadrul
unui sistem informatic de catre un alt sistem informatic.
tehnicile de organizare si regasire a datelor, care sa permita un acces cat mai rapid la
orice informatie;
timpul cat mai redus pentru actualizare, cautare si raspuns la cererile de informare
87
Alegerea variantei optime a bazei de date utilizate presupune selectarea realizarii unei singure
baze de date sau a mai multora in functie de volumul datelor, complexitatea prelucrarilor si aria
geografica a sistemului informatic proiectat.
Astfel, pentru un sistem informatic pot fi avute in vedere 4 tipuri de baze de date:
- baza de date centrala sau unica pentru intregul sistem
- baze de date functionale realizate pentru fiecare functie a unitatii economice
- baze de date specifice unui compartiment functional
- baza de date combinata (distribuita) care intruneste toate caractersiticile functionale ale
celorlalte tipuri
9.1. Structura generala a bazei de date
Descrierea structurii generale a bazei de date se face prin urmatoarele faze:
a) atribuirea specificatorului bazei de date si a setului de tabele
b) descrierea campurilor specifice tabelelor
c) descrierea relatiilor dintre tabele
Atribuirea specificatorului bazei de date presupune stabilirea numelui bazei de date, a
dispozitivului si directorului unde va fi stocata (ex. C:\STUDENTI) si a numelui fiecarui tabel
din baza de date.
Din punctul de vedere al prelucrarii datelor, tabelelor se clasifica in:
-
tabele de baza
tabele intermediare
tabele statistice
tabele istorice
Tabelele de baza sunt colectiile de date ce au un continut omogen, si care reflecta stari,
caracteristici, evenimente preluate din unul sau mai multe documente primare. Ele formeaza
fondul de baza al sistemelor informationale si au un caracter permanent, in sensul ca fiecare
data are o anumita stabilitate in cadrul colectiei, in functie de existenta obiectului de
referinta.
88
Tabele de date intermediare sau de lucru - sunt obtinute pe baza unor operatii de sortare,
fuziune, selectare din una sau mai multe colectii obiect, potrivit unor cerinte furnizate de
utilizator in vederea obtinerii unor situatii.
Tabelele de date istorice au un rol de arhivare a continutului unor colectii obiect, de tranzactii
sau statistice si reflecta o stare trecuta a fenomenelor si proceselor economice. Aceste colectii
de date in sistem vor fi stocate pe suporti magnetici externi.
identificatorul
-
nu se face distinctie intre literele mari si literele mici (totusi Access stocheaza literele asa
cum au fost introduse): Marca = MARCA = marca
numeric Number care poate include mai multe tipuri: Byte, Integer, Long Integer,
Single, Double
data calendaristica Date / Time Stabilirea proprietatii Default Value = Date() face ca
Access sa introduca automat data curenta (=Now() ora si data)
memo Memo comentarii - daca limita de 255 caractere pentru un camp este
insuficiente se recomanda tipul Memo ce permite memorarea a 64 Kb (cca 16 pagini de
89
text). Campurile Memo constau numai din text, fara optiuni de formatare a textului
(italic, bold etc)
-
obiect OLE permite stocarea de documente, foi de calcul, sunete, imagini, video clipuri
Denumirea
crt.
atributului
1.
Cod material
Identificator
Tipul
COD_MAT
Lungimea
Conditii de validare
13
1000<COD_MAT<1
5000
2.
Denumire material
DEN_MAT
20
3.
Cod UM
COD_UM
4.
Cantitate
CANTIT
CANTIT > 0
90
Tabelul din partea unu a relatiei trebuie sa aiba o cheie primara, iar tabelul din partea mai
multi trebuie sa contina un camp similar. In mod normal, cheia externa trebuie sa fie de acelasi
tip si sa aiba aceeasi dimensiune ca si cheia primara.
O baza de date distribuita (BDD) este o baza de date logica dispersata fizic pe calculatoare
amplasate in locuri diferite, ce sunt conectate intre ele printr-o retea de comunicatie a datelor.
Reteaua permite utilizatorilor sa foloseasca in comun datele, a.i. un utilizator sau un program
aflat in punctul X sa aiba posibilitatea accesarii si actualizarii datelor din punctul Y. Punctele de
lucru ale sistemelor distribute pot fi dispersate la nivelul unei cladiri sau la nivelul unei zone
geografice.
Proiectarea sistemelor informatice in conditiile utilizarii bazelor de date distribuite presupune
abordarea acesteia in doua faze:
1. configurarea unei retele de calculatoare
2. organizarea bazei de date distribute
91
Server-ul prelucreaza informatii comune mai multor utilizatori, folosind sistemul de operare
al retelei, coordonand accesul la resursele partajate ai activitatea statiilor de lucru. Uzual,
serverul are resurse mai puternice decat statiile de lucru si o viteza mult mai mare de lucru.
Pe acest calculator se vor afla bazele de date si aplicatiile folosite in comun de celelalte
calculatoare ale retelei.
Retele LAN folosesc ca medii de transmisie fire torsadate, cabluri coaxiale si fibre optice.
Pe langa aceste componente exista disponibile diverse alte produse care asigura comunicatii de
tip special:
bridge se foloseste pentru a conecta doua retele intre ele permite urilizatorilor dintr-o
retea sa foloseasca resursele unei alte retele
gateway se foloseste pentru a conecta intre ele calculatoare de tipuri diferite (mainframe,
minicalculatoare, PC-uri)
92
2) Topologia stea se caracterizeaza prin existenta unui nod central de prelucrare (file server) si
a unor noduri satelit de prelucrare (Work station). Aceasta retea este utilizata in situatia
unitatilor economice al caror sistem informatic este caracterizat prin procese de centralizare a
prelucrarilor si de transmiteri de date intre baza de date centrala si bazele de date locale
93
Performantele unei retele locale se exprima prin concepte precum siguranta, disponibilitate si
functionalitate, cunoscute in litaratura de specialitate sub forma prescurtata RAS (Reliability,
Availability, Survivability). Aceste concepte se refera la : caderea unei componente a retelei sa
nu declanseze caderea intregului sistem, ci sa inregistreze doar o functionare cu performante mai
reduse.
94
Date globale centralizate - sunt plasate intr-un loc central si sunt usor de folosit, iar fiecare
nod din sistem stie unde se afla datele.
Date globale distribuite sunt plasate in mai multe locuri ale nodurilor din intreaga retea, presupune existenta unor rutine si proceduri complexe pentru accesarea/actualizarea datelor.
Functia
MARKETING
Functia
PRODUCTIE
WS <-->
Functia
COMERCIAL
WS <-->
Functia FINCONTAB
WS <-->
FS <--->
BDC
Functia
PERSONAL
WS <-->
WS <-->
95
Privite din punctul de vedere al distribuirii sistemului informatic la nivelul unei societati
comerciale, acesta poate contine componente logico-fizico-centrale:
- file server
- baza de date centrala,
- subsisteme,
- aplicatii,
- unitati functionale
- unitati de prelucrare,
precum si componente logico-fizico-locale concretizate in:
- statii de lucru,
-baze de date locale,
- subsisteme,
- unitati functionale
- unitati de prelucrare locale.
Proiectarea de sisteme informatice distribuite se realizeaza prin parcurgerea etapelor generale ale
sistemelor informatice nedistribuite (analiza sistemului existent, proiectarea generala si de
detaliu) completate cu etape specifice, detaliate in etape tehnice si functionale:
A. Etapele tehnice presupun parcurgerea a trei faze:
- proiectarea nucleului bazei de date
- proiectarea arhitecturii bazei de date distribuite
- stabilirea metodelor de acces concurent la bazele de date distribuite
B. Etapele functionale au in vedere parcurgerea unor faze specifice dintre care se mentioneaza:
- definirea performantelor sistemului informatic proiectat
- estimarea necesarului de echipamente de calcul , sisteme de operare si sisteme de gestiune a
datelor
A. Etapele tehnice
Etapele tehnice au ca obiectiv proiectarea unui nucleu al bazei de date in care sunt stocate
informatii dinspre bazele de date amplasate geografic in cadrul unui sistem distribuit, solutii
pentru proiectarea arhitecturii BDD si stabilirea metodelor de acces concurent la datele
amplasate in nodurile retelei.
96
Proiectarea arhitecturii BDD trebuie sa asigure disponibilitatea datelor pentru toti utilizatorii
SID si reducerea posibilitatii de avarie sau de eroare in cazul aparitiei unor defecte hardware sau
software.
Intrucat exista mai multe posibilitati de distribuire a bazelor de date, problema care se pune este
cea a modului in care vor fi distribuite datele pentru una sau mai multe aplicatii printre nodurile
unei retele distribuite.
In vederea realizarii acestor cerinte se poate opta pentru o baza de date distribuita, distribuita
central sau distribuita paralel.
Arhitectura bazei de date distribuite central va contine o baza de date centrala BDC unde
vor fi stocate datele din SID, dar si un numar de BDL, amplasate in compartimentele
functionale specifice nodurilor retelei de calculatoare.
Cererile emise de catre un utilizator sunt adresate initial BDL la care este conectat acesta.
Daca datele sunt stocate in BDC, are loc comutarea acestor cereri catre aceasta, cu conditia
asigurarii compatibilitatii depline a operatiilor de actualizare simultane intre BDC si BDL.
Arhitectura cu baze de date paralel distribuite contine o baza de date centrala ce reflecta
semantica si continutul fizic al bazelor dedate locale BDL cu precizarea ca accesul la BDC
este asigurat numai printr-un procesor specializat de acces (PSA)
Prin intermediul procesorului specializat de acces fiecare utilizator poate dispune de datele
din BDC, restul de prelucrari fiind asigurate ca in solutia de date distribuite central.
97
- partitionarea orizontala
- partitionarea verticala
- combinatii ale celor de mai sus
Replicarea datelor
Una dintre variantele de distribuie a unei baze de date este cea de pastrare a cate unei copii a
acesteia in fiecare nod a retelei (full replication)
Avantaje:
- siguranta daca la un nod se inregistreaza o pierdere a bazei de date sau a unei relatii, ea poate
fi oricand gasita la un alt nod
- rapiditate baza de date fiind amplasata local, interogarile vor fi onorate in scurt timp
Dezavantaje:
- cerinte suplimentare de stocare fiecare nod trebuie sa dispuna de aceeasi capacitate de
stocare ca si a unui loc central din varianta stocarii centralizate
- costul si complexitatea actualizarilor in orice moment se efectueaza o actualizare a unei
relatii, ea trebuie sa fie transmisa tuturor locurilor unde este stocata.
Replicarea totala este recomandata pentru datele supuse numai prelucrarilor de tip read-only
(citire), iar datele sunt relativ statice, cum ar fi cataloage diverse, directoare telefonice, mersul
trenurilor etc.
Partitionarea orizontala are la baza faptul ca inregistrarile unei relatii (tabele) sunt distribuite
in mai multe locuri (unele sunt plasate intr-un nod al retelei, si altele in noduri diferite).
Exemplu:
a) Relatia TELEFON pentru angajatii unei firme
---------------------------------------------------------------------------------Marca
Nume angajat
Telefon
---------------------------------------------------------------------------------101
ANCHIDIN LUCIAN
123456
102
FAGHIAN RADU
123457
103
SCORTANU RALUCA
123458
104
DRAGOMIRESCU IONUT
123459
105
PALADE DANIEL
123460
----------------------------------------------------------------------------------
98
Nume angajat
Telefon
---------------------------------------------------------------------------------101
ANCHIDIN LUCIAN
123456
105
PALADE DANIEL
123460
FAGHIAN RADU
123457
103
SCORTANU RALUCA
123458
104
DRAGOMIRESCU IONUT
123459
---------------------------------------------------------------------------------Avantaje:
- eficienta datele sunt stocate la locul folosirii lor si separat de datele altor utilizatori
- optimizare locala prin eliminarea traficului din retea, prelucrarile locale sunt executate in
timp optim
- securitate fiecare nod stie datele cu regim special
Dezavantaje:
- viteza de acces instabila daca sunt necesare date aflate in alte locuri, timpii de acces la aceste
vor fi mult mai mari in comparatie ca datele locale
- vulnerabilitatea copiilor de siguranta cat timp datele se afla intr-un singur loc, distrugerea lor
si/sau a copiilor de siguranta, provoaca mari probleme, ele nefiind dublate in alt loc.
Partitionarea verticala
Prin partitionarea verticala, unele dintre coloanele tabelei (relatiei) sunt transferate pe principii
relationale intr-un anumit loc, in timp ce alte coloane se transfera pe aceleasi principii in alt loc.
Relatiile fiecarui nod trebuie sa aiba o cheie comuna, astfel incat tabela originala sa poata fi
constituita oricand.
99
a) Relatia SALARIU
---------------------------------------------------------------------------------------------Marca
Nume agajat
Ore lucrate
Tarif_ora
Retineri
---------------------------------------------------------------------------------------------101
ANCHIDIN LUCIAN
100
11.000
100.000
102
PALADE DANIEL
110
10.000
150.000
103
TOMUSOR GHEORGHE
100
11.000
200.000
Retineri
-----------------------------------------101
100.000
102
150.000
103
200.000
Ore_lucrate
-----------------------------------------101
100
102
110
103
100
-----------------------------------------Variantele b) si c) se obtin prin SELECT-area coloanelor din tabele originala, iar obtinerea din
nou a relatiei originale se eefectueaza prin unificarea coloanelor (JOIN-ing) intr-o singura tabela.
Proiectarea unei BDD se poate face in functie de urmatoarele criterii:
- marimea unitatii beneficiare
-modul de organizare a unitatii beneficiare
-gradul de implicare al conducerii unitatii beneficiare in sistemul informatic
100
* specifce
- disponibilitate
- Toleranta la defecte
- rata coliziunilor
- modularitate
101
102
Capitolul 10
Modelul unui sistem informatic contabil integrat
10.1. Obiectivele sistemului informatic contabil integrat
Sistemul informatic contabil integrat are la baza conceptul organizarii contabilitatii in doua
circuite, aferente contabilitatii financiare si contabilitatii de gestiune interna.
Din punct de vedere structural, sistemul informatic financiar contabil integrat se compune din
urmatoarele subsisteme:
-
mijloacelor fixe, evidenta creantelor si obligatiilorr etc.), la un sistem informatic caracterizat prin
integrarea tuturor activitatilor desfasurate, astfel incat acestea sa evidentieze in mod automat
toate operatiile contabile eferente unei perioade de gestiune a unitatii economice.
Obiectivele specifice ale sistemului contabil integrat au in vedere realizarea tuturor prelucrarilor
intr-un cadru unitar, care sa conduca la cresterea gradului de prelucrare a informatiilor din baza
de date prin posibilitatile multiple de corelare si sintetizare a datelor, prelucrarea integrata a unor
operatii contabile specifice (calculul amortizarii, salariilor, decontarea costurilor de productie,
dimensionarea veniturilor etc.), inclusiv exploatarea concomitenta a tuturor aplicatiilor
informatice componente ale acestui sistem.
De asemenea, aceste obiective presupun existenta unei baze de date contabile de tip distribuit, la
care sa poata avea acces diferentiat, in functie de responsabilitatile aferente fiecarui
compartiment functional, persoanele implicate in exploatarea acestei baze de date. In acest sens
baza de date contabila va fi creata numai de utilizatori autorizati pe baza unor documente de
intrare adaptate acestui scop, urmata de prelucrarea multipla.
Realizarea completa a obiectivului general si a obiectivelor specifice presupune existenta si
functionarea unei retele locale de calculatoare la nivelul unitatii, iar in cadrul fiecarui
compartiment implicat sa existe cel putin un calculator.
10.2. Situatiile de iesire ale sistemului informatic contabil integrat
Unitatile patrimoniale conform legii contabilitatii nr. 81/91 modificata si republicata, au
obligatia:
-
inventarierea patrimoniului
104
Proiectarea sistemelor informatice financiar contabile trebuie sa aiba in vedere in primul rand
asigurarea respectarii normelor contabile privind stocarea, pastrarea si controlul datelor
inregistrate in contabilitate.
10.3. Criterii minimale privind programele informatice utilizate in domeniu financiarcontabil
Prin normele metodologice pentru intocmirea si utilizarea formularelor contabile privind
activitatea financiara si contabila, Ministerul Finantelor a stabilit ca sistemele de prelucrare
automata a datelor la nivelul fiecarei unitati patrimoniale trebuie sa asigure conditiile necesare
efectuarii controlului legal.
Astefel, la elaborarea si adaptarea programelor informatice vor fi avute in vedere urmatoarele:
a) In privinta controlului intern:
-
stabilirea tipului de suport pentru pastrarea datelor de intrare, intermediare sau de iesire
105
c) sa precizeze cu claritate sursa, continutul si apartenenta fiecarei date. Fiecare data inregistrata
in contabilitate trebuie sa se regaseasca in continutul unui document scris, la care poate avea
acces atat beneficiarii cat si organele de control
d) sa asigure listele operatiunilor efectuate pe baza de documente justificative, care sa fie
numerotate in ordine cronologica, interzicandu-se inserari, intercalari, precum si orice
eliminari sau adaugiri ulterioare
e) sa asigure reluarea automata a soldurilor conturilor obtinute anterior
f) sa asigure conservarea datelor pe o perioadade timp care sa respecte prevederile art. 25 din
Legea Contabilitatii nr. 82/1991
g) sa precizeze procedurile si suportul magnetic extern de arhivare a produselor-program, a
datelor introduse, a situatiilor financiare sau a altor documente, cu posibilitatea de reintegrare
in sistem a datelor arhivate
h) sa nu permita inserari, modificari sau eliminari de date pentru o perioada inchisa
i) sa asigura urmatoarele elemente constitutive ale inregistrarilor contabile:
-
daterea listarilor
paginarea cronologica
106
o) sa nu permita:
-
modificarea numarului de cont in cazul in care au fost inregistrate date in acel cont
suprimarea unui cont in cursul exercitiului curent sau aferent exercitiului precedent, daca
acesta contine inregistrari sau sold
editarea a doua sau mai multor documente de acelasi tip, cu acelasi numar si continut diferit
de informatii
p) sa permita suprimarea unui cont care nu are inregistrari pe parcursul a cel putin doi ani
(exercitii financiare), in mod automat sau manual
q) sa prevada in documentatia produsului informatic modul de organizare si tipul sistemului de
prelucrare:
-
retea de calculatoare
107
Capitolul 11
Securitatea si protectia informatiei
Informatia este un produs care, ca si alte importante produse rezultate din activitatea uman, are
valoare pentru o organizatie si n consecint, este necesar s fie protejat corespunztor. n pofida
unor sisteme legislative destul de bine puse la punct, furtul de informatii prin intermediul
calculatorului s-a extins foarte mult, mai ales n unele tri care detin tehnologii avansate. El
reprezint un domeniu extrem de delicat, iar pentru protectia si securitatea datelor se fac eforturi
uriase. Anual se cheltuiesc sume imense pentru prentmpinarea fraudelor pe calculator. Numai
pentru SUA unele statistici indic sume, cheltuite anual n acest scop, situate ntre 4 si 6 miliarde
de dolari.
Din punctul de vedere al securittii, informatia este caracterizat de:
- confidentialitate: caracteristic a informatiei care asigur accesibilitatea numai pentru cei
autorizati s aib acces la ea,
- integritatea: reprezint garantia acuratetii si completitudinii informatiei si a metodelor de
prelucrare a acesteia,
- disponibilitatea: reprezint asigurarea c numai utilizatorii autorizati au acces la informatii si la
produsele aferente oricnd exist o solicitare n acest sens.
Fiecare organizatie n parte si poate implementa propriul su sistem de asigurare a securittii
informatiei. Un management al securittii informatiei se realizeaz prin implementarea unui set
corespunztor de actiuni care cuprinde politici, practici, instrumente si proceduri, structuri
organizationale, precum si functii software. Toate actiunile trebuie prevzute, definite si aplicate
pentru a asigura c sunt ntrunite obiectivele specifice de securitate ale organizatiei.
Din ce n ce mai mult, organizatiile, sistemele si retelele lor informatice sunt confruntate cu
amenintarea securittii informatiilor provocate de un larg spectru de surse, incluznd frauda,
spionajul, sabotajul, vandalismul, incendiile si inundatiile. O surs comun de pericol este
reprezentat de atacurile virusilor electronici care pot provoca daune si distrugeri considerabile.
108
fraud
pe
calculator
(sustragerea
sau
alterarea
de
date,
furturi
de
servicii)
4. virusarea software-ului.
Pentru o protectie eficient este necesar s fie cunoscute si s se asigure urmtoarele elemente:
1. identificarea accesului prin reguli si relatii ntre utilizatori si resurse
2. evidenta accesului, pentru urmrirea utilizrii resurselor sistemului, precum si pentru
posibilitatea refacerii unor date n caz de distrugere
3. integritatea si confidentialitatea datelor
4. functionalitatea programelor.
Mijloacele prin care se poate asigura protectia sunt:
1. msuri organizatorice, contra distrugerii datorate catastrofelor naturale referitoare la selectia
profesional a personalului, organizarea unui sistem de control a accesului, organizarea pstrrii
si utilizrii suporturilor de informatii
2. msuri juridice, care cuprind documente normative care controleaz si reglementeaz
procesul prelucrrii si folosirii informatiei
3. mijloace informatice, constituite din programe de protectie si tehnici de criptare a
informatiei.
110
111
Capitolul 12
Exploatarea si intretinerea sistemelor informatice
Obiectivele pe care trebuie sa le realizeze implementarea unui sistem informatic fac ca momentul
punerii in functiune sa se identifice cu momentul trecerii in exploatare a sistemului. Orice
intrerupere a mentinerii in exploatare dupa momentul punerii in functiune, inseamna nereusita
acestei actiuni.
Sunt unele metodologii care recomanda punerea in functiune a noului sistem informatic in
paralel cu vechiul sistem de prelucrare a datelor. Este evident ca, in asemenea cazuri, obiectivul
urmarit nu este acela de punere in functiune, ci este acela de experimentare a noului sistem.
12.1. Implementarea sistemului informatic
Implementarea sistemului informatic proiectat depinde de modul in care beneficiarul asigura
conditiile de punere in functiune. Acesta activitate presupune:
B. Instruirea
personalului
utilizator
A. Difuzarea
instructiunilor de
executare a
procedurilor mnuale
si automate
C. Asigurarea
conditiilor
organizatorice
D.
Asigurarea
resurselor
hard
Asigurarea
conditiilor de
implementare
E. Asigurarea
fondului
informational
113
prin dotarea unitatii beneficiare cu unul sau mai multe sisteme de calcul
printr-o solutie mixta, care presupune rezolvarea unot probleme de volum mic in cadrul
unitatii, iar pentru problemele mai complexe sa se apeleze la capacitatea unei unitati de
informatica cu o dotare corespunzatoare, lucrandu-se eventual in regim de teleprelucrare.
O alta conditie este asigurarea unui spatiu corespunzator desfasurarii activitatii nucleului de
informatica, care sa permita realizarea unor lucrari de calitate, asigurarea integritatii, securitatii si
confidentialitatii fondului de date manipulat, precum si asigurarea multiplicarii documentelor
primare reproiectate in concordanta cu prevederile proiectului tehnic de detaliu, a instructiunilor
de completare si utilizare aferente.
De o deosebita importanta este de asemenea asigurarea materialelor consumabile specifice
functionarii sistemelor informatice.
E. Asigurarea fondului informational
Presupune pregatirea datelor reale si incarcarea fisierelor sau bazei de date in vederea testarii si
punerii in functiune a noului sistem, pregatire ce se face prin:
-
constituirea fisierelor sau entitatilor bazei de date, prin culegerea fondului informational
necesar si stocarea a cestuia pe purtatori tehnici de informatie. Pentru aceasta va fi necesara,
in prealabil, o ampla munca de colectare, ordonare, codificare, incarcare si validare a datelor.
preluarea partiala sau integrala a datelor dintr-o serie de fisiere deja create, cu ajutorul unor
programe de conversie a fisierelor.
Executarea procedurilor de conversie se aplica atunci cand exista deja un sistem informatic sau
aplicatii informatice in functiune, ce trebuiesc inlocuite. De asemenea, conversiile se impun
atunci cand prin realizarea si implementarea esalonata in timp a componentelor noului sistem
114
informatic, pentru realizarea legaturilor functionale dintre acestea, sunt necesare proceduri de
conversie cum ar fi: conversii de fisiere, conversii de programe sau conversii de proceduri.
12.2. Strategii de implementare a sistemelor informatice
Strategiile de implementare urmaresc gasirea celor mai adecvate cai, metode, proceduri fata de
conditiile si situatiile concrete existente, pentru realizarea obiectivelor de realizare si utilizare a
sistemelor informatice.
Dintre variantele de solutii posibile pentru punerea in functiune a unui sistem informatic, pot fi
mentionate:
a) punerea in functiune simultana a tuturor componentelor sistemului informatic si pe intreaga
lui sfera de actiune. O asemenea solutie se recomanda in cazul unor sisteme de o
complexitate mai redusa sau in cazurile cand sistemele informatice respective nu pot
functiona prin punerea in functiune esalonata a componenetelor sistemului informatic.
b) punerea in functiune simultana a tuturor componentelor sistemului informatic, dar cu
esalonarea in timp in ceea ce priveste sfera de cuprindere. Se aplica de regula la sistemele
informatice generalizabile pe un numar mai mare de unitati. Punerea in functiune a
sistemului respectiv la toate unitatile prevazute se poate esalona pe o perioada mai mare, in
funcite de numarul unitatilor si de posibilitatile de asigurare a conditiilor si resurselor
necesare.
c) punerea esalonata in functiune a componentelor sistemului informatic. Aceasta varianta se
aplica in cazul sistemelor informatice complexe, in functie de criteriile care stau la baza
stabilirii prioritatilor in esalonarea punerii in functiune a diferitelor componente a sistemului
informatic.
Perioada de esalonare a punerii in functiune a unui sistem informatic complex este
determinata intr-o mare masura de dimensiunea, calitatea si modul de alocare a resurselor
financiare, umane si materiale pentru proiectarea si darea in exploatare a acestor sisteme.
Alegerea momentului punerii in functiune
Momentul punerii in functiune a unei componente a unui sistem informatic corespunde datei
cand prima sa aplicatie informatica se da in functiune. Declansarea momentului punerii in
functiune se plaseaza in zona operatiilor de culegere, inregistrare si transmitere a datelor,
corespunzand astfel debutului ciclului de operatii tehnologice ale aplicatiei.
Momentul punerii in functiune trebuie sa corespunda cu inceputul unei perioade (ciclu)
semnificativ din activitatea unitatii respective (inceput de an calendaristic, introducerea unei noi
forme de organizare, lansarea in productie a unei noi tehnologii etc.)
115
a) Functionarea in paralel atat a sistemului manual existent cat si a sistemului proiectat cuprinde
o perioada de cca 1-3 luni in care se verifica si se compara rezultatele obtinute de sistemul de
prelucrare automata a datelor si de catre sistemul existent. Renuntarea la sistemul manual se va
face numai dupa ce intregul lant de programe a fost executat fara incidente si fara erori, de mai
multe ori.
Cu toate ca functionarea in paralel este mai dificila si mai costisitoare, implicand eforturi mai
mari, este totusi mai eficienta deoarece permite sa depisteze unele erori si anomalii de la cadrul
proiectat. Printre cauzele care conduc la aparitia erorilor se mentioneaza:
-
erori de programare
Avantaje:
-
116
organul de decizie poate folosi informatiile sistemului existent pana cand noul sistem
informatic intra definitiv in functiune
b) Experimentarea sistemului proiectat folosind date provenite din perioade precedente prezinta
aceleasi avantaje ca procedeul anterior. In plus, evita aglomerarea excesiva a personalului, in
perioadele de varf si nu are timpul de executie limitst in raport cu perioada pentru care se face
experimentarea
c) Inlocuirea imediata (directa) a sistemului existent cu cel proiectat poate fi aplicata numai in
situatii deosebite, in functie de volumul si importanta problemei, de marimea unitatii beneficare
si de masurile organizatorice intreprinse.
Etapa de implementare a sistemului informatic se finalizeaza atunci cand noul sistem
functioneaza in conformitate cu cerintele stabilite prin proiect, atunci cand se realizeaza
corelarea procedurilor manuale si automate, se completeaza corect documentele de intrare, se
obtin in timp util informatiile dorite pe toate nivelele de conducere, se atinge ritmul de
exploatare si se obtin performatenle scontate.
Etapa de implementare nu poate fi considerata incheiata daca nu se definitiveaza intreaga
documentatie a proiectului. Aceasta presupune definitivarea atat a manualelor de prezentare cat
si a celor de utilizare si exploatare. Lucru impus de necesitatea realizarii unei concordante
depline intre sistemul proiectat si documentatia sa.
12.3. Exploatarea sistemelor informatice
Activitatile de exploatare si intretinere a sistemului informatic pus in functiune, urmaresc
asigurarea realizarii continue a parametrilor tehnici, economici si functionali ai sistemului
respectiv, in concordanta cu proiectul elaborat si cu dinamica cerintelor activitatii de conducere
si operative din unitatea respectiva.
Acestor activitati le revine sarcina de realizare a exploatarii curente si a consolidarii functionarii
sistemului informatic pus in functiune pe intreaga perioada pentru care s-a preconizat a fi utilizat,
perioada care se inscrie intr-un ciclu. Acest ciclu de viata al sistemului informatic, este
determinat de frecventa perfectionarilor de fond in domeniul tehnicii de calcul, precu, si in
domeniul evolutiei produselor program. Totodata, acest ciclu corespunde si cerintelor de
perfectionare a metodelor si tehnicilor utilizate in activitatile de conducere din unitatile
economico-sociale.
Activitatile de exploatare si intretinere se pot grupa astfel:
117
activitati de exploatare
activitati de intretinere
118
situatie conflictuala intre cerinte si existente si se cere o reproiectare a intregului sistem, o trecere
evidenta la un nou ciclu de perfectionare.
Perfectionarile curente ce se cer a fi aduse sistemului informatic in functiune nu trebuie sa
afecteze solutiile tehnice si organizatorice de fond prevazute de catre proiectul initial, ci sa le
completeze, sa le perfectioneze.
119
BIBLIOGRAFIE
1. Andone I., Tugui Al., Sisteme inteligente in management, contabilitate, finante, banci si
marketing, Editura Economica, Bucuresti, 1999;
2. N stase P., s.a., Tehnologia bazelor de date: ACCESS 2000, Editura Economica, Bucuresti,
2000
3. Onete B., Sisteme informatice Elemente fundamentale,
http://www.ase.ro/biblioteca/carte2.asp?id=225&idb=24;
4. Oprea D., s.a., Sisteme Informationale pentru Afaceri, Editura Polirom, Iasi, 2002;
5. Stanciu V., s.a., Sisteme informatice financiar-monetare,
http://www.ase.ro/biblioteca/carte2.asp?id=350&idb.
120