ACADEMIA DE STUDII ECONOMICE DIN BUCUREȘTI [613020]
ACADEMIA DE STUDII ECONOMICE DIN BUCUREȘTI
Facultatea de Cibernetică, Statistică și Informatică Economică,
Programul de masterat profesional specializat în Sisteme informatice
pentru managementul proceselor si resurselor economice (SIMPRE)
Proiect de practică
Tema proiectului : Automatizarea proceselor de
testare a software -ului din industria auto
Cadrul didactic coordonator :
Prof. univ. dr. SABAU Gheorghe
Student: [anonimizat],
2020
Vrăbioru Diana
2
Cuprins
Introducere ………………………….. ………………………….. ………………………….. ………………………….. …… 3
1. Industria auto în România. Divizia de creare software auto în companie …………………………. 4
2. Integrarea proiectului elaborat. Abordare. Proces. ………………………….. ………………………….. .. 6
3. Modalități de testare a software -ului. ………………………….. ………………………….. ………………….. 7
4. Automatizarea testării. Optimizarea procesului ………………………….. ………………………….. ….. 13
Concluzii ………………………….. ………………………….. ………………………….. ………………………….. ……. 19
Bibliografie ………………………….. ………………………….. ………………………….. ………………………….. …. 20
Vrăbioru Diana Introducere
3
Introducere
Lucrarea de față își propune să reliefeze direcțiile pe care industria auto o conturează în
România, importanța software -ului pentru industria actuală, însemnătatea testării calitative,
efective și rapide pentru realizarea unui sofware de calitate. Studiul este rezultatul realizării
practicii de specialitate pentru fina lizarea studiilor di n cadrul Academiei de Studii Economice
din București, Facultatea de Cibernetică , Statistică și Informatică Economică, Programul de
masterat profesional specializat în Sisteme informatice pentru managementul proceselor si
resurselor economice (SIMPRE).
Practica a fost realizată în calitate de angajat pe o perioadă nederminată, cu o v echime
de 1 an și 3 luni pe funcția de Inginer de Sistem S oftware în cadrul companiei Harman
International Romania, din București. Compania Harman, cu vizibilitate la nivel național și
internațional , are un real succes în România și prezintă multe proiecte de succes . Acest studiu se
axează pe prezentarea unui singur proiect al Harman, și anume „Daimler”.
Lucrarea conține, în primă fază, prezentarea industriei în România . Ulterior, sunt
analizate și prezentate detaliile proiectului nominalizat în cadrul companiei de studiu și
rezutatele obținute. Accentul cade, în primul rând, asupra proiectelor, măsurilor de abordare a
testării , a acțiunilor de optimizare a procesului .
Nota Autorului
Cel mai complex și cel mai grozav proiect la care am lucrat este NTG6 pentru Daimler.
Tehnologia și caracteristicile dezvoltate sunt uimitoare și acum le putem vedea pe străzi.
Proiectul la care eu am lucrat este acum disponibil în cele mai noi mașini de lux de la Mercedes.
A fost o muncă grea și au existat momente în care t ermenele trebuiau să fie „ieri”, dar cu ajutorul
susținerii echipei am văzut cu toții un rezultat impresionant de care toată lumea se bucură.
Munca într-o companie de automobile necesită pasiune. Industria auto este una dintre
cele mai ascendente industrii din ultimii ani și Harman este unul dintre cei mai mari jucători din
această industrie. Sunt foarte fericit ă să fac parte din această comunitate și sunt foarte încântat ă
să văd ce urmează. Consider că mașinile autonome reprezintă o provocare fo arte frumoa să.
Vrăbioru Diana Industria auto în România. Divizia de creare
software auto în companie
4
1. Industria auto în România . Divizia de creare software auto în
companie
Industria auto reprezenta , în anul 2019, circa 14% din produsul intern br ut și 26% din
exportul României, iar pe ste 185.000 de români lucrau în această industrie. Din această industrie,
a mașinilor interconectate prin Software de calitate, face parte și HARMAN, care proiectează,
inginerește și produce soluții pentru producătorii auto, inclusiv soluții de automatizare a
întreprinderilor și servicii conectate (soluți i IoT ). Alexandru Motoc, directorul general al
companiei Harman International Romania, declară că Harman este un lider global în tehnologia
Connected Car, iar în România proiectează sisteme de infotainment pentr u cei mai mari
producători auto.
Electronica auto și software -ul IT, necesar, din industrie se schimbă rapid. Conducerea
autonomă cere extrem de mult e servicii interactive. Conectivitatea și infotainment ajută mașinile
sa fie tranfo rmate în sisteme informatice distribuite cu acces la cloud; over -the-air (OTA) ,
upgrade -uri de hărți funcționale, conținut media, alte vehicule și infrastructura din jur. (Figura
1,1) Eficiența energetică evoluează motorul clasic spre motoarele electrice hibride și electrice de
înaltă tensiune.
Figura 1. 1 Evoluția mașinilor cu ajutorul domeniului IT1
1 OEM = original equipment manufacturer, LTE = Long -Term Evolution, WLAN = wireless localarea network, and
NFC = near -field communication.
Vrăbioru Diana Industria auto în România. Divizia de creare
software auto în companie
5
Din experi ență, dezvoltarea de software auto este dificilă, deoarece conectează software
încorporat cu hardware mare, este dezvoltat într -un context global în echipe distribuite. O mașină
modernă are între 50 -120 de microcontrolere încorporate și este conectată prin diferite interfețe
externe la o mulțime de tehnologii de cloud și infotainment.
Progresele tehnologice în domeniul ingine triei software sunt astăzi puternic determinate
de producătorii și furnizor ii de automobile. Aceste procese pot fi :
testarea conform modelului de dezvolatre „V”. (utilizat în Harman) ;
simularea sistemului cu modele de tip „buclă ”. (utilizat în Harman);
AI – pentru sisteme avansate de asistență la șofer (ADAS) (utilizat în Harm an);
conectivitatea tehnologiilor cloud cu miliarde de mașini pentru infotainment,
online aplicații, diagnostic la distanță și procesare apeluri de urgență . (utilizat în
Harman)
Modelul clasic V pentru dezvoltarea sistemelor (Figura 1.2):
Obiectiv: dezvoltarea colaborativă (testare -dezvoltare) a componentelor funcționale
pentru siguranță ;
Straturi de abstractizare bazate pe hardware , cu comunicare bazată pe semnal (ex: CAN,
Wireless, SDS) ;
Puncte de sincronizare crescute organic între hardware, software și servicii emergente .
Figura 1.2. Modelul „V” de dezolvare a software -ului
Vrăbioru Diana Integrarea proiectului elaborat. Abordare.
Proces.
6
2. Integrarea proiectului elaborat . Abordare. Proces.
Proiect ul prezentat în continuarea lucrării este proiectul NTG6 a l producătorului
renumit de mașini Daimler, Mercedes . Proiectul NTG6 de la Daimler a luat naștere ca dovadă a
serviciilor de calitate oferite de Harman pentru dotarea vehiculelor Mercedes cu conectivitate
avansată. De asemenea, Harman a fost selectat de Daimler pentru a dezvolta și implementa
următoarea ge nerație unitatea de control telematică (TCU), unitatea integrată de telematică și
infotainment care conectează mașinile la centrele inteligente de gestionare a traficului Daimler.
Aceasta a fost urmată de un premiu pentru instalarea microfoanelor Micro -Electrical -Mechanical
System (MEMS) în vehiculele Daimler – prima dată când microfoanele cu tehnologie MEMS au
fost utilizate de Harman în sectorul auto.
Figura 2.1. NTG6 HU de la Mercedes Figura 2.2. Rezultatul final al proiectului
prezentat
Cum se realizează procesul de dezvoltare, integrare și testare cu scopul optimizării ?
Integrare continuă (CI) este procedeul folosit prin care se asigură livrarea codului
într-un mod eficient (Figura 2.3 ). Se realizează zilnic următoarele procedee de mai jos , pentru
mai multe nivele (domeniu, sistem de bază, preintegrare, integrare, testare, client):
Asamblare codului
Compilare
Testare
Rezultat: OK, NOK (notificare) .
Vrăbioru Diana Modalități de testare a software -ului.
7
Figura 2.3. Proces de integrare Harman
3. Modali tăți de testare a software -ului.
În cadrul proiectul se susține ciclul de dezvoltare (diagrama „V”), iar pentru aceasta
MBD2 oferă o abordare eficientă, stabilind un cadru comun pentru comunicare pe tot
parcursul procesului de proiectare. Model -based Design3 este o metodologie de proiectare
matematică și vizuală pentru proiectarea de aplicații pentru automobile.
În Harman, pe parcusul derulării proiectului, s -a utilizat atât testatrea manuală, cât și
testarea automată. Deși testarea siste matică este importantă pentru asigura rea calității
software -ului, testarea manuală este scumpă, predispusă la erori și foarte cronologică. Prin
urmare , automatizarea testelor este o considerație principală în îmbunătățirea eficienței
testelor. În pre zent, se execută automat script -uri de testare lucrate manual , dar și teste scrise
în anumite tool -uri interne .
Pentru crearea proiectului NTG6, e ste utilizat așa numitul procedeu de testare
„Model -based testing”. MBT4 permite evaluarea cerințelor independent de proiectarea și
dezvoltarea algoritmului. Aceasta implică următoarele etape ca: crearea unui model de cerințe
de sistem pentru testare, gene rarea datelor de testare din această reprezentare -model de
cerințe și verificarea algoritmului de proiectare cu cazuri de testare generate.
2 Model -based Design
3 MBD
4 Model -based testing
Vrăbioru Diana Modalități de testa re a software -ului.
8
De asemenea, conform modelului „V”, există mai multe nivele de testare, organizate
în: unitate, integrare, sistem și acceptanță (unit, integration, system și acceptance).
Figura 3.1. Modelul de dezvoltare „V” explicat pentru partea de testare
1) Testarea u nității (unit testing) : scopul său este de a lua cea mai mică
piesă de software testabilă din aplicație, de a o izola de restul codului și de a
determina dacă se comportă exact așa cum e de așteptat . Pe proiectul Daimler, f iecare
unitate este testată separ at înainte de integrarea ei în module.
2) Testarea integrării (integration testing) : scopul său este de a testa
interacțiunea interfețelor dintre module. Își ia ca module de intrare care au fost testate
unitar, le grupează în agregate mai mari, aplică testel e definite într -un plan de testare
de integrare la aceste agregate și furnizează ca ieșire sistemul integrat gata pentru
testarea sistemului. (A se vedea capitolul 1, Integrare continuă)
3) Testarea sistemului (System testing) : scopul său este testarea
sistem ului complet, configurat într -un mediu controlat, prin simularea scenariilor în
timp real . Aici, se testeaza exact ceea ce apare într-un mediu al vieții reale.
Vrăbioru Diana Modalități de testare a software -ului.
9
4) Testarea de acceptanță (Acceptance testing) : este ultima etapă a
procesului de testare înainte c a sistemul să fie acceptat pentru utilizare operațională
conform intenției utilizatorului.
Greșeli de testare, prezente chiar și în proiect:
Foarte des testarea unității este efectuată de același om care scrie codul, contrar
regulilor unei bune programări. Acest lucru poate necesita erori de interpretare și
neînțelegeri.
Cea mai populară abordare a testării sistemelor este testarea Black Box, adică fără
cunoștințe despre structura internă sau codarea din program.
Testarea de acceptanță poate dezvălui erori și omisiuni în definiția cerințelor
sistemului, deoarece datele reale exercită sistemul în moduri diferite de datele de
testare.
De ce testele de bază se realizează de orice echipă din cadrul proiectului?
Pentru a aduce inovație, NTG6 prezintă foarte multe îmbunătățire în domeniul
divertismentului. De asemenea, sistemul necesită o conectivitate mai mare între vehicul –
vehicul și vehicul -infrastructură. Prin urmare, divertismentul auto (ICE) sau Infotainment în
vehicul (IVI) este definit ca o colecție de dispozitive hardware instalate în automobile, sau
alte forme de transport rutier, pentru a furniza divertisment audio sau video, precum și
sisteme d e navigație auto.
Figura 3.2. Navigația sistemului
Vrăbioru Diana Modalități de testare a software -ului.
10
Toate aceste module pot fi influența te între ele , de aceea testele de navigație, phone,
bluetooth se realizează la orice livrare, la orice nivel.
Sistemele IVI, din cadrul proiectului NTG6 folosesc interfețe audio / video (A / V),
ecrane tactile, touchpad -uri și alte tipuri de dispozitive pe ntru a furniza aceste tipuri de
servicii. Astfel, se bazează puternic pe HMI5.
Figura 3.3. Touch -pad-ul folosit în proiect, pe mașini
De ce este HMI -ul un subiect sensibil din punct de vedere al testării sistemul ui
software?
Un sistem de infotainment HMI este partea frontală a sistemului de infotainment
compus din diferite ECU6 și sisteme auto. Un sistem de infotainment HMI conține:
Comportament dinamic : un sistem de infotainment HMI are de obicei un
comportament de meniu foarte complex. O modificare de meniu poate fi declanșată de o
acțiune a utilizatorului, de exemplu, introducerea unei destinații în sistemul de navigare
sau un mesaj trimis de aplicațiile subiacente, de exemplu un apel primit. HMI -urile pentru
autovehicule conțin, de asemenea, o seri e de ferestre pop -up, care sunt utilizate pentru a
prezenta informații temporare sau spontane utilizatorilor. De exemplu, fereastra pop -up
afișată pe tabloul de instrumente care indică un rezervor gol este inițializată de aplicația
de bază .
5 Human -Machine Interface
6 Engine control unit
Vrăbioru Diana Modalități de testare a software -ului.
11
Elemente graf ice: Elementele UI conținute într -un ecran sunt numite de
obicei widget -uri. Widget -urile, precum titlul și tastele soft prezintă text static
utilizatorilor. Aceste widget -uri au de obicei o etichetă de text, în timp ce conținutul unor
astfel de etichete t ext este de obicei definit extern, deoarece HMI -urile actuale au de
obicei mai multe limbi sau trebuie efectuate modificări ale acestor texte. Un widget, cum
ar fi bara de stare, conține sub -widget -uri care sunt icoane. Un widget, cum ar fi o listă de
derulare, este un widget complex și conține alte widget -uri complexe, cum ar fi bara de
defilare și mai multe rânduri de opțiuni. Acest widget de listă are un comportament
complex. Utilizatorul poate defila între rânduri; în timpul acestei operații, rândul foc alizat
trebuie evidențiat. Dacă există cel puțin o pagină după pagina curentă, lista trebuie să
afișeze o săgeată în partea de jos îndreptată în jos. Dacă există o pagină anterioară, lista
trebuie să prezinte o săgeată la capul îndreptat în sus. De asemene a, bara de defilare
trebuie să poată calcula poziția paginii curente pentru a indica corect poziția.
Toate elementele pe care o persoană le va atinge, vedea, auzi sau utiliza
pentru a efectua funcții de control și a primi feedback cu privire la aceste acț iuni. În cazul
în care o funcție poate fi îndeplinită prin buton, blocare cu taste și comutatoare rotative,
mai multe funcții ar putea necesita mai multe afișaje ale ecranului pentru a acoperi
funcțiile și opțiunile operatorului. Feedback -ul este esențial pentru eficiența și eficiența
operatorilor. Feedback -ul poate să fie vizual, auditiv, tactil. Toate aceastea trebuie testate.
Manual sau automat? Automatizarea se realizează mai complex, de aceea, rămâne la o
semi -automatizare.
Figura 3.4. Exemple de teste HMI semi -automate
Vrăbioru Diana Modalități de testare a software -ului.
12
Teste nonfuncționale7 utilizate :
Localization Testing
Load Testing
Volume Testing
Security Testing
Install Testing
Recovery Testing
Usability Testing
În concluzie, fificultățile de testare a HMI -ului în comparație cu testele funcționa le
sunt complet discutate în acest proiect :
1. Prezența mai multor limbi
2. Comportamentul dinamic al meniului
3. Sistemul de infotainment HMI conține 2 ecrane.
4. Variabilitatea inclusă în acest proiect. (ex.Mașini cu opțiuni diferite)
Există abordări foarte frecvente și utilizate la scară largă:
Descrierea detaliilor de implementare a software -ului scris ca text simplu
Dispunerea fluxului de meniu pentru graficele specificate ca diagrame
Designul ecranului definit într -un instrument de desen
Textele în diferite limbi păstrat într -o foaie de calcul
Proiectul NTG6, este un sistem electronic în rețea, de aceea nu este posibil să se
atribuie toate funcții software unui singur ECU8. Ca urmare, funcțiile software sunt împărțite
în sub -funcții pentr u implementare în mai multe ECU . Prin urmare, sistemele electronice din
vehicul sunt împărțite în subsisteme. Subsistemele sunt apoi testate și validate și, ulterior,
sunt integrate pas cu pas.
Pentru aceasta, în proiect sunt cunoscut e următoarele tipuri de teste f uncțional e9:
Unit Testing
Integration Testing
7 Denumirea testelor în engleză pentru trasabilitate
8 Engine control unit
9 Denumirea testelor în engleză pentru trasabilitate
Vrăbioru Diana Automatizarea testării. Optimizarea procesului
13
System Testing
Smoke Testing
Interface Testing
Regression Testing
4. Automatizarea testării. O ptimizarea procesului
Testarea automat ă a software -ului este un proces în care instrumentele software
execută teste pre -scriptate pe o aplicație software pentru a controla execuția testelor și
compararea rezultatelor reale cu rezultatele prevăzute. Poate automatiza unele sarcini
repetitive, dar necesare într -un proces de testare oficializat deja în vigoare sau adăuga teste
suplimentare care ar fi dificil de efectuat manual.
Obiectivul testării automate este de a simplifica cât mai mult efortul de testare cu un
set minim de scripturi. Dacă testa rea unității consumă, de exemplu, un procent mare din
resursele unei echipe de asigurare a calității, atunci acest proces ar putea fi un candidat bun
pentru automatizare. Instrumentele de testare automate sunt capabile să execute teste, să
raporteze rezult atele și să compare rezultatele cu testele anterioare. Testele efectuate cu
aceste instrumente pot fi efectuate în mod repetat, în orice moment al zilei.
În echipa din care fac parte, există 3 tipuri de teste, în funcție de execuție:
1) Manuale – în principa l HMI
Figura 4.1. Testare Manuală
2) Automatizate cu script
Vrăbioru Diana Automatizarea testării. Optim izarea procesului
14
Figura 4.2. Testare prin script
1) Automatizate cu tool intern
Figura 4.3. Testare prin Tool, Aplicație
Pentru realizarea automatizării, sunt importante 2 aspecte:
Hardware
Software
Hardware
Simularea sistemului de testare (cu un test bench care conține o parte din
fucționaliattea mașinii) timpurie și validarea software -ului încorporat oferă dezvoltatorilor de
software auto instrumentele de care au nevoie pentru a construi un sistem de calitat e.
Vrăbioru Diana Automatizarea testării. Optimizarea procesului
15
Figura 4.4. Bench -ul de test pentru simularea funcționalităților mașinii
Profitând de metodologii de simulare a sistemelor, producătorii auto pot:
o îmbunătăți siguranța și fiabilitatea produsului;
o diferenția ofertele lor de telematică;
o oferi un infotainment bine intergrat cu diferite dispozitive;
o economisi bani pentru dezvoltarea software -ului.
Pentru automatizarea testelor de MDD (script) și VCPU (aplicatie), a fost utilizat un
Relay card/ box.
Figura 4.5. Func ționalități Relay card pentru automatizarea testelor
Vrăbioru Diana Automatizarea testării. Optimizarea procesului
16
Software
Automatizare a propriu -zisă. Aportul adus companiei
A. Automatizarea testelor pentru Multimedia Board (MDD) . A fost
realizată printr -un script de bash care folosește 3 USB -uri PC -HU conectate și un
relay -box necesar restartului.
Figura 4.6. Schemă procedurală în echipă. Automatizare teste de Multumedia Board
cu script
Figura 4.7. Relay card în funcțiune pentru testele de Multimedi a
B. Automatizarea instălării software -ului. A fost realizată printr -un script
de pyhton cu integrarea a 3 tooluri interne . Acest script salvează 2 ore pentru fiecare
inginer de testare. De asemenea, scriptul pornește, la final, o aplicație (internă) pentru
teste.
Vrăbioru Diana Automatizarea testării. Optimizarea procesului
17
Figura 4.8. Schemă procedurală în echipă. Automatizare Flash cu script
C. Dezvoltarea testelor de procesor și a ce lor de integrare în tool intern,
cod C#.
Figura 4.9. Schemă procedurală în echipă. Automatizare teste de VCPU cu
explicație
Automatizarea. În producție, dacă scade lucrul manual, creste productivitatea și
rezultă scăderea costurilor forței de muncă. Automatizarea pentru industria automobilelor
este o variabilă importantă a scăderii volumului de muncă. Dar, automatizarea, de ase menea,
creează locuri noi de muncă. Beneficiile automatizării sunt vizibile în Figura 4.10.
Vrăbioru Diana Automatizarea testării. Optimizarea procesului
18
Figura 4.10. Beneficiile automatizării testării în cadrul companiei Harman
Vrăbioru Diana Concluzii
19
Concluzii
Concluzionând , automatizarea pentru industria automobilelor este o variabilă
importantă. În producție , dacă scade lucrul manual, creș te productivitatea și rezultă scăderea
costurilor forței de muncă. Prin urmare, noi metodologii și instrumente care simplifică fazele
de testare merită o atenție specială.
Activitatea de testare este costisitoare și necesită timp, de aceea este importantă
alegerea unor cazuri de testare eficiente. Cazurile de testare ar trebui să arate că, atunci când
este utilizată așa cum este de așteptat, componenta pe care o testați face ceea ce se pr esupune
că va face. Dacă există componente în defecte, acestea trebuie evidențiate de cazurile de
testare.
HMI blochează automatizarea 100% a testelor. Datorită naturii sale, erorile HMI
sunt mult mai v ariate decât erorile de funcție. Erorile de comportame nt din meniu sunt
frecvente. Erorile conținutului ecranului sunt foarte frecven te. Se pot afișa caractere greșite
sau erori de limbă. Erori le pop -up sunt c auzate de aplicații subiacente. Erori le de proiectare
definesc modul în care conținutul ecranului tre buie reprezentat în termeni de poziție, distanțe,
culori, fonturi etc.
Automatizarea testelor, în funcție de tipul lor a fost realizată fie prin script, fie pri n
crearea de aplicatii, folosind tool-uri interne. Pentru testele de HMI nu s -a realizat
automa tizare, pentru testele de Media, s -au creat scripturi, pentru testele de comunicații la
nivel de comunicații ale procesorului, s -a creat aplicație de rulare a suitei de teste.
Vrăbioru Diana Bibliografie
20
Bibliografie
Antonio Tierno , Max M. Santos , Benedito A. Arruda D , (2016 ), „Probleme deschise
ale testării de software auto”
Christof Ebert , John Favaro, (2017), „Automotive Software ”, articol în IEEE ,
accesat mai 2020
Eckard Bringmann, Andreas Krämer , (mai, 2008), „Model -Based Testing of
Automotive Systems ”, articol în IEEE Xplore , accesat mai 2020
Software testing, (2019), „ types -of-software -testing ”, accesat mai 2020, adresa:
https://www.softwaretestinghelp.com/types -of-software -testing/
Harman, (2020), „Connected car”, accesat mai 2020, adresa:
https://www.harman.com/connected -car
Daimler, (2018), „ Intuitive operating system for more safety and comfort ”, accesat
mai 2020, adresa: https://www.daimler.com/innovation/case/connectivity/mbux –
2.html
Harman, (2018), „Harman enables connectivity across daimler vehicles ”, accesat
mai 2020, adresa: https://news.harman.com/releases/harman -enables -connectivity –
across -daimler -vehicles
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: ACADEMIA DE STUDII ECONOMICE DIN BUCUREȘTI [613020] (ID: 613020)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
