top 25 software engineering interview questions
Vanliga frågor om grundläggande och avancerad programvaruteknik med detaljerade svar. Förbered dig med den här omfattande listan med vanliga intervjufrågor för teknisk programvaruutvecklare för nybörjare och seniorproffs:
Enligt IEEE är Software Engineering tillämpningen av ett systematiskt, disciplinerat och kvantifierbart tillvägagångssätt för utveckling, drift och underhåll av en programvaruprodukt.
Det innebär att tillämpa ett systematiskt och väldefinierat tillvägagångssätt för utvecklingen av en programvaruprodukt.
I den här handledningen kommer vi att behandla de vanligaste frågorna om Software Engineer-intervjuer tillsammans med svaren i enkla termer för enkel förståelse.
De populäraste frågorna om programvaruteknik
Nedan listas de vanligaste frågorna om Software Engineer-intervjuer med svar.
Låt oss utforska !!
F # 1) Vad är SDLC?
Svar: SDLC står för Software Development Life Cycle. Den definierar steg för steg-metoden för utveckling av programvara. SDLC involverar följande faser, dvs kravsamling, systemanalys, design, kodning, testning, underhåll och dokumentation.
Nedan visas den höga representationen av de olika faserna som är involverade i SDLC.
(bild källa )
F # 2) Vilka är de olika modellerna som finns tillgängliga i SDLC?
Svar: Det finns flera modeller tillgängliga i SDLC för att effektivt genomföra mjukvaruutveckling. Några av modellerna inkluderar Vattenfall modell , V-modell, smidig modell, etc.
F # 3) Förklara termen Baslinje.
virtual reality-headset kompatibelt med ps4
Svar: En baslinje är en milstolpe i projektet som vanligtvis definieras av projektledaren. Baslinjer används för att spåra projektets framsteg då och då för att bedöma projektets övergripande hälsa.
F # 4) Vilka ansvar har en programvaruprojektledare?
Svar: En programvaruprojektledare ansvarar för att driva projektet mot ett framgångsrikt slutförande. Det är programvarans projektledares ansvar att se till att hela teamet följer en systematisk och väldefinierad strategi för utveckling av programvara.
En programvaruprojektledare ansvarar också för följande uppgifter:
- Projekt planering
- Projektstatusspårning
- Resurshantering
- Riskhantering
- Projektleverans inom tid och budget.
F # 5) Vad är sammanhållning?
Svar: Sammanhållning är i vilken grad elementen i en modul är relaterade till varandra. Det är som ett inre lim som binder ihop elementen i en modul. Bra programvara har höga sammanhållningsnivåer.
F # 6) Vad är koppling?
Svar: Koppling är graden av ömsesidigt beroende mellan modulerna. Bra programvara har låga nivåer av koppling.
F # 7) Förklara begreppet modularisering.
Svar: Modularisering används för att dela upp programvara i flera komponenter eller moduler. Varje modul bearbetas av ett oberoende utvecklings- och testteam. Det slutliga resultatet skulle vara att kombinera flera moduler till en enda arbetsdel.
F # 8) Vad är programvarukonfigurationshantering?
Svar: Hantering av programvarukonfiguration är processen för att spåra och kontrollera de förändringar som uppstår under programvaruutvecklingens livscykel. Alla förändringar som görs under programvaruutvecklingen måste spåras genom en väldefinierad och kontrollerad process.
Konfigurationshantering säkerställer att alla ändringar som görs under programvaruutvecklingen kontrolleras genom en väldefinierad process.
F # 9) Vilka är de olika faserna i SDLC?
Svar: Följande är de vanligaste faserna i SDLC.
- Kravsanalys
- Design
- Kodning
- Testning
- Underhåll
F # 10) Ge exempel på projektledningsverktyg.
Svar: Nedan följer några av de mest använda projektledningsverktygen som finns i branschen idag.
- Gantt-diagram
- Checklistor
- Statusrapporter
- Histogram
- Microsoft Project
Rekommenderad läsning => De bästa verktyg för projektledning som du borde veta
F # 11) Vad är CASE-verktyg?
Svar: CASE står för Computer-Aided Software Engineering-verktyg som används för att stödja och påskynda de olika aktiviteterna under Software Development Lifecycle.
F # 12) Vad är Black Box-testning?
Svar: Black box-test innebär att testa applikationen utan kunskap om den interna strukturen eller kodimplementeringen. Testare skulle bara bry sig om programvarans funktionalitet vid testning i svart ruta snarare än dataflöde och kodkörning i baksidan.
F # 13) Vad är vitlåda testning?
Svar: White box-testning testar applikationen med kunskap om den interna strukturen och kodimplementeringen. Denna testning utförs vanligtvis av utvecklaren som har skrivit koden i form av enhetstester.
F # 14) Vad är en genomförbarhetsstudie?
Svar: En genomförbarhetsstudie genomförs på en mjukvaruprodukt för att bedöma hur praktisk och fördelaktig utvecklingen av mjukvaruprodukten är för organisationen. Programvara analyseras noggrant för att förstå de ekonomiska och tekniska aspekterna av en programvaruprodukt som ska utvecklas.
F # 15) Hur kan du mäta projektutförande?
youtube till mp4-omvandlare gratis online utan nedladdning
Svar: Projektkörningsstatus kan övervakas med följande tekniker.
- Statusrapporter
- Milstolpschecklistor
- Aktivitetsövervakning
F # 16) Vilka är funktionskraven?
Svar: Funktionella krav är de funktioner som en utvecklad mjukvaruprodukt förväntas utföra. Till exempel, att lägga till ett betalningsalternativ på en e-handelswebbplats är ett funktionellt krav.
F # 17) Vad är icke-funktionella krav?
Svar: Icke-funktionella krav mäter användbarheten i applikationen som användargränssnittets utseende, säkerhet, prestanda, driftskompatibilitet, tillförlitlighet etc.
F # 18) Vad är skillnaden mellan kvalitetssäkring och kvalitetskontroll?
Svar: Kvalitetssäkring är att säkerställa att den levererade mjukvaran har så många fel som möjligt. Kvalitetskontroll är processen för att säkerställa att produktens kvalitet bibehålls på lång sikt.
Kvalitetssäkring görs av testteamet i projektet medan kvalitetskontroll vanligtvis utförs av ett dedikerat supportteam som ansvarar för produktens kvalitet även om produkten är under underhållsfas för programvaruteknik.
Läs också => Kvalitetssäkring mot kvalitetskontroll
F # 19) Vad är skillnaden mellan verifiering och validering?
Svar: Verifiering är processen för att säkerställa att produkten byggs rätt, ur ett process- och standardperspektiv.
Validering är processen att se till att vi bygger rätt produkt ur kundperspektiv. Verifiering är en statisk testmetod där produkten testas utan att koden körs, medan validering är en dynamisk testmetod.
Värt att läsa => Komplett studie av verifiering och validering
F # 20) Vilken SDLC-modell är bäst att välja för en programvaruprodukt?
Svar: Det finns inga regler som sådana som anger vilken specifik SDLC-modell som ska användas för en mjukvaruprodukt. Det beror på vilken typ av programvaruprojekt som byggs och organisationens policyer och procedurer.
F # 21) Vad menar du med Software Scope?
Svar: Programvarans omfattning är listan över funktioner som tillhandahålls av den utvecklade programvaran. Baserat på programvarans omfattning kan uppskattningar som tidsallokering, budget och resursallokering göras.
F # 22) Vad är SRS?
Svar: SRS står för Software Requirement Specification (SRS) -dokument. Det är ett dokument för att fånga upp alla produkts funktionella och icke-funktionella krav. Inte alla SDLC-modeller behöver följa SRS-dokument , vissa modeller fångar upp krav i form av användarberättelser, medan vissa modeller i form av excel-ark etc.
F # 23) Vad är SDLC-modellen som du har använt i ditt tidigare projekt?
Svar: Svaret på denna fråga beror på erfarenheten hos en intervju-kandidat. Om kandidaten svarar SDLC-modellen för att vara Vattenfallsmodellen, kommer intervjuaren att börja ställa frågor om Vattenfallsmodellen och om han svarar den för att vara Agile, kommer intervjuaren att börja ställa termer relaterade till Agile-metodik som Scrum, Sprint, etc.
F # 24) Förklara vattenfallsmodellen i detalj.
Svar: De vattenfall modellen är en sekventiell modell där nästa fas börjar först efter att den första fasen är klar. Till exempel, testfasen börjar först efter att utvecklingsfasen är klar, underhållsfasen börjar först efter att testfasen är klar.
Nedan följer de olika faserna i vattenfallsmodellen. Observera att antalet faser och sekvenser av faser kan variera från ett projekt till ett annat.
- Krav
- Design
- Kodning
- Testning
- Underhåll
till) Krav: Detta är den fas där systemet som ska utvecklas dokumenteras i form av SRS-dokument (Software Requirement Specification). Detta är den viktigaste fasen i SDLC eftersom en tydlig förståelse av kraven från klienten kommer att minska omarbetningen i följande faser.
b) Design: Detta är den fas där arkitekturen för systemet som ska utvecklas är slutförd. Arkitektur kan vara i form av en design på hög nivå eller en låg nivå design. Arkitektur måste också innehålla maskinvaru- och programvaruspecifikationerna för det system som ska utvecklas.
c) Kodning: Detta är den fas där koden för systemet som ska utvecklas skrivs. Enhetstestning och Integrationstestning måste utföras av utvecklarna i detta skede innan koden distribueras för testning.
d) Testning: Detta är den fas där den utvecklade produkten testas av ett oberoende testteam för att validera om den uppfyller kraven i SRS (Software Requirement Specification). Defekter som uppkommit i denna fas måste åtgärdas innan du loggar ut på produkten.
e) Underhåll: Denna fas kommer när testfasen är klar. Den tar hand om alla produktionsfrågor som kan uppstå efter att produkten har levererats till kunden. Underhållsfasens varaktighet varierar från projekt till projekt och en organisation till en annan.
Nedan är diagrammet för att skildra vattenfallsmodellen i form av faser.
skillnad mellan alfatestning och betatestning
F # 25) Förklara V-modellen i detalj.
Svar: V-Model står för verifierings- och valideringsmodellen. V-modell är ett tillskott till vattenfallsmodellen, i den meningen att V-modellen också är en sekventiell modell. I V-modellen är varje utvecklingsfas associerad med en motsvarande testfas.
Bilden nedan visar de olika faserna involverade i V-modellen.
Vänster sida av modellen är Software Development Lifecycle medan den högra sidan av modellen är Software Testing Lifecycle. Eftersom faserna formar bokstaven ”V” kallas denna modell V-modell.
Förklaring:
Inom V-modellen ska SDLC tolkas från topp till botten, medan STLC ska tolkas från botten till toppen. Inledningsvis samlas krav för att dokumentera systemet som ska utvecklas enligt kundkraven. Testteamet utvecklar systemtestplanen baserat på kraven.
Sedan kommer högnivådesignen och de detaljerade nivådesignfaserna där systemets arkitektur förbereds. Testteamet förbereder planen för integrationstest i dessa faser. När kodningen är klar på SDLC startar STLC från enhetstestning, följt av integrationstestning och systemtestning.
Slutsats
Vi hoppas att den här artikeln kommer att hjälpa dig att knäcka någon Software Engineer-intervju framgångsrikt.
- Software Engineering är tillämpningen av ett systematiskt, disciplinerat och kvantifierbart tillvägagångssätt för utveckling, drift och underhåll av programvara.
- Det finns inga hårda och snabba regler som sådana för typen av frågor om programvaruteknikintervju som ställs av intervjuare. Det varierar från organisation till organisation och vilken typ av roll intervjun genomförs för.
Allt det bästa för din intervju med mjukvaruutvecklare !!
Rekommenderad läsning
- SDLC (Software Development Life Cycle) -faser, metoder, processer och modeller
- Vad är SDLC Waterfall Model?
- 25 bästa verktyg för projektledning 2021 (senaste rankning)
- Vad är STLC V-Model?
- Skillnaden mellan kvalitetssäkring och kvalitetskontroll (QA vs QC)
- White Box Testing: En komplett guide med tekniker, exempel och verktyg
- Black Box Testing: En djupgående handledning med exempel och tekniker
- Intervjufrågor och svar