Live data from Hacker News

Software Maintenance by Skeleton Crew Is an Anti-Pattern

18f.gsa.gov

21–30 of 41 posts

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#21
I've worked O&M on software in the defense industry. Never again.

On my current project, when development is done and we're officially transitioned over to "O&M", my employer either gives me a new project to work on or I'm leaving to do something else.

Oh, and I've come to the conclusion that civil servants are not capable of grasping any development methodology other than 'waterfall.' Trying to do 'agile' is an exercise in frustration. The bureaucrats say they want agile (buzzword!), but they really don't. Eventually you settle on doing 5-week 'mini-waterfalls' and calling it 'agile'. :/

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#22
Maybe the problem is that development is decentralized and done off-site? For each each website, or component is built by separate, often lucrative contract. On one hand developers re-invent the wheel knowing that they financially benifit from the bloat, on the other hand they feel little responsibility for their often weighty work.

Can we do something crazy like centralize our software development or have these administrative positions electable? If you can run for town dog catcher, maybe that asshole who made the WordPress site should also stand for office!

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#23
post #3
post #2

This title is misleading, should be closer to "Government frequently adopts anti-patterns when maintaining software" Something more constrained to what the article is actually about rather that the global catch all "software maintenance".

I think the article is using software maintenance as a kind of inside-government term-of-art for the maintenance portion of a waterfall-style project. Undoubtedly, the audience of this article is software developers and managers of software projects within governemnt. Therefore, although the title doesn't convey the article's message to outsiders, it might not actually be misleading.

[deleted]

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#24
It may be worth noting that some government-sponsored software is intended to get dropped as soon as version 1 gets released. Of course, this is a small fraction of government-produced software.

This happens for a variety of reasons. Often funds are allocated specifically to develop what industry calls a minimum viable product-- with the understanding that if the project is deemed successful, the research group can seek further funding to improve the tool.

There is also a model, in government research funding, that says the government's role is mainly to point the way, or to open up markets. In this model, if version 1 of the software proves itself useful, then an industry partner can step in and it take over. However, if nobody shows interest, then the government should _not_ sustain the effort, because the lack of interest implies a lack of utility to the public.

For example, the OpenEIS project [0] was funded specifically to produce "reference code" that a company can use to check the output of a professional implementation. The reference code is not at all intended to be fast or robust. It's intended to demonstrate the algorithms, and to document the expected output for a variety of reasonable inputs. As a programmer on the project, I knew from the start that my work would end with the first deliverable.

[0] http://eis.lbl.gov/openeis.html

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#25
post #9

This seems to assume that all "private industry" does things in a way different than how government does. Different kinds of projects have different needs for upfront design. One can quickly ship and iterate on an online dating app. One cannot launch a new space shuttle every two weeks and keep trying until the crew survives the mission.

>This seems to assume that all "private industry" does things in a way different than how government does. It does. A skeleton crew would be abandonware.

I don't understand your reply. I'm familiar with private industry projects producing high-risk projects requiring lots of long term up front investment in capital and time and private industry projects working low-risk efforts where using the customers as testers is perfectly fine. Likewise there are small units of government entities that can iterate on low-risk projects in addition to the big infrastructure projects that larger government organizations work on.

I think the OP is painting with too broad a brush when talking about "private industry".

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#27
post #16
post #15

Earlier quoted context omitted.

> ... software is not considered complete when it's first released. I don't know where this assumption comes from. My anecdata, doing IT support for about 1,000 small-business sites: it's customary to only adopt new Microsoft releases after SP1 has been released. Our customers sometimes even explicitly instruct us so.

While this is changing, in game development the finished product ships on read-only media and without patches or online support, that is all the customer is going to get. Now there's a prevalence of day one patches but it's pretty lame to see developers waiting till the weeks between pressing the disc and it appearing on shelves to fix standing issues. In the case of M$ software that's a security or support issue not…

Already in 2013 92% of PC game sales involved no physical media [http://gamerant.com/pc-digital-physical-sales-comparison-201...]. This enables the day-1-habit, of course, but it also mitigates the problems - there aren't any shelves on which unpatched versions of the game keep sitting after launch.

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#28
post #9

This seems to assume that all "private industry" does things in a way different than how government does. Different kinds of projects have different needs for upfront design. One can quickly ship and iterate on an online dating app. One cannot launch a new space shuttle every two weeks and keep trying until the crew survives the mission.

>This seems to assume that all "private industry" does things in a way different than how government does. It does. A skeleton crew would be abandonware.

I responded to this question, but now I see that I was missing your point. (It doesn't help that the HN title changed to something other than the article title after it was posted.)

There are plenty of private industry shops maintaining software on a skeleton crew that needs no more features or a bigger market. Again, this article is assuming that all private industry only serves a growing market. There's plenty of software already written and being profitably maintained by skeleton crews to happy customers.

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#29
post #15
post #4

Without any concrete evidence or cases, the general description of a problem in this article is not very convincing. Software maintenance itself is not an anti-pattern. Instead, what is described is a situation of product/project mismanagement. > ... software is not considered complete when it's first released. I don't know where this assumption comes from. > Governments often use two anti-patterns... (2) moving to r…

> ... software is not considered complete when it's first released. I don't know where this assumption comes from. My anecdata, doing IT support for about 1,000 small-business sites: it's customary to only adopt new Microsoft releases after SP1 has been released. Our customers sometimes even explicitly instruct us so.

In fact, the reason Server 2003 got an extra year of support is that they waited until after Vista SP1 to do Server 2008.

Re: Software Maintenance by Skeleton Crew Is an Anti-Pattern

#30
post #21

I've worked O&M on software in the defense industry. Never again. On my current project, when development is done and we're officially transitioned over to "O&M", my employer either gives me a new project to work on or I'm leaving to do something else. Oh, and I've come to the conclusion that civil servants are not capable of grasping any development methodology other than 'waterfall.' Trying to do 'agile' is an exer…

It's not just civil servants who can't understand agile. Most non-software people can't. Which is totally normal and expected if you think about it: the agile movement started in software. You can't build a house or a plane using agile. It has to be waterfall.
Post reply on HN