Both is important. Maintaining current products, which are in the market and making money. And developing new products (or new major updates which take longer) to increase or secure revenue in the future.<p>Maintaining means here fixing mainly bugs, making changes customers request and developing minor new features. Basically keeping everything running with changing Windows versions, hardware upgrades, etc. Also improving the performance.<p>Developing new products means creating a new software, which can be included into the offering for example or can be launched on its own.<p>If a team focusses too much on maintaining, there might be not much growth. If it focusses on developing new products too much, it would lose customers, because the existing products break apart.<p>How do you handle such a situation? Fixed days in a month for maintenance? Or a fixed day in a week? Or a dedicated person?
Having one person work on bugs and then rotating that person or group makes a lot of sense for a small/medium size team. If the company is very small the most senior dev usually works on the difficult bugs but you usually support your own feature. Big company there would be teams for each.