Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 12:01 25 Nov 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Other Stuff : "agile" developement

Author Message
isochronic
Guru

Joined: 21/01/2012
Location: Australia
Posts: 689
Posted: 03:13am 25 Feb 2018
Copy link to clipboard 
Print this post

[ *** Note this post has no connection whatsoever with any
companies on this BBS *** ]

Anyone have any experience with so-called "agile" software development ?

It seem to bypass the idea of specification, instead relying on programmers
that already know at a high level what is required. So there is no real definition of what the software is supposed to do, at least as a hard document.
Testing is usually superficial.

So a few years down the track, the staff have changed to newies, and no-one know what the product is supposed to be, let alone be able to formally test it.
To fix a bug requires reverse engineering to even know what routines do what..

To keep customers happy more and more features are promised. But this compounds the situation. The product gets worse, not better.

The more or less inevitable result is that customers get fed up with the bugs and leave, if not sueing for damages. The directors have usually sold at the right time of course...


I am starting to think that there should be a scheme whereby
technology inventor companies can declare a tech glitch/endoflife and thereby
bring about a constructive endpoint and start afresh. Tt would be similar
to financial bankruptcy laws and scheme etc but for technology instead of money.

 
Gizmo

Admin Group

Joined: 05/06/2004
Location: Australia
Posts: 5078
Posted: 04:49am 25 Feb 2018
Copy link to clipboard 
Print this post

I have seen this in two cases before.

Accounting software for one, like MYOB or Quickbooks. If you look closer at the data file structure, you can easily tell its been around for a long time and worked on by more than one programmer. A column to record a yes/no value can be several different datatypes, depending on the programmers style. It could be a bit, integer, varchar, whatever. So if you want to interrogate the data, you could get a true, 1, -1, "Y", etc.

I develop a workshop application that has been a project of mine for over 10 years, and I have to say, the database was getting messy. It was running a Access database. To make things worse, at one time I had to work with another developer who wanted to export invoice data from my database, then set a flag to say it had been exported. He wanted a bit column, I've usually used byte, to use as a flag. So some tables have a mix of bits and bytes as yes/no flags, yuk. And the sql query could give a different result, like 1, -1, true, to mean the same thing.

I had also been asked what would happen if I was run over by a bus, could someone continue my work.

So when the opportunity came up a couple of years ago to port the database over to MySQL, I decided to rename the tables and columns to more meaningful names. For example, DEBT table became the Customers table, BH column became BookedHours, etc. And any yes/no fields became a 1 byte varchar field, with a "Y" for Yes, nothing or "N" for No. I wanted the database to be readable by a new developer, the table and column names to make sense, and Yes/No data to be a "Y" or "N". It was a big job, but has made working on the software easier since then.

In my code I put comments when needed, especially for code with no obvious purpose.

The second time I've seen this issue was as a Telecom technician back in the 1980's. Many of the Telecom (now Telstra) sites had been in operation for many decades, and as technicians retired, they took a lot of the knowledge with them. I recently attended a Telecom reunion, 25 years after I left. Since then Telstra was sold, the staff made redundant apart from a skeleton staff. We went on a guided tour around the old exchange I had worked at years earlier. A lot of the old equipment is still there and powered up, because no one knows what it does! They think the equipment is important, its connected to cables leaving the building, lights are flashing, its doing something, so its left to do whatever its doing.

Glenn
The best time to plant a tree was twenty years ago, the second best time is right now.
JAQ
 
isochronic
Guru

Joined: 21/01/2012
Location: Australia
Posts: 689
Posted: 08:42am 25 Feb 2018
Copy link to clipboard 
Print this post

To make things worse there is now web connection as well.
Instead of database transactions and enforced consistency,
apparently "eventual" consistency is ok. So a screen updates..
and then the database updates..you think..if the browser hasn't frozen..
sometime later...in a cloud of javascript generated on-the-fly...
by a google thought-bubble language already obsolete...and you get a call
from a user, asking why it isnt updating sometimes ...assuming there aren't duplicate records as well of course...
Apparently database 101 is not required anymore. I am gobsmacked.

* all served by that miracle of robustness, Microsoft IIS, of course,
accessing SQL Server.. so I have now seen a simple server application, using 27 gig of system memory Edited by chronic 2018-02-26
 
greybeard
Senior Member

Joined: 04/01/2010
Location: Australia
Posts: 161
Posted: 10:01am 25 Feb 2018
Copy link to clipboard 
Print this post

Agile development was invented by consultants/contractors to allow for non existent specifications for projects and to give the maximum amount of billing possible from the client.
[disclaimer, I'm a contractor/consultant ]
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6098
Posted: 08:41pm 25 Feb 2018
Copy link to clipboard 
Print this post

"agile" software development describes MMEdit, except I think of it as "bungling along" development.

I started of 7 years ago when all there was was the mono maximite.
Extra features get added to support the next device - now there are 8 different devices to try and cater for with lots of different capabilities.

I have enough trouble remembering why I did it in a particular way. Anyone else would have no hope.

I started a complete rewrite using a better language but life has got in the way. I just keep prodding the old program a bit as required.

Jim

VK7JH
MMedit   MMBasic Help
 
greybeard
Senior Member

Joined: 04/01/2010
Location: Australia
Posts: 161
Posted: 10:46pm 25 Feb 2018
Copy link to clipboard 
Print this post

The other advice I always insist on imparting on baby programmers is to imagine that in ten years time someone needs you to fix a long standing defect in your code. So don't write smartass code, write maintainable code [ie simple steps rather than one liners of convoluted code] and relevant comments [including why it was done that way].
 
isochronic
Guru

Joined: 21/01/2012
Location: Australia
Posts: 689
Posted: 09:09am 03 Mar 2018
Copy link to clipboard 
Print this post


At some point, it becomes more realistic to declare a program
unmaintainable than to waste resources on it. This is
Not The Right Attitude of course. I suspect that many IT companies
cannot actually make that decision and simply tank, to be replaced by startups with even less solidity.
The question is, where is the cutoff between an income opportunity, and a messy
disaster to be avoided ? Considering program 'X' - there are many -
that is web based but apparently designed without transactions or fail-safe operation. Hmmmm.
 
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2024