Conținut licență

of 44/44
Cuprins Introducere .................................................................................................................................................10 1. Analiza domeniului de cercetare...........................................................................................................12 1.1 Descrierea sistemelor existente ...........................................................................................................12 2. Dezvoltarea sistemului ................................................................................................................................. 17 2.1 Descrierea structurii sistemului...........................................................................................................17 2.2 Descrierea softului utilizat ..................................................................................................................21 2.2.1 Descrierea NetBeans IDE ................................................................................................................ 22 2.2.2 Descrierea Android Studio .............................................................................................................. 22 2.2.3 Descrierea Enterprise Architect ....................................................................................................... 23 3. Proiectarea și implementarea sistemului ...................................................................................................... 25 3.1 Tehnologii utilizate .............................................................................................................................25 3.2 Documentul cerințelor de sistem ........................................................................................................27 3.3 Proiectarea sistemului de intercomunicare mobil - desktop ...............................................................28 3.3.1 Diagramele de clase ale aplicației desktop ...................................................................................... 28 3.3.2 Diagramele de clase ale aplicației Android ..................................................................................... 31 3.3.3 Diagramele de activitate ale aplicației desktop ............................................................................... 35 3.3.4 Diagramele e activitate ale aplicației Android ................................................................................ 37 4. Organizarea economică................................................................................................................................ 39 4.1 Scopul realizării proiectului și cercetări de marketing ........................................................................39 4.2 Plan calendaristic .................................................................................................................................39 4.3 Analiza SWOT .....................................................................................................................................42 4.4 Calculul indicatorilor economici..........................................................................................................43 4.4.1 Bugetul.............................................................................................................................................. 43 UTM 526.1.260 ME Mod. Coala Nr. document Semnat. Data Elaborat Sistem de intercomunicare mobil - desktop Litera Coala Coli Conducător 8 51 Consultant UTM FE C - 112 Contr. norm. Aprobat
  • date post

    16-Feb-2016
  • Category

    Documents

  • view

    45
  • download

    1

Embed Size (px)

description

Continutul tezei de licența

Transcript of Conținut licență

  • Cuprins

    Introducere .................................................................................................................................................10

    1. Analiza domeniului de cercetare ...........................................................................................................12

    1.1 Descrierea sistemelor existente ...........................................................................................................12

    2. Dezvoltarea sistemului ................................................................................................................................. 17

    2.1 Descrierea structurii sistemului...........................................................................................................17

    2.2 Descrierea softului utilizat ..................................................................................................................21

    2.2.1 Descrierea NetBeans IDE ................................................................................................................ 22

    2.2.2 Descrierea Android Studio .............................................................................................................. 22

    2.2.3 Descrierea Enterprise Architect ....................................................................................................... 23

    3. Proiectarea i implementarea sistemului ...................................................................................................... 25

    3.1 Tehnologii utilizate .............................................................................................................................25

    3.2 Documentul cerinelor de sistem ........................................................................................................27

    3.3 Proiectarea sistemului de intercomunicare mobil - desktop ...............................................................28

    3.3.1 Diagramele de clase ale aplicaiei desktop ...................................................................................... 28

    3.3.2 Diagramele de clase ale aplicaiei Android ..................................................................................... 31

    3.3.3 Diagramele de activitate ale aplicaiei desktop ............................................................................... 35

    3.3.4 Diagramele e activitate ale aplicaiei Android ................................................................................ 37

    4. Organizarea economic ................................................................................................................................ 39

    4.1 Scopul realizrii proiectului i cercetri de marketing ........................................................................39

    4.2 Plan calendaristic .................................................................................................................................39

    4.3 Analiza SWOT .....................................................................................................................................42

    4.4 Calculul indicatorilor economici..........................................................................................................43

    4.4.1 Bugetul.............................................................................................................................................. 43

    UTM 526.1.260 ME Mod. Coala Nr. document Semnat. Data Elaborat

    Sistem de intercomunicare mobil - desktop

    Litera Coala Coli

    Conductor 8 51

    Consultant UTM FE

    C - 112 Contr. norm. Aprobat

  • 4.4.2 Uzura activelor pe termen lung ........................................................................................................ 44

    4.4.3 Consumuri directe privind retribuirea muncii...................................................................................44

    4.4.3 Costul de producie ...........................................................................................................................46

    5. Concluzii ...................................................................................................................................................... 48

    6. Bibliografie ................................................................................................................................................... 49

    ANEXA 1 Diagrama de clase a modului Communication. .............................................................................. 50

    ANEXA 2 Diagrama de activiti pentru Trimiterea mesajului. ...................................................................... 51

    ANEXA 2 Diagrama Gantt. ............................................................................................................................ 512

    UTM 526.1.260 ME Coala

    9 Mod Coala Nr. document Semnat. Data

  • Introducere

    n zilele noastre comunicarea utiliznd telefonul, calculatorul, tabletele este ceva frecvent ntlnit i de

    nenlocuit. Oricnd n timpul zilei poi transmite un mesaj, telefona, face un video apel, te poi plimba pe net,

    etc. toate astea sunt posibile datorit implementrii protocoalelor de comunicare ntre dispozitive.

    Comunicare ntre dispozitive presupune diferite standarde, nu doar de prelucrare a datelor ct i de

    vizualizare a lor.

    Cu apariia WiFi-lui pe dispozitivele mici, cum ar fi telefoanele, posibilitatea de a comunica prin

    intermediul internetului cu dispozitivele de dimensiuni mici s-a uurat semnificativ. Actualmente sunt

    miliarde de dispozitive care utilizeaz standardul WiFi de acces n reea, ncepnd cu telefoanele i finisnd

    cu computerele.

    Dimensiunile diferite ale dispozitivelor presupune diferite forme de manipulare cu ele. Evoluia

    manipulrii cu dispozitivele de comunicare este un proces inevitabil care va afecta i mai mult structura

    transmiterii de date. Un exemplu al evoluiei manipulrii cu dispozitivele mici este procesul handover sau

    handoff, ceea ce reprezint transferul de apeluri i date de la telefon la un computer (tablet, alt telefon, etc)

    printr-un canal n reea.

    Rezultatul implementrii acestui proiect va fi o aplicaie la baz creia va fi implementat procesul

    handover/handoff, fiind ataat unui canal de comunicare dintre un computer i un telefon mobil cu Android

    OS. Aplicaia de pe telefon va avea funcia de transmite a controlului asupra funciilor de baza ale telefonului

    spre manipularea acestora de ctre aplicaia de pe computer.

    Filosofia aplicaiilor de acest gen este reducerea maxim posibil a manipulrii directe cu telefonul,

    permind utilizarea funciilor lui fr atingere. Telefonul se poate afla n aceeai reea ca i computerul, sau

    n reele diferite, aceast posibilitatea va fi oferit de plasticitatea metodelor de interconectare a sistemului.

    Eficiena acestui tip de aplicaii:

    1. Utilizarea ei cnd telefonul este la ncrcat la ceva distan de computer i manipularea cu el este

    practic imposibil.

    2. Aflarea la distan de telefon, chiar i zeci de kilometri, dar cu o conexiune de internet.

    3. Utilizarea telefonului atunci cnd suntei nafara zonei de acoperire (dar telefonul se afl n zone de

    acoperire) prin intermediul aplicaiei.

    La baza proiectului sunt dou aplicaii, una din ele este pe computer iar cealalt pe telefon. Dup cum

    cunoatem Android OS este o sistem de operare scris n Java, acelai limbaj este folosit i la crearea

    aplicaiei pe computer. Deci cauze legate de programare sunt:

    UTM 526.1.260 ME Coala

    10 Mod Coala Nr. document Semnat. Data

  • 1. Aprofundarea cunotinelor n limbul Java.

    2. Cunoaterea metodelor de programare pe platforma Android.

    Conform denumirii temei cauzele sunt:

    1. Implementarea protocoalelor ce comunicare prin reea.

    2. Crearea unui canal de comunicare pe baza soclurilor TCP.

    3. Utilizarea metodei de transmitere a mesajelor broadcast n procesul de conectare.

    4. Implementarea procesului handoff/handover.

    Piaa aplicaiilor pe platforma Android este n continu cretere, ceea ce motiveaz dezvoltarea i crearea

    aplicaiilor pentru a suplini absena sau necesitile pieei. Alegerea acestei teme posed o bun perspectiv

    de angajare n viitor ca dezvoltator Android, sau Java. Ca fiind un tip nou de aplicaie ce reprezint un

    domeniu parial necunoscut, deci are un potenial enorm de dezvoltare.

    UTM 526.1.260 ME Coala

    11 Mod Coala Nr. document Semnat. Data

  • 1. Analiza domeniului de cercetare

    Conform introducerii, aplicaia va ocupa un spectru relativ ngust al pieei ce necesit acest tip de

    serviciu, deci este nevoie de a cunoate specificaiile acestui tip de aplicaie pentru proiectarea i

    implementarea corect a sistemului ce va putea oferi o concurena adecvat.

    Handoff/Handover se mparte n dou tipuri:

    1. Hard reprezint transferul canalului de comunicare dintre telefon i antena GSM ctre o alt anten

    GSM, numai dup distrugerea canalului cu prima anten GSM. Astfel de transfer mai este numit i

    break before make. Handoff/Handover ul hard este destinat de a fi instantaneu, cu scopul de a

    reduce la minim perturbarea apelurilor. Un transfer de la o anten la alta n timpul apelului este greu

    de realizat deoarece el nu este un eveniment de reea. Cnd un telefon se afl ntre dou antene, el

    poate comunica cu ambele din ele, crend i distrugnd canale de comunicare, acest fenomen se mai

    numete ping pong.

    2. Soft reprezint utilizarea canalelor de comunicare att cu antena 1 GSM ct i cu antena 2 GSM n

    paralel pentru o perioad de timp, astfel se stabilete conexiunea cu antena 2 GSM nainte de

    distrugerea canalului de comunicare cu antena 1 GSM, acest tip de handoff/handover se numete

    make before brake. Intervalul n care dou conexiuni sunt utilizate n paralel poate fi scurt sau de

    o durat semnificativ. Din acest motiv handover/handoff ul soft poate fi perceput ca un eveniment

    de reea. Handover/Handoff ul soft poate folosi conexiunea la mai multe antene paralel. Cnd un

    apel de intrare apare atunci pentru comunicare este ales cel mai fiabil canal, sau pot fi utilizate mai

    multe canale concomitent pentru a produce o copie mai clar a semnalului

    De asemenea handover/handoff ul poate fi clasificat n dependena de tehnica utilizat

    1. Handover/Handoff controlat de reea

    2. Asistent handover/handoff pentru telefon mobil

    3. Handover/Handoff controlat mobil

    1.1 Descrierea sistemelor existente

    O categorie nou n conceptul de handoff/handover sunt aplicaiile handoff/handover, care realizeaz

    transferul de servicii i date ctre o aplicaie pe un alt dispozitiv.

    Actual sunt doi reprezentani ai acestei categorii pe pia:

    1. AirDroid 3 (Android OS)

    2. Continuity (iOS)

    UTM 526.1.260 ME Coala

    12 Mod Coala Nr. document Semnat. Data

  • AirDroid 3 este un rspuns comercial la tehnologia Continuity a companiei Apple. Este o aplicaie de tip

    handoff/handover ce uureaz manipularea cu telefonul mobil pe baz de Android OS. Aplicaia desktop

    AirDroid este disponibil pe Windows, Mac si Linux, de asemenea este i aplicaia pe Android OS ce se poate

    descrca de pe Google Play.

    Metodele de interconectare afecteaz foarte mult comoditatea utilizrii sistemului, AirDroid se poate

    interconecta prin dou metode:

    1. Direct conexiunea se realizeaz pe baza scanrii reelei de ctre aplicaia de pe calculator, dup

    care are loc schimbul de date de conectare cu clientul gsit i interconectarea aplicaiilor.

    Figura 1.1 Schema conectrii direct AirDroid 3.

    2. Remote n acest caz pentru realizarea conexiuni este nevoie de date adugtoare, cum ar fi adresa IP

    i portul de comunicare cu dispozitivul ce se afl n alt subreea dect cea local.

    Figura 1.2 Schema conectrii remote AirDroid 3.

    UTM 526.1.260 ME Coala

    13 Mod Coala Nr. document Semnat. Data

  • Prin interconexiune direct se subnelege interconectarea dispozitivelor ce se afl n aceeai reea, adic

    au un router sau nod de reea comun.

    Procesul de comunicare are loc astfel:

    Figura 1.3 Schema procesului de comunicare n AirDroid 3.

    Printre funcionaliti ale AirDroid 3 se enumer:

    1. Citirea/Scrierea mesajelor

    2. Oglindirea notificrilor

    3. Preluarea apelurilor

    4. Conectarea mai multor dispozitive concomitent

    Continuity pe iOS care are suport odat cu iOS 8 i OS X Yosemite, este o aplicaie de tip

    handoff/handover care este specific doar dispozitivelor de la Apple, cum ar fi iPhone, iPan i iPod. Suportul

    acestui sistem de ctre dispozitivele de la Apple nu necesit aplicaii tere, tot este inclus n sistema de

    operare.

    Comparativ cu AirDroid 3 Continuity are un alt proces de interconectare, care include conectarea la

    iCloud pentru verificare ID lor dispozitivelor ce doresc interconectarea. Doar dispozitivele cu ID ul

    nregistrat sub un singur utilizator pot fi interconectate, n caz contrar interconexiunea va fi respins.

    Continuity suport doar conectarea direct, adic suport la conectarea remote nu este. Acesta este un

    minus al acestui sistem.

    UTM 526.1.260 ME Coala

    14 Mod Coala Nr. document Semnat. Data

  • Figura 1.4 Schema procesului de conectare n Continuity.

    Continuity suport conexiunea la mai multe dispozitive concomitent. Procesul de comunicare arat astfel:

    Figura 1.5 Schema procesului de comunicare n Continuity.

    Printre principalele funcionaliti ale sistemului Continuity se enumer:

    1. Preluarea apelurilor

    2. Citirea/Scrierea mesajelor

    3. Primirea/Trimiterea email lor

    UTM 526.1.260 ME Coala

    15 Mod Coala Nr. document Semnat. Data

  • 4. Sincronizarea activitii

    Aplicaiile de acest gen actual nu prea au concuren. Din motive de securitate pe Android e imposibil de

    capturat fluxul audio de intrare, ceea ce face necesar manipularea cu telefonul n timpul unui apel de

    intrare/ieire. La aplicaiile actuale pe Android se evideniaz lipsa suportului la dou cartele SIM, ceea ce

    este cauzat de lipsa suportului din partea Android SDK 4.*, asta motiveaz creare acestui sistem utiliznd

    Android SDK 5.* care are suport la 2 cartele SIM dar are o rat mic de utilizare.

    UTM 526.1.260 ME Coala

    16 Mod Coala Nr. document Semnat. Data

  • 2. Dezvoltarea sistemului

    Conform capitolului doi aa un sistem va fi rezonabil de realizat utiliznd un singur limbaj de programare

    i un SDK cu o rat mare de utilizare. Ar trebui s fie prezent o interfa simpl si intuitiv, n mare parte

    designul va trebui s arate ca pe telefon pentru evitarea eventualele incertitudini de utilizare a aplicaiei. Un

    plus mare va fi prestarea sistemului ca un proiect open source, ce va da posibilitatea utilizatorilor avansai de

    schimbe sistemul dup dorina lor.

    2.1 Descrierea structurii sistemului

    Sistemul va fi compus din dou aplicaii, una pe computer, alta pe telefon. Aplicaiile vor utiliza un canal

    de reea pentru comunicare, ce va fi oferit de un router.

    Figura 2.1 Schema structurii sistemului.

    Aplicaia desktop este mprit pe module conform pattern-lui MVC. Orice comunicare cu alte

    dispozitive este realizat n fundal i nu afecteaz procesul interfeei grafice lipsind aplicaia de frnri din

    cauza excepiilor aprute la transmiterea/primirea datelor. Pattern ul MVC este impus de Java FX ca un

    standard de elaborare a aplicaiilor.

    Componentele structurale de baz ale aplicaiei sunt:

    1. Interfaa grafic

    2. Clasa controller

    3. Entitile

    UTM 526.1.260 ME Coala

    17 Mod Coala Nr. document Semnat. Data

  • Figura 2.2 Schema structurii aplicaiei desktop.

    Modulul view conine interfaa grafic de comunicare cu utilizatorul. Aici va fi posibil selectarea

    dispozitivului conectat, vizualizarea volumului bateriei, lista de contacte, forma de scriere a mesajelor,

    pagina de vizualizare a mesajelor. De asemenea modulul view conine forma de conexiune remote.

    Modulul model conine entitile de intercomunicare al sistemului, aici mai sunt i asculttoarele de

    evenimente.

    Modulul controller este cel ce implementeaz toate funcionalitile acestui sistem, n el are loc

    deserializarea datelor primite prin soclul de comunicare i serializarea lor nainte de transmitere, aici are loc

    procesarea i ndeplinirea comenzilor primite de la telefon, primirea i trimiterea obiectelor ce reprezint

    pachete de comunicare. Aici va avea loc generarea comenzilor de vizualizare a notificrilor i captarea

    informaiei din forma de scriere a mesajelor.

    Modulul controller este singurul ce este construit din mai multe module, printre care:

    1. Modulul comunicare reea.

    2. Modulul criptare date.

    3. Modulul broadcast.

    4. Modulul procesare mesaje.

    Funcionalitile sistemului cu care poate interaciona utilizatorul pot fi redate prin diagrama cazurilor de

    utilizare. Aceast diagram privete sistemul ca un tot ntreg, i funcionalitile oricrui modul cu care

    utilizatorul interacioneaz sunt atribuite sistemului.

    cmp System structure

    Controller

    ModelView

    UTM 526.1.260 ME Coala

    18 Mod Coala Nr. document Semnat. Data

  • Figura 2.3 Diagrama cazurilor de utilizare a aplicaiei desktop.

    Aplicaia pe telefon este minimalist n privina interfeei grafice, deoarece ea se reduce la utilizarea

    serviciilor de fundal ce nu au nevoie de interfa grafic. Aplicaia Android poate fi nchis dup realizarea

    conexiuni, deoarece dup conexiune necesitate n prezenta ei nu este. Desigur dup necesitate se poate de

    pornit aplicaie pentru, de exemplu de modificat numele dispozitivului, ceea ce nu va afecta funcionalitatea

    aplicaiei. Structura aplicaiei Android este diferit de cea de pe computer, asta este cauzat de structura

    aplicaiilor destinate platformei Android.

    Componentele structurale de baz ale aplicaiei sunt:

    1. Interfaa grafic

    2. Modulul de comunicare

    3. Serviciul Android ce ruleaz n fundal

    4. Entitile

    uc Use Case Desktop

    User

    Sending message

    View message

    View ocntact list

    Find my phone

    View phone battery status

    Change dev ice

    UTM 526.1.260 ME Coala

    19 Mod Coala Nr. document Semnat. Data

  • Figura 2.4 Schema structura aplicaiei Android.

    Modulul interfeei grafice va avea dou funcii care le va pute ndeplini, una este legat de conectarea

    remote i alta este de a schimba numele dispozitivului care va fi afiat n aplicaia desktop.

    Modulul de comunicare incorporeaz toate tipurile de comunicare care le realizeaz aplicaia. Aici avem

    submodulul de broadcast, ce realizeaz scanarea reelei n cutarea aplicaiilor client sau server. Aici se afl

    i un soclu TCP ce va realiza o conexiune persistent cu aplicaia de pe computer ce are un soclu de server

    pornit n ea.

    Modulul cu entiti reprezint o colecie de clase derivate de la clasa CommunicationPacket care este un

    obiect serializabil, i este singurul tip de obiect care poate fi trimis prin modulul de comunicare.

    Modulul de serviciu reprezint o clas ce extinde clasa Service din Android SDK. Extinderea acestei

    clase permite realizarea operaiilor de lung durat n fundal. Serviciul dat conduce cu modulul de

    comunicare, trimind i primind pachete, de asemenea el poate prelucra pachetele oferind informaie ctre

    sursa pachetului, n dependen de necesitate. Serviciul va anuna aplicaia pe computer n cazul apariiei

    unui mesaj, unui apel de intrare, va distribui volumul bateriei. De asemenea serviciul poate s trimit

    mesajele n reeaua GSM la comanda aplicaiei desktop.

    cmp Phone aplication structure

    User interface

    Communication module

    Entities

    Serv ice

    UTM 526.1.260 ME Coala

    20 Mod Coala Nr. document Semnat. Data

  • Fiind o aplicaie care predominant ruleaz n fundal, aplicaia pe Android nu va dispune de un numr

    mare de cazuri de utilizare.

    Figura 2.5 Diagrama cazurilor de utilizare a aplicaiei pe Android.

    2.2 Descrierea softului utilizat

    Pentru crearea acestui sistem s-a utilizat un singur limbaj de programare, acesta este limbajul Java. A fost

    utilizat nu doar din cauza c este un limbaj cunoscut de programator, ci i din cauza c este limbajul utilizat

    la crearea aplicaiilor pe Android. Din aceste considerente au fost alese dou medii de dezvoltare.

    Pentru dezvoltarea sistemului a fost folosit un set de IDE-uri. IDE-le sunt medii de dezvoltarea a

    aplicaiilor. IDE-le pe lng editorul de text ncorporat au i un mediu de testare, compilare, depanare i

    generarea de documentaiei a proiectului. De obicei mediile de dezvoltare apeleaz compilatoare sau

    interpretoare, care la rndul su pot veni cu pachetul de instalare al IDE-lui, sau necesit o instalare aparte.

    Ca medii de dezvoltare au fost alese:

    1. NetBeans IDE 8.0.2.

    2. Android Studio 1.2.1.1.

    uc Use Case Phone

    User

    Change dev ice name

    Remote connection

    Disconnect

    Enter connection data

    UTM 526.1.260 ME Coala

    21 Mod Coala Nr. document Semnat. Data

  • 2.2.1 Descrierea NetBeans IDE NetBeans este un mediu de dezvoltare total gratuit, cu sursa deschis, indiferent de platform cu suport

    implicit pentru limbajul Java. El permite dezvoltarea aplicaiilor pe module, ceea ce-l face extrem de comod

    la realizarea proiectelor de dimensiuni mari. Aplicaiile elaborate cu ajutorul IDE - lui NetBeans pot fi

    extinse de dezvoltatori ter, ceea ce ofer plasticitate aplicaiilor i reduce din timpul dezvoltatorilor la

    extinderea lor.

    NetBeans IDE de asemenea are suport lexicografic pentru limbajele PHP, C/C++ i HTML. Popularitatea

    lui a crescut mult datorit feedback ului din partea comunitii i apariiei distribuiilor la timp a platformei,

    plus NetBeans este dezvoltat de compania Oracle, care deine drepturile de dezvoltator al limbajului Java.

    NetBeans IDE este scris n Java, deci orice dezvoltator Java, poate s-l extins cu extensiile lui personale

    create n Java. Versiunea standard de NetBeans nu necesit JDK pentru nceperea dezvoltrii aplicaiilor

    utiliznd biblioteca Swing, aceasta se datoreaz limbajului de dezvoltare.

    Mediul de dezvoltare NetBeans IDE vine cu un set de servicii reutilizabile, printre care sunt:

    1. Amenajarea interfeei grafice.

    2. Managementul setrilor utilizatorului.

    3. Managementul stocrii fiierelor.

    4. Amenajarea ferestrelor de lucru.

    5. Un cadru wizard, pentru crearea proiectelor.

    6. O librrie vizual.

    7. Utilite de dezvoltare integrate.

    2.2.2 Descrierea Android Studio Android Studio este un IDE pentru dezvoltarea aplicaiilor pe platforma Android. El este bazat pe mediul

    de dezvoltare JetBrains de la IntelliJ IDEA, i este destinat n special pentru dezvoltarea aplicaiilor pe

    Android. Android Studio este indiferent de platform, i poate fi instalat pe Windows, Mac i Linux. El

    substituie complet Eclipse Android Development Tool (ADT) ca IDE-ul primar recomandat de Google

    pentru dezvoltarea aplicaiilor pe Android.

    Principalele funcionaliti care vin cu Android Studio sunt:

    1. Vizualizarea activ a designul-lui .

    2. Suportul Gradle la crearea proiectelor.

    3. Reorganizarea structurii codului.

    4. Sistem de detectare a codului redundant i a erorilor.

    UTM 526.1.260 ME Coala

    22 Mod Coala Nr. document Semnat. Data

  • 5. Cadru wizard cu abloane de design.

    6. Un editor de design bogat cu posibilitatea crerii design-lui utiliznd metoda drag-and-drop.

    7. Suport la versiunile de android samrtwatch.

    8. Suport implicit pentru platforma Google Cloud.

    Android Studio vine i cu un emulator al dispozitivelor pe platforma Android. Emulatorul permite

    dezvoltarea i testarea aplicaiilor Android fr utilizarea unui dispozitiv fizic. Emulatorul utilizeaz aceeai

    motorica de manipulare ca pe un dispozitiv fizic, el simuleaz total funcionalitatea dispozitivului fizic.

    Principalul dispozitiv cu care se poate de manipulat emulatorul este mouse-ul care vine pe post de deget.

    Pentru testare flexibil a aplicaiei, emulatorul vine cu posibilitatea de creare mai multor profiluri de emulare,

    n care se pot seta specificaii diferite pentru dispozitive diferite.

    Dac aplicaia a rulat pe emulator, atunci ea cu siguran c va rula i pe un dispozitiv fizic. Emulatorul

    permite utilizarea clasei Service, ct i claselor ce o extind. El mai permite accesul la reea si redarea

    fiierelor audio i video.

    Emulatorul mai conine i diferite capaciti de depanare a aplicaiei, aa ca consola n care se pot scrie

    comenzi kernel, simula ntreruperi si efectul de laten a reelei.

    Emulatorul Android suport mai multe tipuri de configurri hard gsite n dispozitivele pe piaa

    autohton, printre care sunt:

    1. Procesoarele ARMv5, ARMv7 sau procesoare cu arhitectura x86.

    2. Display cu culori de 16 bii.

    3. Una sau mai multe tastiere.

    4. Un cip audio cu intrri i ieiri.

    5. Memorie de tip flash.

    6. Modem GSM, care include cartel SIM.

    7. O camer de luat vederi, care va fi emulat de un webcam.

    8. Sensor ca accelerometru, datele sunt luate de la un dispozitiv Android conectat prin USB.

    2.2.3 Descrierea Enterprise Architect Pentru proiectarea i modelarea vizual a sistemului am folosit utilita Enterprise Architect care este

    bazat pe standardul OMG UML. Am ales aceast utilit din cauza cursurilor anterioare de Ingineria

    Programrii la care a fost folosit intens. Este o utilit destul de comod i aparent plcut, oferind o

    manipulare cu funcionalul ei destul de comod, plus pachetul de instalare nu e tare voluminos..

    A fost aleas utilita Enterprise Architect versiunea 7.5, care suport:

    UTM 526.1.260 ME Coala

    23 Mod Coala Nr. document Semnat. Data

  • 1. Construcia i design-ul sistemelor software

    2. Modelarea proceselor funcionale

    3. Modelarea domeniilor industriale

    Utilita este utilizat nu doar pentru modelarea arhitecturii sistemelor ci i pentru monitorizarea proceselor

    de implementare a modulelor pn la realizarea complet a sistemului.

    UML ofer posibilitatea modelrii a tuturor aspectelor organizaionale pe lng posibilitile de creare a

    design-ului i implementrii sistemelor noi ct i extinderea celor existente.

    Enterprise Architect pe lng standardul UML mai suport i:

    1. SysML.

    2. BPMN.

    3. BPEL.

    4. ScaML.

    5. SPEM.

    6. WSDL.

    7. XSD.

    8. DDS.

    9. ArchMate.

    10. Geography Markup Language.

    11. ODM, OWL and RDF.

    Modelarea UML are cteva aspecte care sunt suportate de majoritatea utilitelor de proiectare. Enterprise

    Architect suport un set de aspecte strns legate de UML, care sunt:

    1. Profilurile.

    2. Pattern-urile.

    3. MOF (Meta-Object Facility).

    4. Limbajul de constrngeri al obiectelor.

    5. MDA (Model-Driven Architecture).

    6. COBRA (Common Object Request Broker Architecture).

    UTM 526.1.260 ME Coala

    24 Mod Coala Nr. document Semnat. Data

  • 3. Proiectarea i implementarea sistemului

    Implementarea sistemului se bazeaz pe cteva lucruri importante, printre ele sunt proiectarea i softul

    utilizat la implementarea lui, toate acesta au fost descrise n capitolul doi. n acest capitol va fi descris

    sistemul din punct de vedere al proiectrii i a eventualei implementri.

    3.1 Tehnologii utilizate

    Pentru o viziune mai clar asupra proceselor ce se petrec n interiorul sistemului, este necesar de aduce la

    cunotin protocoalele utilizate la comunicare ntre aplicaii

    1. Protocolul UDP

    2. Protocolul TCP

    Protocolul UDP este un membru al familiei de protocoale la baza crora este protocolul IP. El a fost

    proiectat n 1980 de ctre David Reed, i formal definit n RFC 768. Protocolul UDP este un simplu model

    de transmitere a datelor, fr conexiune, cu un numr redus de aciuni la transmitere. Nu duce dialoguri

    handshaking, i astfel este lipsit de orice form de fiabilitate a canalului de reea. Acest protocol nu

    garanteaz sub nici o form livrarea datelor ctre receptor. UDP ofer sume de control pentru integritatea

    datelor, numere de port pentru comunicarea cu receptorul i adresa receptorului.

    Utiliznd protocolul UDP aplicaiile pot trimite datagrame ctre un calculator din reea fr a ncheia cu

    el o conexiune. UDP este potrivit pentru utilizarea n condiii unde corectarea i verificarea ordinii pachetelor

    nu este strict necesar. Aplicaiile sensibile la timp deseori folosesc acest protocol deoarece n conexiunile

    persistente n cazul pierderii pachetelor cererea i confirmarea consum mult timp.

    Acest protocol posed nite atribute care-l face util pentru anumite aplicaii:

    1. Este un protocol orientat pe tranzacie, pentru operaii de interogare rspuns cum ar fi serviciul

    DNS.

    2. Utilizarea datagramelor ofer posibilitatea de modelare a protocoalelor cum ar fi tunelul IP sau

    Remote Procedure Call i Network File System.

    3. Este simplu, potrivit pentru procesul de bootstrap sau n alte scopuri, fr o stiv complet cum ar fi

    DHCP sau TFTP.

    4. Este apatrid, potrivit pentru un numr foarte mare de clieni, cum ar fi aplicaii media de exemplu,

    IPTV streaming.

    5. Lipsa ntrzierii de retransmitere l face util pentru aplicaii n timp real cum ar fi Voice over IP,

    jocuri online, si pentru multe protocoale construite deasupra la Streaming Protocol.

    UTM 526.1.260 ME Coala

    25 Mod Coala Nr. document Semnat. Data

  • 6. Funcioneaz bine n comunicarea unidirecional, potrivit pentru broadcast i scanarea reelei n

    cutarea serviciilor de reea.

    Numeroase aplicaii de pe internet folosesc UDP, prin ele se includ serviciul DNS, unde interogrile

    trebuie s fie ct mai rapide posibile, i sunt compuse dintr-o singur interogare i un singur pachet de

    rspuns, mai este utilizat n Simple Network Management Protocol (SNMP), n Routing Information

    Protocol (RIT) i n Dinamic Host Configuration Protocol (DHCP).

    Transferul video i audio n general este realizat utiliznd protocolul UDP. Protocoalele ce se ocup cu

    transmiterea informaiei video i audio n timp real sunt pregtite pentru pierderile ocazionale de pachete, ca

    rezultat se obin pierderi minime din calitatea informaiei.

    Protocolul TCP la fel este un membru al familiei de protocoale la baza crora este protocolul IP. Este

    originar nc de la implementarea iniial a reelei internet, unde a completat protocolul IP. Prin urmare un

    pachet TCP are denumirea specific TCP/IP. Protocolul TCP ofer siguran, ordine, i verificarea erorii de

    livrare la transmiterea pachetelor. Aplicaiile de pe internet ca World Wide Web, e-mail, administrarea de la

    distanta i transferul de fiiere se bazeaz pe utilizarea acestui protocol.

    Prima apariie a acestui protocol se dateaz n mai 1974 sub numele de protocol for Packet Network

    intercomunication autorii cruia sunt Vint Cerf i Bob Kahn, el descria un proces de comunicare ntre

    computere utiliznd schimbul de pachete prin nodurile de comunicare. Componenta de control n acest model

    a fost Transmision Control Program care ncorpora att legturi orientate pe conexiune ct i servicii de

    transfer de date ntre gazde. Transmision Control Program a fost ulterior divizat ntr-o arhitectur modular

    care era constituita din Transmision Control Protocol fiind un protocol orientat pe conexiune i Internet

    Protocol. Acest model a devenit cunoscut informal ca TCP/IP, dei a fost numit Internet Protocol Suite.

    Pentru scanarea reelei la realizarea conexiunii directe dispozitive am avut nevoie de a implementa

    tehnologia de reea ce se numete broadcast. Broadcast-ul reprezint o metod de transmitere a mesajelor

    ctre toi receptorii simultan.

    n reelele de computere, brodcast-ul se refer la transmiterea unui pachet care va fi recepionat de orice

    dispozitiv n reea. n practic broadcast-ul este limitat la domeniul de broadcast, care de obicei este o reea.

    Nu toate tipurile de reele suport aceast tehnologie, de exemplu reele de tip X.25 sau Frame Relay nu

    suport aceast tehnologie. Succesorul protocolului IPv4, IPv6 nc nu suport aceast tehnologie de

    transmitere a pachetelor prin reea, cu scopul de a nu perturba toate nodurile din reea atunci cnd doar cteva

    noduri sunt interesate de acel mesaj.

    Pentru transmiterea mesajelor prin broadcast, nodurile de reea folosesc on adres special, rezervat,

    pentru aa situaii, de obicei ea este reprezentat astfel XXX.XXX.XXX.255, primii trei octei depind de

    configurarea reelei n care are loc procesul de broadcast.

    UTM 526.1.260 ME Coala

    26 Mod Coala Nr. document Semnat. Data

  • Un punct neplcut al acestei tehnologii este c ea poate fi utilizat abuziv pentru realizarea atacurilor de

    tip DoS cu numele de Smurf atac. Atacatorul utiliznd tehnologia trimind pachete ctre toate dispozitivele

    conectate la reea, suprancrcndu-le ulterior ies din funciune.

    Pentru realizarea operaiunilor de lung durat pe platforma Android, aa ca meninerea unei conexiuni

    de reea cu ulterioara utilizare a ei n comunicare cu alte dispozitive s-au folosit Android Services. Un

    Service n Android este o component a unei aplicaii care realizeaz operaiuni de lung durat n fundal i

    nu posed interfaa grafic. Fiind un component al aplicaiei ce poate fi pornit de o alt component, el va

    rula chiar dac utilizatorul va deschide o alt aplicaie dect cea care a creat serviciul.

    Adiional serviciile pot fi atribuite altor aplicaii, pentru a putea manipula cu ele. Serviciile pot fi

    manipulate de alte aplicaii doar n cazul n care el a fost pregtit pentru asta.

    Serviciile pot fi utilizate la redarea fiierelor audio, descrcarea fiierelor de pe internet, transmiterea unui

    email, etc. Toate aste se vor realiza n fundal fr utilizarea unei activiti.

    3.2 Documentul cerinelor de sistem

    Sistemul dat va rula pe dou dispozitive diferite, deci este nevoie de specificat cerinele de sistem minime

    pentru fiecare dispozitiv n parte, plus sistemul utilizeaz conexiune de reea, deci trebuie de specificat ce tip

    de reea este necesar i viteza minim de trafic.

    1. Specificaiile de sistem pentru computer

    a. Sistem de operare Linux, Windows, Mac

    b. Memorie operativ 2 GB

    c. Placa de reea WiFi sau Ethernet

    d. Java jdk instalat

    2. Specificaiile de sistem pentru telefon

    a. Sistem de operare Android

    b. Versiune Android 4 +

    c. Un GB de memorie operativ

    d. Modul compatibil WiFi

    3. Specificaiile de sistem pentru router

    a. Router cu suport pentru oricare alt reea n afar de X.25

    b. Conexiune WiFi

    c. Viteza de comunicare minim de 200 KBit/sec

    UTM 526.1.260 ME Coala

    27 Mod Coala Nr. document Semnat. Data

  • 3.3 Proiectarea sistemului de intercomunicare mobil - desktop

    Proiectarea unui soft este procesul prin care se creeaz specificaia unui sistem software, destinat pentru

    realizarea obiectivelor, folosind un set de componente supuse unor constrngeri. Proiectarea softului se

    implic la rezolvarea problemelor de planificare pentru reducerea timpului i resurselor utilizate la realizarea

    proiectului.

    Aceasta poate include att proiectarea la nivel jos ct i algoritmi de realizare a nivelelor nalte cum ar fi

    design-ul sau arhitectura. Conform standardelor de proiectare, vom ncepe cu cazurile de utilizare ale

    sistemului.

    Cazurile de utilizare a sistemului sunt prezentate n capitolul 2, n figurile 2.3 i 2.5

    Pentru a descrie static un sistem vom construi diagrama claselor, care constituie punctul de plecare n

    construirea altor tipuri de diagrame. Vom prezenta diagrama claselor pe modulele sistemului.

    3.3.1 Diagramele de clase ale aplicaiei desktop Modulul principal al sistemului este alctuit din 3 clase

    1. AddressPack

    2. Crypt

    3. MDIS

    Clasa AddressPack este o clas obiectul creia reprezint un depozit pentru adresa de broadcast i adresa

    dispozitivului.

    Clasa Crypt este o clas static care permite criptarea mesajelor cu scopul trimiterii lor prin canalul de

    comunicare. Aceast clas mai este utilizat i la decriptarea mesajelor, plus, utiliznd expresii regulate

    putem verifica componena mesajului la prezena datelor necesare.

    MDIS reprezint clasa rdcin proiectului.

    Figura 3.1 Diagrama de clase a modului principal.

    Modulul Broadcast al sistemului este alctuit din 4 clase

    1. Broadcast.

    class mdis

    AddressPack

    + broadcast_address: InetAddress {readOnly}+ ip_address: InetAddress {readOnly}

    + AddressPack(InetAddress, InetAddress)+ toString() : String

    Crypt

    - client_pattern: Pattern = Pattern.compile... {readOnly}- datagram_pattern: Pattern = Pattern.compile... {readOnly}- key_offset: byte = 0x04 {readOnly}- random: Random = new Random() {readOnly}

    + byteBaseDecrypt(byte[]) : byte[]+ byteBaseEncrypt(byte[]) : byte[]+ clientName(String) : String+ packetMatche(String) : boolean+ rotateLeft(byte, byte) : byte+ rotateRight(byte, byte) : byte

    ApplicationMDIS

    + server: TCPConnectionServer

    + error(String) : void+ info(String) : void+ start(Stage) : void

    UTM 526.1.260 ME Coala

    28 Mod Coala Nr. document Semnat. Data

  • 2. BroadcastAddress.

    3. BraodcastEmitter.

    4. BroadcastReceiver

    Clasa Broadcast care implementeaz interfaa Runnable i deine principalele metode pentru realizarea

    aciunii de broadcast

    Clasa BroadcastAddress creaz o list de obiecte de tip AddressPack la prima apelare a metodei

    getBroadcastAddress i o ntoarce, la urmtoarele apelri ea doar va ntoarce aceast list.

    Clasa BroadcastEmitter extinde clasa Broadcast permind astfel trimiterea mesajelor broadcast n reea.

    Clasa BroadcastReceiver extinde clasa Broadcast permind astfel ascultarea reele la mesaje broadcast

    pe un anumit port.

    Figura 3.2 Diagrama de clase a modului Broadcast.

    Modulul Client al sistemului este alctuit din 2 clase:

    1. Client.

    2. TCPConnectionServer.

    class Broadcast

    RunnableBroadcast

    # device_name: String# packet_size: short = 40 {readOnly}# port: int# socket: DatagramSocket# socket_timeout: short

    # receive() : DatagramPacket+ run() : void# send(DatagramPacket) : void

    BroadcastAddress{leaf}

    - network_address: ArrayList = null

    - BroadcastAddress()+ getBroadcastAddress() : ArrayList+ reSearchBroadcastAddress() : void

    BroadcastEmitter

    - broadcast_address: InetAddress

    + BroadcastEmitter(int, short, InetAddress)+ BroadcastEmitter(int, short, InetAddress, String)# getBroadcastMessage() : byte[]- getConnectionData() : byte[]# receive() : DatagramPacket+ run() : void# send(DatagramPacket) : void- sendConnectionData(InetAddress) : void

    BroadcastReceiv er

    + BroadcastReceiver(int, short)+ BroadcastReceiver(int, short, String)- getConnectionData() : byte[]# receive() : DatagramPacket+ run() : void# send(DatagramPacket) : void

    UTM 526.1.260 ME Coala

    29 Mod Coala Nr. document Semnat. Data

  • Clasa Client reprezint o structur ce va fi atribuit unui soclu creat la conexiunea unui client, pentru

    realizare unei conexiuni persistente cu un dispozitivul mobil.

    TCPConnectionServer reprezint un server TCP ce ruleaz de la pornirea sistemului pn la oprirea

    aplicaiei desktop. El va returna cte un obiect de tip soclu la realizarea conexiunii cu un dispozitiv.

    Figura 3.3 Diagrama de clase a modulului Client

    Modulul Communication al sistemului este alctuit din 14 clase:

    1. CommunicationPacket.

    2. Command.

    3. Call.

    4. Message.

    5. Close.

    6. MessageStatus.

    7. FindPhone.

    8. BatteryCapacity.

    9. CommandResponse.

    10. IncomingCall.

    11. IncomingMessage.

    12. OutgoingMessage.

    13. SendingMessageStatus.

    14. MessageDeliveryStatus.

    CommunicationPacket este clasa de baz, i este unicul tip de obiect care poate fi trimis prin canalul de

    comunicare. Din aceast cauz s-a realizat o ierarhie de clase ce extind CommunicationPacket pentru

    reducerea numrul de metode de trimitere a obiectelor prin canal.

    class Client

    RunnableClient

    - in: ObjectInputStream- out: ObjectOutputStream- receiver: Thread- socket: Socket

    + Client(Socket)- receive() : CommunicationPacket+ run() : void- send(CommunicationPacket) : void

    RunnableTCPConnectionServ er

    + port: int {readOnly}- server_socket: ServerSocket

    + closeSocket() : void+ run() : void+ TCPConnectionServer()

    UTM 526.1.260 ME Coala

    30 Mod Coala Nr. document Semnat. Data

  • Command este o clas a crui obiect deine o comand ce trebuie ndeplinit de dispozitivul de la cellalt

    capt al canalului.

    Call este o clas a crui obiect deine informaia despre sursa apelului cum ar fi numrul de telefon.

    Message este o clas model ce servete ca baz pentru pachetele de tip Message.

    Close - obiectul de acest tip de clas va reprezenta semnalul de deconectare i oprire a aplicaiei, n

    dependena de sursa dispozitivului.

    MessageStatus este o clas model ce reprezint baza la clasele SendingMessageStatus i

    MessageDeliveryStatus.

    FindPhone este clasa care va fi utilizat la generarea semnalului de gsire a telefonului.

    BatteryCapacity este clasa care fi utilizat la transmiterea valorii capacitii bateriei telefonului.

    CommandResponse este clasa care va servi drept rspuns la o interogare de tip Command ctre

    dispozitiv.

    IncomingCall este o clas a crui obiect va fi generat la un apel de intrare.

    IncomingMessage este o clas a crui obiect va conine informaia despre sursa mesajului i textul

    mesajului.

    OutgoingMessage obiectele de acesta clas vor fi generate la crearea unui mesaj pentru a fi trimis de

    ctre dispozitiv prin reeaua GSM. El va conine adresa destinatarului si textul mesajului.

    SendingMessageStatus un obiect de acest tip va fi generat la transmiterea cu eec sau cu succes al

    mesajului.

    MessageDeliveryStatus un obiect de acest tip va fi generat la livrarea cu succes sau cu eec al

    mesajului.

    NOT: Pentru vizualizarea diagramei de clase pentru modulul Communication consultai ANEXA 1.

    3.3.2 Diagramele de clase ale aplicaiei Android Modulul MDIS este alctuit din 6 clase:

    1. AddressPack.

    2. Crypt.

    3. MDIS.

    4. Person este o clas ce deine informaie despre o persoan ce este nregistrat n contactele

    telefonului.

    5. FindPhoneActivity este o activitate ce va fi utilizat la funcia de gsire a telefonului.

    6. Connection clas utilizat la conectarea cu computerul att la conexiunea de tip remote ct i cea

    direct.

    UTM 526.1.260 ME Coala

    31 Mod Coala Nr. document Semnat. Data

  • Figura 3.4 Diagrama de clase a modului principal al aplicaiei Android.

    Diagrama de clase a modului Broadcast este compus din 5 clase

    1. Broadcast.

    2. BroadcastAddress.

    3. BroadcastEmitter.

    4. BroadcastReceiver.

    5. ConnectionData este o clas ce va pstra datele conexiunii. Informaia despre dispozitivul cu care a

    avut loc conectarea.

    class mdis

    AddressPack

    + broadcast_address: InetAddress {readOnly}+ ip_address: InetAddress {readOnly}

    + AddressPack(InetAddress, InetAddress)+ toString() : String

    Connection

    + connect() : void

    Crypt

    - client_pattern: Pattern = Pattern.compile... {readOnly}- datagram_pattern: Pattern = Pattern.compile... {readOnly}- key_offset: byte = 0x04 {readOnly}- random: Random = new Random() {readOnly}

    + byteBaseDecrypt(byte[]) : byte[]+ byteBaseEncrypt(byte[]) : byte[]+ connectPacketMatch(String) : boolean+ decryptConnectionData(String) : String[]+ packetMatche(String) : boolean- rotateLeft(byte, byte) : byte- rotateRight(byte, byte) : byte

    ActivityFindPhoneActiv ity

    - audio_manager: AudioManager- isChanged: boolean = false- media_player: MediaPlayer- ringer_mode: int- stream_volume_value: int

    # onCreate(Bundle) : void# onDestroy() : void# onStop() : void

    ActivityMDIS

    - port: int- timeout: short

    - checkWiFiConnection() : boolean- enableWiFi() : boolean+ error(String) : void+ getContactMap() : ExtendedHashMap+ info(String) : void# onCreate(Bundle) : void+ onCreateOptionsMenu(Menu) : boolean# onDestroy() : void+ onOptionsItemSelected(MenuItem) : boolean# onStop() : void

    Person

    + name: String {readOnly}+ phone: String {readOnly}

    + Person(String, String)+ toString() : String

    UTM 526.1.260 ME Coala

    32 Mod Coala Nr. document Semnat. Data

  • Figura 3.4 Diagrama de clase pentru modulul Broadcast al aplicaiei Android.

    Diagrama de clase a modului BroadcastReceivers al aplicaiei Android este alctuit din 5 clase:

    1. BatteryBroadcastReceiver acest receiver va duce evidena capacitii bateriei, i la schimbarea

    valorii ei va trimite informaia spre computer.

    2. DeliveryStatusMessageBroadcastReceiver acest receiver va anuna aplicaia desktop despre statutul

    de livrare a mesajului.

    3. IncomingCallBroadcastReceiver acest receiver va anuna aplicaia desktop despre un apel de

    intrare.

    4. IncomingSMSBroadcastReceiver acest receiver va transmite textul mesajului primit la fel ca i

    datele despre sursa lui.

    5. SendStatusMessageBroadcastReceiver acest receiver va monitoriza dac mesajul a fost trimis sau

    nu, i va trimite cauza n caz c nu a fost trimis.

    class Broadcast

    RunnableBroadcast

    # device_name: String# packet_size: short = 40 {readOnly}# port: int# socket: DatagramSocket# socket_timeout: short

    # receive() : DatagramPacket+ run() : void# send(DatagramPacket) : void

    BroadcastAddress

    - network_address: ArrayList = null

    - BroadcastAddress()+ getBroadcastAddress() : ArrayList+ reSearchBroadcastAddress() : void

    BroadcastEmitter

    # broadcast_address: InetAddress

    + BroadcastEmitter(int, short, InetAddress, String)+ BroadcastEmitter(int, short, InetAddress)- capitalize(String) : String# getBroadcastMessage() : byte[]- getDeviceName() : String# receive() : DatagramPacket+ run() : void# send(DatagramPacket) : void

    BroadcastReceiv er

    + BroadcastReceiver(int, short)+ BroadcastReceiver(int, short, String)- capitalize(String) : String- getByteData() : byte[]- getDeviceName() : String# receive() : DatagramPacket+ run() : void# send(DatagramPacket) : void

    ConnectionData

    + device_address: InetAddress {readOnly}+ device_name: String {readOnly}+ port: int {readOnly}

    ~ ConnectionData(InetAddress, String[])+ toString() : String

    UTM 526.1.260 ME Coala

    33 Mod Coala Nr. document Semnat. Data

  • Figura 3.5 Diagrama de clase al modului BroadcastReceivers al aplicaiei Android.

    Modulul Communication este reprezentat n ANEXA 1, iar descrierea claselor este la aplicaia pe

    computer. Aici va fi descris doar diferena dintre aceste module.

    Modulul Communication al aplicaiei Android conine o clas adugtoare care se numete

    CommunicationService, el rspunde comunicare prin reea, adic el se ocup de transmiterea i primirea

    mesajelor prin canal.

    Figura 3.6 Clasa CommunicationService din modulul Communication al aplicaiei Android.

    Diagrama de activitate este o reprezentarea grafic a funcionalitilor sistemului avnd suport la decizii,

    iterri i concurena n execuia aciunii. Diagramele de activitate ne arat pas cu pas cum decurge o aciune

    pentru o descrie mai desluit a funcionalitii sistemului.

    class BroadcastReceiv ers

    BroadcastReceiverBatteryBroadcastReceiv er

    + onReceive(Context, Intent) : void

    BroadcastReceiverDeliv eryStatusMessageBroadcastReceiv er

    + onReceive(Context, Intent) : void

    BroadcastReceiverIncomingCallBroadcastReceiv er

    + onReceive(Context, Intent) : void

    BroadcastReceiverIncomingSMSBroadcastReceiv er

    ~ ACTION: String = "android.provid... {readOnly}

    + onReceive(Context, Intent) : void

    BroadcastReceiverSendStatusMessageBroadcastReceiv er

    + onReceive(Context, Intent) : void

    class Communication

    ServiceCommunicationServ ice

    ~ batteryBroadcastReceiver: BatteryBroadcastReceiver- CLOSE: byte = 0x00 {readOnly}- COMMAND: byte = 0x01 {readOnly}- MESSAGE: byte = 0x04 {readOnly}

    + onBind(Intent) : IBinder+ onCreate() : void+ onDestroy() : void+ onStartCommand(Intent, int, int) : int- sendSMS(String, String) : void

    UTM 526.1.260 ME Coala

    34 Mod Coala Nr. document Semnat. Data

  • 3.3.3 Diagramele de activitate ale aplicaiei desktop Diagrama de activiti pentru vizualizarea mesajelor.

    Procesul este relativ scurt ,i se reduce la cutarea n structura de date a mesajului cu un indice din lista

    de vizualizare a contactelor.

    Figura 3.7 Diagrama de activiti pentru vizualizarea mesajelor

    Diagrama de activiti pentru vizualizarea listei de contacte.

    De la nceput aplicaia pe computer trimite o cerere de tip comand pentru prestarea de ctre telefon a

    listei de contacte, apoi telefonul i trimite aceast list. Prin urmare primim datele de la telefon le vizualizm,

    dar n caz c lista este prezent deja, vizualizarea contactelor se face instantaneu.

    act View message

    StorageComputer

    Det message by id Search for mesage

    Returned message

    View message

    UTM 526.1.260 ME Coala

    35 Mod Coala Nr. document Semnat. Data

  • Figura 3.8 Diagrama de activitate pentru vizualizarea contactelor

    Diagrama de activitate pentru trimiterea mesajelor.

    Procesul ncepe cu completarea formei mesajului, apoi serializarea pachetului ,dup transmiterea lui ctre

    aplicaia de pe telefon, care o prelucreaz, apoi o transmite ctre destinatar. n cazul apariiei erorilor

    aplicaia va trimite notificare ctre computer cu informaia necesar.

    NOT: Diagrama de activitate pentru trimiterea mesajelor este prezent n ANEXA 2

    Diagrama de activitate pentru funcia gsirii telefonului.

    ndeplinirea acestei funcii se reduce la trimiterea unui mesaj ctre aplicaia Android, mai precis un obiect

    de tip FindPhone care va da de tire telefonului pentru nceperea aciunii pentru gsire telefonului.

    act View contact list

    PhoneNetworkComputer

    Check if contact list is null

    Netwoek packet witching Get contact list

    Cretate contact listNetwork pcaket switchingView contact list

    Yes

    No

    UTM 526.1.260 ME Coala

    36 Mod Coala Nr. document Semnat. Data

  • Figura 3.9 Diagrama de activitate pentru gsirea telefonului.

    3.3.4 Diagramele e activitate ale aplicaiei Android Procesul de schimbare a numelui const din introducerea numelui i trimiterea lui ctre aplicaie desktop,

    pentru ulterioara modificare a datelor vizibile.

    act Find my phone

    PhoneNetworkComputer

    Call findfunction

    Send FindPhone message

    Network packet switching Reading message

    Make actions

    Stop

    act Change dev ice name

    ComputerNetworkPhone

    Enter name

    Send nameNetwork packet

    switching Read ne name

    Change name

    UTM 526.1.260 ME Coala

    37 Mod Coala Nr. document Semnat. Data

  • Figura 3.10 Diagrama de activiti pentru schimbarea numelui.

    Conectarea remote este utilizat n cazul siturii n reele diferite sau n aceeai reea, dar fr suportul

    tehnologie de broadcast. Conectarea are loc la creare soclului TCP, care trimite o cerere de tip accept la un

    soclu de tip server.

    Figura 3.11 Diagrama de activiti a conexiuni remote.

    act Remote connection

    ComputerNetworkPhone

    Enter connection data

    Create socket and trying to connect

    Deliv ery connection request

    Accept connection to serv er

    UTM 526.1.260 ME Coala

    38 Mod Coala Nr. document Semnat. Data

  • 4. Organizarea economic

    4.1 Scopul realizrii proiectului i cercetri de marketing

    Scopul principal al proiectului este crearea i dezvoltarea unui canal de comunicare dintre un dispozitiv

    mobil i un computer. Scopul secundar este realizarea pe baza acestui canal o aplicaie handoff/handover

    pentru utilizarea funcionalitilor canalului.

    Aspectul de baz a proiectului const n studierea posibilitilor i metodelor de comunicare ntre

    dispozitivele mobile i computere, deci proiectul are un aspect predominant tiinific ns cu o posibil

    extindere comercial, numai sub licena GPL.

    Aspect tiinific:

    1. Crearea unui motor de interconectare a dispozitivelor (mobil i computer).

    2. Interconectarea dispozitivelor prin intermediul unei legturi persistente de comunicare.

    3. Implementarea modulelor de comunicare prin intermediul canalului.

    4. Securizarea i protecia canalului (doar la nivel soft).

    Aspect comercial:

    1. Realizarea unei interfee de manipulare cu canalul creat.

    2. Implementarea funciei de transmitere i primire a mesajelor.

    3. Implementarea funciei find my phone.

    4. Implementarea funciei de notificare a apariiei unui apel de intrare.

    Actual pe pia este un singur concurent care este cel mai aproape de conceptul proiectului (AirDroid).

    1. Nu e un proiect open source.

    2. Nu posed o interfa simpl i intuitiv.

    3. Utilizeaz mai multe limbaje de programare(ceea ce poate duce la un impact negativ la nivel de

    compatibilitate dintre platforme).

    4.2 Plan calendaristic

    Planul calendaristic al proiectului reprezint aranjarea n timp a procesului de elaborare i repartizare a

    sarcinilor i resurselor. n dependen de durata proiectului, planul poate fi divizat n luni, sptmni, zile,

    ore.

    Etapele de planificare a timpului recomandate pentru proiect sunt urmtoarele:

    UTM 526.1.260 ME Coala

    39 Mod Coala Nr. document Semnat. Data

  • 1. Obiective.

    2. Volum de lucru.

    3. Timp necesar.

    4. Plan calendaristic.

    Durata unei aciuni se calculeaz conform formulei

    D = D Df + Rt (Zile) ( 5.1 )

    D Durata aciunii

    D data nceperii aciunii

    Df data finalizrii aciunii

    Rt rezerva de timp alocat

    Ca executant al aciunilor va fi o echip compus din:

    1. Conductor de proiect

    2. Programator 1

    3. Programator 2

    Tabelul 4.1: Planul calendaristic.

    Nr. de ordine Denumirea aciunii

    Durata aciunii Executant Resurse

    1. Stabilirea obiectivelor i necesitilor de proiectare.

    1 zi

    Conductor proiect Programator 1 Programator 2

    Internet, Computer

    2. Analiza domeniului IT n sfera comunicrii dintre dispozitive.

    Conductor proiect Programator 1 Programator 2

    Internet Computer

    3. Stabilirea cerinelor de sistem minime necesare proiectului. 1 zi Conductor proiect Programator 1 Programator 2

    Internet, Computer, Telefon

    4. Selectarea softului pentru elaborarea proiectului. 1 zi Programator 1 Programator 2

    Internet, Computer

    5. Determinarea mediilor de testare. 1 zi Programator 1 Programator 2

    Computer, Emulator, Telefon

    6. Colectarea informaiei necesare pentru elaborarea proiectului. 10 zile Programator 1 Programator 2

    Internet, Android SDK, Java JDK

    UTM 526.1.260 ME Coala

    40 Mod Coala Nr. document Semnat. Data

  • Continuare tabelul 4.2 Planul calendaristic.

    7. Proiectarea prototipului proiectului. 2 zile Conductor proiect Programator 1 Programator 2

    Computer, Enterprise Architect

    8. Implementarea motorului de interconectare a dispozitivelor (mobil desktop).

    3 zile Programator 1 Computer, Emulator, Telefon

    9. Implementarea modului cu canal persistent de comunicare. 2 zile Programator 2 Computer, Emulator, Telefon

    10. Implementarea modulelor de comunicare prin intermediul canalului. 3 zile Programator 2 Computer, Emulator, Telefon

    11. Implementarea modului de securizare a canalului. 2 zile Programator 1 Computer, Emulator, Telefon

    12. Implementarea funciei de transmitere primire a mesajelor. 2 zile Programator 1 Programator 2

    Computer, Emulator, Telefon

    13. Implementarea funciei de notificare a apariiei unui apel de intrare. 1 zi

    Programator 1 Programator 2

    Computer, Emulator, Telefon

    14. Implementarea funciei de gsire a telefonului. 1 zi Programator 1 Programator 2

    Computer, Emulator, Telefon

    15. Realizarea interfeei grafice de manipulare cu canalul creat. 4 zile Conductor proiect Programator 1 Programator 2

    Computer, Emulator, Telefon

    16. Testarea primului prototip 2 zile Programator 1 Programator 2 Computer, Telefon

    17. Depanarea primului prototip 2 zile Programator 1 Programator 2

    Computer, Emulator, Telefon

    18. Testarea prototipului doi 1 zi Programator 1 Programator 2 Computer, Telefon

    19. Depanarea prototipului doi 1 zi Programator 1 Programator 2 Computer, Telefon

    20. ntocmirea drii de seam 3 zile Conductor proiect Programator 1 Programator 2

    Computer

    21. Prezentarea proiectului 1 zi Diplomant Computer, Proiector

    UTM 526.1.260 ME Coala

    41 Mod Coala Nr. document Semnat. Data

  • 4.3 Analiza SWOT

    Pentru identificarea raionalitii proiectului e necesar s fie efectuat analiza mediului intern i extern al

    proiectului. Pentru aceasta se propune metoda general Analiza SWOT, care const n evaluarea punctelor

    forte i slabe ale mediului intern i extern al proiectului.

    Mediul intern:

    Strengths puncte forte descriu atributele pozitive, tangibile i intangibile care in de organizaie i

    proiect.

    Weknesses puncte slabe factorii care sunt aflai sub controlul organizaie sau echipei de proiect i

    mpiedic obinerea sau meninerea unui nivel de cantitate competitiv.

    Mediul extern

    Opportunities oportuniti evalueaz factorii atractivi externi care reprezint elementele de care

    organizaia sau echipa de proiect poate profita.

    Threats riscuri ameninrile includ factori n afara controlului vostru care ar putea s v pun

    implementarea proiectului ntr-o poziie de risc. Acetia sunt factori externi i nu se pot controla.

    Tabelul 4.2: Analiza SWOT.

    Puncte forte Puncte slabe Aplicaia este open source. Utilizarea unui singur limbaj de programare. O interfa intuitiv. Suport la mai multe dispozitive conectate

    concomitent. Prezena posibilitii de interconectare prin dou

    metode.

    Necesitatea de interconecta aplicaiile manual n reele tip X.25.

    Este un produs nou ce nu are popularitate sporit i nu are certificare.

    Oportuniti Riscuri Concurena slab n acest sector al pieei. Numrul mare de utilizatori poteniali. O cerere moderat pe pia.

    Dispozitive mobile pe Android OS sunt relativ scumpe.

    Posibiliti de extindere a aplicaiei reduse.

    Rezultatul analizei SWOT:

    Am determinat avantajele i dezavantajele proiectului, caracterul cruia este +8 / -4, ceea ce confirm

    fezabilitatea proiectului.

    UTM 526.1.260 ME Coala

    42 Mod Coala Nr. document Semnat. Data

  • 4.4 Calculul indicatorilor economici

    Aici vom calcula toat suma necesar pentru lansarea proiectului. Toate calculele trebuie s fie efectuate

    n MDL. Preurile materialelor, precum i salariile trebuie s fie actuale. (Fr TVA)

    4.4.1 Bugetul n procesul calculrii bugetului se determin suma de active materiale i nemateriale necesare pentru

    realizarea proiectului. n scopul determinrii devizului de cheltuieli, de care avem nevoie pentru realizarea

    proiectului, trebuie s prezent lista de obiecte necesare

    Tabelul 4.3: Active materiale pe termen lung.

    Nr. de ordine

    Denumirea activului

    Costul unitii, lei Cantitatea

    Suma lei Sursa proprie

    Sursa extern Total, lei

    1 Computer 11300 3 11300 22600 33900 2 Router 580 1 580 - 580 3 Telefon 3000 1 3000 - 3000 4 Monitor 3000 3 3000 6000 9000

    5 Enterprise Architect 2439 3 0 7313 7313

    Total 20319 11 17880 35913 53793

    Tabelul 4.4: Active nemateriale pe termen lung

    Nr. de ordine Denumirea activului

    Costul unitii, lei

    Cantitatea Suma lei

    Sursa proprie

    Sursa extern Total, lei

    1 NetBeans 0 2 0 0 0 2 Android Studio 0 2 0 0 0 3 Microsoft Office 1265 3 1265 2330 3795 Total 1265 7 1265 2330 3795

    Consumurile directe reprezint valoarea materialelor, utilizate n procesul de producie incluse n costul

    produselor finite: elemente cu caracter material, utilizarea crora este necesar n proiect hrtie, cri, etc.

    Tabelul 4.5: Consumuri directe.

    Nr. de ordine Denumirea activului

    Unitate material Costul unitii, lei Cantitatea Suma, lei

    1 Hrtie Pachet 50 1 50 2 Pix Bucat 5 3 15 3 Disc compact 700 MO Bucat 7 2 14 4 Carnet pentru notie Bucat 15 3 45 Total 87 9 124

    UTM 526.1.260 ME Coala

    43 Mod Coala Nr. document Semnat. Data

  • 4.4.2 Uzura activelor pe termen lung Partea important a cheltuielilor indirecte constituie calcularea fondului de amortizare. n scopuri contabile

    uzura trebuie s fie calculat uniform pe toat perioada decurgerii proiectului. Aceasta nseamn c dac activul

    se planifica a fi utilizat trei ani, atunci costul lui va fi mprit n trei pri uniforme pentru fiecare an aparte.

    Norma uzurii se calculeaz n dependen de durata utilizrii activului.

    Formula de calcul al uzurii este

    Uz = Ca * Na / 252 * Tpr ( 5.2 )

    Unde:

    Ca costul activului, lei

    Na norma uzurii anuale, 25%

    Tpr perioada de utilizare a activului, zile

    252 fondul nominal de lucru anual pe persoan, zile

    Tabelul 4.6: Uzura activelor pe termen lung.

    Nr. de ordine Activul Calculul Rezultat, lei

    1 Computer 33900 * 0.25 / 252 * 44 1479.76 2 Router 580 * 0.25 / 252 * 44 25.31 3 Telefon 3000 * 0.25 / 252 * 44 130.95 4 Monitor 9000 * 0.25 / 252 * 44 392.85 5 Microsoft Office 3795 * 0.25 / 252 * 44 165.65 6 Enterprise Architect 7313 * 0.25 / 252 * 44 319.21 Total 2488.42

    4.4.3 Consumuri directe privind retribuirea muncii

    Tabelul 4.7: Retribuirea muncii.

    Nr. de ordine Funcia angajatului

    Volumul de lucru, zile

    Salariu contractual pe zi, lei

    Fondul de retribuire a muncii, lei

    1 Conductor proiect 11 500 5500 2 Programator 1 44 350 15400 3 Programator 2 44 350 15400 4 Total 30800

    Calculele pentru suma contribuiilor n fondul social (FS) i valoarea primei de asigurare medical

    obligatorie (AM).

    UTM 526.1.260 ME Coala

    44 Mod Coala Nr. document Semnat. Data

  • Fondul social, lei Asigurarea medical, lei

    FS = 0.23 * 30800 = 7084 AM = 0.045 * 30800 = 1386

    Consumul direct privind retribuirea muncii.

    Formula de calcul a consumului este:

    Suma = FR + FS + FAM ( 5.3 )

    Suma = 30800 + 7084 + 1386 = 39270 (lei)

    Calculul venitului impozitabil

    Venitul anual pentru conductor

    Vi = 20 * 500 * 12 = 120000 (lei)

    Venitul anual pentru Programator 1 i 2

    Vi = 20 * 350 * 12 = 84000 (lei)

    Tabelul 4.8: Contribuiile n fondul social i de asigurare medical.

    Nr. de ordine Angajat Fond Calculul Rezultat, lei

    1 Conductor Pensionar 0.06 * 120000 7200

    2 Conductor Asigurare medical 0.046 * 120000 5400

    3 Programator 1 Pensionar 0.06 * 84000 5040

    4 Programator 1 Asigurare medical 0.045 * 84000 3780

    5 Programator 2 Pensionar 0.06 * 84000 5040

    6 Programator 2 Asigurare medical 0.045 * 84000 3780

    Calculul venitului impozitabil pentru conductor

    Vi = 120000 7200 5400 9514 = 103286 (lei)

    Calculul venitului impozitabil pentru programatori

    Vi = 84000 5040 3780 9514 = 65666 (lei)

    Calculul venitului net pentru conductor

    Iv = 27852 * 0.07 + (103286 - 27852) * 0.18 = 15527.76 (lei)

    UTM 526.1.260 ME Coala

    45 Mod Coala Nr. document Semnat. Data

  • Vn = 120000 - 15527.76 7200 5400 = 91872.24 (lei)

    Calculul venitului net pentru programatori

    Iv = 27852 * 0.07 + (65666 27852) * 0.18 = 8756.16 (lei)

    Vn = 84000 - 8756.16 5040 3780 = 66423.84 (lei)

    Tabelul 4.9: Consumuri indirecte.

    Denumirea articolului Unitate Cantitate Tarif, lei

    Valoare total, lei

    Energie electrica Kw 360 1.58 568.8 Servicii internet Abonament 1 175 175 Servicii transport Abonament 3 70 210 Serviciu telefon Abonament 3 90 270

    Total 1223.8

    4.4.3 Costul de producie

    Costul de producie reprezint totalitatea cheltuielilor, corespunztoare consumului de factori de producie,

    pe care agentul economic le efectueaz pentru producerea i vnzarea de bunuri materiale sau prestarea de

    servicii. Preul de cost se calculeaz pe o unitate. Dac se elaboreaz un site sau o aplicaie, atunci va fi preul

    de cost al elaborrii, dar dac n cadrul proiectului se planific multiplicarea produsului, atunci este nevoie de

    calculat preul de cost al unei copii.

    Tabelul 4.10: Costul de producie a unei copii.

    Articolele de calculaie Valoare, lei Ponderea, % Consumurile materiale directe 127.00 0.3 Cheltuielile indirecte 1223.80 2.8 Fondul total de salarizare 30800.00 71.5 Fondul de asigurare social 7084.00 16.4 Fondul de asigurare medical 1386.00 3.2 Fondul de amortizare a activelor 2488.42 5.8

    Total costul proiectului 43109.22 100.00

    Tabelul 4.11: Indicatorii economici ai proiectului.

    Indicatorii tehnico-economici ai proiectului Valoarea real Unitate de msur

    Numrul de zile pentru realizarea proiectului 44 Zile Suma necesar pentru realizarea proiectului, total inclusiv: 43109.22 Lei De elaborare a proiectului 43109.22 Lei Preul unei copii 50 Uniti

    UTM 526.1.260 ME Coala

    46 Mod Coala Nr. document Semnat. Data

  • Pre de realizare al unei copii 53886.525 Lei Numrul de copii realizate 50 Uniti Profit total Nu se planific

    Economic acest proiect nu este rentabil din cauza licenei sub care sistema este disponibil, dar din aspecte

    de cercetare tiinific este unul destul rezonabil.

    UTM 526.1.260 ME Coala

    47 Mod Coala Nr. document Semnat. Data

  • 5. Concluzii

    n urma realizrii proiectului de licen Sistem de intercomunicare mobil - desktop a fost proiectat i

    implementat acest sistem. A fot realizat interfaa grafic de comunicare ce manipuleaz cu un canal pe baza

    soclurilor TCP/IP prin intermediul reelei locale. A fost realizat procesarea datelor primite din reelele GSM

    i transmiterea lor ctre aplicaia desktop.

    Interconectarea dispozitivelor are loc n mai muli pai care reprezint prin sine dou succesiuni de

    transmitere i primire a datelor din reea. Algoritmul de interconectare se bazeaz pe scanarea reelei prin

    intermediul pachetelor criptate ceea ce exclude din start posibilitatea de bruiaj a aplicaie. Lund n

    considerare c algoritmul presupune n sine i interschimbarea receptorului cu emitorul posibilitatea de bruiaj

    se reduce semnificativ.

    Cel mai negativ efect al utilizrii clasei ce este o derivat a clasei Service este stoparea ei de ctre

    sistemul de operare, n diferite situaii, aceast situaie a fost procesat i n caz de stopare a serviciului

    sistemul nu va fi supus deconectrii ci doar va atepta reconectarea telefonului. Din aceste cauze pe

    calculator va rula permanent un receptor UDB broadcast pentru a face posibil reconectare i conectarea altor

    dispozitive la sistem.

    Structura platformei JavaFX invoc utilizarea pattern-ului MVC ceea ce structureaz destul de rigid

    aplicaia creat. Aceast structur este relativ anevoioas i necesit cunotine avansate n programarea

    concurent. Pentru a putea accesa firul de execuie a interfeei grafice se poate de utilizat Platform.runlater(),

    acest metod permite accesare i modificare interfeei grafice doar c ea nu poate fi accesat de oriunde.

    UTM 526.1.260 ME Coala

    48 Mod Coala Nr. document Semnat. Data

  • 6. Bibliografie

    1. Ghid pentru elaborarea i susinerea proiectelor de licena (accesat la 17.02.15)

    2. Android Developers http://developer.android.com/index.html (accesat la 22.02.15)

    3. Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Robert Nord,

    Judith Stafford. Documenting Software Architectures: Views and Beyond. Editura Addison-Wesley

    Professional. 2002 (accesat la 3.03.14)

    4. n Gorton. Essential Software Architecture. Editura Springer. 2006. (accesat la 3.03.15)

    5. Jasper Potts, Nancy Hildebrandt, Joni Gordon, Cindy Castillo Getting started with JavaFX Release 8

    (accesat la 25.02.15)

    6. StackOverflow https://stackoverflow (accesat ntre 10.03.15 i 10.05.15)

    UTM 526.1.260 ME Coala

    49 Mod Coala Nr. document Semnat. Data

  • ANEXA 1 Diagrama de clase a modului Communication.

    class Comm

    unication

    BatteryCapacity

    + battery_capcity: String {readO

    nly}

    + BatteryCapacity(String)

    + toString() : String

    Call

    + phone_state: String {readO

    nly}

    + Call(String)

    + Call(byte, String)

    + toString() : String

    Close

    + Close()

    Comm

    and

    + com

    mand: String {readO

    nly}

    + Com

    mand(byte, String)

    + Com

    mand(String)

    + toString() : String

    Comm

    andResponse

    + response_data: O

    bject {readOnly}

    + Com

    mandResponse(String, O

    bject)+

    toString() : String

    SerializableCom

    municationPacket

    + PACKAG

    E_TYPE: byte {readOnly}

    + Com

    municationPacket(byte)

    + toString() : String

    FindPhone

    ~ FindPhone()

    IncomingCall

    + caller_nam

    e: String {readOnly}

    + caller_phone_num

    ber: String {readOnly}

    + Incom

    ingCall(String, String, String)+

    toString() : String

    IncomingM

    essage

    + sender_nam

    e: String {readOnly}

    + Incom

    ingMessage(String, String, String)

    + toString() : String

    Message

    + m

    essage_text: String {readOnly}

    + phoneNum

    ber: String {readOnly}

    + M

    essage(byte, String, String)+

    toString() : String

    MessageDeliveryStatus

    + M

    essageDeliveryStatus(String)

    MessageStatus

    + status: String {readO

    nly}

    + M

    essageStatus(byte, String)+

    toString() : String

    OutgoingM

    essage

    + deliveryIntent: boolean {readO

    nly}+

    scAddress: boolean {readOnly}

    + sentIntent: boolean {readO

    nly}

    + O

    utgoingMessage(String, boolean, String, boolean, boolean)

    + toString() : String

    SendingMessageStatus

    + SendingM

    essageStatus(String)

    UTM 526.1.260 ME Coala

    50 Mod Coala Nr. document Semnat. Data

  • ANEXA 2 Diagrama de activiti pentru Trimiterea mesajului.

    act Sending messages

    PhoneNetworkComputer

    Send

    Create OutgoingMessage

    object

    Serialization

    Sending ov er socket Network packet switching Create PedingIntent

    Sending message v ia GSM network

    Sending message statusNetwork packet switchingStatus deliv ered

    Sending over

    UTM 526.1.260 ME Coala

    51 Mod Coala Nr. document Semnat. Data

    Introducere1. Analiza domeniului de cercetare1.1 Descrierea sistemelor existente2. Dezvoltarea sistemului2.1 Descrierea structurii sistemului2.2 Descrierea softului utilizat2.2.1 Descrierea NetBeans IDE2.2.2 Descrierea Android Studio2.2.3 Descrierea Enterprise Architect

    3. Proiectarea i implementarea sistemului3.1 Tehnologii utilizate3.2 Documentul cerinelor de sistem3.3 Proiectarea sistemului de intercomunicare mobil - desktop3.3.1 Diagramele de clase ale aplicaiei desktop3.3.2 Diagramele de clase ale aplicaiei Android3.3.3 Diagramele de activitate ale aplicaiei desktop

    4. Organizarea economic4.1 Scopul realizrii proiectului i cercetri de marketing4.2 Plan calendaristic4.3 Analiza SWOT4.4 Calculul indicatorilor economici4.4.1 Bugetul4.4.2 Uzura activelor pe termen lung

    4.4.3 Consumuri directe privind retribuirea muncii4.4.3 Costul de producie

    5. Concluzii6. BibliografieANEXA 1 Diagrama de clase a modului Communication.ANEXA 2 Diagrama de activiti pentru Trimiterea mesajului.