Software Architecture Viva Questions |Software Architecture Question for Engineer Student|

Software Architecture Viva Questions 

    What is a software development methodology? 

     
    Ans:- 
    Software development is a process or series of processes used in software development. Again, quite broad but that it is things like a design phase, a development phase. 

    It is ways of thinking about things like waterfall being a non iterative kind of process. Generally it takes the form of defined phases. It is designed to describe the how of the life cycle of a piece of software.

     


    What is Agile in software development? 


    Ans:- 
    Teams use the agile development methodology to minimize risk (such as bugs, cost overruns, and changing requirements) when adding new functionality. 
    In all agile methods, teams develop the software in iterations that contain mini-increments of the new functionality. There are many different forms of the agile development method, including scrum, crystal, extreme programming (XP), and feature-driven development (FDD).


    What is DevOps deployment? 


    Ans:- 
    DevOps is not just a development methodology but also a set of practices that supports an organizational culture. DevOps deployment centers on organizational change that enhances collaboration between the departments responsible for different segments of the development life cycle, such as development, quality assurance, and operations.



    What is water fall development method in software architecture?


    Ans:- 
    The waterfall method is a rigid linear model that consists of sequential phases (requirements, design, implementation, verification, maintenance) focusing on distinct goals. Each phase must be 100% complete before the next phase can start. There’s usually no process for going back to modify the project or direction.



    What is RAD (Rapid Application Dvelopment) method in software architecture?


    Ans:- 
    Rapid application development (RAD) is a condensed development process that produces a high-quality system with low investment costs. Scott Stiner, CEO and president of UM Technologies, said in Forbes, “This RAD process allows our developers to quickly adjust to shifting requirements in a fast-paced and constantly changing market.” The ability to quickly adjust is what allows such a low investment cost. The rapid application development method contains four phases: requirements planning, user design, construction, and cutover. The user design and construction phases repeat until the user confirms that the product meets all requirements.



    What is layer Architecture?


    Ans:- 
    Layered Architecture :- 
    Layered architecture patterns are n-tiered patterns where the components are organized in horizontal layers. This is the traditional method for designing most software and is meant to be self-independent. This means that all the components are interconnected but do not depend on each other.


    How many types of layer in layered architecture? 


    Ans:- 

    There are four layers in this architecture where each layer has a connection between modularity and component within them. From top to bottom, they are: 

    The presentation layer : It contains all categories related to the presentation layer. 

    The business layer : It contains business logic. 

    The persistence layer : It’s used for handling functions like object-relational mapping 

    The database layer : This is where all the data is stored.



    What is scalability? 


    Ans:- 
    Scalability is developing software that is capable of growing as needed, usually in terms of data and bandwidth. That is how many users access the system and how much data is moving through the system (in and/or out).



    What is clustering and what’s its purpose? 


    Ans:- 
    Software clustering is a method of turning multiple computer servers into a cluster (a group of servers that acts like a single system). Clustering software is installed in each of the servers in the group. Each of the servers maintains the same information and collectively they perform administrative tasks such as load balancing, determining node failures, and assigning failover duty. The other clustering method, hardware clustering, requires that specialized hardware be installed in a single server that controls the cluster.


    Name the differences between object-oriented and component-based design. 


    Ans:- 

    In a nutshell, object-oriented programming focuses on the relationships between classes that are combined into one large binary executable, while component-oriented programming focuses on interchangeable code modules that work independently and don't require you to be familiar with their inner workings to use them.



    What are the requirements for enabling a Java EE application session replication? 


    Ans:- 
    Session replication is a mechanism used to replicate the data stored in a session across different instances. However, the replicated instance must be part of the same cluster. When session replication is enabled in a cluster environment, the entire session data is copied on a replicated instance. However, the session replication operation does not copy the attributes that cannot be serialized in a session and any instance specific data. Session replication along with load balancing provides good failover capabilities for web applications.















    2 comments

    Abhilash saini said...

    Thanks for information

    Anonymous said...

    ����

    Powered by Blogger.