* You are viewing the archive for the ‘Product Development’ Category

Architecture driven software development ensures quality

The one most important thing that can influence the quality of the software is the architecture used.  Software architecture plays a key role, and it is collection of design decisions – intended to ensure functionality and other quality attributes of the software like reliability, usability, scalability, efficiency, maintainability, and portability.

Software architecture represents earliest design decisions that are hardest to change, is a communication vehicle among stakeholders and are the most critical to get it right.

Architecting the software right ensures the business goals of high quality, quick time to market, effective use of limited resources, optimal leveraging of available skills, low … Continue Reading

Software Quality – what is it in reality?

The moment we mention software quality, the first thing that comes to our mind is bug-free software. Is bug-free software the only thing about software quality?Absolutely not!

We can define software quality thus, it is a part of each phase of the development life cycle including testing and encompasses a whole load of factors and not just bug-free and aesthetic software. These factors that are a combination of tangible and intangible sum of quality attributes like functionality, reliability, usability, efficiency, maintainability and scalability forms an important part of the software.

A bug free, aesthetically appealing product that fails to solve business problems … Continue Reading

Removing software defects and errors – we’re closer to the Holy Grail!

Defect free or bug free software is in the wish list of many software vendors for ages and it hasn’t materialized and people are still looking for the Holy Grail. No piece of software can be bug free, however we can ensure that it works well in a controlled environment.

Defects are introduced in the software at all phases starting from requirements to analysis to design to development to verification to implementation to maintenance. In addition, 50% of the bugs are introduced when programmers try to fix a known bug. Essentially, any activity that is performed by a programmer or a … Continue Reading

20% of businesses will own no IT assets!

Gartner predicts by 2012, 20% of businesses will own no IT assets. This is more so in the SME space, for the cloud removes all the barriers to modernize their business processes.

Adoption would be spread across all the three layers of the cloud – IaaS, PaaS and SaaS. This allows organizations to make use of applications as needed as the cloud supports massive scalability while avoiding extended periods of under utilized IT capacity. Some of the most favored IT applications on the cloud are CRM, project management, application development on the cloud, payroll, accounting and finance.

This essentially allows organizations to … Continue Reading

Software Development – The problem is of plenty, not scarcity

Software developers often are faced with a bewildering array of choices while developing software. Oftentimes frameworks, tools and technologies are mandated by client organizations to development teams. It is very possible that the team members are not exposed to at least one of the important technologies, tools or frameworks.

In the rush to shorten the learning curve and to get the development completed, very often basic development guidelines for successful development are ignored. Basic principles of object orientation and modularity of code are ignored and several transversal functions are unstated and are not met. This is discovered half way through the … Continue Reading

Product Engineering – Aligning customer needs

Whenever we engage with the customer, the most critical aspect will be to align our knowledge with the customer needs. This is especially true and complex, when you are talking about outsourced product development, as we ought to align our knowledge with our customer’s customer needs.

In my mind, product engineering is a domain and expertise by itself as the skills required to build a product are far different from the skills required to build an application. Product is never custom-built for a particular customer; rather it is generic and requires better skills to ensure that the code base is scalable, robust … Continue Reading

R & D Spend and Outsourcing Innovation

When you look at ISVs annual reports, their R & D spend remains consistently in the range of 15% to 20% of their turnover. With the global slowdown, many of them have reduced their R & D spend considerably and some of them even went to the extent of moving their product releases to a future date just to ensure that their liquidity is not compromised.

Mckinsey’s survey on R&D spend says that high performing innovators that have derived maximum benefits from R & D have in fact increased their R & D spend during 2009. These are companies that completely understands … Continue Reading

Software user adoption – Key to business results

I was having a conversation with an enterprise software vendor. He was mentioning that the biggest challenge that he faces is that he is not able to increase the adoption levels of his software and it is costing him dearly.  I just casually mentioned to him that the usabiilty of his software should be as simple as using a desktop productivity tool. I am not sure if this got him thinking, but it certainly got me thinking deep about how we do this at Ivesia. 

I just broke them down into user adoption challenges and the solution that Ivesia offers. I’ve just reproduced them … Continue Reading

Build Vs. Buy – Enterprise Dilemma

Though this has been a much debated topic for the last decade or so, it still remains a challenge for the enterprises. They don’t get to decide whether to buy or to build as each has its own pros and cons. In this post, I have covered this dilemma and try to offer an alternate option as well.

When should I buy software?

  • Software offers a good fit for majority of your requirements
  • Software can be customized to meet the remaining requirements; else the remaining requirements can be modified for the software
  • License cost of the software is not very high and offers … Continue Reading

Agile development and test automation

Most development is moving the agile way, when it comes to product development and it does make sense. Considering the previous statement is true, you have to be wary about the automation tool that you use, for most traditional tools would fail in an agile environment. Some of the reasons are, you cannot test last in an agile environment; scripts developed using proprietary tool vendor languages become unmaintainable; and installing them on every workstation becomes prohibitively expensive.

The way traditional test automation works, it just cannot support agile development. Take for instance the workflow - developers develop the code, test analysts design the … Continue Reading