Proiectarea Unei Aplicatii Pentru Gestiunea Stocurilor de Materiale Prime

Introducere

Capitolul I: Activitatea de gestiune a stocurilor de materiale prime

Gestiunea stocurilor

Rolul sistemelor informatice în gestiunea stocurilor

Capitolul II: Instrumente utilizate activității de gestiune a stocurilor de materiale prime

Triada MySQL + PHP + Apache

PHP

MYSQL

Framework – ul Symfony2

HTML&CSS

Capitolul III: Analiza și proiectarea aplicației pentru gestiunea stocurilor de materiale prime

Studiul și analiza sistemului informațional existent

Performanțe, limite și propuneri de perfecționare

Diagrame de activitate

Diagrama de clase

Diagrama de secvență

Diagrama de stare pentru simularea lucrării

Diagrame de procese și colaborare în BPMN

Diagrama de procese pentru simularea unei lucrări

Diagrama de colaborare pentru simularea unei lucrări și gestiunea stocurilor și a șabloanelor

Proiectarea sistemului informatic

Rafinarea diagramelor UML – modelarea noului sistem

Diagrama rafinată a cazului de utilizare monitorizarea lucrărilor

Diagrama de clase rafinată -Diagrama de clase detaliată

Proiectarea bazei de date

Proiectarea interfețelor utilizator

Diagrama de componente

Diagrama de desfășurare

Implementarea aplicației

Crearea unei baze de date

Formulare – Utilizarea formularelor pentru introducerea datelor si asigurarea interfetei cu utilizatorul

Bara de instrumente folosită pentru definirea unei forme

Obiecte și proceduri, sporirea funcționalității

Gestionarea activității de gestiune a stocurilor de materiale prime

Concluzii

Bibliografie

Introducere

Lucrarea de față își propune să prezinte aspectele teoretice și practice cu privire la analiza, proiectarea și implementarea unei aplicații informatice pentru gestiunea stocurilor, aplicație care are rolul de a simula lucrările în funcție de stocurile existente, dar și de a raporta o eventuală nevoie de aprovizionare în funcție de analiza lucrărilor precedente.

Aplicația informatică de gestiune a stocurilor are obiectivul principal de a veni în ajutorul utilizatorului pentru a oferi o simulare automată a produselor în funcție de stocurile disponibile. Aceasta permite gestiunea de material, șabloane, dar și posibilitatea de aprovizionare a stocurilor.

În acest sens primul capitol intitulat “Activitatea de gestiune a stocurilor de material prime”, abordează partea teoretică cu privire la conceptele de stocuri și gestiunea acestora, dar si rolul sistemelor informatice în gestiunea stocurilor.

În capitolul al-II-lea este realizată o prezentarea a tuturor tehnologiilor folosite pentru implementarea aplicației informatice, tehnologii precum: framework-ul Symfony2, HTML& CSS, MySQL, dar și a beneficiilor alegerii acestor tehnologii comparativ cu altele cunoscute.

Capitolul al-III-lea prezintă un studiu asupra aplicațiilor pentru gestiunea stocurilor existene, punând în evidență performațele acestora, dar și limitele lor și oferind o posibilitate de perfecționare a noii aplicații. Tot în acest capitol este prezentată analiza aplicației inforamtice pentru gestiunea stocurilor cu ajutor diagramelor UML și BPMN, precum și proiectarea acesteia.

În capitolul al- IV-lea intitulat “Implementarea aplicației” este detaliată aplicația, prezentând funcționalitatea acesteia, dar și cum aceasta a fost realizată, punându-se accentul în mod special pe crearea structurii bazei de date, a tabelelor și a tuturor elementelor necesare realizării aplicației.

Capitolul I: Activitatea de gestiune a stocurilor de materiale prime

Gestiunea stocurilor

Gestiunea stocurilor de resurse materiale prezintă, în economia de piață, o activitate cu o atenție deosebită, deoarece aceasta necesită o implicație economico-financiară foarte importantă. Astfel, obiectul tranzacțiilor defășurate în cadrul unei companii asupra ciclului de exploatare este reprezentat de stocuri.

Conform reglementărilor contabile din România (OMFP nr. 3055/2009), stocurile sunt active:

Deținute pentru a fi vândute pe parcursul desfășurării normale a activității.

În curs de producție în vederea unei vânzări în aceleași condiții ca mai sus.

Sub formă de materii prime, materiale și alte consumabile ce urmează a fi folosite în procesul de producție sau pentru prestarea de servicii.

“Stocurile sunt bunuri sau servicii care, în mod normal, se transformă în disponibilități bănești în decurs de un an având, din acest punct de vedere, atributul de active curente. De exemplu: materiile prime și materialele cumpărate participă la un singur ciclu de producție și își transferă în întregime valoarea lor asupra bunurilor rezultate din procesul de producție (produse finite) care, prin vânzare, se transformă în disponibilități bănești” conform [LUCA13].

Gestiunea stocurilor de materiale și produse asigură deșfășurarea, după un sistem rațional, a activității fiecărei unități economice. Fără stocuri, unitatea economică nu își poate desfășura activitatea, neputându-se utiliza capacitatea de producție, cererile clienților nu se pot satisfice în concordanță cu pretențile pe care le emit, iar operațiile din sistemele de aprovizionare și desfacere, nu se pot desfășura.

Principalele “probleme” care se pun în fața agentilor economice, cu referire la stocuri, sunt următoarele: stabilirea stocurilor necesare și capacitatea acestora, tipurile stocurilor.

Pentru desfășurarea în condiții normale a activităților, unitatea economica își stabiliește stocurile în funcție de condițiile de aprovizionare interne și externe, de natura resurselor, de strategia și politica adoptate în formarea stocurilor.

Importanța stocurilor în procesul de producție

Procesul de producție poate fi expus la anumite situații neprevăzute care duc la întreruperea lui, situații precum defectarea utilajelor, schimbarea personalului, etc. Astfel, stocurile sunt văzute ca elementul care asigură amortizarea acestor situații, deoarece producția este un rezultat aleator al acestor combinații de acțiuni.

Gestiunea stocurilor este vazută ca un proces economic complex, care este format atât din probleme de depozitare și păstrare, de control și de redistribuire, cât și din probleme de optimizare a spațiului unde sunt depozitate stocurile, de conducere etc. Deși sunt considerate resurse neactive, stocurile de cele mai multe ori asigură ritmicitate producției.

Caracterul sezonier al producției, precum și cel al consumului, condiționarea materialelor anterior consumului, diferența dintre cerere și producție, dar și alți factori duc la formarea obiectivă de stocuri. Acest factori au rolul de stabili funcția și scopul formării de stocuri.

Procesul de stocare are o dublă influență care, prin volum și structură, asigură o bună desfășurare a activității firmelor, printr-o stocare minimă de resurse care presupune cheltuieli cât mai mici.

1.2 Rolul sistemelor informatice în gestiunea stocurilor

„Sistemele informaționale îndeplinesc rolul de suport operațional, managerial și strategic în afaceri și organizații, putând fi grupate în sisteme informaționale pentru funcțiile întreprinderii, sisteme informaționale operaționale și sisteme informaționale manageriale”, conform lucrării [STBO12].

Obiectivele sistemelor informatice pot fi clasificate după mai multe criterii conform [LUBA07]:

Obiectivele pot fi principale (generale), reprezentate de deciziile cu privire la desfășurarea activităților din firmă și secundare (derivate) care reprezintă condițiile pentru realizarea obiectivului general. Aceasta este o clasificare a obiectivelor sistemelor infromatice din pucnt de vedere al sferei de curpindere.

Asupra sistemelor informatice acționeaza diferite domenii de activități, iar acest lucru clasifica obiectivele sistemelor informatice astfel: obiective ce afectează funcționalitatea acestor sistemele si obiective ce afectează activitățile din cadrul companiei, activități precum producția.

Ținând cont de posibilitatea de cuantificare a efectelor sistemelor informatice, obiective pot fi: cuantificabile si necuantificabile.

Pentru un manager este important să înțeleagă că sistemele informaționale sprijină în mod direct funcțiile operaționale și manageriale ale organizației în finanțe, contabilitate, marketing, management operațional și resurse umane.

Sistemele informaționale operaționale sunt folosite în prelucrarea datelor generate și utilizate în operații de afaceri. Există mai multe categorii, în funcție de rolul pe care îl au: sisteme de procesare a tranzacțiilor-care presupun actualizarea bazelor de date, înregistrarea și prelucrarea documentelor și rapoartelor, precum și producerea unei varietăți de documente și rapoarte; sisteme de control al proceselor-implică furnizarea deciziilor operaționale care controlează procesele fizice; sisteme automatizate de servicii – cele care sprijină comunicațiile. „Rolul sistemelor informaționale operaționale ale unei organizații este de a prelucra eficient tranzactii, de a controla procesele industriale, de a sprijini funcțiile de comunicații și productivitatea și de a reactualiza bazele de date.” [STBO12]

Sistemele informațioanle manuale au evoluat la sisteme mecanice de prelucrare a datelor și apoi la sisteme de prelucrare electronică a datelor, toate acestea înglobându-se în sisteme informaționale operaționale, care la rândul lor cuprind majoritatea sistemelor de procesare a tranzacțiilor. Aceste sisteme procesează date create prin modificări ale informațiilor dintr-un fișier de baze de date, generând o varietate de produse de tip informațional.

Sistemele informațioanle operaționale generează un ansamblu de informații pentru consolidarea deciziilor care controlează procesele operaționale programate. Astfel, sistemele de control al proceselor prespun ca deciziile de ajustare a procesului de producție să fie realizate automat de calculator.

„Sistemele automatizate de servicii achiziționează, prelucrează, stocheză și transmit date și informații într-o formă specifică comunicațiilor electronice”, conform lucrării [STBO12].

Sistemele informaționale manageriale emit informații pentru a sprijini activitatea de adoptare a deciziilor. Importanța sistemelor informațioanle manageriale este aceea de orientare managerială a procesării informației în afaceri. Suportul pentru managementul luării deciziilor și nu doar de procesare a datelor generate de sistemul operațional reprezintă unul dintre cele mai importante scopuri al sistemelor informaționale bazate pe tehnologia informației și comuncațiilor. De exemplu, managerii de producție pot accesa rapoarte generate instantaneu ca răspuns la solicitarea de a analiza producția unui anumit produs, rapoarte săptămânale de analiză a producției pentru a evalua rezultatele producției de produse. Sistemele de suport pentru decizii furnizează modelări analitice, sisteme de regăsire a datelor și capacității de prezentare a informației, prin care managaerii primesc informațiile necesare pentru a adopta decizii într-un proces interactiv computerizat. „Scopul principal al sistemelor informaționale executive este de a oferi decidenților care asigură managementul strategic al organizației accesul rapid și facil la infomațiile despre factorii critici în îndeplinirea obiectivelor strategice”, menționat în lucrarea [STBO12].

Prin urmare, sistemele informatice au un rol esențial în gestiunea stocurilor și anume oferirea unei gestionări eficente a stocurilor și serviciilor în timp real, dar și a informațiilor necesare pentru luarea unor decizii, cum este în cazul aplicației ce urmează a fi prezentată, decizia de a aproviziona stocurile în functie de informațiile pe care aplicația le ofera pe baza procesului de producție care s-a efectuat până în momentul respectiv.

Capitolul II – Instrumente utilizate activității de gestiune a stocurilor de materiale prime

2.1 Triada MySQL + PHP + Apache

Triada MySQL +PHP+Apache este un pachet software care permite oricui să ruleze un server local pe un calculator și să configureze ușor tot ceea ce este necesar, devenind astfel un instrument perfect pentru dezvoltatorii web. Cerințele obișnuite pentru orice program dezvoltat ca un server sunt destul de clare: Apache, MySQL și PHP.

De aceea, pentru ca server-ul să lucreze fără prea multe complicații și cu garanția că va fi potrivit configurat, am ales să instalez triada MySQL +PHP +Apache. Mai mult, aceasta include un instrument de rezervă și un panou de control de la care puteți configura un număr mare de opțiuni.

Pentru a facilita dezvoltarea utilizând aceste software-uri au fost create o serie de utilitare care înglobează funcționalitățile lor. Unul dintre cele mai utilizate utilitare este XAMPP, acesta oferind o serie de tool-uri foarte utile precum PHPMyAdmin ce permite managementul bazelor de date.

2.2 PHP

PHP este un limbaj scripting server-side proiectat pentru dezvoltare web, dar, de asemenea, folosit ca un limbaj de programare cu scop general. PHP este instalat pe mai mult de 244 milioane site-uri web și 2,1 milioane de servere de web. [PHP1] Inițial creat de către Rasmus Lerdorf în 1995, implementarea de referință a PHP este acum produsă de grupul PHP. [PHP1] În timp ce PHP semnifică original Personal Home Page, [PHP1] acum PHP înseamnă: Hypertext Preprocessor, un acronim recursiv [PHP1].

Codul PHP este interpretat de un server de web cu un modul de procesor PHP care generează pagina Web rezultată: comenzile PHP pot fi integrat direct într-un document HTML. Aceasta a evoluat, de asemenea, să includă o interfață linie de comandă și poate fi folosit în aplicații grafice de sine stătătoare. [PHP2]

PHP este un software gratuit distribuit sub licența PHP, care este incompatibilă cu GNU General Public License (GPL), ca urmare a restricțiilor privind utilizarea termenului PHP. [PHP2] PHP poate fi instalat pe majoritatea serverelor si orice sistem de operare și platforme, gratuit. [PHP2]

În contextul în care pe piața există un număr foarte mare de tehnologii de dezvoltare software, alegerea celui potrivit pentru un anumit proiect nu este chiar o sarcină ușoară. Pentru a lua această decizie, este nevoie să se cunoască toate avantajele și dezavantajele lor.

În ceea ce privește PHP-ul, acesta este open-source și este utilizat pentru dezvoltarea website-urilor. Principalele avantaje ale PHP-ului sunt:

1. Rapid și fiabil – în majoritatea cazurilor, PHP-ul este cel mai rapid limbaj web, aplicațiile sunt în general ușor de înteles și adaptat. Chiar și atunci când este folosit în cadrul unor framework-uri, acesta își păstrează viteza.

2. Independent de platforma – PHP-ul rulează indiferent de platforma pe care este instalat (Windows, Linux, Mac OS) și suportă o mare varietate de baze de date, precum MySQL și Oracle.

3. Comunitate activă – Faptul că este răspândit la scară largă face ca orice problemă pe care o întâmpină un dezvoltator să își găsească o rezolvare. Poți găsi informații și documentație pe foarte multe blog-uri, forum-uri IT sau alte site-uri de specialitate.

4. Flexibil și performant – modul în care este construit acest limbaj face posibilă dezvoltarea unor aplicații performante, dar în același timp flexibile și scalabile

5. Open-source – PHP-ul este un limbaj open-source și poate fi descărcat, un beneficiu major pentru dezvoltatori.

În momentul în care dorim să dezvoltăm un website, două dintre alegerile posibile sunt PHP și Java. Fiecare dintre acestea oferă flexibiltate, scalabilitate și suficiente optiuni pentru o aplicație, însa pentru a decide în favoarea unuia dintre acestea, este nevoie să aruncăm o privire asupra avantajelor lor.

Beneficiile limbajului Java

Java, ca și limbaj de programare, oferă un număr mare de beneficii, printre care cele mai importante sunt:

Ușor de învățat

Orientat pe obiecte

Independent de platformă

Aceste 3 beneficii oferă mult mai mult decât par. Pe lângă faptul ca este ușor, Java permite creare de cod re-utilizabil precum, modularitate dar și independență de platforma pe care rulează, ceea ce înseamnă că poate fi mutat de pe un sistem pe altul și va rula la fel.

Beneficiile limbajului PHP

Usor de invatat

Open Source

Eficiență

Comunitate și suport

Așa cum Java este ușor de învățat, așa este și PHP-ul. Mai mult, lucrurile se simplifica dacă ai experiență cu Pearl sau C. Faptul că este open source înseamnă că poți beneficia din plin de suportul comunității, și poți găsi altfel rezolvare la orice problemă pe care ai putea-o întâlni. De asemenea, costurile în ceea ce îl priveste, sunt zero.

2.3 MySQL

MySQL este un sistem open source de management al baze de date relaționale (RDBMS) [MySQL1], care rulează ca un server furnizând accesul mai multor utilizatori la un număr de baze de date. Este numit după fiica co-fondatorul Michael Widenius ", MySQL reprezintă o abreviere pentru Structured Query Language. [MySQL1].

MySQL nu ofertă un GUI pentru a administra sau gestiona datele conținute în bazele de date. Utilizatorii pot folosi instrumentele linie de comandă incluse, [MySQL2] sau pot folosi software front-end MySQL, aplicații desktop și aplicații web cu ajutorul cărora se pot crea și administra baze de date MySQL, construi structuri de baze de date, back-up de date, etc.[ MySQL3]. [MySQL4] Setul oficial de instrumente front-end MySQL – MySQL Workbench este dezvoltat în mod activ de către Oracle, și este disponibil gratuit. [MySQL 2].

MySQL Workbench este un mediu integrat și gratuit dezvoltat de MySQL AB, ce permite utilizatorilor să administreze grafic baze de date MySQL și să proiecteze structuri de baze de date în mod vizual. MySQL Workbench înlocuiește pachetul anterior de software, MySQL GUI. Similar cu alte pachete din surse terțe, dar încă considerat o autoritate, MySQL Workbench permite utilizatorilor să gestioneze proiectarea și modelarea bazelor de date, dezvoltarea SQL (care înlocuiește MySQL Query Browser) și administrarea bazelor de date (înlocuiește MySQL Administrator).

Pentru a putea face o comparație între MySQL și MSSQL este nevoie să înțelegem ce reprezintă acestea. Cele două sunt sisteme de baze de date, menite să ofere suport pentru a stoca cantități foarte mari de date.

MySQL este considerat unul dintre cele mai populare sisteme de baze de date din zilele noastre. Este folosit de Worldspan, Joomla, Drupal și alte sisteme de content management. Multe dintre companiile de hosting oferă gratuit suport pentru MySQL. MSSQL( Microsoft SQL Server). reprezinta o alta alegere în ceea ce privește bazele de date, însă nu este la fel de popular ca MySQL. Motivul principal pentru care se alege MySQL este simplu: faptul că este integrat în majoritatea CMS-urilor(Content Management System) face că aceștia să nu știe nici măcar că îl folosesc.

MySQL este clasat pe locul doi în ierarhia celor mai bune sisteme de baze de date online, după Oracle, însă reprezintă alegerea numărul unu în topul bazelor de date free. Acesta poate fi folosit pe mai multe tipuri de servere, inclusiv Windows, Linux, Mac OS, FreeBSD. Totodată beneficiază și de o comunitate foarte mare, un avantaj pe care MSSQL nu il prezintă.

MSSQL rulează numai pe Windows și nu suportă toate limbajele de programare pe care le poti folosi cu MySQL: daca în ceea ce priveste MSSQL suntem restrictionați la .NET, PHP, Ruby, Java, Python, Visual Basic, MySQL le suportă pe toate acestea plus multe altele (Ada, C, C++, C#, Objective-C etc.)

MySQL ramâne principala alegere, deoarece rulează pe servere Linux.

2.4 Framework-ul Symfony2

Symfony2 reprezintă un framework de PHP, construit pe arhitectura MVC, ce oferă un set de instrumente pentru dezvoltarea rapida și fiabilă a aplicațiilor web.

Acesta poate fi folosit atât ca framework, cât și ca funcționalități separate împărțite pe module, fiind construit numai din pachete de funcționalități ce rulează în mod independent.

Symfony2 folosește o structură și o metodologie ce permite developerilor să lucreze eficient pe cele mai mai complexe aspecte ale unei sarcini și să urmeze cele mai bune practici pentru a garanta stabilitatea și posibilitatea de upgrade a aplicației. În ceea ce privește structura, funcționalitatea este împărțită în pachete numite bundle-uri.

Una dintre cele mai puternice componente integrate în Symfony2 o reprezintă Doctrine ORM.

Cu ajutorul Doctrine-ului se facilitează lucrul cu baza de date.

Principalele avantaje ale Symfony2 [SYMF1] sunt:

Rapiditate – este de trei ori mai rapid decât Symfony1.4 și Zend1.1, în timp ce ocupă de două ori mai puțină memorie.

Flexiblitate – se poate adapta oricăror nevoi, deoarece oferă o gamă variată de configurații.

Expandabil – orice componentă din Symfony2 este organizată sub forma unui bundle, iar orice bundle poate fi folosit independent în alt proiect.

Stabil și susținut – Symfony2 este dezvoltat și suportat pentru trei ani de către SensioLabs.

Dezvoltare facilă – deoarece Symfony2 înglobează deja o parte din task-uri necesare în procesul de dezvoltare, developerii se pot concentra mai mult pe business logic și își pot îmbunătății productivitatea.

Ușor de utilizat – documentația completă, comunitatea și suportul oferit, fac ca acest framework să fie accesibil chiar și pentru începători.

2.5 HTML & CSS

Hypertext Markup Language (HTML) este limbajul de markup principal pentru crearea de pagini web și alte informații care pot fi afișate într-un browser web.

Scopul unui browser web este de a citi documentele HTML și a le traduce în pagini web vizuale sau audio. Browser-ul nu afișează tag-uri HTML, dar folosește tag-uri pentru a interpreta conținutul paginii. Elementele HTML formează pietrele de temelie ale tuturor site-urilor web. HTML-ul permite ca imaginile și obiectele să fie încorporate și pot fi folosite pentru a crea formulare interactive. Acesta oferă un mijloc de a crea documente structurate semantic prin elemente specifice cum ar fi titluri, paragrafe, liste, link-uri, citate și alte elemente. Se pot încorpora scripturi scrise în limbaje, cum ar fi JavaScript care afectează comportamentul de pagini web HTML.

Browserele Web pot folosi de asemenea Cascading Style Sheets (CSS) pentru a defini aspectul textului.W3C, care se ocupă de întreținerea atât a standardelor CSS cât și HTML, încurajează utilizarea CSS. [HTML1]

Cascading Style Sheets (CSS) este folosit pentru a descrie semantica prezentarii (aspectul și formatarea) unui document scris într-un limbaj de markup. CSS a fost scris cu scopul de a permite separarea conținutului documentului (scris în HTML sau un limbaj de marcare similar) de prezentarea documentului, inclusiv elemente cum ar fi aspectul, culorile și fonturile. [CSS1] Această separare poate îmbunătăți accesibilitatea conținutului, oferă o mai mare flexibilitate și control în specificarea caracteristicilor de prezentare, permite mai multor pagini sa foloseasca aceeasi formatare, și reduce complexitatea și repetiția în conținutul structural.

CSS poate permite, de asemenea, ca același markup să fie prezentat în diferite stiluri pentru metode de redare diferite, cum ar fi pe ecran, în modul print, prin voce sau pentru dispozitive tactile. Acesta poate fi, de asemenea, folosit pentru a permite paginii web să fie afișata în mod diferit, în funcție de dimensiunea ecranului sau dispozitivul pe care este privit.

CSS specifică o schemă de prioritate pentru a determina ce reguli se aplică în cazul în care exista mai multe reguli pentru un anumit element. Specificațiile CSS sunt menținute de către Consorțiul Mondial Wide Web (W3C). Media type-ul (MIME type) text / css este înregistrat pentru utilizarea CSS de RFC 2318 (martie 1998) și de asemenea oferă un instrument gratuit de validare al CSS-ului.[CSS2]

Capitolul III: Analiza și proiectarea aplicației pentru gestiunea stocurilor de materiale prime

3.1 Studiul și analiza sistemului informațional existent – Performanțe, limite și propuneri de perfecționare

Un sistem informatic de gestiune presupune o structură IT care este construită pe baza unei arhitecturi software, formând o rețea informațională pentru gestiunea stocurilor împreună cu componentele hardware. Orice sistem informatic presupune preluarea, stocarea, transmiterea și distribuirea datelor pentru a ține o evidență electronică a materiilor prime.

În prezent, exista sisteme informatice de gestiune performante care au ca urmatoarele avantaje: raportarea situațiilor actuale a stocurilor existente în firmă, informații și instrumente de planificare și control pentru evidența activităților din cadrul firmelor. Un alt avantaj important al sistemelor informatice de gestiune il presupune economisirea timpului și a optimizării utilizării spațiului de depozitare. Dezavantajele soft – urilor de gestiune sunt de caracter funcțional și apar numai în cazul căderilor de curent când nu se mai poate folosi sistemul.

Sistemele informaționale existente sunt sistemele care presupun gestionarea eficientă a stocurilor și serviciilor în timp real, permițând emiterea de situații exacte atât cantitativ cât si valoric, tranzacția de stoc, procesele de vânzare, ofertele și comenzile. Acestea își îndreaptă atenția mai mult pe facturare, stabilind prețuri de vânzare la recepție, prețuri de vânzare cu TVA și adaos comercial. Însă aplicația prezentată de-a lungul acestei lucrări își orientează direcția către gestiunea efectivă a stocurilor, simulând emiterea de produse. Astfel, putem răspunde cu ușurintă la întrebări precum: Este suficient stoc pentru a produce un anumit număr de produse? Care este numărul maxim pe care îl putem realiza?

Ca orice aplicație de gestiune a stocurilor și aceasta are posibilitatea să definească stocurile, să le urmărească cu siguranță și acuratețe, însă punctul forte al aplicației îl reprezintă simulatorul de produse. Acest simulator a fost gândit ca o propunere de perfecționare a soft-urilor existe pana acum pe piață, oferind o posibilitatea de răspuns clienților despre timpul de execuție al comenzilor, aceste comenzi fiind strâns legate de stocurile de care dispune firma.

Pentru analiza aplicației, vom folosi limbajul UML, pentru o înțelegere mai ușoară a documentației sistemului, iar în cazul în care apare nevoia de reviziuniere să fie posibilă o revizuire rapidă pentru a putea începe logica proictării. Limbajul UML folosește anumite tipuri de diagrame pentru modelarea proceselor de afaceri, a structurii statice, a dinamicii, dar și pentru implementare.

În continuare vom prezenta diagrama cazurilor de utilizare necesara modelării proceselor de afaceri, care contribuie la procesul de dezvoltare a sistemului.

Diagrama generală a cazurilor de utilizare

Cerintele funcționale avute în vedere în cadrul dezvoltării aplicației pentru gestiunea stocurilor vor fi identificate și modelate prin intermediul unor diagrame ale cazurilor de utilizare. Aceste diagrame redau modul în care sistemul va fi utilizat prin reprezentarea părților interesate prin așa-numiții actori și a acțiunilor ce se doresc a fi intreprinse prin intermediul cazurilor de utilizare.

Figura 1 – Diagrama cazurilor de utilizare

Diagrama cazului de utilizare monitorizare lucrări

Monitorizarea lucrării presupune vizulizarea acestora, mai precis daca lucrarea a fost acceptată sau nu, precum și detaliile despre lucrare precum data la care a fost creată, materialele folosite, etc.

Figura 2 – Diagrama cazului de utilizare monitorizarea lucrărilor

Diagrama cazului de utilizare gestiunea stocurilor

Gestiunea stocurilor implică atât o vizulalizare a stocurilor existente, cât și posibilitatea generării unei liste a nevoii de aprovizionare a acestora.

Figura 3 – Diagrama cazului de utilizare gestiunea stocurilor

Diagrama cazului de utilizare generarea aprovizionării

Figura 4 – Diagrama cazurilor de utilizare generarea aprovizionării

Diagrama cazului de utilizare simularea lucrării

Figura 5 – Diagrama cazurilor de utilizare simulare lucrare

1.2.6 Diagrama cazului de utilizare gestiunea stocurilor

Figura 6 – Diagrama cazurilor de utilizare gestiunea șabloanelor

Diagrame de activitate

Aceste diagrame au rolul de a reda într-un mod vizuală secvențele de acțiuni cu ajutorul cărora se obține rezultatul. Aceste se realizează pe baza cazurilor de utilizare, însă nu este nevoie să se reprezinte pentru fiecare caz de utilizare, ci numai pentru cele mai importante.

Diagrama de activitate pentru monitorizarea lucrărilor

Figura 7 – Diagrama de activitate pentru monitorizarea lucrărilor

Diagrama de activitate pentru gestiunea stocurilor

Figura 8 – Diagrama de activitate pentru gestiunea stocurilor

2.1.3 Diagrama de activitate pentru gestiunea aprovizionării

Figura 9 – Diagrama de activitate pentru generarea aprovizionării

2.1.4 Diagrama de activitate pentru simularea lucrării

Figura 10 – Diagrama de activitate pentru simularea lucrării

2.1.5 Diagrama de activitate pentru gestiunea șabloanelor

Figura 11 – Diagrama de activitate pentru gestiunea șabloanelor

Diagrama de clase

Diagrama de clase ajută la modelarea structurii statice, fiind una dintre cele mai importante diagrame din cadrul analizei și proiectării și are rolul de a scoate în evidență atributele, operațiile și asocierile dintre acestea.

Figura 12 – Diagrama de clase

Diagrama de secvență pentru simularea unei lucrări

Diagrama de secvență prezintă intercțiunea dintre obiectele unui sistem, indicând mesajele ce sunt transmise între obiecte și nu cum se realizeaza în detaliu o anumită funcționalitate.

Figura 13 – Diagrama de secvență pentru simularea unei lucrări

Diagrama de stare pentru simularea lucrării

Aceasta diagramă presupune modelarea comportamentului obiectelor din sistem, urmărindu-le pe acelea care fac tranzacția unui obiect dintr-o stare în alta.

În cazul de față, diagrama de stare pentru simularea lucrării scoate în evidență situațiile în care obiectele satisfac anumite condiții, efectuând anumite activități în funcție de cele anterioare sau așteaptă anumite evenimente.

Figura 14 – Diagrama de stare pentru simularea lucrărilor

Diagrame de procese și colaborare în BPMN

Diagrama de procese pentru simularea unei lucrări

Diagrama de procese este cea mai folosită pentru modelarea unui proces de afaceri, care are ca rolul indeplinirea scopului de business.

Figura 15 – Diagrama de procese pentru simularea unei lucrări

Diagrama de colaborare pentru simularea unei lucrări și gestiunea stocurilor și a șabloanelor

Diagrama de colaborare pentru simularea unei lucrări și gestiunea stocurilor și a șabloanelor presupune interacțiunea dintre obiecte, dar și a legăturilor dintre acestea pentru implementarea relațiilor. Această diagramă, spre deosebire de diagrama de secvențe care ia în considerare timpul, pune accentul pe spațiu

Figura 16 – Diagrama de colaborare pentru simularea unei lucrări și gestiunea stocurilor și a șabloanelor

Proiectarea sistemului informatic

Prin proiectarea sistemului informatic urmărim stabilirea de soluții logice pentru componentele noului sistem, bazându-ne pe evaluarea și revizuirea acestora.

Rafinarea diagramelor UML

Diagrama rafinata a cazului de utilizare monitorizarea lucrărilor

În aceasta etapă identificăm se urmărește analiza în profunzime a procesului de afaceri pentru identificarea altor cazuri de utilizare, scopul acestei rafinări fiind ca fiecare scenariu al sistemului să genereze o diagramă a cazurilor de utilizare.

Figura 18 – Diagrama rafinata a cazului de utilizare monitorizarea lucrărilor

Diagrama de clase rafinată

Figura 16 – Diagrama de clase rafinată

Diagrama de clase detaliata

Clasele împreună cu atributele și metodele corespunzătoare acestora sunt prezentate în diagrama de clase. Această diagramă are scopul de a facilita întelegerea funcționalității, prin descrierea și comportamentul claselor.

Figura 19 – Diagrama de clase detaliata

Proiectarea bazei de date

Proiectarea bazei de date face referire la definirea propriu-zisă a acesteia, dar și la programe, executabile aflate pe platformă și în configurația convenită, care satisfac cerințele curpinse în specificația sistemului.

“Din prespectiva rationamentelor efectuate, definirea are lor progresiv, în stadiile de proiectare generală, când se formulează o soluție sintetică, de ansamblu și de proiectare tehnică, în care se fac detaliile și ajustările corespunzătoare platformei avute în vedere. Proiectarea bazei de date, care face obiectul prezentului capitol, urmează acest demers progresiv, prin elaborarea unei structuri de baze de date care să corespundă cât mai fidel modelului conceputal al datelor, urmată de o ajustare a acesteia la caracteristicile prelucrărilor presupuse de execuția lucrărilor asumate de software –ul aplicație. Structura obținută este detaliată și adaptată apoi la caracteristicile platformei, care aici vizează esențialmente SGBD-ul folosit și suportul pe care-l propune acesta.”[ZAST14]

Conform [BOTHA14], în etapa de proiectare a bazei de date, “sunt detaliate diagramele de clase și exemplificate diagramele de interacțiune pentru completarea atributelor si metodelor claselor.”

Figura 20 – Identificarea entităților modelului de date

Reprezentarea asocierilor se face diferențiat, tinând cont de grad și de cardinalități. În continuare este prezentată diagrama Enitate – Asociere precum și atributele entităților.

Figura 21 – Diagrama Entitate – Asociere și Identificarea atributelor entităților

Prin reprezentarea entităților și asocierilor care alcătuiesc modelul conceptual în termenii specifici modelului relațional, adică tabele, chei primare, chei externe și câmpuri, facem referire, în primă fază, la elaborarea modelului logic.

Figura 22 – Schema logică a bazei de date

3.3 Proiectarea interfețelor utilizator

Proiectarea interfețelor utilizator aduc proiectanțiilor o reala problemă și anume că aceștia trebuie să țină cont de nevoil, capacitățile și experiența utilizatorului. Astfel pentu o proiectare bună a interfeței, utilizatorul trebuie direct implicat în acest proces. Proiectanții pun la dispoziție utiliatorului un prototip al interfeței, așteptând un feedback pentru îmbunătățirea ei.

Figura 23 – Diagrama interfețelor cu utilizatorul

Diagrame de component

“Diagrama componentelor adună informațiile din diagrama claselor pentru a crea componentele. Diagrama componentelor modelează dependent componentei software in funcție de codul sursă, codul binar și componentele executabile.” [SAAV08]

Figura 25 – Diagrame de componente

3.6 Diagrama de desfășurare

“Diagrama de desfășurare modelează procesoare și echipamentele fizice, securitatea și componentele care sunt plasate pe procesoarele fizice.”

“Diagrama de desfasurare reprezintă partiționarea componentelor și a obiectelor active pe locația lor fizică. Acest tip de diagramă detaliază locul de amplasare a componentelor în cadrul infrastructurii sistemului. Cel mai adesea sunt definite mai multe diagrame de desfășurare independete.” [SAAV08]

Figura 26 – Diagrama de desfășurare

BIBLIOGRAFIE:

[LUCA13] Lungu, C., Caraiani, C., Dascălu, C., Introducere în contabilitate, Editura ASE, București, 2013

[ZADE74] Zadeh, L. A., Notiunea de sistem, subsistem si stare in teoria sistemelor, Editura Tehnica, București, 1974

[LUNG05] Lungu, I., Metodele de dezvoltare a sistemelor informatice, Editura Universitas, Petroșani, 2005

[STBO12] Stoica, M., Bodea, C. N., Ghilic-Micu, B., Mircea, M., Managementul sistemelor informaționale, Editura ASE, București, 2012

[LUBA07] Lungu, I., Bara, A., Sisteme informatice executive, Editura ASE, Bucuresti, 2007

[PHP1] "PHP Usage Stats". 2013-04-01.

[PHP2] "History of PHP and related projects". The PHP Group

[MySQL1] "Changes in MySQL 5.6.12". MySQL 5.6 Reference Manual. Oracle. 3 June 2013

[MySQL2] "MySQL: Project Summary". Ohloh. Black Duck Software. 17 September 2012.

[MySQL3] "What is MySQL?". MySQL 5.1 Reference Manual. Oracle. 17 September 2012. "The official way to pronounce “MySQL” is “My Ess Que Ell” (not “my sequel”)"

[MySQL4] Schumacher, Robin; Lentz, Arjen. "Dispelling the Myths". MySQL AB. Archived from the original on 6 June 2011. 17 September 2012.

[HTML1] HTML 4 — Conformance: requirements and recommendations. W3.org. 2012-02-16.

[CSS1] "What is CSS?". World Wide Web Consortium. December 2010.

[CSS2] "W3C CSS validation service"

[SYMF1] http://symfony.com/doc/current/index.html

[SAAV08] Sabau, G., Avram, Vasile, Baze de date, Editura Matrix Rom, Bucuresti, 2008

[ZAST14] Zaharie, D., Stancu, V., Dezvoltarea sistemelor informatice de gestiune, Editura Ase, Bucuresti, 2014

[BOTHA14] Botha, I., Integrarea tehnologiilor web cu bazele de date relational-obiectuale in contextual noii economii, Editura Ase, Bucuresti, 2014

Similar Posts