Insights

  • Is Cloud Computing Right for Your Business?

    by Mark Stitz | Jan 06, 2012
    is cloud computing right for your business

    Over the last few years many businesses have moved aspects of their business operations to cloud computing. It offers many advantages, including potential cost savings. However, there are also significant risks associated with cloud computing. So what are some of the factors that companies should be aware when evaluating cloud computing, and how do you mitigate the risks associated with it?

    Cloud computing is an environment of interconnected servers providing computing resources in an elastic and dynamic manner based on computing need. The hope with cloud computing is that the underlying hardware is not significant to the equation, which allows the actual processing needs to be addressed dynamically based on need. The costs of cloud computing are normally based on a usage model, with payments being charged on a time usage or occurrence basis. As your computing needs change you can dynamically allocate more or less resources.

    Another important factor is that the speed at which content is delivered to end users plays an important role in the success or failure. In regards to websites and services, delivering content as fast as possible to the end user is very important in making sales. Search engines now factor in load times in their search rankings, which users have factored in for many years. If your content is delivered using the old model of hosted servers located in data center(s) thousands of miles away from users, you may not be achieving your full potential conversion rate. This rapid content delivery has become so important that content delivery networks (CDN) have been established to aid in getting static content to the user even faster by utilizing thousands of servers located everywhere.

    The primary potential advantage of cloud computing is the significantly lower cost required for data processing services, since you only pay for what you consume instead of the old model where you purchase servers that often sit mostly idle. The old model of computing resources often required you to purchase more than enough processing power in order to accommodate peak demand, even though the peak rarely happens which then lead you to server(s) being mostly idle.

    The use of cloud computing removes the need for the potentially large capital and operating costs associated with purchasing or leasing such hardware and software, and shifts those costs to a usage-based model. Purchasing or leasing hardware often requires agreements that lock you into a specific set of computing resources regardless of how your needs change over time.

    Cloud computing has its risks and disadvantages, however. Cloud computing typically has a dislocated nature in which your software runs on the cloud computing providers’ servers, which then means you are tied to the provider maintaining a certain quality level of assurance. Often times this dislocated nature is considered an advantage as it augments your staffing needs but could be problematic as you rely on the provider and cannot do it yourself.
    Another disadvantage to cloud computing is the substantial risks in privacy and confidentiality. By using a cloud system, company sensitive data and information is stored on third-party servers of which you will have very limited knowledge or control over. A breach of these systems for another client could overflow and compromise your data which could have devastating effects.

    A key component to cloud computing is establishing effective contingency plans. These plans should cover all aspects that you can anticipate and propose ways to deal with these. For most small businesses, developing such plans are difficult since there are not a lot of desirable alternatives, but by establishing the best contingency plan you have a huge advantage when problems arise.

    Business owners should carefully evaluate the use of cloud based systems, weighing the advantages and disadvantages. You need to be aware of the potential risks and problems that accompany cloud computing, to reduce and mitigate them. The substantial potential cost savings with increased freedom to elastically alter your computing resources can be quite significant for a growing business or even a well established one.

    Interested in delving deeper? Contact us at enterprisetechnology@trellist.com.

  • Monitoring the Effectiveness of Your Applications

    by Mark Stitz | Nov 22, 2010

    Applications and websites are often developed around the needs and beliefs of internal company employees. These ‘business requirements’ are based on internal employees’ belief of what their customers want to see and do - however the customers might have different needs and wants the internal employees recognize. The challenge is to fully understand the real end user and what they would like.

    There are many tools to help understand the target customer better. One of the best tools that we utilize is to literally go and ask the customers through a series of interviews and surveys specially designed to capture important information that might have been missed by the internal business units. Key customers from different demographics are selected and interviewed while a larger section of the customer based is surveyed. The surveys typically include findings from the interview process as a means to validate important new findings.

    Another tool that we utilize is web / application analytics tools such as the free Google Analytics. These tools automatically collect a lot of information that even the customer might not be aware of such as screen resolution, time spent on the site or even on individual pages, conversion rates on things like email campaigns, onsite behavior from paid search referrals and much more. You can even establish a funnel process (like a checkout process of required steps) that you would like the customers to flow through and see how well people made it through the process and which pages they exited the process.

    Analytics packages such as Google Analytics even support overlays which allow you to see your site through the eyes of the analytics package. The overlay will add key metrics overtop of the hyperlinks of the site so you can see the number of clicks and the percentage of clicks on certain links which lets you see how popular different content is.

    There are even now analytics packages that allow you to see analytics of installed applications such as a new offering from PreEmptive Solutions that hooks into the new Windows Phone 7 installed applications. These types of analytics packages let you see how your installed application is being used, which has really never been an option in the past. You can see how often certain features are used and graph out the usage over time. If you are developing a mobile application that is sold globally the analytics package even shows you demographic-based usage information where in the past it was a launch and forget situation.

    There are many more tools that we utilize in trying to fully understand the customer needs and how effective the current offerings are for them and what could be improved. It is important to fully understand the customer and how your offerings meet those needs. With all of these data rich tools it’s not difficult to understand your effectiveness and improve on it.

  • Monitoring the Health of Your Applications

    by Mark Stitz | Sep 09, 2010

    Software development involves many different stages of development before the application is deployed. This process, however, does not end after deployment. Regardless of how well the application is designed, coded, and tested there are situations that can and do cause errors to occur in the application. For example, if the database server is timing out or offline entirely, if there is a heavy load on the server(s), or a hardware failure anywhere in the application’s reach can result in errors, loss of productivity and user frustration.

    Most companies will launch new web properties without any ability to monitor issues occurring on them. In fact, the primary way they are notified of these issues is when visitors get frustrated enough to complain about it. This problem is more complex than just the site being entirely offline; issues could exist only on certain pages under certain conditions which make resolving them extremely difficult.

    To help detect and diagnose problems, Trellist utilizes an array of different tools to monitor and log errors. Our error reports include which line of source code that caused the error, the effected files, code in the execution stack and the URL of the page that caused the error. It is possible to attach application health monitoring even after deployment but its best include it as part of the application development process as you can more easily include detailed information such as customer info, shopping cart details, etc.

    There are also a variety of different ways we can record and monitor sites. One such solution is to operate a web service that captures and analyzes error report data from many different sites and can alert administrators when certain conditions are present, such as when an error occurs in the checkout process where contacting the effected customer in a very timely manner is important. Another solution we utilize is having the error reports sent out as emails to the website administrators.

    It is important to fully understand the causes of problems when they arise. While it may seem like the final point, deployment of a website is not the end of the development process.

Showing posts specific to: Mark Stitz