top 25 software engineering interview questions
Najčastejšie kladené otázky týkajúce sa rozhovorov so základným a pokročilým softvérovým inžinierstvom s podrobnými odpoveďami. Pripravte si tento komplexný zoznam bežných otázok týkajúcich sa rozhovorov s technickými softvérovými inžiniermi pre začiatočníkov a vyšších profesionálov:
Podľa IEEE je softvérové inžinierstvo aplikáciou systematického, disciplinovaného a merateľného prístupu k vývoju, prevádzke a údržbe softvérového produktu.
Znamená to uplatňovať systematický a dobre definovaný prístup k vývoju softvérového produktu.
V tomto výučbe sa budeme zaoberať najčastejšie kladenými otázkami týkajúcimi sa rozhovoru so softvérovým inžinierom spolu s odpoveďami v jednoduchých termínoch pre vaše ľahké pochopenie.
Najobľúbenejšie otázky týkajúce sa rozhovorov o softvérovom inžinierstve
Nižšie sú uvedené najčastejšie otázky týkajúce sa rozhovorov so softvérovým inžinierom a odpovede na ne.
Poďme preskúmať !!
Otázka 1) Čo je SDLC?
Odpoveď: SDLC znamená Software Development Life Cycle. Definuje postupný prístup k vývoju softvéru. SDLC zahŕňa nasledujúce fázy, tj zhromažďovanie požiadaviek, systémová analýza, návrh, kódovanie, testovanie, údržba a dokumentácia.
Ďalej je uvedená reprezentácia rôznych fáz SDLC na vysokej úrovni.
(obrázok zdroj )
Otázka 2) Aké sú rôzne modely dostupné v SDLC?
Odpoveď: V SDLC je k dispozícii niekoľko modelov na efektívne vykonávanie vývoja softvéru. Niektoré modely zahŕňajú Model vodopádu , V-model, agilný model atď.
Otázka č. 3) Vysvetlite pojem Baseline.
devops engineer rozhovor otázky a odpovede
Odpoveď: Východisková hodnota je míľnikom v projekte, ktorý zvyčajne definuje projektový manažér. Východiskové hodnoty sa používajú na občasné sledovanie postupu projektu na vyhodnotenie celkového zdravotného stavu projektu.
Otázka č. 4) Aké sú zodpovednosti manažéra softvérového projektu?
Odpoveď: Manažér softvérového projektu zodpovedá za úspešné dokončenie projektu. Je zodpovednosťou manažéra softvérového projektu zabezpečiť, aby celý tím dodržiaval systematický a dobre definovaný prístup k vývoju softvéru.
Manažér softvérového projektu je zodpovedný aj za tieto úlohy:
- Plánovanie projektu
- Sledovanie stavu projektu
- Riadenie zdrojov
- Riadenie rizík
- Dodanie projektu v čase a rozpočte.
Otázka č. 5) Čo je to súdržnosť?
Odpoveď: Súdržnosť je miera, do akej sú prvky modulu navzájom prepojené. Je to ako vnútorné lepidlo, ktoré spája prvky modulu k sebe. Dobrý softvér má vysokú úroveň súdržnosti.
Otázka č. 6) Čo je to Coupling?
Odpoveď: Viazanie je stupeň vzájomnej závislosti medzi modulmi. Dobrý softvér má nízku úroveň prepojenia.
Otázka č. 7) Vysvetlite koncept modularizácie.
Odpoveď: Modularizácia sa používa na rozdelenie softvéru na viac komponentov alebo modulov. Na každom module pracuje nezávislý vývojový a testovací tím. Konečným výsledkom by bolo spojenie viacerých modulov do jednej pracovnej súčasti.
Otázka č. 8) Čo je správa konfigurácie softvéru?
Odpoveď: Správa konfigurácie softvéru je proces sledovania a riadenia zmien, ku ktorým dôjde počas životného cyklu vývoja softvéru. Všetky zmeny vykonané počas vývoja softvéru je potrebné sledovať prostredníctvom presne definovaného a kontrolovaného procesu.
Správa konfigurácie zaisťuje, že všetky zmeny vykonané počas vývoja softvéru sú riadené presne definovaným procesom.
Otázka č. 9) Aké sú rôzne fázy SDLC?
Odpoveď: Nasledujú najbežnejšie fázy SDLC.
- Analýza požiadaviek
- Dizajn
- Kódovanie
- Testovanie
- Údržba
Otázka č. 10) Poskytnite príklady nástrojov na správu projektu.
Odpoveď: Ďalej uvádzame niektoré z najbežnejšie používaných nástrojov na riadenie projektov, ktoré sú dnes v priemysle k dispozícii.
ako otvoriť súbor .bin v systéme Windows
- Ganttov diagram
- Kontrolné zoznamy
- Správy o stave
- Histogramy
- Microsoft Project
Odporúčané čítanie => Najlepšie nástroje na riadenie projektu, ktoré by ste mali vedieť
Otázka č. 11) Čo sú to CASE nástroje?
Odpoveď: CASE znamená Computer-Aided Software Engineering tools, ktoré sa používajú na podporu a urýchlenie rôznych aktivít životného cyklu vývoja softvéru.
Otázka č. 12) Čo je testovanie čiernej skrinky?
Odpoveď: Testovanie čiernej skrinky zahŕňa testovanie aplikácie bez znalosti vnútornej štruktúry alebo implementácie kódu. Testéri by sa skôr trápili iba s funkčnosťou testovania softvéru v čiernej skrinke, ako s tokom dát a vykonávaním kódu v koncovke.
Otázka č. 13) Čo je to testovanie pomocou bielej skrinky?
Odpoveď: Testovanie bielej skrinky je testovanie aplikácie so znalosťami vnútornej štruktúry a implementácie kódu. Toto testovanie zvyčajne vykonáva vývojár, ktorý kód napísal vo forme jednotkových testov.
Otázka č. 14) Čo je štúdia uskutočniteľnosti?
Odpoveď: Na softvérovom produkte sa vykonáva štúdia uskutočniteľnosti s cieľom posúdiť, aký praktický a prospešný je vývoj softvérového produktu pre organizáciu. Softvér sa podrobne analyzuje, aby sa pochopili ekonomické a technické aspekty softvérového produktu, ktorý sa má vyvinúť.
Otázka č. 15) Ako môžete merať realizáciu projektu?
Odpoveď: Stav vykonania projektu je možné monitorovať pomocou nasledujúcich techník.
- Správy o stave
- Kontrolné zoznamy míľnikov
- Monitorovanie činnosti
Otázka č. 16) Aké sú funkčné požiadavky?
Odpoveď: Funkčné požiadavky sú vlastnosti, ktoré sa od vyvinutého softvérového produktu očakávajú. Napríklad, pridanie možnosti platby na webovej stránke elektronického obchodu bude funkčnou požiadavkou.
Otázka č. 17) Čo sú nefunkčné požiadavky?
Odpoveď: Nefunkčné požiadavky merajú použiteľnosť aplikácie, ako je vzhľad a dojem z používateľského rozhrania, bezpečnosť, výkon, interoperabilita, spoľahlivosť atď.
Otázka 18) Aký je rozdiel medzi zabezpečením kvality a kontrolou kvality?
Odpoveď: Quality Assurance zaručuje, že dodaný softvér má čo najmenší počet chýb. Kontrola kvality je proces zabezpečujúci dlhodobé udržanie kvality produktu.
Zaistenie kvality vykonáva testovací tím projektu, zatiaľ čo kontrolu kvality zvyčajne vykonáva špecializovaný tím podpory, ktorý je zodpovedný za kvalitu produktu, aj keď je vo fáze údržby softvérového inžinierstva.
Prečítajte si tiež => Zabezpečenie kvality vs Kontrola kvality
Otázka č. 19) Aký je rozdiel medzi overením a overením?
Odpoveď: Overovanie je proces zaistenia, že produkt je zostavený správne, z hľadiska procesu a štandardov.
Validácia je proces, ktorý zaisťuje, že z pohľadu zákazníka zostavujeme správny produkt. Verifikácia je metodika statického testovania, pri ktorej sa produkt testuje bez vykonania kódu, zatiaľ čo validácia je metodika dynamického testovania.
Oplatí sa prečítať => Kompletná štúdia overovania a validácie
Otázka č. 20) Ktorý model SDLC je najlepšie zvoliť pre softvérový produkt?
Odpoveď: Neexistujú žiadne pravidlá ako také, ktoré by určovali, ktorý konkrétny model SDLC sa má pre softvérový produkt použiť. Závisí to od typu budovaného softvérového projektu a politík a postupov organizácie.
Otázka č. 21) Čo máte na mysli pod pojmom Rozsah softvéru?
Odpoveď: Rozsah softvéru je zoznam funkcií poskytovaných vyvinutým softvérom. Na základe rozsahu softvéru je možné vykonať odhady, ako je pridelenie času, rozpočet a pridelenie zdrojov.
Otázka č. 22) Čo je SRS?
Odpoveď: SRS je skratka pre dokument Specification Required Specification (SRS). Je to dokument zachytávajúci všetky funkčné a nefunkčné požiadavky na produkt. Nie všetky modely SDLC musia nasledovať Dokumenty SRS , niektoré modely zachytávajú požiadavky vo forme používateľských príbehov, zatiaľ čo niektoré modely vo forme listov programu Excel atď.
Otázka č. 23) Aký je model SDLC, ktorý ste použili v predchádzajúcom projekte?
Odpoveď: Odpoveď na túto otázku závisí od skúseností kandidáta na pohovor. Ak kandidát odpovie na SDLC model ako Waterfall model, potom anketár začne klásť otázky týkajúce sa Waterfallovho modelu a ak odpovie, že je Agilný, potom anketár začne pýtať pojmy súvisiace s agilnou metodikou ako Scrum, Sprint, atď.
Otázka č. 24) Podrobne vysvetlite model Waterfall.
Odpoveď: The vodopád model je sekvenčný model, v ktorom ďalšia fáza začína až po dokončení prvej fázy. Napríklad, fáza testovania sa začne až po dokončení vývojovej fázy, fáza údržby sa začne až po dokončení fázy testovania.
Ďalej sú uvedené rôzne fázy modelu vodopádu. Upozorňujeme, že počet fáz a postupností fáz sa môže v jednotlivých projektoch líšiť.
- Požiadavky
- Dizajn
- Kódovanie
- Testovanie
- Údržba
do) Požiadavky: Toto je fáza, v ktorej je systém, ktorý sa má vyvinúť, zdokumentovaný vo forme dokumentu so špecifikáciou softvérových požiadaviek (SRS). Toto je najdôležitejšia fáza SDLC, pretože jasné pochopenie požiadaviek klienta zníži prepracovanie v nasledujúcich fázach.
b) Dizajn: Toto je fáza, v ktorej je dokončená architektúra systému, ktorý sa má vyvinúť. Architektúra môže mať podobu dizajnu na vysokej úrovni alebo dizajnu na nízkej úrovni. Architektúra musí obsahovať aj hardvérové a softvérové špecifikácie vyvíjaného systému.
c) Kódovanie: V tejto fáze sa píše kód pre systém, ktorý sa má vyvinúť. Testovanie jednotiek a Testovanie integrácie musia vývojári v tejto fáze vykonať pred nasadením kódu na testovanie.
d) Testovanie: Toto je fáza, v ktorej je vyvinutý produkt testovaný nezávislým testovacím tímom s cieľom overiť, či spĺňa požiadavky uvedené v špecifikácii softvérových požiadaviek (SRS). Poruchy vzniknuté v tejto fáze je potrebné opraviť pred vykonaním odhlásenia na produkte.
e) Údržba: Táto fáza prichádza po dokončení testovacej fázy. Postará sa o všetky výrobné problémy, ktoré môžu vzniknúť po dodaní produktu zákazníkovi. Trvanie fázy údržby sa líši od projektu k projektu a od jednej organizácie k druhej.
Nižšie je uvedený diagram, ktorý zobrazuje model vodopádu vo forme fáz.
Otázka č. 25) Podrobne vysvetlite model V.
Odpoveď: V-Model znamená model overovania a validácie. V-model je doplnkom modelu vodopádu v tom zmysle, že model V je tiež sekvenčným modelom. Vo V-modeli je každá fáza vývoja spojená s príslušnou fázou testovania.
Obrázok uvedený nižšie zobrazuje rôzne fázy zapojené do V-modelu.
Ľavá strana modelu je životný cyklus vývoja softvéru, zatiaľ čo pravá strana modelu je životný cyklus testovania softvéru. Pretože fázy tvoria tvar písmena „V“, tento model sa nazýva V-Model.
Vysvetlenie:
V rámci V-modelu sa SDLC interpretuje zhora nadol, zatiaľ čo STLC sa interpretuje zdola nahor. Spočiatku sa zhromažďujú požiadavky na dokumentáciu systému, ktorý sa má vyvinúť, podľa požiadaviek klienta. Testovací tím na základe požiadaviek vypracuje plán testovania systému.
bezplatný čistič registrov pre Windows 10
Potom nasleduje návrh na vysokej úrovni a fázy návrhu na podrobnej úrovni, kde sa pripravuje architektúra systému. V týchto fázach pripravuje testovací tím plán integračných testov. Po dokončení kódovania na SDLC začne STLC od testovania jednotiek, po ktorých bude nasledovať testovanie integrácie a testovanie systému.
Záver
Dúfame, že tento článok vám pomôže úspešne zvládnuť všetky pohovory so softvérovými inžiniermi.
- Softvérové inžinierstvo je aplikácia systematického, disciplinovaného a merateľného prístupu k vývoju, prevádzke a údržbe softvéru.
- Neexistujú nijaké tvrdé a rýchle pravidlá ako také pre typ otázok v rámci pohovoru so softvérovým inžinierstvom, ktoré sa pýtajú anketárov. Líši sa to od organizácie k organizácii a od typu úlohy, pre ktorú sa pohovor vedie.
Všetko najlepšie pre váš rozhovor so softvérovým inžinierom !!
Odporúčané čítanie
- Fázy, metodiky, proces a modely SDLC (životný cyklus vývoja softvéru)
- Čo je model SDLC Waterfall?
- 25 najlepších nástrojov na správu projektov v roku 2021 (posledné hodnotenie)
- Čo je model STLC V?
- Rozdiel medzi zabezpečením kvality a kontrolou kvality (QA vs. QC)
- Testovanie bielej skrinky: Kompletný sprievodca s technikami, príkladmi a nástrojmi
- Testovanie čiernej skrinky: Podrobný návod s príkladmi a technikami
- Dotazy a odpovede na pohovor