Brand Equity: Advantages of Strong Brand Equity

What do you mean by Brand Equity ?

Concept of brand equity is still under evolution. Equity is defined as value, perception, imagination and association with performance. Every company wants its product to have very high equity. When this terminology gets converted into financial parameters, we get a value of equity.

In the month of February 2016, Google has become more valuable than Apple and has become the most valuable company in the world. At the end it’s linked with performance.
Brand Equity is associated with
  • Brand awareness
  • Brand attributes
  • Perceived quality
  • Brand loyalty
Brand equity is a composite word and it is an aggregation of many factors – which also keep evolving and changing. Equity depends upon:
  • Performance
  • Customers increasing preference
  • A momentum
  • Reputation and goodwill

What is meant by Brand Recall?

Brand recall is a very important aspect to brand management as it helps in getting more customers by increasing your customer base and making customers buy your products repeatedly. If a customer has a nice experience with the brand, it is obvious that the customer will buy that brand’s product even when the product is re-launched. This is what a brand recall is. It’s a measure of how well the brand of the company is connected with the people and how well the people can relate them with it. Most importantly, it’s a qualitative measure.

Brand recall is when the in the minds of the consumer, the brand is imprinted. Brand recall is usually categorised into two – aided and un-aided recall. In today’s competitive world, if a customer can remember the brand without any aid, or mention, this means that the brand name is well imprinted and connected with the customer.

Now, the question is, why does a customer need to remember the brand?
It’s because if a customer remembers a brand, there is a high possibility that he will buy that brand. Whereas, if the customer doesn’t recall a particular brand, he will go with the one he remembers. This happens because of a simple logic, i.e. the value of a brand is associated in the memory of the consumer.

Let’s take examples to make it clearer:
  • When we think about shoes as a brand, we think of Adidas, Reebok or Nike. This is one of the best examples of brand recall. This happens automatically and hence we can say it is imprinted in our minds.
  • On asking about your favourite carbonated beverage, people would either say Coca-Cola or Pepsi immediately.
  • In the premium clothing brand who wouldn’t say a Pepe jeans, Zara, Forever 21 or Vero moda.
  • And about premium automobiles, you might think of Mercedes or BMW, which is again obvious.
These are a few brand recall examples of the real world and most importantly this help us take decisions on a daily basis. Thus we can say that for a company to have high brand recall, is very important and can be called a blessing. Let us now look at advantages of building strong brand equity.

Benefits of investing in brand equity

  1. Greater customer loyalty
    Companies should understand that a positive brand can be helpful in driving customer loyalty which is essential to win the market share in great proportion. Customer loyalty helps in minimising customer churn, so once you get a good customer base, you do not need to worry much.
  2. Deeper customer relationships
    It is a fact that when a customer associates with the brand and recalls it, it will be willing to buy it repeatedly. It is a positive brand that helps increase the sales.
  3. Broader brand
    A broader brand means a brand with many products and services, so that it becomes an umbrella of brands. If the brand’s equity is strong, a brand can expand and thus the company will be able to offer more.
  4. Enhanced pricing opportunities
    Brand equity of a strong and successful company can enable them to charge a high price and therefore, earn a higher margin. So, it is said that a strong brand earns a price premium .
    Here, we can take the example of APPLE: Although the iPhones are costly, yet people tend to buy them because along with the product, comes status and position.
Read More:
Advantages and Disadvantages of Telematics Insurance
Revolving Credit V/s Overdraft
How Credit Cards Affect Your Credit Score
What differentiates a BPO from a KPO?

Copyright ©

Software Design Pattern: Why to use & its types

What is design pattern in software architecture?

A pattern basically describes a problem which occurs over and over again in the environment. It describes the core solution to the problem in such a way that you can use this solution a million times without doing it twice. Design patterns play an important role in Software Engineering Architecture as we try to simply the solutions and reusing the old solutions go a long way in cutting down the costs. A software design pattern acts as a template for future software development projects.

How to use software design pattern in software engineering?

  • Read the pattern once through an overview. Pay special attention to the applicability and consequences of using the design pattern in the application. 
  • Before using the design pattern in the application, it is necessary to understand the classes and objects used in the pattern. 
  • Look at the sample code section to make correct use of the design pattern. 
  • Define the class which uses the design pattern. Interfaces, inheritance relationships and instance variable have to be defined properly.

Types of software design patterns in software architecture

  1. Creational design pattern
    Creational design pattern abstract the instantiation process. They help in making the system independent of how its objects are created, composed and represented. Object creation is a complex task. Design pattern resolves this problem.
    Different types of creational design pattern:
    • Factory Method Pattern
      In factory method design pattern, we define an interface and abstract class for creating the object and we let the sub-classes decide which class to instantiate. In short, sub-classes are responsible for instantiating the sub-classes.
    • Abstract Factory Pattern
      Abstract Factory class is that which defines an interface or abstract class for creating families of related of dependent or independent objects. It is similar to Factory method but it produces a collection of classes or objects.
    • Singleton Pattern
      Singleton design pattern in Java is used to define a class that has only one instance .The instance can be created at run time or compile time.
    • Builder Pattern
      Builder pattern is the pattern through which a complex object is created from simple objects through a step by step process. Basically it provides a clear distinction between construction and representation of objects. Construction of the code can be done easily with help of Builders pattern. It will support if there is any change in the representation of objects.
    • Object Pool Pattern
      Creation of an object is a costly affair. So the basic principle behind the object pool pattern is that an object container has been created and whenever any of the objects is required then we can take object from that container and once there is no object in the container then we put more objects in the container.
  2.  Structural design pattern
    Structural design patterns are ways through which we can describe how classes and objects are composed in an application to form a larger structure. Structural design pattern simplifies the structure of the application by identifying the relationships. It basically focuses on how classes are related to each other via inheritance and how one class is created from other.

    Advantages of Structural design pattern
    • The efficiency of the application increases when we use design pattern
    • Re-usability of the application also increases through the use of structural design pattern
    • Through the use of design pattern in the application, the structure of the application becomes cleaner, simpler interfaces which are easier to understand.

    Below are the different types of structural design pattern
    1. Adapter Pattern
      Adapter pattern is the structural pattern with help of which we can connect two related interfaces together. The interface which joins the two interfaces is known as Adapter.
    2. Bridge Pattern
      Bridge pattern is basically used for separating out the interface from its implementation .Doing this will give flexibility.
    3. Composite Pattern
      Composite pattern is one of the Structural design patterns and is used when we have to represent a part-whole hierarchy. When we need to create a structure, in a way, that the objects are identified correctly. The collection of the object is stored in the class.
    4. Facade Pattern
      Fa├žade Design pattern hides the complexities of the system. A separate interface is used for hiding the complexities of the system and delegate the call to the system classes.
    5. Proxy Pattern
      A class that represents the functionality of another class is a proxy pattern. 

  3.  Behavioral design pattern
    Behavioral patterns are concerned with interaction between different objects. Behavioral pattern not only describes the pattern of objects or classes but also the pattern of communication between different objects. Behavioral pattern basically describes the flow of the process. It is the step by step flow of objects interaction. It maintains how different objects and classes interact with each other to carry out all process.
    Behavioral pattern uses object compositions rather than inheritance .We use behavioral pattern where a single object could not handle the process but which can be handled by group of objects.
    Creational pattern helps in the instantiation of objects. Structural pattern helps in the creation of structure of the application and the behavior of the application will be controlled by behavioral pattern.
    There is different type of the behavioral design pattern:
    • Chain of Responsibility Pattern
    • Command Pattern
    • Interpreter Pattern
    • Mediator Pattern
    • Memento Pattern
    • Observer Pattern
    • State Pattern
    • Strategy Pattern
    • Template Pattern
    • Visitor Pattern
    • Null Object

Advantages of design pattern in software engineering

  • Design pattern allows users to reuse the Software. 
  • Design pattern helps in improving developer communication. 
  • Design pattern captures expert knowledge and widely uses it.

Disadvantages of design pattern in software engineering

  • It is impossible to reuse code of design pattern as it will be complex. 
  • They are validated by experience and discussion. 
  • Memory consumption is more because of generalised format or code without design pattern. 

 Read More:
 Overriding vs. Overloading in OOPs
Types of Polymorphism and advantages
What is a Defect Life Cycle or a Bug life cycle in software testing?
What is software unit testing and why is it important?

Copyright ©

Difference Between Marketing and Selling


Marketing is a broad concept. In simple words, it means the process through which the goods and services move from the producer to the ultimate user of the products. Philip Kotler, the father of Marketing says Marketing is a social process by which a need is created, offered and exchanged via products (goods,services or an idea)
Marketing is the systematic planning and implementation so that the buyers and sellers come together and a market is created.
Example : Marketing starts much before and continues even after the product is sold. When a customer buys a car, the after sale services comes under marketing.


Selling is a narrower concept. Selling means providing the customer with the good he/she needs in exchange of a price. It is usually between two parties. Selling is more like an agreement wherein the buyer receives the product in exchange for money.
Example :You go to a shop and the shopkeeper “sells” you a Good X and in return you pay him some money in cash.

Difference in Selling and Marketing

  1. Marketing is about customer satisfaction. It starts with customer needs and demand and ends with customer satisfaction. It is a customer oriented approach. Sales, on the other hand, is about selling what the company produces. It doesn’t care about the need of the customer but about the profits.
  2. Marketing is about providing quality products and consumer satisfaction. Selling is about generating by maximising sales and is a money oriented approach.
  3. In marketing, emphasis is given on the wants of the consumer.Whereas in selling, emphasis is on the company’s products.
  4. Marketing is different from selling because here the company first determines customers’ needs and wants and then decides how to deliver a product to satisfy these wants. In selling, it is the other way round.
  5. In marketing the emphasis is on innovation in existing technology and providing better value to the customer by adopting a superior technology. Selling emphasizes on staying with existing technology and reducing costs.
  6. Marketing views the customer as the very purpose of the business. Selling views customer as a last link in business.
  7. Planning in marketing is long-term-oriented in today’s products and in terms of new products, tomorrow’s markets and future growth. Planning in selling is short-term-oriented in terms of today’s products and markets.
  8. Marketing follows customer oriented approach and selling uses production oriented approach.
  9. Consumer determines price and price determines cost of marketing. In selling, cost determines price.
  10. Marketing makes use of long-term strategies to get sales – examples, value-added service, customer education, meeting objectives. Selling makes use of short-term tactics to get sales – examples are free gifts, discounts, rebates, bribes, etc.
  11. 11) Marketing is an indirect activity whereas sales is a direct activity.

Point-wise, Marketing V/s Selling, 4Ps of Marketing, wikipedia, Sales Kotler concept
Marketing V/s Selling

To sum it up, let us look at the components of the two.

Sales- A part of Marketing
Selling is simply the movement of the goods or services from the seller to buyer. Selling is a part of marketing, and therefore is a narrow concept. It is the main part of marketing but not the whole of it. Every business comes into existence to make some profit, and yes, selling plays a very important role, but marketing concentrates on the customer demands and needs which helps in increasing sales in the long run.

Marketing is a wider concept and includes the following components :
  • Designing the product
    The first and foremost thing in marketing is the designing of the product. The product is designed in such a manner that it attracts the people Example : Dell laptops that used a different design when almost all the other companies used the similar colors like Black and white. This made a huge impact in the market and was a great success.
  • Placing the product
    Placing the product in the mindset of the customer and in different price category plays a crucial crucial role in marketing and here comes the importance of PRICE AND PLACE.
  • Finding the satisfaction level
    Most of the companies that are well versed try to find the customer satisfaction level by various methods like Questionnaires, providing samples etc
  • Finding the target people
    One of the most important thing that is to be taken care is finding the target which are aimed by the companies to place the product.
  • After sales service
    The most important thing that attracts the people are after sale service. IFB is a company known for the service and this gives an assurance the people thereby widening the market for the product.

Read More:
List of Popular Advertising Slogans
Primary Market Research : Advantages and Drawbacks
Pros and Cons of Secondary Market Research
Benefits and Drawbacks of Earned Value Management

Copyright ©

Java Virtual Machine : Its features & internal structure

Java virtual machine is a machine within a machine which enables java byte code to be executed as action or operating system calls any other process regardless of the operating system being used. JVM basically translates the programming code so that two machines that may be on different platforms are able connect.

Other way to define virtual machine is that it is a layer of abstraction that gives a program one simplified interface for interacting with a variety of physical computers and its operating system.
Java virtual machine is software which resides in the computer. JVM has flexibility to execute the program’s byte code into executable code and execute it in any platform. It is not real hardware machine but a software layer which resembles an hardware platform.

JAVA COMPILER converts the source code into byte code .Suppose a program consist of class, function and variable then it will convert the program into byte code and JVM will execute the byte code on any operating system. So the input the JVM will be BYTE code and the output will be executable code.

Some important features of JVM

  • Platform Independence
    Java codes are written once and can be executed and can be run on any platform. Java source codes are converted into byte code and that byte can be executed on any of the system irrespective of the operating system used. JVM converts the source code to byte code and once the program is executed it will get converted into machine code.
  • Security
    Java Virtual machines have high built in security features which allow programmers to write highly secure java programs which will not harm any of the operating system on which the byte code will be executed.
  • Performance
    The performance of the java program is high as the codes are converted into system neutral language which byte code. The executable codes are converted into byte code which can run on any system and the execution of byte code to machine code takes very less time.
  • Correctness
    A program which executed through Java virtual Machines are error free and operate correctly .The java virtual machines are reliable and are not prone to any error. The Java virtual Machine is produced with high standard and therefore the chances to find the error is very few.
  • Java virtual Machine uses Java IN TIME (JIT) to convert Java code into low level machine code that runs quickly.
  • If nobody has installed Java Runtime Environment on your computer then we cannot use the Java program. This is one of the disadvantages of Java Virtual machine.

The structure of JVM

JVM consist of several components. The list of components is as follow:
  1. Local Variable
    They are all the local variables being used by the current method invocation while executing the program. It is pointed to by the vars register in the memory.
  2. Execution environment
    The execution environment is used to maintain the operations of the stack itself. Each of the operation is maintained in the stack and execution environment keep track of it. It is pointed to by the frame register in the memory.
  3. Operand Stack
    The operand stack is used as a work space by byte code instructions. It is used for holding parameters for byte code instructions and results of byte code instructions are also kept in operand stack. The top of the operand stack is pointed to by the optop register in the memory.
  4. Method Area
    This is the area where the byte code actually resides and the program counter points to some byte in the method area. It always keeps track of the current instruction which is being executed. After execution of an instruction, the JVM sets the PC to next instruction. Method area is shared among all the threads of a process.
  5. Garbage collected stack
    The garbage collected stack is where the objects of the java program are saved. Whenever any of the objects are created with the help of new operator then heaps are created and memory is allocated for each of the object being created.

Read More:
Difference between method Overloading and Overriding in OOPs
Advantages and Disadvantages of Inheritance in OOPS
How does inheritance work in Java?
Different features of OOPs

Copyright ©

Difference between method Overloading and Overriding in OOPs

Earlier we discussed about the basics of OOPs and its features. Also we saw the concepts like Abstraction, Encapsulation, Inheritance and Polymorphism. Today we will discuss about a very common interview question and an often misunderstood concept of difference between method overloading and overriding in Object Oriented Programming and polymorphism which can be achieved by it.

Method Overloading

  • To call an overloaded method in Java, it is must have the same name as that of the function.
  • Overloaded methods may have different return types and same or different the return type which will uniquely identify the function.
  • When Java encounters a call to an overloaded method, it simply executes the version of the method whose parameters match the arguments used in the call. That depends on the type and number of arguments.
  • It allows the user to achieve compile time polymorphism.
  • An overloaded method can throw different exceptions.
  • It can have different access modifiers (It can be public, private or protected).

Rules for Method Overloading

  1. Overloading can be applied in the same class or in the sub-class.
  2. Constructor in Java can also be overloaded.
  3. Overloaded methods must have a different argument list.
  4. The parameters may differ in their type or number, or in both.
  5. They may have the same or different return types.
  6. It is also known as compile-time polymorphism.
Example of Method Overloading
Class Shape
   void area (double radius)
      System.out.println(“Area of circle”);
   void area( double length, double breadth)
       System.out.println(“Area of Rectangle”);
  void area ( double side)
      System.out.println(“Area of Square”);

Method Overriding

Child class and the base class have the same function. In this case the child class overrides the parent class method without changing the functionality of the base class.

Rules for Method Overriding:

  1. Function overloading is applied to inherited methods.
  2. The decisions of which overridden method will take place at the runtime not compile time.
  3. Overriding method can have different return type.
  4. Overriding method must not have more restrictive access modifier(the overridden method should have higher access modifier than overriding method)
  5. Abstract methods must be overridden
  6. Static and final methods cannot be overridden
  7. Constructors cannot be overridden. Because for a particular class its constructors are unique.
  8. It is also known as Runtime polymorphism.
Example of Method Overriding

class House {
    String Street, City, OwnerName;
    long HouseNo;
    House(String Street, String City, String OwnerName,long HouseNo)
        this.Street = Street;
        this.City = City;
        this.OwnerName = OwnerName;
        this.HouseNo = HouseNo;
    void displayHouseDetails()
          System.out.println("House No :" +HouseNo);
          System.out.println("OwnerName :" +OwnerName);
          System.out.println("Street Name :" +Street);
          System.out.println("City Name :" +City);
 class RentedHouse extends House
     double rent;
      RentedHouse(String Street, String City, String OwnerName,long HouseNo,double rent)
       super(Street, City,OwnerName,HouseNo); = rent;
//method overriding from super class to sub class
 void displayHouseDetails()
         System.out.println("Rent: " +rent);
In this we have base class as House which hold properties like House detail (Size of the house, location of the house, House No, owner of the house).These features can be used by RentedHouse subclass which will inherit these features and also add some other functionalities which will be specific to rentedHouse.

Copyright ©