top 25 software engineering interview questions
Najpogostejša osnovna in napredna vprašanja o intervjuju s podrobnimi odgovori. Pripravite se s tem izčrpnim seznamom pogostih vprašanj za intervju s tehničnim programskim inženirjem za začetnike in starejše strokovnjake:
V skladu z IEEE programsko inženirstvo uporablja sistematičen, discipliniran in merljiv pristop k razvoju, delovanju in vzdrževanju programskega izdelka.
Pomeni uporabo sistematičnega in natančno opredeljenega pristopa k razvoju programskega izdelka.
V tej vadnici bomo za lažje razumevanje zajeli najpogostejša vprašanja v zvezi z razgovori s programskim inženirjem in odgovore z njimi.
Najbolj priljubljena vprašanja o intervjuju s programskim inženirstvom
Spodaj so navedena najpogostejša vprašanja za intervju s programskim inženirjem z odgovori.
Raziskujmo !!
V # 1) Kaj je SDLC?
Odgovor: SDLC pomeni življenjski cikel razvoja programske opreme. Določa korak za korakom pristop k razvoju programske opreme. SDLC vključuje naslednje faze, tj. zbiranje zahtev, analiza sistemov, načrtovanje, kodiranje, preskušanje, vzdrževanje in dokumentacija.
Spodaj je predstavljena različna faza SDLC na visoki ravni.
(slika vir )
V # 2) Kateri modeli so na voljo v SDLC?
Odgovor: V SDLC je na voljo več modelov za učinkovito izvajanje programske opreme. Nekateri modeli vključujejo Model slapa , V-Model, Agile model itd.
V # 3) Pojasnite izraz Izhodišče.
odprta naslovna heš tabela c ++
Odgovor: Izhodišče je mejnik na projektu, ki ga običajno opredeli vodja projekta. Osnovne črte se občasno uporabljajo za sledenje napredku projekta, da se oceni splošno zdravstveno stanje projekta.
Q # 4) Kakšne odgovornosti je vodja programskega projekta?
Odgovor: Vodja projekta za programsko opremo je odgovoren za usmerjanje projekta k uspešnemu zaključku. Odgovornost vodje programske opreme je zagotoviti, da celotna ekipa sledi sistematičnemu in natančno opredeljenemu pristopu k razvoju programske opreme.
Vodja projektov programske opreme je odgovoren tudi za naslednje naloge:
- Načrtovanje projektov
- Sledenje statusu projekta
- Upravljanje virov
- Upravljanje s tveganji
- Izvedba projekta v roku in proračunu.
V # 5) Kaj je kohezija?
Odgovor: Kohezija je stopnja medsebojne povezanosti elementov modula. Je kot notranje lepilo, ki povezuje elemente modula. Dobra programska oprema ima visoko stopnjo kohezije.
Q # 6) Kaj je sklopka?
Odgovor: Spajanje je stopnja medsebojne odvisnosti med moduli. Dobra programska oprema ima nizke stopnje spenjanja.
V # 7) Pojasnite koncept modularizacije.
Odgovor: Modularizacija se uporablja za razdelitev programske opreme na več komponent ali modulov. Vsak modul obdela neodvisna skupina za razvoj in testiranje. Končni rezultat bi bil združitev več modulov v eno delovno komponento.
Q # 8) Kaj je upravljanje konfiguracije programske opreme?
Odgovor: Upravljanje konfiguracije programske opreme je postopek sledenja in nadzora sprememb, ki se pojavijo med življenjskim ciklom razvoja programske opreme. Vsako spremembo, ki je nastala med razvojem programske opreme, je treba slediti skozi natančno opredeljen in nadzorovan postopek.
Upravljanje konfiguracije zagotavlja, da se vse spremembe, ki so nastale med razvojem programske opreme, nadzorujejo z natančno opredeljenim postopkom.
V # 9) Katere so različne faze SDLC?
Odgovor: V nadaljevanju so najpogostejše faze SDLC.
- Analiza zahtev
- Oblikovanje
- Kodiranje
- Testiranje
- Vzdrževanje
V # 10) Navedite primere orodij za upravljanje projektov.
Odgovor: Spodaj je nekaj najpogosteje uporabljenih orodij za upravljanje projektov, ki so danes na voljo v industriji.
- Gantogram
- Kontrolni seznami
- Poročila o stanju
- Histogrami
- Microsoft Project
Priporočeno branje => Najboljša orodja za upravljanje projektov, ki bi jih morali poznati
Q # 11) Kaj so orodja CASE?
Odgovor: CASE pomeni orodja za računalniško podprto programsko inženirstvo, ki se uporabljajo za podporo in pospešitev različnih dejavnosti življenjskega cikla razvoja programske opreme.
vprašanja poslovnega analitika o zavarovanju domene
V # 12) Kaj je testiranje črne skrinjice?
Odgovor: Testiranje črne skrinjice vključuje preizkušanje aplikacije brez vedenja notranje strukture ali izvajanja kode. Preizkuševalce bi motilo le funkcionalnost programske opreme pri preizkušanju črne škatle, ne pa pretok podatkov in izvajanje kode v ozadju.
V # 13) Kaj je testiranje bele škatle?
Odgovor: White box testiranje je testiranje aplikacije s poznavanjem notranje strukture in implementacije kode. To preskušanje praviloma izvaja razvijalec, ki je kodo napisal v obliki preskusov enote.
V # 14) Kaj je študija izvedljivosti?
Odgovor: Za programski izdelek se izvede študija izvedljivosti, da se oceni, kako praktičen in koristen je razvoj programskega izdelka za organizacijo. Programska oprema se temeljito analizira, da se razumejo ekonomski in tehnični vidiki programskega izdelka, ki ga je treba razviti.
V # 15) Kako lahko izmerite izvedbo projekta?
Odgovor: Stanje izvajanja projekta je mogoče spremljati z naslednjimi tehnikami.
- Poročila o stanju
- Mejni kontrolni seznami
- Spremljanje dejavnosti
Q # 16) Kakšne so funkcionalne zahteve?
Odgovor: Funkcionalne zahteve so funkcije, ki naj bi jih razviti programski izdelek izvajal. Na primer Dodajanje možnosti plačila na spletnem mestu e-trgovine bo funkcionalna zahteva.
V # 17) Kaj so nefunkcionalne zahteve?
Odgovor: Nefunkcionalne zahteve merijo uporabnost aplikacije, kot so videz in občutek uporabniškega vmesnika, varnost, zmogljivost, interoperabilnost, zanesljivost itd.
V # 18) Kakšna je razlika med zagotavljanjem kakovosti in nadzorom kakovosti?
Odgovor: Zagotavljanje kakovosti zagotavlja, da ima dostavljena programska oprema najmanj možnih napak. Nadzor kakovosti je postopek zagotavljanja, da se kakovost izdelka dolgoročno ohranja.
Zagotavljanje kakovosti opravi preskusna skupina projekta, nadzor kakovosti pa običajno opravi posebna skupina za podporo, ki je odgovorna za kakovost izdelka, tudi če je izdelek v fazi vzdrževanja programskega inženiringa.
Preberite tudi => Zagotavljanje kakovosti proti nadzoru kakovosti
V # 19) Kakšna je razlika med preverjanjem in preverjanjem?
Odgovor: Preverjanje je postopek zagotavljanja pravilne izdelave izdelka z vidika postopka in standardov.
Validacija je postopek, s katerim zagotavljamo, da z vidika kupca izdelamo pravi izdelek. Preverjanje je statična preskusna metodologija, pri kateri se izdelek preizkusi brez izvrševanja kode, medtem ko je validacija dinamična preskusna metodologija.
Vredno branja => Popolna študija preverjanja in potrjevanja
V # 20) Kateri model SDLC je najbolje izbrati za programski izdelek?
Odgovor: Pravila kot taka ne določajo, kateri model SDLC je treba uporabiti za programski izdelek. To je odvisno od vrste programskega projekta, ki se gradi, ter od politik in postopkov organizacije.
V # 21) Kaj mislite s programskim obsegom?
Odgovor: Obseg programske opreme je seznam funkcij, ki jih ponuja razvita programska oprema. Glede na obseg programske opreme je mogoče izvesti ocene, kot so dodelitev časa, proračun in dodelitev virov.
Q # 22) Kaj je SRS?
Odgovor: SRS pomeni dokument SRS (Software Requirement Specification). Je dokument, ki zajema vse funkcionalne in nefunkcionalne zahteve izdelka. Ni treba upoštevati vseh modelov SDLC Dokumenti SRS , nekateri modeli zajemajo zahteve v obliki uporabniških zgodb, medtem ko nekateri modeli v obliki excel listov itd.
vprašanja in odgovori za pogovor s spletnimi storitvami za počitek
Q # 23) Kakšen je model SDLC, ki ste ga uporabili v prejšnjem projektu?
Odgovor: Odgovor na to vprašanje je odvisen od izkušenj kandidata za razgovor. Če kandidat odgovori na model SDLC kot model Slap, potem bo anketar začel postavljati vprašanja o modelu Slap in če bo odgovoril, da je Agile, bo anketar začel spraševati o izrazih, povezanih z agilno metodologijo, kot so Scrum, Sprint, itd.
Q # 24) Podrobno razložite model Slap.
Odgovor: The slap model je zaporedni model, pri katerem se naslednja faza začne šele po zaključku prve faze. Na primer faza testiranja se bo začela šele po zaključku razvojne faze, faza vzdrževanja pa se bo začela šele po zaključku faze testiranja.
Spodaj so različne faze, ki so vključene v model slapa. Upoštevajte, da se lahko število faz in zaporedja faz med projekti razlikuje.
- Zahteve
- Oblikovanje
- Kodiranje
- Testiranje
- Vzdrževanje
do) Zahteve: To je faza, v kateri se sistem, ki ga je treba razviti, dokumentira v obliki dokumenta s specifikacijami programske zahteve (SRS). To je najpomembnejša faza SDLC, saj bo jasno razumevanje zahtev naročnika zmanjšalo predelavo v naslednjih fazah.
b) Oblika: To je faza, v kateri je dokončana arhitektura sistema, ki ga je treba razviti. Arhitektura je lahko v obliki zasnove na visoki ali nizki ravni. Arhitektura mora vključevati tudi specifikacije strojne in programske opreme sistema, ki ga je treba razviti.
c) kodiranje: To je faza, v kateri je napisana koda sistema, ki ga je treba razviti. Enotno preskušanje in Integracijsko preskušanje morajo razvijalci na tej stopnji izvesti pred uvedbo kode za testiranje.
d) Testiranje: To je faza, v kateri razviti izdelek neodvisna preskusna skupina preizkusi, da preveri, ali izpolnjuje zahteve iz specifikacije programske zahteve (SRS). Napake, ki so nastale v tej fazi, je treba odpraviti, preden na izdelku odjavite.
e) Vzdrževanje: Ta faza nastopi, ko je faza testiranja končana. Skrbi za morebitne proizvodne težave, ki se lahko pojavijo po dostavi izdelka kupcu. Trajanje faze vzdrževanja se razlikuje od projekta do projekta in od ene organizacije do druge.
Spodaj je diagram, ki prikazuje model slapa v obliki faz.
V # 25) Podrobno razložite V-model.
Odgovor: V-Model pomeni verifikacijski in validacijski model. V-model je dodatek modelu slapa, v smislu, da je V-model tudi zaporedni model. V modelu V je vsaka faza razvoja povezana z ustrezno fazo testiranja.
Spodnja slika prikazuje različne faze V-modela.
Leva stran modela je življenjski cikel razvoja programske opreme, medtem ko je desna stran modela življenjski cikel testiranja programske opreme. Ko faze tvorijo obliko črke „V“, se ta model imenuje V-model.
Pojasnilo:
V modelu V je treba SDLC razlagati od zgoraj navzdol, medtem ko je treba STLC razlagati od spodaj navzgor. Sprva se zbirajo zahteve za dokumentiranje sistema, ki ga je treba razviti v skladu z zahtevami naročnika. Skupina za testiranje razvije sistemski načrt preskusov na podlagi zahtev.
Nato pride do faze načrtovanja na visoki ravni in faze podrobnega načrtovanja, kjer se pripravi arhitektura sistema. Preskusna skupina v teh fazah pripravi načrt integracijskega preskusa. Ko je kodiranje končano na SDLC, se bo STLC začel s preskušanjem enote, čemur bo sledilo integracijsko testiranje in sistemsko testiranje.
Zaključek
Upamo, da vam bo ta članek pomagal uspešno razbiti kateri koli intervju s programskim inženirjem.
- Programsko inženirstvo je uporaba sistematičnega, discipliniranega in merljivega pristopa k razvoju, delovanju in vzdrževanju programske opreme.
- Za vrsto vprašanj, ki jih anketarji zastavljajo, ne obstajajo stroga pravila kot taka. Od organizacije do organizacije se razlikuje in vrsta vloge, za katero se vodi razgovor.
Vse najboljše za vaš razgovor s programskim inženirjem !!
Priporočeno branje
- Faze, metodologije, procesi in modeli SDLC (življenjski cikel razvoja programske opreme)
- Kaj je model slapa SDLC?
- 25 najboljših orodij za upravljanje projektov v letu 2021 (najnovejše lestvice)
- Kaj je STLC V-Model?
- Razlika med zagotavljanjem kakovosti in nadzorom kakovosti (QA vs QC)
- Testiranje bele škatle: popoln vodnik s tehnikami, primeri in orodji
- Testiranje črne škatle: poglobljena vadnica s primeri in tehnikami
- Vprašanja in odgovori za intervju