Software and Business Analysis Services

 




A software solution needs to address the business requirements of a wide range of stakeholders.

A Business Analyst acts as a liaison between business people who have a business problem and technology people who know how to create automated solutions. They act as business problem solvers. A Business Analyst's main responsibility is to gather, detail, and document requirements in a format that is appropriate to the technical developers. They provide the process, questions, and techniques to efficiently extract the information needed from the Business Users for successful development of projects.


How can Cervo Technologies help your Business Analysis?

Cervo Technologies has a team of experienced, talented business analysts who will formulate a customized business solution, taking your requirements into account.

We realize the importance of understanding and documenting business requirements and work with clients to gather requirements and formulate business specifications, translating them into application functionality.

We follow a structured business analysis process. It consists of the following:

Understanding the business
The first step in delivering a solution to a business problem is to understand the business. This involves studying the following:

  • The product or service offering of the business
  • The unique selling proposition (USP) of the business
  • Validity of the business model and its underlying assumptions
  • The potential opportunities present in new markets or market segments
  • The marketing plan

Analyzing competition
Our business analysis team studies the competition.
This includes:

  • The investments made by the competitors in the area of business
  • The strengths and weakness of the competitors
  • The products/services and pricing offered by the competitors
  • The websites maintained by the competitors

Analyzing the market

The business analyst needs to understand the market that the business is trying to cater to. To do this, he has to identify the target audience for the products and services of the business, the size - both actual and potential of the market and the way the business is positioning and branding itself and its offerings.

Defining and scoping the project

Before he can begin to gather the actual requirements, a business analyst needs to ensure that the scope of the project is clear and complete. This involves understanding why the project has been initiated and the goals of the project. A complete project scope will name and define all the entities that are involved with the project. This includes people, systems, internal departments, vendors and customers. It should also include a high-level description of the business processes that will be covered as part of the solution and a list of items that will not be included.

A project scope document includes the following:
  • Vision and Statement of Purpose
     
  • Project Objectives
     
  • Project Viewpoint
     
  • Project Assumptions
     
  • Project External Interactions
     
  • Suggestions and Recommendations
     
  • Implementation options
     
  • Business Risks vs. Rewards
     
  • Competition Analysis

During this stage, a business analyst needs the following skills:

  • People skills to bring diverse groups together to agree on project scope and build consensus
     
  • Ability to clearly document project scope using business terms
     
  • Ability to refrain from jumping to a solution before defining the problem

Gathering requirements

This is one of the most important phases of the business analysis process. It is absolutely critical that the business analyst gathers the business requirements accurately before defining a software solution.

To effectively gather requirements, the business analyst must assess the type of the project, the people involved and the volume of information required. Some of the techniques that he can use are:

  • Interviews with stakeholders
  • Facilitated information gathering sessions
  • Surveys and questionnaires
  • Observation of stakeholders performing their tasks
  • Study of existing systems and documentation

Gathering requirements is an iterative process. In addition to identifying the requirements, the business analyst also needs to prioritize them to ensure that the most critical issues are addressed first.

During this stage, a business analyst needs the following skills:

  • Asking the right questions
  • Active listening and empathizing
  • Facilitation skills
  • Interviewing skills
  • Ability to categorize and prioritize requirements
  • Note-taking

Analyzing and documenting requirements

After requirements are gathered, they are analyzed and documented using an iterative approach. As each requirement is analyzed, it generally leads to further questions. This requires the analyst to probe further till all relevant issues are cleared.

The business analyst must ensure the requirements are documented in a standard and consistent manner that is easily and clearly understood by all members of the solutions team. To do this, the analyst may have to use text, diagrams or a combination of both.

To manage and communicate requirements more easily, the business analyst needs to categorize them as follows:

  • Business Requirements
  • Functional Requirements
  • Technical Requirements

During this stage, a business analyst needs the following skills:

  • Analysis skills
  • Understanding of system development methodologies
  • Modeling techniques
  • Prototyping techniques
  • Documenting

Communicating requirements

Once the requirements are clearly documented, they need to be communicated effectively to the solutions team. The business analyst acts as the main liaison between the business users and the technical team. He needs to work closely with the Project Manager to ensure that the project plan is adhered to and scope changes are properly agreed upon, approved and documented.

The business analyst needs to conduct formal and informal group meetings that include all the relevant team members when communicating requirements to ensure that everyone understands the issues involved in the same way. He needs to clarify any misunderstandings and unclear requirements. It is important that the information is presented to the business and technical audiences in a manner that is most appropriate for their understanding.

During this stage, a business analyst needs the following skills:

  • Presentation skills
  • Writing skills to create clear email messages, memos and status reports
  • Conducting comprehensive requirements reviews

Identifying a solution

The business analyst needs to work closely with the business experts to recommend a suitable solution. He then needs to work with the technical team in order to design the solution.

A solution recommendation may include changes to existing software, new software, process or workflow changes or a combination of the above.

If the solution involves purchasing third-party software, the business analyst needs to work with Business experts, IT staff and vendors in order to ensure that the selected software meets business needs. In this process, the business analyst may also be involved in preparing an RFP (Request for Proposal) that contains detailed business and functional requirements.

If building new software or enhancing existing software is involved, the business analyst needs to assist with the user interface, workflow design and reporting capabilities.

During this stage, a business analyst needs the following skills:

  • Complete understanding of the business requirement
  • High-level understanding of systems design
  • Ability to estimate software costs and benefits and build a business case for software implementation.
  • Ability to evaluate third-party software and solutions

Verifying that the solution meets the requirements

Even after the technical team takes over the project, the business analyst continues to remain involved in order to ensure that:

  • The technical design meets business requirements and usability standards
  • The developed software meets the project goals
  • The final product passes quality assurance tests and user acceptance

During this stage, a business analyst needs the following skills:

  • High-level understanding of systems design
  • Knowledge of usability principles
  • Knowledge of testing principles
  • Ability to write and review test cases

It is evident from the above that business analysis plays a critical role in the success of a software project from the start to the finish. The business analyst plays an important role in every stage of the software development life cycle and in ensuring that the solution that emerges out of the whole process meets the business goals of all the stakeholders involved.

Technologies In Use

.NET Languages
Microsoft® ASP.NET (Web Forms) , Visual C++.NET, Visual C#, and Visual Basic .NET

Client software
Windows XP, Windows CE, and Microsoft Office XP

Development tools
Microsoft Visual Studio® .NET

Servers
Microsoft Windows® 2003, Microsoft SQL Server™, and Microsoft BizTalk® Server

XML
XML Schema, SOX, RELAX, XSD, XHTML, XPATH, SOAP, XML-RPC, WSDL, UDDI, SAX, DOM, JDOM, Xerces, Xalan, SAXON

Methodologies
UML, Design Patterns, OOAD/OOP, XProgramming
© 2006 Cervo Technologies. All Rights Reserved