top 25 software engineering interview questions
Preguntes bàsiques i avançades d’entrevistes d’enginyeria de programari bàsica i avançada amb respostes detallades. Prepareu-vos amb aquesta llista completa de preguntes habituals sobre les entrevistes d’enginyers tècnics de programari per a professionals de nivell inicial i sèniors:
Segons IEEE, Enginyeria de programari és l'aplicació d'un enfocament sistemàtic, disciplinat i quantificable cap al desenvolupament, operació i manteniment d'un producte de programari.
Significa aplicar un enfocament sistemàtic i ben definit al desenvolupament d’un producte de programari.
En aquest tutorial, tractarem les preguntes més freqüents de l'entrevista de Software Engineer juntament amb les respostes en termes senzills per facilitar la vostra comprensió.
Preguntes més populars d’entrevistes d’enginyeria de programari
A continuació, es detallen les preguntes més freqüents sobre les entrevistes amb enginyer de programari amb respostes.
Explorem !!
P # 1) Què és SDLC?
Resposta: SDLC significa Cicle de vida de desenvolupament de programari. Defineix l'enfocament pas a pas per al desenvolupament de programari. SDLC inclou les fases següents: recollida de requisits, anàlisi de sistemes, disseny, codificació, proves, manteniment i documentació.
A continuació es mostra la representació d’alt nivell de les diverses fases implicades en SDLC.
[imatge font ]
Q # 2) Quins són els diversos models disponibles a SDLC?
Resposta: Hi ha diversos models disponibles en SDLC per dur a terme de manera eficient el desenvolupament de programari. Alguns dels models inclouen el Model de cascada , V-Model, Agile model, etc.
P # 3) Expliqueu el terme Línia base.
el millor programari d’actualització de controladors per a Windows 10
Resposta: Una línia de base és una fita del projecte que sol definir el gerent del projecte. Les línies de base s’utilitzen per fer un seguiment del progrés del projecte de tant en tant per avaluar la salut general del projecte.
Q # 4) Quines són les responsabilitats d’un gestor de projectes de programari?
Resposta: Un gestor de projectes de programari és responsable de conduir el projecte cap a la finalització amb èxit. És responsabilitat del gestor de projectes de programari assegurar-se que tot l’equip segueixi un enfocament sistemàtic i ben definit pel que fa al desenvolupament de programari.
Un gestor de projectes de programari també és responsable de les tasques següents:
- Planificació del projecte
- Seguiment de l'estat del projecte
- Gestió de recursos
- Gestió de riscos
- Lliurament del projecte dins del termini i el pressupost.
P # 5) Què és la cohesió?
Resposta: La cohesió és el grau en què els elements d’un mòdul s’interrelacionen entre ells. És com una cola interna que uneix els elements d’un mòdul. Un bon programari té alts nivells de cohesió.
Q # 6) Què és l'acoblament?
Resposta: L’acoblament és el grau d’interdependència entre els mòduls. Un bon programari té nivells baixos d'acoblament.
Q # 7) Expliqueu el concepte de Modularització.
Resposta: La modularització s’utilitza per dividir el programari en diversos components o mòduls. Cada mòdul és treballat per un equip de desenvolupament i proves independents. El resultat final seria combinar diversos mòduls en un sol component de treball.
Q # 8) Què és la gestió de configuracions de programari?
Resposta: La gestió de la configuració del programari és el procés de seguiment i control dels canvis que es produeixen durant el cicle de vida del desenvolupament de programari. Cal fer un seguiment de qualsevol canvi realitzat durant el desenvolupament de programari mitjançant un procés ben definit i controlat.
La gestió de la configuració garanteix que tots els canvis realitzats durant el desenvolupament de programari es controlin mitjançant un procés ben definit.
P # 9) Quines són les diverses fases de SDLC?
Resposta: Les següents són les fases més comunes de SDLC.
- Anàlisi de requisits
- Disseny
- Codificació
- Proves
- Manteniment
Q # 10) Proporcioneu exemples d'eines de gestió de projectes.
Resposta: A continuació es detallen algunes de les eines de gestió de projectes més utilitzades que estan disponibles a la indústria actualment.
preguntes i respostes de l'entrevista de desenvolupadors nets
- Diagrama de Gantt
- Llistes de comprovació
- Informes d'estat
- Histogrames
- Projecte Microsoft
Lectura recomanada => Principals eines de gestió de projectes que hauríeu de conèixer
Q # 11) Què són les eines CASE?
Resposta: CASE significa eines d’enginyeria de programari assistit per ordinador que s’utilitzen per donar suport i accelerar les diverses activitats del cicle de vida de desenvolupament de programari.
P # 12) Què són les proves de Black Box?
Resposta: La prova de la caixa negra implica provar l'aplicació sense conèixer l'estructura interna o la implementació del codi. Els verificadors només es preocuparien de la funcionalitat del programari en les proves de caixa negra en lloc del flux de dades i l’execució de codi a la part posterior.
P # 13) Què és la prova de la caixa blanca?
Resposta: La prova de caixa blanca consisteix a provar l'aplicació amb el coneixement de l'estructura interna i la implementació del codi. Aquesta prova la realitza generalment el desenvolupador que ha escrit el codi en forma de proves unitàries.
P # 14) Què és un estudi de viabilitat?
Resposta: Es realitza un estudi de viabilitat sobre un producte de programari per avaluar fins a quin punt és pràctic i beneficiós per a l'organització el desenvolupament del producte de programari. El programari s’analitza a fons per comprendre els aspectes econòmics i tècnics d’un producte de programari a desenvolupar.
P # 15) Com es pot mesurar l'execució del projecte?
Resposta: L'estat d'execució del projecte es pot controlar mitjançant les tècniques següents.
- Informes d'estat
- Llistes de comprovació de fites
- Seguiment de l’activitat
Q # 16) Quins són els requisits funcionals?
Resposta: Els requisits funcionals són les funcions que s’espera que realitzi un producte de programari desenvolupat. Per exemple, afegir una opció de pagament a un lloc web de comerç electrònic serà un requisit funcional.
P # 17) Quins són els requisits no funcionals?
Resposta: Els requisits no funcionals mesuren la usabilitat de l’aplicació, com ara l’aspecte de la interfície d’usuari, la seguretat, el rendiment, la interoperabilitat, la fiabilitat, etc.
P # 18) Quina diferència hi ha entre garantia de qualitat i control de qualitat?
Resposta: L’assegurança de qualitat garanteix que el programari lliurat tingui el menor nombre de defectes possibles. El control de qualitat és el procés per garantir que la qualitat del producte es mantingui a la llarga.
L’assegurament de la qualitat es realitza per part de l’equip de proves del projecte, mentre que el control de qualitat sol ser realitzat per un equip de suport dedicat, que és responsable de la qualitat del producte, fins i tot si el producte es troba en fase de manteniment de l’enginyeria de programari.
Llegiu també> Garantia de qualitat contra control de qualitat
P # 19) Quina diferència hi ha entre la verificació i la validació?
Resposta: La verificació és el procés per garantir que el producte es construeix correctament, des d’una perspectiva de processos i estàndards.
La validació és el procés per garantir que creem el producte adequat, des de la perspectiva del client. La verificació és una metodologia de proves estàtiques en què el producte es prova sense executar el codi, mentre que la validació és una metodologia de prova dinàmica.
Digne de llegir => Estudi complet de verificació i validació
P # 20) Quin model SDLC és el millor per triar per a un producte de programari?
Resposta: No hi ha regles com a tals que indiquin quin model SDLC específic s’ha d’utilitzar per a un producte de programari. Depèn del tipus de projecte de programari que es construeixi i de les polítiques i procediments de l’organització.
P # 21) Què voleu dir amb Software Scope?
Resposta: L’abast del programari és la llista de funcions proporcionades pel programari desenvolupat. En funció de l'abast del programari, es poden fer estimacions com l'assignació de temps, pressupost i assignació de recursos.
Q # 22) Què és SRS?
Resposta: SRS significa document Software Requirement Specification (SRS). És un document per recollir tots els requisits funcionals i no funcionals d’un producte. No cal seguir tots els models SDLC Documents SRS , alguns models capturen els requisits en forma d’històries d’usuaris, mentre que alguns models en forma de fulls Excel, etc.
Q # 23) Quin és el model SDLC que heu utilitzat al vostre projecte anterior?
Resposta: La resposta a aquesta pregunta depèn de l’experiència d’un candidat a l’entrevista. Si el candidat respon que el model SDLC és el model de cascada, l’entrevistador començarà a fer preguntes sobre el model de cascada i si respon que és Agile, l’entrevistador començarà a preguntar termes relacionats amb la metodologia Agile com Scrum, Sprint, etc.
Q # 24) Expliqueu detalladament el model de cascada.
Resposta: El cascada El model és un model seqüencial en què la següent fase només comença un cop finalitzada la primera fase. Per exemple, la fase de proves començarà només un cop finalitzada la fase de desenvolupament, la fase de manteniment només començarà un cop finalitzada la fase de prova.
A continuació es mostren les diverses fases implicades en el model de cascada. Tingueu en compte que el nombre de fases i seqüències de fases pot variar d’un projecte a un altre.
- Requisits
- Disseny
- Codificació
- Proves
- Manteniment
a) Requisits: Aquesta és la fase en què es documenta el sistema a desenvolupar en forma de document d’especificació de requisits de programari (SRS). Aquesta és la fase més important de SDLC, ja que una comprensió clara dels requisits del client reduirà la reelaboració en les fases següents.
b) Disseny: Aquesta és la fase en què es finalitza l'arquitectura del sistema a desenvolupar. L’arquitectura pot tenir la forma d’un disseny d’alt nivell o un disseny de baix nivell. L'arquitectura també ha d'incloure les especificacions de maquinari i programari del sistema a desenvolupar.
c) Codificació: Aquesta és la fase on s’escriu el codi del sistema a desenvolupar. Proves unitàries i Proves d’integració han de ser realitzats pels desenvolupadors en aquesta etapa abans de desplegar el codi per provar-los.
d) Proves: Aquesta és la fase en què un equip de proves independent prova el producte desenvolupat per validar si compleix els requisits de l’especificació de requisits de programari (SRS). Cal solucionar els defectes que es produeixin en aquesta fase abans d’iniciar la sessió al producte.
e) Manteniment: Aquesta fase arriba un cop finalitzada la fase de proves. S'encarrega de qualsevol problema de producció que pugui sorgir després que el producte sigui lliurat al client. La durada de la fase de manteniment difereix d'un projecte a un altre i d'una organització a una altra.
A continuació es mostra el diagrama per representar el model de cascada en forma de fases.
Q # 25) Expliqueu detalladament el model V.
Resposta: V-Model significa el model de verificació i validació. Model en V és un afegit al model de cascada, en el sentit que el model V també és un model seqüencial. En el model V, cada fase del desenvolupament està associada a una fase de proves corresponent.
La imatge que es mostra a continuació mostra les diverses fases implicades en el model en V.
El costat esquerre del model és el cicle de vida de desenvolupament de programari, mentre que el costat dret del model és el cicle de vida de proves de programari. Com que les fases formen la forma de la lletra ‘V’, aquest model s’anomena model V.
Explicació:
Dins del model V, SDLC s'ha d'interpretar de dalt a baix, mentre que STLC s'ha d'interpretar de baix a dalt. Inicialment, es reuneixen els requisits per documentar el sistema a desenvolupar segons els requisits del client. L’equip de proves desenvolupa el pla de proves del sistema en funció dels requisits.
la passarel·la per defecte no està disponible per Windows 10 wifi
Després vindran les fases de disseny d’alt nivell i detallades en què es prepara l’arquitectura del sistema. L'equip de proves prepara el pla de prova d'integració en aquestes fases. Un cop finalitzada la codificació a SDLC, STLC començarà a partir de la prova unitària, seguida de la prova d’integració i la prova del sistema.
Conclusió
Esperem que aquest article us ajudi a trencar amb èxit qualsevol entrevista amb enginyer de programari.
- L’enginyeria de programari és l’aplicació d’un enfocament sistemàtic, disciplinat i quantificable per al desenvolupament, operació i manteniment de programari.
- No hi ha regles difícils i ràpides com a tals sobre el tipus de preguntes d'entrevistes d'enginyeria de programari que fan els entrevistadors. Varia d'una organització a una altra i del tipus de rol per al qual es realitza l'entrevista.
Tot el millor per a la vostra entrevista amb l'enginyer de programari !!
Lectura recomanada
- Fases, metodologies, processos i models de SDLC (cicle de vida de desenvolupament de programari)
- Què és el model de cascada SDLC?
- 25 millors eines de gestió de projectes el 2021 (darreres classificacions)
- Què és el model V STLC?
- Diferència entre garantia de qualitat i control de qualitat (QA vs QC)
- Proves de caixes blanques: una guia completa amb tècniques, exemples i eines
- Prova de caixa negra: un tutorial en profunditat amb exemples i tècniques
- Preguntes i respostes de l’entrevista