Tuesday, 9 September 2014

What is Software Testing???

Software Testing is a process that consists of all test life cycle activities like static and dynamic testing concerned with planning, preparation and evaluation of software products to determine that the software products satisfy customer’s requirements and are fit for customers use. Software Testing is done to find software defects or failures in advance.

Software bugs will almost always exist in any software module with moderate size: not because programmers are careless or irresponsible, but because the complexity of software is generally intractable and humans have only limited ability to manage complexity. It is also true that for any complex systems, design defects can never be completely ruled out.

Testing allows developers to deliver software that meets expectations, prevents unexpected results, and improves the long term maintenance of the application. Depending upon the purpose of testing and the software requirements, the appropriate methodologies are applied. Where possible, testing can be automated.

Importance of Software Testing

As we all are human beings and human beings commit errors in any process, some of the errors do not impact much on our day to day life and can be ignored, however some errors are so severe that they can break the whole system or software. In such kind of situations you need to take care that such errors are caught well in advance before deploying the system/software in production environment.

Let’s take a real life example and see how our errors can cause critical failures or disasters if not caught early

Let’s take some ABC banks net banking website, if any net banking customer logs into the website and transfers some amount to other account. After transferring he got the confirmation that amount got transferred successfully and it got deducted from his account. After sometime when he confirmed with other person whom he transferred the amount he got to know that he has not received the amount, now you need to visit your bank to settle this dispute. Also you will get annoyed by the net banking experience of that bank.

This is one situation where testing your software is very important before deploying it. Testing cannot be ignored because it impacts all the end users of software. If the website would have got tested thoroughly for all the possible user operations this problem would have been found well in advance and got fixed before deploying the website.

Types of Testing:

Functional Testing- Module testing verifies that individual software unit performs as expected according to the requirements using a small subset of possible input parameters. At the application level, testing verifies that the entire application functions together according to the requirements.

Example: Passing in real world parameters as well as valid but unusual parameters.

Parametric Testing- At the module level, testing verifies that individual software unit performs as expected according to the requirements for the full range of valid input parameters.

Example: Passing in each parameter at its minimum, maximum and median values, as well as passing in parameters at the minimum and maximum values at the same time.

Fault Tolerant Testing- Module testing verifies that individual software unit does not perform in a detrimental or unexpected manner for illegal or out-of-range input parameters. At the application level, testing verifies that the entire application functions together in a graceful manner according to the requirements when presented with unexpected and/or out-of-range values.

Example: Passing null pointers and the full range of possible values for each parameter.

Integration Testing- Integration testing is an additional step that is used when different sub-systems are being developed simultaneously by independent developers. It verifies that the parameters passed between sub-systems are being handled correctly.

Example: Passing null pointers and the full range of possible values for each parameter.

Regression Testing- Regression testing is retesting sub-systems/modules/units to insure that modifications to one sub-system/module/unit does not cause unexpected results in another sub-system/module/unit. This is also known as ripple effect testing.

Friday, 1 August 2014

What is Internet Marketing???

Internet marketing or Online marketing refers to a set of powerful tools and methodologies used for promoting products and services through the Internet.Internet marketing includes a wider range of marketing elements than traditional business marketing due to the extra channels and marketing mechanisms available on the Internet. Internet marketing is growing business mainly because more and more people use the internet every day. Popular search engines such as Google and Yahoo have been able to capitalize on this new wave of advertising. 

This type of marketing uses various online advertisements to drive traffic to an advertiser's website. Banner advertisements, pay per click (PPC), and targeted email lists are often methods used in Internet marketing to bring the most value to the advertiser.

 The term Internet marketing or Online marketing can mean a variety of things. At one time, Internet marketing consisted mostly of having a website or placing banner ads on other websites. Today, Internet marketing, or online marketing, is evolving into a broader mix of components a company can use as a means of increasing sales - even if your business is done completely online, partly online, or completely offline. The decision to use Internet marketing as part of a company's overall marketing strategy is strictly up to the company, but as a rule, Internet marketing is becoming an increasingly important part of nearly every company's marketing policy.

Internet Marketing Components

1. Setting up a Website- Website consisting of text, images, audio and video elements used to convey the company's message online, to inform existing and potential customers of the features and benefits of the company's products and/or services. The website may or may not include the ability to capture leads from potential customers or directly sell a product or service online. Websites can be the Internet equivalents of offline brouchers or mail order catalogs and they are a great way to establish your business identity.

2. Search Engine Marketing (SEM)- SEM  is marketing a website online via search engines, either by improving the site's organic ranking through search engine optimization (SEO), buying pay-per-click (PPC) ads or purchasing pay-for-inclusion (PFI) listings in website directories, which are similar to offline yellow page listings.

3. Email marketing- Email marketing is a method of distributing information about a product or service or for asking feedback from customers about a product or service through Email. Email addresses of customers and prospective customers may be collected or purchased. Various methods are used, such as the regular distribution of newsletters or mass mailing of offers related to the company's product or services. Email marketing is essentially the online equivalent of direct mail marketing.

4. Banner advertising- Banner advertising is the placement of ads on a website for a fee. The offline equivalent of this form of online marketing would be traditional ads in newspapers or magazines.

5. Social media marketing(SMM)- SMM involve social networks like TwitterLinkedInFacebook and social bookmarking sites like Digg.

6. Blog marketing- Blog Marketing is the act of posting comments, expressing opinions or making announcements in a discussion forum and can be accomplished either by hosting your own blog or by posting comments and/or URLs in other blogs related to your product or service online.

7. Article marketing- Article Marketing involves writing articles related to your business and having them published online on syndicated article sites. Article marketing can result in a traffic boost for your website, and the distribution of syndicated articles can promote your brand to a wide audience.

Thursday, 31 July 2014

What is Magento???

Magento is one of the best and fast emerging ecommerce platforms available today. Magento is an open source technology that uses MySQL and Zend PHP databases. Magento provides online merchants with a flexible shopping cart system, as well as control over the look, content and functionality of their online store. Magento offers powerful marketing, search engine optimization, and catalog-management tools, so that the online merchants have the unprecedented power to create or edit sites that best suit their business needs that are unique from one another.

Open source CMS is very much essential in today’s competitive world because the owners can have control over the quality and security they are offering on the site and thereby reduce the costs too. This is indeed a platform that unfurls a lot of innovativeness for the online merchant along with increasing the scalability and agility with which things can be accomplished.

Magento open source CMS platform offers increased control in terms of merchandising to promotion and much more, an increased return on investment which leads to increased growth. There are various editions available in Magento and so you could opt for the one that best fits your requirements. With this system not only will your customer service be elevated but your order management too gets extremely easy.

If yours is an ecommerce store, then it should cater to a wide audience that covers international clients too. Magneto features allow for the same through the international support it offers the online merchants through multilingual options and support for multiple currencies. Being accessible through various browsers is highly essential so as not to miss out on potential clients. Magento is iPhone optimized and so one need not be apprehensive that they would miss out on clients who are always on the move.

Catalog browsing and catalog management is extremely easy with this intuitive tool and when you integrate this into Google Analytics account, you could easily analyze the behavior of customers on your site which could lead to further optimization of the site to achieve better results. Advanced product browsing with multiple images per each product and search engine optimization option will help achieve greater optimization for your website so that you reach your target audience easily.

With Magento one could make use of numerous promotional tools for their business, through flexible coupons with the ability to restrict the same to customer groups, stores, time periods, categories and products. Magento is indeed an ultimate e-commerce solution for incredible growth!

Benefits of using Magento

·         Easy to install and add additional layouts and plug-ins
·         Open source technology that offers flexible, scalable ecommerce solutions
·         Effective and cost sensitive program
·         Allows for various discounts and promotions during check-out
·         Provides more than 50 payment gateways

Wednesday, 30 July 2014

We Use Coins: What is Bitcoin???

Bitcoin is a new kind of money and an innovative payment network that was created in 2009 by an unknown person using the alias Satoshi Nakamoto. Bitcoin is an open-source software, anyone can take part in it, its design is public nobody owns or controls Bitcoin. Bitcoin uses peer-to-peer technology to operate with no central authority or banks. Managing transactions and issuing of Bitcoins is carried out collectively by the network. There are no transaction fees and no need to give your real name.

As a new user, you can get started with Bitcoin without understanding the technical details. Once you have installed a Bitcoin wallet on your computer or mobile phone, it will generate your first Bitcoin address and you can create more whenever you need one. You can disclose your addresses to your friends so that they can pay you or vice versa. In fact, this is pretty similar to how email works, except that Bitcoin addresses should only be used once.  Unlike bank accounts, Bitcoin wallets are not insured by the FDIC.

Though each Bitcoin transaction is recorded in a public log, names of buyers and sellers are never revealed only their wallet IDs are revealed. While that keeps Bitcoin users transactions private, it also lets them buy or sell anything without easily tracing it back to them. That’s why it has become the currency of choice for people online buying drugs or other illicit activities.

Bitcoins can be used to buy merchandise anonymously. In addition, international payments are easy and cheap because Bitcoins are not tied to any country or subject to regulation. Small businesses may like them because there are no credit card fees. Some people just buy Bitcoins as an investment, hoping that they’ll go up in value.

Some effort is required to protect your privacy with Bitcoin. All Bitcoin transactions are stored publicly and permanently on the network, which means anyone can see the balance and transactions of any Bitcoin address. However, the identity of the user behind an address remains unknown until information is revealed during a purchase or in other circumstances. This is one reason why Bitcoin addresses should only be used once.

The price of a bitcoin can unpredictably increase or decrease over a short period of time due to its young economy, novel nature, and sometimes illiquid markets. Consequently, keeping your savings with Bitcoin is not recommended at this point. Bitcoin should be seen like a high risk asset, and you should never store money that you cannot afford to lose with Bitcoin. If you receive payments with Bitcoin, many service providers can convert them to your local currency.

Monday, 28 July 2014

What is C# ???

C# pronounced as "C-sharp" is an object-oriented programming language from Microsoft that aims to combine the computing power of C++ with the programming ease of Visual Basic. C# is based on C++ and contains features similar to those of Java.

C# is designed to work with Microsoft's .Net platform. Microsoft's aim is to facilitate the exchange of information and services over the Web, and to enable developers to build highly portable applications. C# simplifies programming through its use of Extensible Markup Language (XML) and Simple Object Access Protocol (SOAP) which allow access to a programming object or method without requiring the programmer to write additional code for each step. Because programmers can build on existing code, rather than repeatedly duplicating it, C# is expected to make it faster and less expensive to get new products and services to market.

The term’s # character derives its name from the musical sharp key, which denotes a one semitone pitch increase. C# improved and updated many C and C++ features, including the following:

C# has a strict Boolean data variable type, such as bool, whereas C++ bool variable types may be returned as integers or pointers to avoid common programming errors.

C# automatically manages inaccessible object memory using a garbage collector, which eliminates developer concerns and memory leaks.

C# type is safer than C++ and has safe default conversions only (for example, integer widening), which are implemented during compile or runtime.No implicit conversions between Booleans, enumeration members and integers (other than 0) may be converted to an enumerated type. User-defined conversions must be specified as explicit or implicit, versus the C++ default implicit conversion operators and copy constructors.

C# used for all sort of applications ranging from computer games, utilities, Operating Systems and compilers. There are also web based applications running on the asp.net platform.

C# syntax is highly expressive, yet it is also simple and easy to learn. The curly-brace syntax of C# will be instantly recognizable to anyone familiar with C, C++ or Java. Developers who know any of these languages are typically able to begin to work productively in C# within a very short time. C# syntax simplifies many of the complexities of C++ and provides powerful features such as nullable value types, enumerations, delegates, lambda expressions and direct memory access, which are not found in Java. C# supports generic methods and types, which provide increased type safety and performance, and iterators, which enable implementers of collection classes to define custom iteration behaviors that are simple to use by client code. Language-Integrated Query (LINQ) expressions make the strongly-typed query a first-class language construct.

As an object-oriented language, C# supports the concepts of encapsulation, inheritance, and polymorphism. All variables and methods, including the Main method, the application's entry point, are encapsulated within class definitions. A class may inherit directly from one parent class, but it may implement any number of interfaces. Methods that override virtual methods in a parent class require the override keyword as a way to avoid accidental redefinition. In C#, a struct is like a lightweight class; it is a stack-allocated type that can implement interfaces but does not support inheritance.

Tuesday, 22 July 2014

What is Pay Per Click PPC ???

Pay-Per-Click advertising is a method of advertising in which advertisers pay for each ad clicked, usually via an advertising platform such as Google AdWords. Pay per click advertisers bid on specific keywords in order to have their ads appear, and is hence it can also be referred to as keyword advertising. Pay-per-click advertising can only succeed if you’re bidding on the right keywords. PPC advertising can be extremely profitable if done correctly, but in order to succeed, you need to know which keywords will bring you the best results.

Search engine advertising is one of the most popular forms of PPC. It allows advertisers to bid for ad placement in a search engine's sponsored links when someone searches on a keyword that is related to their business offering. For example, if we bid on the keyword “PPC software,” our ad might show up in the very top spot on the Google results page. Every time our ad is clicked, sending a visitor to our website, we have to pay the search engine a small fee. When PPC is working correctly, the fee is trivial, because the visit is worth more than what you pay for it. In other words, if we pay $3 for a click, but the click results in a $300 sale, then we’ve made a hefty profit.

A lot goes into building a winning PPC campaign: from researching and selecting the right keywords, to organizing those keywords into well-organized campaigns and ad groups, to setting up PPC landing pages that are optimized for conversions. Search engines reward advertisers who can create relevant, intelligently targeted pay-per-click campaigns by charging them less for ad clicks. If your ads and landing pages are useful and satisfying to users, Google charges you less per click, leading to higher profits for your business. So if you want to start using PPC, it’s important to learn how to do it right.

What is Google AdWords?
Google AdWords is the single most popular PPC advertising system in the world. The AdWords platform enables businesses to create ads that appear on Google’s search engine and other Google properties.

AdWords operates on a pay-per-click model, in which users bid on keywords and pay for each click on their advertisements. Every time a search is initiated, Google digs into the pool of AdWords advertisers and chooses a set of winners to appear in the valuable ad space on its search results page. The “winners” are chosen based on a combination of factors, including the quality and relevance of their keywords and ad campaigns, as well as the size of their keyword bids.

More specifically, who gets to appear on the page is based on an advertiser’s Ad Rank, a metric calculated by multiplying two key factors – CPC Bid (the highest amount an advertiser is willing to spend) and Quality Score (a value that takes into account your click-through rate, relevance, and landing page quality). This system allows winning advertisers to reach potential customers at a cost that fits their budget. It’s essentially a kind of auction. 

Wednesday, 16 July 2014

Why Should You Use Word Press

WordPress is an open-source and free Web publishing application, content management system (CMS) and blogging tool. WordPress allows users to build dynamic websites and blogs that may be updated, customized and managed from its back-end CMS and integrated application and components.
People often make the mistake of classifying WordPress as just a blogging platform. Although that used to be true in the past, WordPress has evolved through the years into a versatile content management system (CMS). While you can still use WordPress to create a simple blog, now it also allows you to create fully functional websites and mobile applications.

The best part about WordPress is that it’s easy to use and flexible enough for just about anything. That’s the main reason why WordPress has grown so much in popularity. According to a recent survey, WordPress powers 22.5% of all websites on the internet.
Due to it’s robust features, many of the top brands use WordPress to power their websites including but not limited to: Time Magazine, Google, Facebook, Sony, Disney, LinkedIn, The New York Times, CNN, eBay, and more

WordPress is free software, this means you are free to download, install, use and modify it. You can use it to create any kind of website. It is also open source which means the source code of the software is available for anyone to study, modify and play with. There are currently 2600+ WordPress themes and 31,000+ plugins available for free. You can download, install and use them on any website. To run WordPress, all you need is a domain and web hosting.

Most people using WordPress are neither web designers nor programmers. As a matter of fact most folks started using WordPress without any prior knowledge of designing websites. The reason why WordPress is such an ideal candidate is because there are thousands of free templates (themes) to choose from, so you can give your website any look you want. There is a WordPress theme for about everything. Whether you want a Photography Theme, Magazine Theme, Portfolio Theme, or an eCommerce Theme. There is a perfect theme available for every kind of website.

WordPress themes are easy to customize because a lot of them come with their own options panel allowing you to change colors, upload logo, change background, create beautiful sliders, and do other cool things with your website without even writing any code at all. WordPress is super flexible and can be extended by using plugins. Just like themes, there are thousands of free and premium plugins available for you to use. Not only these plugins can add extra functionality to WordPress, there are lots of plugins which can add a whole new platform to your WordPress site. By design WordPress is very SEO friendly, and you can make it even more SEO friendly by using WordPress SEO plugin.

WordPress comes with built-in updater that allows you to update your plugins and themes from within your WordPress admin dashboard. It also notifies you when there is a new version of WordPress is available, so you can update it by just clicking a button. You can keep all your WordPress content safe by setting up automated regular WordPress Backups.

Using WordPress you are not just limited to writing text. It comes with built-in support to handle images, audio, and video content. You can also use for document or file management. WordPress supports oEmbed enabled websites which means you can embed YouTube videos, Instagram photos, Tweets, and Soundcloud audio by just pasting the URL in your post. You can even allow your visitors to embed videos in comments.