About Software Development

Take command of air and naval assets from post-WW2 to the near future in tactical and operational scale, complete with historical and hypothetical scenarios and an integrated scenario editor.

Moderator: MOD_Command

Post Reply
evaamo2
Posts: 61
Joined: Mon Jun 19, 2006 5:34 pm

About Software Development

Post by evaamo2 »

Hi guys, I'm not going to say much with regards to the opinions and claims being made about Command... but since I've worked in the defense industry as a software/systems engineer (mostly command & control stuff) and currently work in the information security field, I believe there are some things you should know in case you are not familiar with software development:

Creating software is complex. Software is imperfect (specially in its beginnings; in some cases it never ends up working!).

You wouldn't believe the amount of buggy software that have made it into mission critical applications, such as flight management computers, avionics, autopilots; firmware for things like gyroscopes, radars even weapon systems may run for years with "silent" bugs that are discovered (sometimes by pure chance) and fixed at much later dates! Not to mention critical software in the automation (nuclear plants) and healthcare industries! (pacemakers!). Things like CMMI, DO-178, ISO 12207 are there to try to improve the situation, but in reality developing quality software is hard! As longs as a human (programmer, coder, developer, wizard) is involved in the process of software development, there will always exist bugs (fact: Google has a 100% autonomous car solution to improve the safety and to optimize road traffic in the next few years, but no news of an artificial intelligence solution for developing software autonomously. Funny eh?). CASE (Computer-aided software engineering) solutions were hyped in the early 90s as the next big thing to solve the quality in software products and to even replace programmers... it never happened.

Software takes time to reach a good level of quality. Software development is expensive, very expensive in industries like the ones mentioned in the paragraph above. Sometimes software projects are never finished... big investments (millions of USD) thrown down the drain because of human factors (most of the time people don't know what they want and software projects are built on top of faulty or poor requirements analysis) ... and most of the time if you want your software to succeed, you just need to launch it! and there will be compromises down the road to "perfection"! Otherwise if you wait until "perfection" you will never launch a product, or if you do you will probably fail because you never got people involved in the process, and people will always play and break software in ways a programmer never imagined it. It will happen regardless of the amount of "use cases", "test cases", "stress testing", "assertions", "exceptions" or whatever you think might prevent a user from trashing your application. The only guarantee you may have (and I have no doubts whatsoever in this regard knowing the Warfare sims team since the HHQ days) is that as long as the bases of the software are properly designed and there exist a committed and competent group behind their creation, willing to support their software and their users/customers, then it's a matter of letting the product continue its evolution (never perfection tho'). The days when someone like Donald Knuth could code an application perfectly and bug-free in the first attempt are over, things have become much more complicated.

Many knowledgeable folks in this industry agree that software development is not and will never be a traditional branch of engineering. There are those who say software development is not engineering, nor science, nor art. It's a great mix of all three. I agree with that.

So... let's take a deep breath and sit back and play the game while the Command folks hunt down and squash the outstanding bugs and improve this fine simulation. For those of you who are angry about the bugs, disappointed with performance, or disgusted with the price, bear in mind the troubles that plagued the multi-billion 787 Dreamliner project. You'd probably travel the world on foot if you knew the glitches and strange bugs that continue to plague aircraft avionics in this day and age (pilots just know these and how to work around them).

Here's an amusing link for killing time: Software Horror Stories

regards,
Enrique

disclaimer: I'm a volunteer beta tester (late beta) now turned into a regular paying customer just like you. I did so the very same day Command came out. I have no relationship with Warfare Sims nor Matrix Games beyond this.
CoffeeMug
Posts: 95
Joined: Tue Jul 13, 2004 6:31 am
Location: Frankfurt/M, Germany

RE: About Software Development

Post by CoffeeMug »

signed
MaB1708
Posts: 343
Joined: Sun Aug 13, 2006 10:46 am
Location: Freiburg(Germany)

RE: About Software Development

Post by MaB1708 »

+1 Thank you, Enrique, well said!
User avatar
Der Zeitgeist
Posts: 279
Joined: Thu Sep 05, 2013 6:19 am

RE: About Software Development

Post by Der Zeitgeist »

I agree, but sitting back isn't what we should be doing now. Instead we should try out as many functions, missions, platforms, AI tactics as possible, to see which already work and which still need more tweaking.
MaB1708
Posts: 343
Joined: Sun Aug 13, 2006 10:46 am
Location: Freiburg(Germany)

RE: About Software Development

Post by MaB1708 »

Zeitgeist, I believe the forum is so crowded because most of us do that from day 1 on - you are one of the guys who help a lot by providing good feedback, I try the same, many others too - we will get there, I am sure.
Cheers,
Martin
User avatar
Der Zeitgeist
Posts: 279
Joined: Thu Sep 05, 2013 6:19 am

RE: About Software Development

Post by Der Zeitgeist »

ORIGINAL: MartinB

Zeitgeist, I believe the forum is so crowded because most of us do that from day 1 on - you are one of the guys who help a lot by providing good feedback, I try the same, many others too - we will get there, I am sure.
Cheers,
Martin

We really need some sort of Wiki or FAQ. There so many workarounds that are needed right now, it's really hard to keep track of all that undocumented stuff even when you constantly read this forum.
User avatar
jmscho
Posts: 126
Joined: Tue Sep 21, 2004 11:36 am
Location: York, UK

RE: About Software Development

Post by jmscho »

Agree with everything you have said Enrique. Use of a system with real users exposes many problems not considered by the developers.

Back in the 80s I was the lead analyst on a military system. It was ready for release on time (and on budget), but some functions were a bit slow. I admired the Department Head's decision to tell the users to just get on with it rather than fall back to the old system. While the developer fixed the known performance problem, we expected to learn a lot about systems problems that could be fixed while the developer was on-base.
thewood1
Posts: 9932
Joined: Sun Nov 27, 2005 6:24 pm
Location: Boston

RE: About Software Development

Post by thewood1 »

There aren't actually that many outright bugs. The system does pretty much what it was advertised to do. There are things that could be easier, better, more functional. But I am very happy. The problem with a well-engaged customer base is that it looks like there are a ton of things wrong. But because we know the developers are taking the feedback to heart, we tend to go on about the needs and short-comings.
Sigma8510
Posts: 91
Joined: Sat Apr 15, 2006 3:26 am

RE: About Software Development

Post by Sigma8510 »

+1

Joe
LuckyJim1010
Posts: 260
Joined: Tue Jul 06, 2010 4:08 pm

RE: About Software Development

Post by LuckyJim1010 »

+1 from me
RockKahn
Posts: 165
Joined: Thu Oct 27, 2011 7:19 pm
Location: USA

RE: About Software Development

Post by RockKahn »

I agree.

I can't really call myself a programmer, since 95% of the internal database applications I have written were in BASICA, MSBasicPDS, and VB6 using Access or MySQL for the DB. However, some of the applications did get fairly complex.

My best testers were the people who were entirely clueless on how to use my applications. This was back in the 80s and 90s. I could debug my app all day and everything would work flawlessly. I thought it was debugged so I released it into production and would get a call 5 minutes later. People were clicking and doing things in the program that I had never even thought of.

Well, now I'm one of those clueless people, so I'm sure the CMANO devs appreciate the patience of their users and their error reporting as I did way back when.
I don't write Universal Law. I just live by it.
User avatar
Primarchx
Posts: 1954
Joined: Sun Jan 20, 2013 9:29 pm

RE: About Software Development

Post by Primarchx »

The Beta forum is still going like gangbusters trying out items for V1.01 based on concerns brought up here. Have faith, folks, you are being heard and there is significant progress coming.
Dimitris
Posts: 15219
Joined: Sun Jul 31, 2005 10:29 am
Contact:

RE: About Software Development

Post by Dimitris »

ORIGINAL: RockKahn
Well, now I'm one of those clueless people, so I'm sure the CMANO devs appreciate the patience of their users and their error reporting as I did way back when.

We do, very much so. We've been (and are) users ourselves.
User avatar
Kipper
Posts: 275
Joined: Sat Mar 05, 2005 4:25 pm

RE: About Software Development

Post by Kipper »

As a software guy myself (don't want to start counting decades LOL) my hats off... this is a stunning achievement and while a great product now, this is only the START of a community journey with these great gamers/devs.
mcoyote
Posts: 12
Joined: Fri Sep 01, 2006 5:20 pm

RE: About Software Development

Post by mcoyote »

Bah. Ish. I mean, over 20-odd years in private and government contracting (mostly developing for the DoD) suggest to me these are true sentiments but, objectively speaking, standards have gone down. A notable chunk of the best-selling, high-end releases in all genres are "beta" or "early access", teams are smaller/leaner, turnaround is both quicker and expected to be, etc. This has only tangential relevance to CMANO.

CMANO is in an especially weird place because it's a detail-heavy title for a group of detail-emphasizing enthusiasts whose best point of reference is...get this...Harpoon in its many incarnations, a codebase dating from ~30yrs ago. Hard to get right on the first throw, for many reasons.

Therefore, I think it's acceptable to gripe but, because the current market is predicated on imperfection and post-release improvement, that should be tempered appropriately.
Professional Coder on Closed Source. Do Not Attempt.
mjk428
Posts: 872
Joined: Sat Jun 15, 2002 3:29 am
Location: Western USA

RE: About Software Development

Post by mjk428 »

ORIGINAL: evaamo2

For those of you who are angry about the bugs, disappointed with performance, or disgusted with the price, bear in mind the troubles that plagued the multi-billion 787 Dreamliner project. You'd probably travel the world on foot if you knew the glitches and strange bugs that continue to plague aircraft avionics in this day and age (pilots just know these and how to work around them).


Not sure why you think these two things have anything to do with each other.

People paid $80 for a "premium" title. They bought a ticket to complain, within the bounds of the forum rules, if the entertainment product they spent good money on doesn't perform as advertised. I'm glad for all the people who are reporting their problems. A little polite grumbling will go farther in making this sim even better than calls for patience ever will.
smudge56
Posts: 667
Joined: Sat Jan 17, 2009 8:31 am
Location: UK

RE: About Software Development

Post by smudge56 »

Nicely said mate [:)]



ORIGINAL: evaamo2

Hi guys, I'm not going to say much with regards to the opinions and claims being made about Command... but since I've worked in the defense industry as a software/systems engineer (mostly command & control stuff) and currently work in the information security field, I believe there are some things you should know in case you are not familiar with software development:

Creating software is complex. Software is imperfect (specially in its beginnings; in some cases it never ends up working!).

You wouldn't believe the amount of buggy software that have made it into mission critical applications, such as flight management computers, avionics, autopilots; firmware for things like gyroscopes, radars even weapon systems may run for years with "silent" bugs that are discovered (sometimes by pure chance) and fixed at much later dates! Not to mention critical software in the automation (nuclear plants) and healthcare industries! (pacemakers!). Things like CMMI, DO-178, ISO 12207 are there to try to improve the situation, but in reality developing quality software is hard! As longs as a human (programmer, coder, developer, wizard) is involved in the process of software development, there will always exist bugs (fact: Google has a 100% autonomous car solution to improve the safety and to optimize road traffic in the next few years, but no news of an artificial intelligence solution for developing software autonomously. Funny eh?). CASE (Computer-aided software engineering) solutions were hyped in the early 90s as the next big thing to solve the quality in software products and to even replace programmers... it never happened.

Software takes time to reach a good level of quality. Software development is expensive, very expensive in industries like the ones mentioned in the paragraph above. Sometimes software projects are never finished... big investments (millions of USD) thrown down the drain because of human factors (most of the time people don't know what they want and software projects are built on top of faulty or poor requirements analysis) ... and most of the time if you want your software to succeed, you just need to launch it! and there will be compromises down the road to "perfection"! Otherwise if you wait until "perfection" you will never launch a product, or if you do you will probably fail because you never got people involved in the process, and people will always play and break software in ways a programmer never imagined it. It will happen regardless of the amount of "use cases", "test cases", "stress testing", "assertions", "exceptions" or whatever you think might prevent a user from trashing your application. The only guarantee you may have (and I have no doubts whatsoever in this regard knowing the Warfare sims team since the HHQ days) is that as long as the bases of the software are properly designed and there exist a committed and competent group behind their creation, willing to support their software and their users/customers, then it's a matter of letting the product continue its evolution (never perfection tho'). The days when someone like Donald Knuth could code an application perfectly and bug-free in the first attempt are over, things have become much more complicated.

Many knowledgeable folks in this industry agree that software development is not and will never be a traditional branch of engineering. There are those who say software development is not engineering, nor science, nor art. It's a great mix of all three. I agree with that.

So... let's take a deep breath and sit back and play the game while the Command folks hunt down and squash the outstanding bugs and improve this fine simulation. For those of you who are angry about the bugs, disappointed with performance, or disgusted with the price, bear in mind the troubles that plagued the multi-billion 787 Dreamliner project. You'd probably travel the world on foot if you knew the glitches and strange bugs that continue to plague aircraft avionics in this day and age (pilots just know these and how to work around them).

Here's an amusing link for killing time: Software Horror Stories

regards,
Enrique

disclaimer: I'm a volunteer beta tester (late beta) now turned into a regular paying customer just like you. I did so the very same day Command came out. I have no relationship with Warfare Sims nor Matrix Games beyond this.
AKA - Smudge
Post Reply

Return to “Command: Modern Operations series”