Friday 13 September 2013

Business Analyst Interview Questions and Answers

First of all I would like to congratulate you for the Career path you have selected. Because this is the most important and prestigious job in every Organizations. This Career is best suitable for those people who likes to meet with new people, visit new places, have a very good client co-ordinating skill and most obvious a very good team/project organizing skills. And I believe you have all these skills in you and you just need some brush up. And thats why you are here. Right?

Le'me tell you if you want to be a successful Business Analyst/ System Analyst First of all you have to behave very smart, you have to make stronger your communicative power, and should have that zeal in you that you have to reach upto the sky, and the sky has no limit. And trust me if you obey these three things, you will be the most successful person in the world. And m sure you definitely dreaming to be one. And yes add flavor of some technicalities with the above things. Try to know the concept of the technologies used in everything you are dealing in your daily life. Like: The smart phone you are using, the game you are playing in it, the application you are using in it, the website you are visiting regularly e.g- Facebook , each and everything you are doing in Facebook etc etc. Trust me if you once jump inside these things, its so wonderful to be there. Here are some links I have posted in my Blog.. You can check it out here in the below links.

What is the technology works behind the tilt function of Android App/ Games, What is the technology works behind whatsapp, What is the technology works behind Skype

Well... the more you involve yourself in experimenting different things, the more problem solving skills will develop inside you. Now i will share some of the common Interview Questions you may face during the time of interview.
Q01) Tell me about yourself. ?
A) I think you have already well prepared to answer this question. Still I must say make your Introduction a brief one. Don't describe everything that you have mentioned in your resume again. Try to speak different and unique answer.
Q02) What are your strengths and weaknesses ?
A) You can tell your strengths what you have exactly that you feel from your heart. for ex: You are having a very good Organizing and Managing skill, You are a very good learner etc.

Try to avoid explaining your weaknesses to the Interviewer. You can tell like this. For Ex:- I am trying to rebuild all my negativities inside me to positive ones always. And I like this attitude in me.  
Q03) Why you have selected this Job Profile for the position Business Analyst ?
A) I have selected this Job profile, because I like to meet and deal with new peoples, I love to make new friends from different corners of the world. Also I like to deal with challenging situations which generally Business Analysts face each and every day. And all these things attract me towards this Job Profile.
Q04) What you think what are the roles and responsibilities of a Business Analyst ?
A)  I have described the Roles and Responsibilities of Business Analyst in one of my previous post. You can check it out over here.
Q05) What do you think about the challenges faced by a Business Analyst ?
A) Change management is the biggest challenge in each and every industry. After requirements stage when development is started client will come-up with some new changes or enhancements. 

Cross departmental or cross team management – like conflict management between teams. Also individuals. This requires soft skills and smartness.

Communication problems – In real time this can happen. You might be good in speaking and understanding the English language. BUT sometimes it happens like Different people across the globe speak different style of English. In USA itself Mexico people speak English differently. Romans speak different English. So at initial level to understand the accent can be a challenge but after some time you will become perfect. 
Q06) Have you ever managed any Project or any Team? If yes then what was your roles there?
A) If you have ever managed a Project or a team then don't hesitate to mention in the Interview. In this type of questions you can mention your previous experience briefly and impress the jury. 

Ex- Yes, I have managed some projects in my previous Organization. Even I have involved in so many steps of Software Development Life Cycle like Client Consulting & follow up, Client requirement study, Preparation of different related documents, Preparation of Architecture diagram etc.
Q07) How do you handle changes to requirements?
A) I will definately prioritize the changes to requirements, scope of changes and the impact analysis to the project. I will perform impact analysis to the project cost, timeline and resources. I will evaluate if the scope change is introducing new gaps to the technical or functional designs or development and testing !
Q08) What do you think is the most important responsibility of a business analyst?
A)  Requirements gathering, functional design and business process, change management etc are very critical tasks for a business analyst.
Q09) What is SDLC?
A) The Software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process. SDLC is a structure followed  by a development team within the Software Organization. It consists of a detailed plan describing how to develop, maintain and replace specific software. The life cycle defines a methodology for improving the quality of software and the overall development process.
Q10) What are the tasks of a Business Analyst in Software Development Life Cycle?
A) Generally a business analyst covers several stages in Software Development Life Cycle.
Like:  Client Consulting, Client Requirement Study, Planning for business needs, Business Requirement Documenting, Work on functional requirement, Prepare test data with inputs from end users, Document use case scenarios, Help Testing team with test plan and testing, Help end users with user acceptance testing UAT, Go live and post production support tasks.
Q11) Explain what is the process of documenting business, functional and technical requirements?
A) The Process usually involves becoming an expert in the workflow of the end users through interview, observation and analysis of the existing system. The BA will document the business requirements but must always be sure that they have the end users concurrence that they have correctly defined the needs to be implement in the system.
      Functional requirement is where the BA working with the end users and the developers begins to actually design the system that will satisfy the Business Requirement. This functional requirement will layout the various screens and features that will allow the end users to satisfy the Business Requirements i.e. How the system will satisfy the end users.
       The Technical Requirement will layout the databases tables and processes that will be used to run the system. 
Q12) What qualities do you feel a successful Business Analyst should have?
A) First of all a successful Business Analyst should have the leadership quality. Most essential skills supposed to be are: Good Communication skills and Good Documenting Skills. 
Q13) What are skills required for a Business Analyst?
A) You can follow the same answer as in Question no. 12.
Q14) How do you define a traceability matrix?
A) Traceability matrix is a cross matrix for recording the requirements through each stage of the requirements gathering process. This matrix should also take into account any changes in the scope during the life of the project. 
     At the end of the project this matrix should show each function built into a system, its source and the reason that any stated requirements may not have been delivered. 
Q15) What is Business Process re engineering and what is its use in different organizations?
A) Business Process Reengineering (BPR) is a management practice that aims to improve the efficiency of the business process.
The key to BPR is for organizations to look at their business processes from a "clean slate" perspective and determine how they can best construct these processes to improve how they conduct business. Reengineering is a fundamental rethinking and radical redesign of business processes to achieve dramatic improvements in cost, quality, speed, and service.
BPR combines a strategy of promoting business innovation with a strategy of making major improvements to business processes so that a company can become a much stronger and more successful competitor in the marketplace.
Q16) How would you rate your writing skills?
A) As per my previous experience i have experience in writing different types of technical documents like proposal, SRS and all other relevant documents. And i believe I can give my best in writing all types of Technical Documents.
Q17) Tell me how you Organize, plan and prioritize your work?
A) All the above things are depends upon the punctuality. I will always keep in queue the more prioritized works first. And will Always try to complete one task followed by the next.

Q18) How will you define Risk and Issue?
A) If I google for this question i will get several answers. But According to me if I will say it in simple
        An Issue is a risk which already happened,
       But Risk is an event which may or may not happen in future.

Q19) What is CMM ? tell me in details and its different phases.
A) CMM in full "Capability maturity Model" is developed by the SEI in full "Software Engineering Institute". Its a model of five level of organizational maturity that determine effectiveness in delivering quality software. It is geared to a large organization. Organizations can receive CMM ratings by undergoing assessments by qualified auditors. In CMMi models with a staged representation, there are five maturity levels designated by the number 1 through number 5. 

  1. Initial
  2. Managed
  3. Defined
  4. Quantitatively managed
  5. Optimizing
Maturity levels consist of a predefined set of process areas. The maturity levels are measured by the achievement of the specific and generic goals that apply to each predefined set of process areas. The following sections describe the characteristics of each maturity level in detail.


Maturity level 1 – Initial

At this level, there is no proven processes and has no stable environment in the organization. This type of organization frequently exceeds the budget and schedule.

Maturity level 2 – Repeatable

These organizations have basic processes that are established to track cost and schedule. They have guidelines to repeat the same in the next similar project.

Maturity level 3 – Defined

In this category, processes are well characterized and understood and are described in standards.

Maturity level 4 – Managed

These organizations are much more matured than level 3 where processes are only qualitively predictable whereas in level 4 companies, processes are accessed using statistical and other quantitive technique.

Maturity level 5 – optimizing

These organizations persistently try to improve performance through innovative technological improvement.

Q20) Explain the use case models briefly.
A) A use-case model is a model of how different types of users interact with the system to solve a problem.  As such, it describes the goals of the users, the interactions between the users and the system, and the required behavior of the system in satisfying these goals.
A use-case model consists of a number of model elements.  The most important model elements are: use cases, actors and the relationships between them. 
            A use-case diagram is used to graphically depict a subset of the model to simplify communications.  There will typically be several use-case diagrams associated with a given model, each showing a subset of the model elements relevant for a particular purpose.  The same model element may be shown on several use-case diagrams, but each instance must be consistent.  If tools are used to maintain the use-case model, this consistency constraint is automated so that any changes to the model element (changing the name for example) will be automatically reflected on every use-case diagram that shows that element.
              The use-case model may contain packages that are used to structure the model to simplify analysis, communications, navigation, development, maintenance and planning.
                Much of the use-case model is in fact textual, with the text captured in the use-case specifications that are associated with each use-case model element. These specifications describe the flow of events of the use case.
                The use-case model serves as a unifying thread throughout system development. It is used as the primary specification of the functional requirements for the system, as the basis for analysis and design, as an input to iteration planning, as the basis of defining test cases and as the basis for user documentation.  

Q21) What are different types of diagrams you have used in your previous job?
A) Yes I have used different types of diagrams in my previous job in various projects; like Use Case Diagram, Process Flow Diagram, Context Diagram (Different level), Flow Diagram, Activity Diagram etc.

Q22) What is Request for Information?
A) A Request for Information (RFI) is used when you think you know what you want but need more information from the vendors. It will typically be followed by an RFQ or RFP.
       RFI is broad, and does not necessarily require financial conversations to take place.

Q23) What is Request for Quotation?
A) A Request for Quote (RFQ) is commonly used when you know what you want but need information on how vendors would meet your requirements and/or how much it will cost.  

Q24) What is Request for Proposal?
A) A Request for Proposal (RFP) is used when you know you have a problem but don’t know how you want to solve it. This is the most formal of the “Request for” processes and has strict procurement rules for content, timeline and vendor responses. The appendices in the Guide to Successful Software Acquisition provide templates for this approach.
       RFP is just as much about price, as all other aspects.
       RFP requires more effort for both you and the prospective contractor.
       RFP slides easily into contract negotiation and project outlining.

Q25) What is Data Flow Diagram and What are its Benefits?
A) Data Flow Diagram (DFD) is graphical representation of flow of data/info. It is used to show how data is moved between different processes.
There are 4 basic notation elements:

  • Circle: Operation
  • Box: Sink of information, (input/output)
  • Parrallel Bar: Data store / File / Database
  • Arc: Flow of info/data

DFS's are in problem domain rather than in solution domain. They are basicly top level model of how something operates based on flow of information. Also there is no support for concurrency representation in DFD.


Q26) What is a Activity Diagram?
A) Activity diagram is basically a flow chart to represent the flow form one activity to another activity. The activity can be described as an operation of the system.

             The basic purposes of activity diagrams are similar to other four diagrams. It captures the dynamic behaviour of the system. Other four diagrams are used to show the message flow from one object to another but activity diagram is used to show message flow from one activity to another.
                Activity is a particular operation of the system. Activity diagrams are not only used for visualizing dynamic nature of a system but they are also used to construct the executable system by using forward and reverse engineering techniques. The only missing thing in activity diagram is the message part.
                    It does not show any message flow from one activity to another. Activity diagram is some time considered as the flow chart. Although the diagrams looks like a flow chart but it is not. It shows different flow like parallel, branched, concurrent and single.
               So the purposes can be described as:
                      -Draw the activity flow of a system.
                      -Describe the sequence from one activity to another.
                      -Describe the parallel, branched and concurrent flow of the system.

Q27) Why Flow Chart is important?
A) A Flow Chart is having a very Important role in SDLC, because it defines the clear picture of the different Processes of the system which helps both technical and non technical members to understand the concept easily. 

Q28) What is UML diagram and describe its different types?
A) Unified Modeling Language (UML) is a standardized general-purpose modeling language in the field of software engineering. Unified Modeling Language includes a set of graphic notation techniques to create visual models of object-oriented software-intensive systems.
There are two broad categories of diagrams and they are again divided into sub-categories:

  • Structural Diagrams
  • Behavioral Diagrams
1. Structural Diagram
The structural diagrams represent the static aspect of the system. These static aspects represent those parts of a diagram which forms the main structure and therefore stable.
These static parts are represents by classes, interfaces, objects, components and nodes. The four structural diagrams are:
                  -Class diagram
                  -Object diagram
                  -Component diagram
                  -Deployment diagram

2. Behavioral Diagrams:
Any system can have two aspects, static and dynamic. So a model is considered as complete when both the aspects are covered fully.
Behavioral diagrams basically capture the dynamic aspect of a system. Dynamic aspect can be further described as the changing/moving parts of a system.
UML has the following five types of behavioral diagrams:
                  -Use case diagram
                  -Sequence diagram
                  -Collaboration diagram
                  -Statechart diagram
                  -Activity diagram

Q29) What is a Use Case Diagram?
A) A Use case Diagram is a graphic depiction of the interactions among the elements of a system. A Use Case is a methodology used in System Analysis to identify, clarify and organize system requirements.
     Use Case Diagrams are usually referred to as behaviour diagram used to describe a set of actions (Use Cases) that some system or systems (subject) should or can perform in collaboration with one or more external users of the system (actors). Each Use Case should provide some observable and valuable result to the actors or other stake holders of the system.

Q30) What is an exception flow in use case?
A) Exception flow are the activities in case of the exception thrown. They are the flow of events which will happen in case of the error.

Q31) What documents are used for use Cases?
A) Generally the User Requirement Study Document is needed to draw the use case Diagrams.

Q32) Tell me some of the common tools that a business analyst uses?
A) There are several tools a Business Analyst is using for different purposes. Like:
  • SOFTWARE: MS World, PURPOSE: Functional Specifications, Requirements Documents, Vision Document, Business Case.
  • SOFTWARE: MS Excel, PURPOSE: Capacity planning, Traceability, Data Analysis.
  • SOFTWARE: MS Visio, PURPOSE: Process Models, Use Case Models, Domain Models (Class Diagram), Sequence Diagrams.
  • SOFTWARE: ErWin, PURPOSE: Entity Relationship Diagrams.
  • SOFTWARE: MS PowerPoint, PURPOSE: Present of problem statements, Present possible solutions, etc.
  • SOFTWARE: Visual Studio Web Edition, PURPOSE: UI Mockups, Prototypes

Apart from the above tools some other tools they also use around:
Ex:
  • Skype - our entire team standardized on this for chats and remote whiteboarding. This is really helpful with teams spread out around the world. Sometimes we get the whole team in one chat from many locations, to either amuse each other or ask real questions.
  • OneNote - there are several peoples around who loves it.
  • Google Desktop - great searching through emails and notes.
  • FreeMind - or any free mind mapping software.
Q33) What documents should be delivered by a Business Analyst?
A) The documents delivered by a Business Analyst are very important and they include functional and technical specifications, business requirements documents or BRD, requirements traceability, use case diagrams etc.

Q34) What is the difference between Business Analyst and a System Analyst?
A) A business analyst deals with the more high level and functional aspects of the project and is generally not involved in technical details related to the project. A system analyst on the other hand is closely involved with the technical design aspects. 

Both business and system analyst will communicate with the business but the nature of conversation between a business analyst and business user is more functional and tends to focus on higher level user requirements. A system analyst usually communicates a more technical nature of topics and usually interacts closely with technical architects and even developers. Both the above roles can sometimes overlap and there have been posts such as business systems analyst.In a typical uml terminology business analysts are expected to write use case and process flows while system analysts focus on sequence and activity diagrams


Q35) What are JAD sessions?
A) JAD (Joint Application Development) is a methodology that involves the client or end user in the design and development of an application, through a succession of collaborative workshops called JAD sessions.

The JAD approach, in comparison with the more traditional practice, is thought to lead to faster development times and greater client satisfaction, because the client is involved throughout the development process. In comparison, in the traditional approach to systems development, the developer investigates the system requirements and develops an application, with client input consisting of a series of interviews.

Q36) What is the difference between Agile and Waterfall techniques?
A) More and more s/w developers are switching to Agile over waterfall.

Waterfall: You do complete requirements gathering, Design the s/w, Implement, Test, and go live.
But the biggest shortcoming is that the entire cycle takes so long that if in the meantime requirements change then you are in big trouble because your design may not be flexible enough or because you are in middle of a big project and just couldn't divert.
     The waterfall model is a sequential software development process, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of Conception, Initiation, Analysis, Design (validation), Construction, Testing and Maintenance.
Agile: With this methodology you come up with small sprints of work and keep implementing in 2-3 week cycles. Thus giving you advantage over the other method.
     Agile Software development refers to a group of software development methodologies based on iterative development. Where requirements and solutions evolve through collaboration between self organizing cross functional teams.

Q37) What is a sequence diagram?
A) A Sequence diagram is a kind of Interaction diagram that shows how process operate with one another and in what order. A Sequence diagram shows object interactions arranged in time sequence. It depicts the objects and classes involved in the scenario and the sequence of the messages exchanged between the objects needed to carry out the functionality of the scenario.
    Sequence diagrams are are typically associated with the use case realizations in the logical view of the system under development. Sequence diagrams are sometimes called event diagrams.

Q38) Do you know QA or testing Cycle?  What is Integration Testing?
A) In Integration testing the separate modules will be tested together to expose faults in the Interfaces and in the Interaction between integrated components. 

Q39) What is User Acceptance testing?
A) User Acceptance testing is the phase of testing used to determine whether a system satisfies the requirements specified in the requirements analysis phase. The acceptance test design is derived from the requirements document.
- To determine whether a system satisfies its acceptance criteria or not.
- To enable the customer to determine whether to accept the system or not.
- To test the software in the "real world" by the intended audience.

Q40) How do you define the Acceptance Criteria?
A - Functionality requirements.
    - Performance requirements.
    - Interface quality requirements.
    - Overall software quality requirements.

Q41) How do you develop and execute the UAT plan with end users signoffs?
A) - Project Description
     - User Responsibility
     - Acceptance Criteria and Description
     - Execute the Acceptance test Plan

Q42) What is Test Strategy?
A)  Decide how we are going to approach the testing in terms of people, tools, procedures and support. Test Strategy is the plan for how you are going to approach testing. A test strategy is a planning document that provides the overall direction for the software testing needs of a project. Developing a test strategy is about setting direction and resolving high-level testing questions.
Type of testing (manual versus automated), scheduled date, participants, location, environment required, identify data to be used for testing, backup procedures, data restore, problem identification - procedure to be used when a tester finds a suspected defect, defect logging, defect resolution, retesting, sign off testing activities, identify how the total testing will be signed off. This includes all activities in the "Test Plan" and any rectification of defects, test management software, testing software, performance testing software.

Q43) What is Test Approach?
A) The test approach describes the types of tests performed and the sequence of tests as executed in the test lab. Test approach is included in the test plan.

Q44) What is Test Plan?
A)  A test specification is called a test plan. The developers are well aware what test plans will be executed and this information is made available to management and the developers. The idea is to make them more cautious when developing their code or making additional changes.

Q45) What is Process Flow for different stages of testing life Cycle?
A)  Requirements analysis: Testing should begin in the requirements phase of the software development life cycle. During the design phase, testers work with developers in determining what aspects of a design are testable and with what parameters those tests work.
Test planning: Test strategy, test plan, testbed creation. Since many activities will be carried out during testing, a plan is needed.
Test development: Test procedures, test scenarios, test cases, test datasets, test scripts to use in testing software.
Test execution: Testers execute the software based on the plans and test documents then report any errors found to the development team.
Test reporting: Once testing is completed, testers generate metrics and make final reports on their test effort and whether or not the software tested is ready for release.
Test result analysis: Or Defect Analysis, is done by the development team usually along with the client, in order to decide what defects should be treated, fixed, rejected (i.e. found software working properly) or deferred to be dealt with later.
Defect Retesting: Once a defect has been dealt with by the development team, it is retested by the testing team. AKA Resolution testing.
Regression testing: It is common to have a small test program built of a subset of tests, for each integration of new, modified, or fixed software, in order to ensure that the latest delivery has not ruined anything, and that the software product as a whole is still working correctly.
Test Closure: Once the test meets the exit criteria, the activities such as capturing the key outputs, lessons learned, results, logs, documents related to the project are archived and used as a reference for future projects.

Q46) What is the difference between SRS, BRS and FRS ?
A)  Basically, usage of this document depends on the organization type, standards and how organization follows processes. Well, i tell you the difference in general and as per CMMI process what is the difference between all above.
SRS: System Requirement Specification:
It depicts entire system flow, how data is going to flow into the system and overall functionality of the system. SRS says brief about each module's functionality and doesn't include in-depth functionality of each page and module.
BRS: Business Requirement Specification:
Basically, all the organization doesnt maintain this document, either they include this into FRS or SRS.
This document is called as high level document includes all the requirement demanded by the client. Ideally, this document simply includes all the requirements should be part of proposed system.
BRS says, proposed system suppose to include this requirement as a functionality.
FRS: Functional Requirement Specification:
it is a low level document.
Mindwell, there is a very minor difference between FRS and BRS.
FRS includes requirements, converted into functionality and says that how this requirement is going to work as a part of proposed system.


I will update this section with more questions with all of theirs answers in the coming days. please Keep visiting. 

Ruby on Rails Freshers may like this set of Interview questions along with their answers.