Rezultaul final la
Sisteme informatice economice 12 februarie 2012

Daca aveti neclaritati scrieti urgent la adresa ionivan.ro cu subiectul
UCVEXAMEN2012 nume si prenume student

afisat azi 13 februarie 2012 ora 10,00


Imi exprim optiunea de a pastra legatura cu voi.
Sunt in retelele LINKEDIN si FACEBOOK.
Sunt interesat in aspecte practice, teoretice
si metode moderne de dezvoltare software

Realizare articol:
- alegere titlu
- construire abstract
- structurare pe capitole
  • definire problema
  • prezentare solutie proprie
  • rezolvarea originala
  • rezultate experimentale
  • comparare cu ceea ce exista
  • concluzii - includerea bibliografiei citite numai daca lucrarile au fost citate
  • max. 150 puncte

    La urmatoarea intalnire sa aveti clara problema ce vreti sa includeti in articol; preferabil este sa fie ceva cu care va ocupati, ceva despre care ati citit despre care cunoasteti detalii.

    Punctajele la teme din 18, 19, 20 nov.2011
    Punctajele la teme 26, 27 nov.2011

    Pentru orice neclaritati legate de punctaje din 26 si 27 nov. scrieti la adresa ionivan@ase.ro
    cu subiectul:
    UCVPUNCTAJ2627 numesiprenumestudent
    Tema 001 - trei argumente pentru cresterea gradului 18 nov. 2011
    Tema 002 - calcul complexitate formul volum 19 nov. 2011
    Tema 003 - complexitate structura arborescenta 19 nov. 2011
    Tema 004 - indicator agregat 19 nov. 2011
    Tema 005 - proprietati indicator I(x)=ax*x+b*x+c 19 nov. 2011
    Tema 006 - lista cuvinte cheie 20 nov. 2011
    Tema 007 - graf GANTT 27 nov. 2011
    Tema 008 - moment optim corectie 26 nov. 2011
    Tema 009 - matrice de precedente in doua variante 26 nov. 2011

    PUNCTE

    SEMNIFICATIE

    100

    PUNCTE DIN OFICIU

    maxim 450

    maxim 150 puncte activitate curs + seminarii
    maxim 150 puncte articol
    150 puncte daca articolul este publicat
    70 puncte daca articolul este evaluat si acceptat de revista
    20 puncte daca articolul este evaluat si trebuie retusat pentru a fi publicat
    5 puncte daca articolul este adus in ziua examenului tiparit de catre student
    maxim 150 puncte pentru proiect
    proiect

    maxim 450 lucrare scrisa examen

    Se vor propune 3 subiecte, fiecare fiind punctat cu maxim 150.
    Fiecare subiect este astfel construit incat fiecare student sa dea raspunsuri folosind solutiile date in proiectul elaborat de el.
    Se urmareste capacitatea studentului de a analiza, argumenta si interpreta modul in care a gandit calitatea produsului software elaborat de el sa a site-urilor cu care a lucrat sau a programelor folosit ca simplu utilizator.

    TOTAL 1000

    Este necesar sa aveti proiect, articol, sa dati examenul scris si daca ajungeti la scoala, sa faceti si temele solicitate


    ELABORARE ARTICOL PUBLICABIL

    Alegere tema

    Are foarte mare legatura cu preocuparile fiecaruia, pentru ca articolul trebuie sa fie o constructie solida, documentata si toate afirmatiile trebuie demonstrate si exemplificate prin ceea ce experienta fiecaruia permite.
    Daca am elaborat programe de sortare sau am lucrat cu programe de sortare, ma gandesc sa scriu un articol despre acestea.

    Stabilire cuvinte cheie

    Trebuie alese 5,6 cuvinte chee care sa defineasca ceea ce vreti sa faceti.
    Cuvintele cheie vor fi:
    sortare
    performanta
    analiza
    testare
    algoritmi.

    Elaborare abstract

    Este necesar sa aveti in minte 7-10 propozitii din care sa rezulte clar pasii pe care ii parcurgeti in dezvoltarea articolului.
    Este o constructie logica.
    Nimeni nu a coborat din tren la Brasov daca nu s-a urcat in el intr-o gara.
    Se descriu algoritmi de sortare.
    Se prezinta proceduri care implementeaza acesti algoritmi.,br> Se constituie un set de date de test.
    Se efectueaza masuratori.
    Se calculeaza durate si se estimeaza performante.
    Se ierarhizeaza procedurile in raport cu stabilitatea.

    Stabilire titlu

    titlul trebuie sa fie cat mai scurt sa nun contina cuvinte inutile.
    Trebuie sa precizeze ce faceti si despre ce vorbiti.
    ANALIZA COMPARATA A ALGORITMILOR DE SORTARE.

    Elaborare articol

    Se construieste mai intai un schelet al articolului pornind de la abstract.
    ANALIZA COMPARATA A ALGORITMILOR DE SORTARE
    (abstract)
    Se descriu algoritmi de sortare.
    Se prezinta proceduri care implementeaza acesti algoritmi.,br> Se constituie un set de date de test.
    Se efectueaza masuratori.
    Se calculeaza durate si se estimeaza performante.
    Se ierarhizeaza procedurile in raport cu stabilitatea.

    1. Algoritmi de sortare

    ...........algoritmul 1.........
    ...........algoritmul 2.........
    .................
    ...........algoritmul i.........
    ........................
    ...........algoritmul n.........
    Se va face o diagrama.
    Se vor descrie pasii.
    Se ia un exemplu si se arata cum se face sortarea pentru a vedea diferentele.
    Se dau elemente de performanta pentru a face diferenta dintre algoritmi.
    Se spune cand e bine si cand nu e bine sa se foloseasca un algoritm.

    2. Proceduri de sortare

    Procedurile implemenetaza toti algoritmii de sortare.
    Ele sunt realizate respectand cerintele:
    - toate sunt scrise in limbajul C++
    - toate procedurile executa atat sortare crescatoare cat si sortare descrescatoare, avand acelasi mecanism de selectie a tipoului de sortare implementat
    - au ca parametri de intrare nr componente, sirul de sortat, iar ca rezultat sirul sortat
    - returneaza numarul de interschimburi.
    textul procedurii de sortare care implementeaza algoritmul i este:
    int procedura_i (int numar, int sir_initial[], int sir_sortat[])
    {
    .........................
    ...........textul sursa..
    .........................
    return(numar_interschimburi);
    }
    se scriu toate procedurile si se face o analiza a lor referitoare la ce executa secventele si cum s-a asigurat ca prin program nu se altereaxza performanta algoritmului
    Complexitatea procedurilor este data in tabelul 1.
    ...............se face un tabel cu coloane si n linii.
    - coloana 1 contine nume algoritm
    - coloana 2 contine numar linii text sursa
    - coloana 3 contine complexitatea ciclomatica
    - coloana 4 contine complexitatea Halstead.
    se fac comentarii legate de diferentele care apar.
    se calculeaza coeficientii de corelatie intre coloanele 2 si 3 , 2 si 4, respectiv 3si 4 si se analizeaza valorile obtinute.
    3. Testarea procedurilor de sortare

    Pentru a vedea performanta algoritmilor se procedeaza astfel:
    - se constituie K seturi de date de test
    - se definesc ipoteze de trestare
    - folosind aceleasi seturi de date de test se inregistreaza comportamentul procedurilor care implementeaza algoritmii.
    Analiza comparata presupune ca toate procedurile sa se execute in aceleasi conditii si datele de intrare sa fie identice.
    Seturile de date de test includ ipotezele urmatoare:
    - se construiesc siruri de date pentru a vedea dependenta duratei de sortare de lungimea sirurilor
    - se construiesc siruri pentru a analiza dependenta duratei de volumul de interschimburi
    - se construiesc siruri pentru a vedea comportamentul atat fata de lungime cat si fata de volumul de interschimburi
    - se iau in considerare cazurile particulare.
    SET_1: contine 50 de siruri de numere fiecare avand lungimea de 20,30,40,50,60,70...termeni, fiecare dintre siruri continand termenii progreisiei aritmetice cu primul termen 10 si ratia 3, toate sirurile fiind deci sortate crescator.
    SET_2: contine 50 de siruri de numere fiecare avand lungimea de 20,30,40,50,60,70...termeni, fiecare dintre siruri continand termenii unei progreisii aritmetice descrescatoare cu ultimul termen 10 si ratia 3, toate sirurile fiind deci sortate descrescator.
    SET_3: contine 50 de siruri de numere fiecare avand lungimea de 20,30,40,50,60,70...termeni, fiecare dintre siruri continand termenii egali cu ZERO .
    SET_4: contine 50 de siruri de numere fiecare avand lungimea 100 dar continutul fiind diferit ( siruri deja sortate, siruri cu valori diferite dar controlat aranjate).
    SET_3: contine 50 de siruri de numere fiecare avand lungimea de 20,30,40,50,60,70...termeni, fiecare dintre siruri fiind impartit in doua incat prima jumatate contine elemente sortate crescator iar a doua jumatate, contine aceleasi valori ,elemente fiind sortate descrestator.
    1,2,3,4,5,5,4,3,2,1
    1,2,3,4,5,6,7,8,9,10,10,9,8,7,6,5,4,3,2,1
    ..........se siau cat mai multe tipuri de siruri....
    Se sconstruiesc tabele in care pe coloana-1 se pune setul, pe coloana 2 se pune lungimea sirului, pe coloana 3 se pune numarul de interschimburi, pe coloana 4 se pune durata.
    Se analizeaza dependentele, se fac grafice si chiar se construieste o ecuatie de regresie de forma:
    durata = a * numar_elemente + b
    sau
    volum_interschimburi = a * numar_elemente + b
    sau
    durata = a * volum_interschimburi + b
    Se face o analiza a acestor dependente rezultand diferentele dintre algoritmi.

    4. Estimarea performantei procedurilor de sortare

    Procedurile de sortare difera unele de altele prin:
    - durate de sortare
    - efort de pregatire siruri
    - efort de realizare text sursa
    - complexitate
    - fiabilitate
    - stabilitatea
    - generalitate.
    O procedura este mai performanta decat alta daca:
    - durata de elaborare este mai redusa
    - necesarul de resurse este rezonabil
    - durata de sirtare este mai mica. Se alege procedura cu durata cea mai mica.
    Se face analiza stabilitatii duratei medii, adica daca aceasta durata medie nu variaza semnificativ de la un lot la altul de siruri avand proprietati similare. daca asa stau lucrurile inseamna ca acea procedura este cea mai convenabila.
    Toate caracteristicile sunt analizate si se fac masuratori pentru a vedea cat de bine sunt indeplinite cerintele de procedurile scrise.
    5. Ierarhizarea algoritmilor de sortare

    A ierarhiza elementele unei colectivitati inseamna:
    - a lua in considerare o serie de criterii de diferentiere a elementelor colectivitatii
    - a efectua masuratori pentru caracteristicile puse in corespondenta cu acele criterii
    - a stabili importanta acelor criterii
    - a calcula coeficienti de importanta pentru criterii.
    In cazul algoritmilor de sortare:
    - colectivitatea este formata din n proceduri care implementeaza n algoritmi
    - criteriile vizeaza comportamentul procedurilor prin durata medie de sortare, complexitatea textelor sursa si volumul de interschimburi
    - variabilele considerare sunt: durata medie de sortare DS, complexitatea Halstead CH, numarul de interschimburi VI
    - coeficientii de importanta sunt p1 = 0.7, p2 = 0.2, p3 = 0.1
    Indicatorul agregat IA este dat de relatia:
    IA = p1 * DS + p2 * CH + p3 * VI
    Se construieste tabelul avand col 1= nume procedura, col 2=DS col 3=CH col 4=VI col 5 = IA.
    Se sorteaza procedurile descrescator dupa col 5 si rezulta ierarhizarea algoritmilor.
    Se face o analiza a ceea ce a rezultat tinand seama ce s-a obtinut la performanta dar si la testare.
    6. Concluzii

    Se va scrie :
    - la ce foloseste acest rezultat
    - cum se extinde analiza de la siruri la sortarea fisierelor
    - cum se lucreaza cu bazele de date
    - o gestiune a starii fisierelor, pentru a nu sorta un fisier deja sortat.
    - sortarea de n-tuple .
    BIBLIOGRAFIE

    30% carti
    40% articole preponderente din reviste ISI
    20% webgrafie
    10% proceedings-uri de la conferinte

    Studierea materialelor bibliografie

    Se merge in biblioteca.
    Se cauta pe Internet.
    In toate cazurile se fac notite ce contin:
    - problematica
    - detalii
    - sursa (autor, titlu, pagina) de unde este folosit un rezultat
    - consideratii personale legate de modele, de algoritmi, de limitele solutiilor gasite.
    Documentarea trebuie sa fie:
    - la obiect
    - completa
    - cu lucrari fundamentale (pentru sortare tratatul lui KNUTH este esential caci volumul 3 se numeste chiar SORTARE).

    Trecere la elaborare si testare proceduri

    Se cauta pastrarea stilului de programare caci revenirea are rolul de a afecta intregul articol daca se produc schimbari fundamentale in proceduri.
    Se culeg datele necesare si se va cauta ca datele sa fie complete si corecte pentru a avea tanelele cu care se va lucra.
    O scapare va impune reluarea unor pasi lucru foarte dificil.

    Construirea de modele si prelucrarea statistica a seriilro de date din tabele.

    Se efectueaza prelucrari si se trag concluzii fara a aduce realitatea spre modele, ci a interpreta ceea ce s-a gasit pentru a analiza ceea ce este de fapt in realitate. Se va vedea sa nu apara contradictii flagrante cu ceea ce este deja verificat in literatura.

    Elaborarea propriu-zisa a articolului

    respectand schita elaborata, folosind notitele de la studierea bibliografiei si tabelele obtinute de la realizarea si testarea procedurilor se elaboreaza articolul, pas de pas.
    Se vor cita materialele pe masura ce sunt folosite notitele.
    Se vor intercala tabele, diagrame si figuri.
    Textul trebuie sa fie foarte clar si sa rezulte din el ca:
    - autorul stie despre ce scrie
    - autoryul are experienta
    - ipotezele avansate de autor sunt verificate de acesta
    - nu se plagiaza
    - tot ceea ce este preluat este citat riguros
    - sunt respectate cerintele din ghidul de elaborare impus de revista unde se trimite spre publicare articolul.

    - lucrati cu mare atentie!
    - materialul neglijent redactat este respins la reviste!
    - plagiatul este usor descoperit ca sunt tools-uri pentru asa ceva!
    - asigurati consistenta materialului, figurile citate sa eciste, toate figurile existente sa fie citate, la fel si tabelele!
    - cartile si articolele din bibliografie sa le fi avut in mana! bibliografia construita din alte bibliografii este o MARE eroare!





    IN LUCRU ACUM....