Vous êtes sur la page 1sur 15

TECHNICAL BASED QUESTIONS

1. What are the SDLC methodologies you are aware? In which method you are mastered?

The SDLC methodologies I am aware of are

a) Waterfall methodology

b) Spiral methodology

d) Agile

f) RAD

g) Extreme programming methodology

h) RUP

i) Scrum

One of the methodologies I have been experienced with is Spiral. This method is hybrid of both
waterfalls incorporating prototyping at each phase of SDLC to minimize the risk of failures
resulting from the traditional waterfall methodology. Another methodology I have had great
experience with is Agile, The Agile methodology helps project makers to build software
applications that are unpredictable in nature. Iterative and incremental work cadences called
sprints are used in this methodology. It is basically inspired from traditional sequential model or
the waterfall model.

2. Talk to me about waterfall methodology? Tell me how comfortable you are with
waterfall Methodology?

Waterfall methodology is a highly structured process that relies heavily on up-front planning and
a set of sequential, prescribed steps that flow into each other like a waterfall. Each step typically
has its own team of experts and carefully scripted milestones and no step can begin until the
previous step has been completed. The goal is to gather all your detailed requirements early in the
process and provide a single complete solution with results that are highly predictable.

I am quite comfortable with waterfall methodology although its a slow process it has some
strengths like progress of system can be measurable, clear project objectives, stable project
requirements and strict sign-off requirements.

3. How is the Agile methodology different from Waterfall methodology? Does is make any
difference to the responsibilities of a BA?

N. Singh
In waterfall methodology once a stage is completed, there is no going back. If there are some
changes after a stage is completed, we need to design an entirely a new system, very costly and
inefficient method. Most software designed and implemented under waterfall methodology is
hard to change according to time and user needs. The success rate for a project to be completed
using Waterfall is one out of every ten. Agile methods adapt to change, at the end of the each
stage there is logical program design to cope up with changes and adapt new ideas from the
outset, allow changes to be made easily. With Agile changes can be made without getting entire
program rewritten. IT reduces overheads.

In traditional waterfall, the Business Analyst starts with understanding the project scope and the
requirements through requirements elicitation and then writes Business Requirements Document
and translates to functional specs. BA role is primarily limited to analysis and UAT phase with
some role during Construction phase, in case developers need some clarification during
development. Though, depending on the size of the project role of BA is very important in
waterfall approach, specifically during requirement analysis, s/he has to ensure that requirement
documents, design documents and accurate and the output has least ambiguity as it has be used as
baseline for design phase. Similarly during implementation phase, BA has to make sure he writes
perfect test plans to test all scenarios so that a defect free application is pushed to the production
server.

In Agile, the Business Analyst is more agile and self-starter and ability to do lot of initiation in
coordinating and making sure the progress is happening and everything on track. So, he is key in
UAT and mostly a regular team member on daily scrum meetings. Because the Business Analyst
plays a key role as an interface between the technical team and the business stakeholders, a BA
with a good grasp of the ideas and objectives behind agile methodology can play a key role in
facilitating an effective implementation of this methodology.

4. Are you familiar with UML? Have you written Use Cases before?

"The Unified Modeling Language (UML) is a graphical language for visualizing, specifying,
constructing, and documenting the artifacts of a software-intensive system. The UML offers a
standard way to write a system's blueprints, including conceptual things such as business
processes and system functions as well as concrete things such as programming language
statements, database schemas, and reusable software components."

It is used to enhance the object oriented design. UML puts together several diagrammatic views
which can be used for any stage of the software development life cycle component re-usability.
UML designs provide a common platform for all the stakeholders in a project starting from the
end users, analysts, designer, developers who are vital to the success of the project.

I have used UML diagrams to develop use case diagrams, which are high level diagram depicting,
the system boundary and the interaction between the actors and the system, activity diagram to
develop business process flow, and class diagram to depict properties and behavior of classes to
be used in the system.

N. Singh
5. What happens when we are following waterfall methodology, if a stakeholder comes
back with new requirement?

When a stakeholder comes back with a new requirement in waterfall, it is very hard to change the
requirement after planning phase. The system will most likely need to start from scratch once
again.

6. Define Software project life cycle?

Software Development Life Cycle is a framework that is used to structure, plan and control the
process of developing an information system. Without the structure and organization provided by
an SDLC methodology, development projects are at risk for missing deadlines, escalating budgets
and ultimately low-quality deliverables.
It can be part of Project Life Cycle but by itself SDLC can be seen as a project, and broadly
consists of Initiation, Requirement Analysis, Software Design, Development, Testing and
Deployment. Once the product or system is no longer in use or completed its service is when
SDLC comes to an end.
7. What is Gap analysis?

The process that involves the identification of gaps between the current state and the future
Or desired state of a system or process is GAP Analysis. Identifying gaps includes a deep analysis
of the factors that created the current situation.

8. What is UAT? Explain the Role of a BA in UAT?

User Acceptance Testing (UAT) - also called beta testing, application testing, or end-user testing
is a phase of software development in which the software is tested in the "real world" by the
intended audience or a business representative. While the technical testing of IT systems is a
highly professional and exhaustive process, testing of business functionality is an entirely
different proposition. The goal of User Acceptance Testing is to assess if the system can support
day-to-day business and user scenarios and ensure the system is sufficient and correct for
business usage. UAT tests are created to verify the systems behavior is consistent with the
requirements. These tests will reveal defects within the system.

Since the BA is involved from the beginning of the project planning, scoping and requirements
gatherings stage, BA is having very good understanding of the business requirements and so is
able to prepare test cases and test data which are more realistic. Since independent from users,
developers and testers, BA is more objective

9. What are non-functional requirements? Give some examples.

Non-functional requirements are requirements that do not perform a specific function for the
business requirement but are needed to support the functionality.

Non-functional requirements describe environmental conditions under which the system has to
perform. Ex: capacity, security, user interface, speed, reliability, availability, etc.

N. Singh
10. What is a traceability matrix and how do you use it when using the Unified process?

The traceability matrix links a business requirement to its corresponding functional requirement right
up to the corresponding test cases. Traceability matrix is a document used to keep track of these
linkages between the requirements and artifacts. It helps to assist in scope and change management,
risk management, time and cost management, impact analysis, gap analysis and communication
management. It is also used to detect missing functionality. The goal of tracing is to ensure that the
requirements are linked to business objective in their entirety.

11. What is Impact Analysis? Did you perform impact analysis? Can you explain your thoughts
on it?

Impact analysis is identifying the potential impact of disruption caused by a change to one or more
components in the requirement on other components. The significant behind impact analysis is to
identify requirement elements that may be affected by the change.

Yes, I have performed impact analysis in my current job. One of the products I am working on is
actually an application where it needs to perform Impact Analysis as part of its requirement. So, that
we get to populate data into the application and perform simulations to see the impact of probable
action if taken.

12. What do you understand by version control and configuration management?

Software version control is the practice of deploying consistent software versions on similar
network devices. This improves the chance for validation and testing on the chosen software
versions and greatly limits the amount of software defects and interoperability issues found in the
network. Limited software versions also reduce the risk of unexpected behavior with user
interfaces, command or management output, upgrade behavior and feature behavior. This makes
the environment less complex and easier to support. Overall, software version control improves
network availability and helps lower reactive support costs.

Configuration Management attempts to identify and track all the relevant elements of the
configuration of a system so that all possible errors can be identified, and possible solutions to the
problem found. It comprises of a set of activities that are designed to control change by
identifying the work products that are likely to change establishing relationships among them,
defining mechanisms for managing different versions of these work products, controlling changes
that are imposed, and auditing and reporting on the changes that are made.

13. What are the various testing stages in a software project life cycle?

Unit testing,

Integration testing,

System testing,

UAT

Regression testing

N. Singh
Stress testing.

14. Tell me about RUP methodology? How many workflows RUP has? Name them.

The Rational Unified Process is a Software engineering process. It provides a disciplined


approach to assigning tasks and responsibilities within a development organization. Its goal is to
ensure the production of high-quality software that meets the needs of its end-users, within a
predictable schedule and budget.
RUP has 6 main workflows: Business modeling, requirements, analysis and design,
implementation, test, deployment.

RUP has 3 Supporting workflows: configuration and change management, project management
and environment.

15. Describe in brief the different stages of RUP.

RUP is broken down into four components:


Inception
Elaboration
Construction
Transition

Inception: First, the goal of this phase is to formulate the objectives and get concurrence among
all the stakeholders on these objectives. In order to achieve this, we need to establish the scope,
vision, requirements, acceptance criteria and a mitigation strategy for risks identified. A business
case is developed and supported by use cases, project plan, initial risk assessment, requirements,
constraints and key features.

Elaboration: Once into this phase, we refine and elaborate the deliverables from the initiation
phase. That means, we create a baseline vision and a detailed plan for the construction phase.
This is where the detailed functional specs and use cases are finalized. Key development plan,
test strategies and evaluation approaches are considered, risks are addressed and mitigated. More
accurate estimates are arrived at from the initial rough estimates of Inception phase.

Construction Phase: Once we are here, we literally complete the software development of the
product during this phase: Completing the analysis, design, and development and testing of all
required functionality.
We also ensure that costs are minimized by optimizing the resource utilization, avoiding reworks
and achieve the desired quality. Of course, many multiple iterations take place within the each
phase striving for improvement in quality each iteration run we make

Transition: Here, we do actual deployment that is doing UATs and ensure that user is satisfied.
If any point UAT fails or had hurdles in deployment, again it has to go through the iteration
again. The decision about whether or not to release the product will be based primarily on the
level of user satisfaction achieved during the transition phase. Many multiple iterations are run to
keep improving the quality of the product. Training and documentation are other important
milestones to be evaluated

N. Singh
16. What is your familiarity with Use cases? How many have you created so far?

A use case is an artifact that supports business model development and then can easily be
translated into the software development system use cases to speed the development process. It is
a high-level artifact used in the business requirement phase of the SDLC and referred to in later
phases as and when required. It is basically a list of steps defining interactions between a role and
a system to achieve a goal. The actor can be a human or an external system.

17. What are the various tools and strategies that are typically employed during the
requirement capturing phase.

Document Analysis , Observation, Interviews, Brainstorming, Requirements Workshop,


Prototyping, Questionnaires/Surveys
Tools:

Business /Functional Requirement Documents

Scenario Use case

User Stories

Excel, Word & Visio

Configuration management tool such as SharePoint

Joint Application Development Exercises

18. What are the essential elements to look out for in a Business Requirement Document
(BRD)? Who are the stakeholders for the sign-off?

Business Problem Statement


Current Business Process
Scope Statement(s)
Key Business Objectives
Project Completion Criteria
Limitations
Risks
Assumptions
Functional Requirements
Non-Functional Requirements
Features and Functions
Reporting Requirements
Delivery Method
New/Modified Business Process
Data Retention/Archiving
Training
Stakeholder List
Quality Measures

N. Singh
Stakeholders; Business partners; End Users; Product Owners; Anyone having vested interest or
impacted should be active participants in the development of the BRD, but a final review and
sign-off is also essential by them.

19. What the various tools that can be typically used for creating the Business artifacts like the
Vision document, UC, etc.

Vision doc: Word, iRise


Traceability matrix -Excel
Use cases: Enterprise Architect, starUML, Requisite Pro ,Visio, Rational Suite, MagicDraw,
iRise
Test cases: HP Quality center, Excel
Change request management- Clear quest
Version control software- Clear Case

20. How can a BA quickly strategize and prepare for change management?

Business Analyst should ensure that there exists a formal and an effective change management
process. The changes should go through the project management first. A business analyst can
help the project manager to evaluate the impact of change on the business processes, scope,
timelines, risk and cost impact. The changes should be then presented to the steering
committee/change approval committee. And if the committee approves the changes the changes
should be made to the baseline documents using a versioning system. After the changes are made
and approved the business documents should be used as baseline documents.

20. What is the purpose of Requirement Verification Traceability Matrix (RTVM)? What are
the typical elements a RVTM? Who are the creators and consumers of this artifact?

Requirements traceability refers to the ability to describe and follow the life of a requirement, in
both forwards and backwards direction (i.e. from its origins, through its development and
specification, to its subsequent deployment and use, and through all periods of on-going
refinement and iteration in any of these phases. RVTM captures and follows the traces left by
requirements on other elements of the software development environment and the trace left by
those elements on requirements.

This helps to ensure that no requirement is missed during the project life by tracing the
requirement forward to test cases and backward to BRD; complete, correct and
clear/unambiguous; consistent with and relevant to, the business needs, and are testable as well as
manageable. BA determines what will be traced; sets up traceability metrics for the project. The
team is involved in making changes to the matrix as requirements are designed,
coded/implemented and tested.

The common elements of RTVM:

1. Business Requirements (BR)

N. Singh
2. System Requirements (SR)

3. Design Specification (DS)

4. Unit Specifications(s) (US)

6. Unit Test Cases (UTC)

7. System Test Cases (STC)

8. User Acceptance Test Cases (UAT)

22. Who is typically the owner of a Functional Requirement Document (FRD)? Does a BA need to
get involved in the creation of a FRD. If yes, in what capacity. If no, then explain?

Yes, mostly the Business Analyst gets involved in the creation of FRD. Either BA supports product
owners in preparing the FRD or they themselves prepare the BRD while representing the business users
or the product owners. The BA is responsible for eliciting documenting, validating and verifying
functional requirements. But final sign-off needs to be done by Business or Product Owners or the
Stakeholders.

23. Is it a good idea for a BA to get involved during the testing phase? If yes, explain how a BA
can ensure his/her involvement during such a phase?

It is really a prudent to always involve BA in the testing phase. In fact, Bas make excellent testers as they
have very good understanding the requirements straight from the business users and having involved with
preparing BRD, FRS, SRS etc. The BA creates the requirements that are the basis of validation and
testing. BAs functional/nonfunctional user requirements are the basis of fit for purpose testing. A BA
should contribute to and may conduct the testing and preparing test cases and review the result of the
testing. BA should also assist by reviewing the test plan and should ensure that all the requirements have
been tested.

24. How would you transform business requirements to functional requirements?

Create project-initiation diagrams flow that includes business use case activity diagram workflow,
diagrams flow charts, etc.

Determine project scope; derive context diagrams & project use cases from the business diagrams

Detail the use cases by using activity diagrams or other techniques

Create high level analysis dataflow diagrams, domain class diagrams, and entity-relationship
diagrams from the use cases or other high level diagrams

Recognize and understand the various design models including the other relevant types of UML
diagrams detailed design entity-relationship diagrams and decomposed dataflow diagrams

Determine when to use which modeling technique following them through a project life cycle and
understand which diagrams are derived from others

N. Singh
Understand the basic concepts of normalization and decomposition so can converse intelligently
on the topic and review diagrams that have been normalized or decomposed.

25. Describe the main qualities of a good requirement.

a. Verifiable A requirement is stated in such a way that


it can be tested by inspection, analysis, demonstration ;
make it possible to evaluate whether the system met the requirement
is verifiable by the means that will not compromise the product or its data integrity.

Unitary - The requirement addresses one and only one thing. It is cohesive.

Atomic - The requirement is atomic, i.e., it does not contain conjunctions. A distinct requirement for each
item. For example, a requirement read Sales reps can manage their client list and generate custom
reports it expresses two atomic ideas (list management and report generation). Those ideas need to be
separated.
Clear & Concise A great requirement has a single interpretation. A good requirement has a single
reasonable interpretation. The better the requirements, the less expensive and risky this communication
process will be easy to read and understand. A document is written for several different people on the
team.

Complete - The requirement is fully stated in one place with no missing information.

Consistent - The requirement does not contradict any other requirement and is fully consistent with all
authoritative external documentation.

Traceable - The requirement meets all or part of a business need as stated by stakeholders and
authoritatively documented.

Viable Can be met with existing technology; within the budget, manpower & schedule.

Valuable/Importance: Valuable requirements are good requirements. When prioritizing requirements, we


should do the must-have requirements first. But other valuable requirements are critically important
even if they arent mandatory. Prioritization should stress necessary requirements first, and then the most
valuable requirements next.

26. What are the problems solved by Business Analyst?

Understand the business requirements and clear-off any ambiguities. Many a times business users know
what they want but may not be able express it well. BA can skillfully use elicitation techniques and better
grasp the pain points of the users.

Act as a liaison between stakeholders and the developers/technical team and solve the communication
problem between these 2 entities. This is a very crucial role.

N. Singh
Gather the requirements from business users and transform them into format easily understood by the
technical team.

They also help clarify any issues/doubts related to requirements, testing, and conflicts.

While technological constraints will be there, BA determines that technology exists to support and
facilitate the business need and hence ensures that business needs must carry a high weight when
determining acceptable trade-offs between business and technology.

Ensure business requirements or technology solutions are aligned with business goals and policies,
complaint with industry and regulatory compliances

Changes in the requirements Here BA ensure that changes do not creep in after sign-offs.

Driving the project deadlines and creating transparent communication among various project members.

Ensure all the teams to have shared vision by conducting JAD sessions, brainstorming etc.,
Constantly keep communicating with the all parties involved and conduct regular status meetings so as to
avoid changes happening after sign-off without strong justifiable reasons.

27. Walk me through the change control process?

Change control is a systematic approach to managing all changes made to a product or system.
Within information technology (IT), change control is a component of change management.
Steps for change control:
1. Documenting the change request:
When the client requests the change, that request is categorized and recorded, along with informal
assessments of the importance of that change and the difficulty of implementing it.
2. Formal assessment:
The justification for the change and risks and benefits of making/not making the change are
evaluated. If the change request is accepted, a development team will be assigned. If the change
request is rejected, that fact is documented and communicated to the client.
3. Planning:
The team responsible for the change creates a detailed plan for its design and implementation, as
well as a plan for rolling back the change should it be deemed unsuccessful.
4. Designing and testing:
The team designs the program for the software change and tests it. If the change is deemed
successful, the team requests approval and a date for implementation.
5. Implementation and review:
The team implements the program and stakeholders review the change.
6. Final assessment:
If the client is satisfied that the change was implemented satisfactorily, the change request is
closed. If the client is not satisfied, the project is reassessed and steps may be repeated.

28. What is a fail proof SDLC methodology, which applies to all projects?

N. Singh
There is no single fail proof SDLC methodology. It all depends on the type of project at hand. Every
project is unique in its own way. Every company has different requirements and different type of
functioning. So, depending on each company, each projects situation, and a SDLC methodology is
chosen.

29. What is the Role of the BA as a Tester?

The business analyst will be involved in UAT to a great degree, depending on the project. At a minimum,
BA will provide guidance to system behavior and identify scenarios which would be suitable to test. They
may be requested to review the test scripts and objectives and, in some cases, may actually coordinate and
manage the execution of the user acceptance testing. Business Analyst can also write or provide content
for writing test cases, test scenarios.

30. What are the process flow diagrams?

Process flowchart or PFD is also known as the system flow diagram or SFD. The main reason of
using process flowchart is to show the relation between major parts of the system. Process
flowchart or PFD does not include minor parts or components of the system. In many
organizations, users term process flow diagrams as flow sheet. PFD depicts visual representation
of flow of work. The sequence of the work performed steps performed as a process to achieve
an improvement or result into an end product. Process flow diagrams for single unit or multiple
units differ in their structure and implementation. Process flow diagrams for multiple units do not
include detailed information and are known as the schematic flow diagrams or block flow
diagrams.
A PFD should include:
Process Piping
Major equipment symbols, names and identification numbers
Control, valves and valves that affect operation of the system
Interconnection with other systems
Major bypass and recirculation lines
System ratings and operational values as minimum, normal and maximum
flow, temperature and pressure
Composition of fluids

31. What is an alternate flow? What is an exception?

Alternate Flow is a different (alternate) way of achieving the same goal (post condition) as the normal
flow. Alternate flow does not stop you from finish the use case but it just takes a different path from the
basic flow.

Exception flow describes unusual behavior of a system; it could result in incomplete termination of use
case. It does not return to the basic flow, but instead ends the use case at an unexpected, or exception post
condition.

N. Singh
32. If a company project is at the scale of CMM 1 then how will you help that company to attain the
next level?

By ensuring requirements are managed and processes are planned, performed, measured and controlled.

33. What is Data Mapping?

Data mapping is the process by which two distinct data models are created and a link between these
models is defined. Data models can include either metadata or an atomic unit of data. Data mapping is
most readily used in software engineering to describe the best way to access or represent some form of
information. It works as an abstract model to determine relationships within a certain domain of interest.
This is the fundamental first step in establishing data integration of a particular domain.

34. What is meant by Logical and Physical Data Model?

Logical modeling deals with gathering business requirements and converting those requirements into a
model. The logical model revolves around the needs of the business, not the database, although the needs
of the business are used to establish the needs of the database. Logical modeling involves gathering
information about business processes, business entities, and organizational units. After this information is
gathered, diagrams and reports are produced including entity relationship diagrams, business process
diagrams, and eventually process flow diagrams. The diagrams produced should show the processes and
data that exist, as well as the relationships between business processes and data. Logical modeling should
accurately render a visual representation of the activities and data relevant to a particular business.

Physical modeling involves the actual design of a database according to the requirements that were
established during logical modeling. Physical modeling deals with the conversion of the logical or
business model, into a relational database model. When physical modeling occurs, objects are being
defined at the schema level. A schema is a group of related objects in a database. Physical modeling is
database software specific, meaning that the objects defined during physical modeling can vary depending
on the relational database software being used.

35. What is ETL?

ETL stands for extract, transform, and load. ETL is software that enables businesses to consolidate their
disparate data while moving it from place to place, and it doesn't really matter that that data is in different
forms or formats. The data can come from any source. ETL is powerful enough to handle such data
disparities.

36. What is the database view? Should the BA understand it?

A database view is a stored query that returns data from one or more database tables. The stored query, or
view, is a virtual table. Once you have defined a view, you can reference it just as you would any other
table in a database. Since the view is the result of a stored query, it does not contain a copy of the data
itself. Instead, it references the data in the underlying base tables.

37. Do you have experience with SQL? Tell me more about why did you use SQL?

As a Business Analyst, we use SQL mainly for querying from database or database extracts purpose or
writes simple scripts.

N. Singh
38. What is the purpose of SDLC?

The purpose of a methodology is to specify a set of well-defined steps or phases, coupled with a set of
clear, measurable exit criteria, for solving a complex problem (such as developing an information
system). The system development life cycle (SDLC) is a set of steps that serves as the basis for most
systems analysis and design methodologies.
It is used to structure, plan and control the process of developing an information system. Without the
structure and organization provided by an SDLC methodology, development projects are at risk for
missing deadlines, escalating budgets and ultimately low-quality deliverables.

39. What are the deliverables in SDLC stages?

Initiation Stage: Problem Definition; Approach & roles; Project Plan


Feasibility Stage: Feasibility report; Users requirement report; conceptual design; project plan
Requirements Analysis Stage: Functional Specs; System Specs
Design Stage: Implementation report; User procedure manuals; and training manuals
Implementation Stage: Actual system and approval notices; Program Specs and Test Plans

40. In SDLC development methodology, explain the difference between the pig and the chicken?

The three core roles are held by pigs they perform and they run the project. They are Product Owner,
Development and the Scrum Master. The core roles are those committed to the project in the Scrum
processthey are the ones producing the product (objective of the project). They represent the scrum
team.
The ancillary roles are held by chickens who are just the stakeholders and other involved managers
supporting the project. Chickens are just involved but not committed to the project and they have say how
the project would be run.

N. Singh
N. Singh
N. Singh

Vous aimerez peut-être aussi