The last point you overlooked is that starting a development house to make your own software in another company, when the development will never be anything but red ink, is that you are going to get a really shitty development company. Being the VP in charge of OS development for a company that makes operating systems is great. Being the VP in charge of OS development for a police force is a dead end job with nowhere else to go where you are going to be constantly asked to find ways to do your job more cheaply.
I think you're forgetting the setting. In SR every corp job is a dead end at the top unless you want to pay for an extraction. That's assuming you actually believe this, which I don't. Yes, you'll constantly be asked to do your job cheaper, but that isn't the only thing you'll doing. You'll be constantly having the systems updated. Constantly adding new features to the software to help the company do their job. Constantly streamlining for efficiency. They won't be developing a single OS, two software suites, then quitting. Let's face it, KE is supposed to be the elite of the elite. Law enforcement has constantly been having to upgrade to stay competitive with the criminal element. In 2073, part of that upgrade would be matrix support and supporting programs. These guys would be constantly busy, and KE can afford to pay them well by SR standards.
In the real world their are open source options for many software packages that have a list cost of 0$ and are -still- more expensive to use then other open market, expensive software because they don't come with support contracts. Developing and supporting software is limited to companies that develop and support software as part of their core business.
Again, I suggest you actually look into some of the major companies out there. Is Walmart a software development company? Is Boeing a software development company? How about the U.S. Army? These are three off the top of my head that have a dedicated software development division. Sure, they'll often license some programs from other companies if they don't want to spend the development time on it. When they do this, they are licensing programs for things that aren't vital to their main goals and doesn't have to be secure.
Buying software licenses as cheaply as possible by contracting them from a subsidiary of the same company? Of course. This would NOT be exclusive software however. it would just be, at most, a customized software package including versions of the market available software.
Oh, and no, it wouldn't be free. Asking another division of the company to eat red ink by giving away software licenses wouldn't happen now. In SR, just asking for such a deal would be a good way for a middle manager to take out a hit on you.
Of course it would be exclusive. There are two common ways software is sold: Licenses and Code. Licensing is common to most people, because every piece of software they buy as a single user comes as a license. They don't own the software at all, they just are able to use it through their license (which ever as a programmer I hate the idea of).
Code is how most companies buy software when it is being developed for them. The company is hiring another company to develop software X so they can buy Y licenses. They are contracting another company to develop software X so that they can buy software X. This is almost always done as an exclusive piece of software. Will you see bits of code just like bits in software X surface in other projects? Yes. That's because as humans, once we learn to do something one way, we tend to keep doing it that way.
As far as the free business. I already stated that it would be cheaper in the long run than updated the officer's commlinks. That said, Knight Errant is a subsidiary of Ares that is in a unique position to help its parent company out a lot. I never said that the software development subsidiary would be working for free, I said I could see Ares paying for it. Its not uncommon to see parent corporations paying to help their subsidiaries today. Especially when those subsidiaries are in a place to bring in a lot of revenue, or in Knight Errant's case, hinder rivals.
The cost and time lag of developing their own in-house software while paying to build what amounts to a software development company that never sells any products outside the company?
Nope. Never going to happen.
Happens today, so 62 years in the future, still going to be happening. Software development
can take years. It depends on what you're trying to do. It can also take weeks or months depending on what you are trying to do.
Its one of the few fields where throwing a large number of people at the problem actually causes it to take longer. I suggest reading
The Mythical Man Month by Fred Brooks if you really don't believe this. Programming is more of an art than a true science, in that everyone does it differently. Sure, you have to use the same rules, but how you lay it out, how you comment it, etc. all changes from programmer to programmer. The more programmers you have working on one project, the more "dialects" of the programming language the team has to deal with as they try to mesh each person's work together.
Many people look at Windows and Mac and how often their OSs release and come to the conclusion, "Oh, that's how long development has to take." Its really not. These OSs (which in SR their is no single company monopoly) are released with several key factors, the most important of which is profit (which of course has nothing to do with the programming side). If Microsoft released a new OS every 6 months, or every year, none of them would make enough profit to cover the development costs.
As an in house development team, KE Software (what I'm going to dub the team for now) would never have to worry about the profit of selling the software. Sure, they'll still have a budget and a deadline to work with, but they can effectively release a new OS every 6 months if it falls within budget, each version streamlining it further with data they get from their officers in the field. Tying into the above point, this is another reason why it
isn't a dead end job. How many times do you actually get to sit down and work on a project without worrying about, how are we going to make money off of this, and just being able to make the damn thing better. its a rarity.
As far as KE itself is concerned, they aren't trying to make a profit off of the software development team. It would be seen as just another expense like gas, ammunition, medical insurance, maintenance, etc. If you want to stay on top of the game, there will be expenses. This is exactly how the software development teams are seen at the companies I mentioned above. Software development is about building software, it can be a very profitable industry, but it isn't always done for profit off of the software itself.
KE has an in house cyber-security/investgation division. The difference between a cyber security and investigation group and people that develop and support software full time is massive. At most, they would have a group of software mediation specialist that work to make different bits of equipment and software work together well.
Thing is, they
have to have a development team for that cyber-security/investigation division if they want to stay cutting edge. If for nothing else than to develop the software that the security/investigation division uses for security and investigation. An elite corporation will not be using commonly available, out of the box, software for this. If they are, no one will hire them for it, because they can hire Timmy the local college dropout, buy a license of software, and get their security much cheaper. In house development teams are almost always faster at responding and coming up with a solution than going through outside sources.
When you're firewall is breached, you have six clients begging you to fix their systems, and you have no idea what is happening; Do you want to be on hold with SoftyCorp because their Lead Developer is in a meeting, or do you want to have twenty to sixty programmers already working out the solution? On this note, many non-software development companies have had dedicated teams as far back as the 80's, its not a new trend.