rapid application development (rad)adria/teach/wad/sres/... · avem cateva optiuni de customizare a...

18
Rapid Application Development (RAD) Ce este RAD? O definitie simplista a ceea ce reprezinta RAD ar putea fi urmatoarea: Un proces de dezvoltare a unui program software care permite crearea unui produs finit intr-un timp foarte scurt (60-90 zile). Scopul final al acestui concept este acela de a satisface cat mai multe cerinte ale clientilor cu cat mai putin efort si resurse. In ultima perioada au aparut o serie intreaga serie de solutii RAD care permit utilizatorilor (la nivel declarativ) sa creeze solutii functionale fara ca acestia sa aibe cunostinte de programare. Acest concept mai poarta numele de visual programming. Desi au evoluat foarte mult de la aparitia conceptului in anii 90, solutiile RAD nu pot satisface o arie foarte mare de cerinte. De aceea aceste solutii continua sa aibe o utilizare si o adresabilitate relativ restransa. De exemplu este destul de greu ca o solutie RAD sa ofere posibilitatea crearii unei aplicatii care sa permita prelucrarea de semnale venite de la periferice specializare (ex. cititoare de coduri de bara). Dar nu este extrem de dificil ca o aplicatie care sa permita managementul stocurilor de ex., sa poata fi realizata cu o solutie RAD. O serie de particularitati pe care le-a stabilit conceptul RAD, au inceput treptat sa fie integrate in IDE-uri. De exemplu LINQ (specific .NET 3.5 minim) ofera posibilitatea crearii ierarhiei de clase aferente unei baza de date fara ca utilizatorul sa fie nevoit sa scrie nici o linie de cod. In cele ce urmeaza voi prezenta pas cu pas crearea unei aplicatii folosind un astfel de mediu de dezvoltare. Iron Speed RAD Solution Iron Speed este un tool care permite dezvoltarea rapida de aplicatii pe platforma Microsoft .NET. Cu ajutorul acestei solutii, se pot crea solutii web standard N-tier, incluzand interfete utilizator, queri-uri SQL si codul care faciliteaza tranzactiile SQL.

Upload: others

Post on 16-Jan-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Rapid Application Development (RAD)

Ce este RAD?

O definitie simplista a ceea ce reprezinta RAD ar putea fi urmatoarea:

Un proces de dezvoltare a unui program software care permite crearea unui produs finit intr-un timp foarte scurt (60-90 zile).

Scopul final al acestui concept este acela de a satisface cat mai multe cerinte ale clientilor cu cat mai putin efort si resurse. In ultima perioada au aparut o serie intreaga serie de solutii RAD care permit utilizatorilor (la nivel declarativ) sa creeze solutii functionale fara ca acestia sa aibe cunostinte de programare. Acest concept mai poarta numele de visual programming.

Desi au evoluat foarte mult de la aparitia conceptului in anii 90, solutiile RAD nu pot satisface o arie foarte mare de cerinte. De aceea aceste solutii continua sa aibe o utilizare si o adresabilitate relativ restransa. De exemplu este destul de greu ca o solutie RAD sa ofere posibilitatea crearii unei aplicatii care sa permita prelucrarea de semnale venite de la periferice specializare (ex. cititoare de coduri de bara). Dar nu este extrem de dificil ca o aplicatie care sa permita managementul stocurilor de ex., sa poata fi realizata cu o solutie RAD.

O serie de particularitati pe care le-a stabilit conceptul RAD, au inceput treptat sa fie integrate in IDE-uri. De exemplu LINQ (specific .NET 3.5 minim) ofera posibilitatea crearii ierarhiei de clase aferente unei baza de date fara ca utilizatorul sa fie nevoit sa scrie nici o linie de cod.

In cele ce urmeaza voi prezenta pas cu pas crearea unei aplicatii folosind un astfel de mediu de dezvoltare.

Iron Speed RAD Solution

Iron Speed este un tool care permite dezvoltarea rapida de aplicatii pe platforma Microsoft .NET. Cu ajutorul acestei solutii, se pot crea solutii web standard N-tier, incluzand interfete utilizator, queri-uri SQL si codul care faciliteaza tranzactiile SQL.

Page 2: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Aplicatie exemplificativa creata folosind Iron Speed

Codul generat de aceasta solutie poate include facilitati avansate precum join-uri intre mai multe tabele, facilitati de navigare si cautare pentru interfetele utilizator. Iron Speed genereaza cod nativ .NET, pagini ASPX, controale ASCX si fraze SQL si proceduri stocate.

Page 3: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Aplicatia pe care o vom crea, este una foarte simpla si are rol pur demonstrativ. Vom crea o plicatie care v-a permite afisarea unor articole si review-uri despre anumite produse din domeniul IT Hardware. Avand in vedere scopul acestei prezentari, versiunea de Iron Speed folosita este cea free care are doar catefa din facilitatile de baza regasite in versiunea full. Versiunea se poate downloada de la www.ironspeed.com.

Primul pas in creare unei aplicatii folosind Iron Speed, este crearea structurii de baza de date. Figura urmatoare afiseaza tabelele si relatiile dintre ele.

Page 4: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Dupa cum se poate observa avem patru tabele

Categories - contine categorii de produse Products – contine produse care se regasesc in articole Authors - autorii articolului Articles

Avand creata schema bazei de date putem porni wizardul pentru crearea aplicatiei pe aceasta structura de baza de date.

Page 5: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Intr-o prima faza trebuie sa alegem cum v-a arata pagina.

Page 6: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Urmatorul pas e alegerea datasource-ului, si aici optiunile sunt relativ variate. Putem alege intre baze de date Access, MySql, MsSql si Oracle. In cazul nostru optiunea este MsSql.

Page 7: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Inaintand la urmatorul pas al wizard-ului, trebuie sa alegem paginile pe care vrem sa le creem (actiunile; tree-ul din partea stanga a ferestrei wizard-ului) precum si tabelele din baza de date pe care dorim sa le luam in calcul. Se observa ca multe din optiunile din partea stanga nu sunt folosibile deoarece folosim o versiune free si aceasta le impune.

Page 8: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Urmatorul pas ne permite adaugarea unor noi constrangeri "virtuale" asupra bazei de date, pe langa cele definite la nivelul structurii bazei de date. In cazul nostru ramanem doar la costrangerile definite la nivelul bazei de date.

Page 9: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Setarile de globalizare sunt disponibile in tab-ul "Languages". Si in acest caz ramanem la setarile default.

Page 10: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Penultimul tab ne ofera o serie de optiuni la nivel de aplicatie cum ar fi: numele aplicatiei, namespace-urile, versiunea framework-ului, path-urile unde se va salva aplicatia sau limbajul in care v-a fi generat cod-ul.

Page 11: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Ultimul pas inainte de finalizarea aplicatiei este unul informativ in care ni se prezinta numarul de pagini care vor fi generate precum si cateva indicatii despre optiunile disponibile dupa finalizare.

Page 12: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Urmatoarea fereastra apare dupa ce aplicatia a fost generata si pornita. Avem informatii despre cate pagini aspx, cs si ascx s-au generat precum si despre procedurile stocate generate.

Page 13: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Automat dupa ce aplicatia a fost generata, ea este incarcata in browser. Iata cum arata aplicatia generata automat fara nici o interventie suplimentara asupra ei:

Page 14: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Adaugarea de noi inregistrari in oricare tabela este intuitiva. In cele ce urmeaza vom popula toate tabelele cu o serie de date de test.

Page 15: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul
Page 16: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul
Page 17: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

Am obtinut cu un minim de efort o aplicatie web functionala care permite introducerea de articole despre anumite produse. Cu ceva mai mult efort se poate customiza aceasta aplicatie pentru a indeplini anumite criterii care tin de look sau prezentare.

Un aspect neplacut in ceea ce priveste acest RAD este viteza. Raspunsul in urma unui request poate veni si dupa 10-20 de secunde in cazul in care se foloseste o masina mai slaba.

In ceea ce priveste posibilitatile de customizare ale aplicatiei generate, acestea sunt variate. In imaginea urmatoare avem o parte dintre aceste posibilitati expuse.

Page 18: Rapid Application Development (RAD)adria/teach/wad/SRes/... · avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul

In coloana "Application Explorer" avem navigatorul aplicatiei. In coloana "Page Panels" avem cateva optiuni de customizare a header-ului footer-ului sau meniului precum si a felului in care este afisat continutul.

Concluzii

Dupa cum am vazut pe parcursul acestei prezentari, Iron Speed este intr-adevar o modalitate foarte rapida de a crea aplicatii si poate fi oricand un punct de pornire. Insa dezavantajele nu lipsesc. Un prim dezavantaj ar fi viteza scazuta a aplicatiilor generate, apoi dificultatea ridicata de a face modificari substantiale are aplicatiilor generate si nu in ultimul rand posibilitatile destul de limitate pe care le ofera aceasta solutie in comparatie cu cerintele actuale.