473,322 Members | 1,620 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,322 software developers and data experts.

Design Question - Do Your Programs Grow Organically or All Planned?

jm
or both? What is the "real world" like with respect to building
programs. Do you start out with a minimal idea, a skeleton and start
working? Do you have everything written out first and then just
translate that model to an application, using a progamming language?
Both? When do you know it is overkill?

Do you sit around, draw something on a table napkin, and then off you
go (a little silly, but could be true)? I would think some of it would
have to do with how large the project is, how many developers are
involved, and so on. I also guess that while the application overview
may be planned, the actually programming may be organic. By that last
one I simply mean that a developer may not really know how to design
functionality x, so they develop something and then use trial and
error.

I would be interested in any links someone may have that shows what a
real lifetime development cycle entails, if anyone has any
recommendations.

Thank you.

Nov 13 '06 #1
4 1126

Ideally, all the requirements are clearly defined before the code is
written. This can be very elaborate with requirement standards
defining how requirements are written and processes set up to
write/review/approve all the requirements (like DO-178B). Done right,
this is a lengthy and tedious process but it results in better code
with fewer bugs. There are software tools for requirement definition
and tracing requirements to tests, etc. In some environments these
processes are required, like it or not (for example in safety-critical
applications like avionics). Do a Google search for "DO-178B" if you
want to see more about this.

In reality most people do at least some "prototype coding" before fully
defining the requirements - in many cases this is basically writing the
code first then writing the requirements to fit. This at least makes
it look like you defined some requirements.

Of course, some people just write the code and go with it without ever
doing anything formal like a requirement document. This is alot faster
but is likely to result in sloppy code full of bugs. You may spend
more time overall because you will go through more debugging and
re-releasing of the code.

Nov 13 '06 #2
You should do some reading about Agile Development. Agile is about as real
world as it gets.

<%= Clinton Gallagher
NET csgallagher AT metromilwaukee.com
URL http://clintongallagher.metromilwaukee.com/
MAP http://wikimapia.org/#y=43038073&x=-...8&z=17&l=0&m=h

"jm" <ne***********@gmail.comwrote in message
news:11**********************@b28g2000cwb.googlegr oups.com...
or both? What is the "real world" like with respect to building
programs. Do you start out with a minimal idea, a skeleton and start
working? Do you have everything written out first and then just
translate that model to an application, using a progamming language?
Both? When do you know it is overkill?

Do you sit around, draw something on a table napkin, and then off you
go (a little silly, but could be true)? I would think some of it would
have to do with how large the project is, how many developers are
involved, and so on. I also guess that while the application overview
may be planned, the actually programming may be organic. By that last
one I simply mean that a developer may not really know how to design
functionality x, so they develop something and then use trial and
error.

I would be interested in any links someone may have that shows what a
real lifetime development cycle entails, if anyone has any
recommendations.

Thank you.

Nov 13 '06 #3
Agreed. Agile combines the best of all worlds. It is efficient, flexible,
and able to handle the vagaries of the software design/development process.
See

http://www.agilealliance.com/

--
HTH,

Kevin Spencer
Microsoft MVP
Ministry of Software Development
http://unclechutney.blogspot.com

Any experience you can walk away from
is a good one.

"clintonG" <cs*********@REMOVETHISTEXTmetromilwaukee.comwro te in message
news:%2****************@TK2MSFTNGP02.phx.gbl...
You should do some reading about Agile Development. Agile is about as real
world as it gets.

<%= Clinton Gallagher
NET csgallagher AT metromilwaukee.com
URL http://clintongallagher.metromilwaukee.com/
MAP http://wikimapia.org/#y=43038073&x=-...8&z=17&l=0&m=h

"jm" <ne***********@gmail.comwrote in message
news:11**********************@b28g2000cwb.googlegr oups.com...
>or both? What is the "real world" like with respect to building
programs. Do you start out with a minimal idea, a skeleton and start
working? Do you have everything written out first and then just
translate that model to an application, using a progamming language?
Both? When do you know it is overkill?

Do you sit around, draw something on a table napkin, and then off you
go (a little silly, but could be true)? I would think some of it would
have to do with how large the project is, how many developers are
involved, and so on. I also guess that while the application overview
may be planned, the actually programming may be organic. By that last
one I simply mean that a developer may not really know how to design
functionality x, so they develop something and then use trial and
error.

I would be interested in any links someone may have that shows what a
real lifetime development cycle entails, if anyone has any
recommendations.

Thank you.


Nov 14 '06 #4
Yup. Agile development is a series of procedural processes that were adopted
from those that evolved from the design-build process that eventually
replaced design-bid in the AEC markets (Architecture, Engineering,
Construction). At this point in time, agility is the most honest and
realistic expression of the way the real world really works whether we are
building software or school buildings.

There was a period in architectural history where the expression of needless
ornamentation on a building became questionable. Persons such as the Nazi
architect Mies Van der Rohe and the era of modernism brought this about.
Comparitively speaking, Agility foregoes the needless ornamentation of the
software development process. Again, comparitively speaking, software
development is undergoing its own period of modernism but be advised, it is
post-modernism that comes next!

Clear as mud? :-) Read, Read, Read...

<%= Clinton Gallagher
NET csgallagher AT metromilwaukee.com
URL http://clintongallagher.metromilwaukee.com/
MAP http://wikimapia.org/#y=43038073&x=-...8&z=17&l=0&m=h
"Kevin Spencer" <sp**@uce.govwrote in message
news:eD****************@TK2MSFTNGP02.phx.gbl...
Agreed. Agile combines the best of all worlds. It is efficient, flexible,
and able to handle the vagaries of the software design/development
process. See

http://www.agilealliance.com/

--
HTH,

Kevin Spencer
Microsoft MVP
Ministry of Software Development
http://unclechutney.blogspot.com

Any experience you can walk away from
is a good one.

"clintonG" <cs*********@REMOVETHISTEXTmetromilwaukee.comwro te in message
news:%2****************@TK2MSFTNGP02.phx.gbl...
>You should do some reading about Agile Development. Agile is about as
real world as it gets.

<%= Clinton Gallagher
NET csgallagher AT metromilwaukee.com
URL http://clintongallagher.metromilwaukee.com/
MAP http://wikimapia.org/#y=43038073&x=-...8&z=17&l=0&m=h

"jm" <ne***********@gmail.comwrote in message
news:11**********************@b28g2000cwb.googleg roups.com...
>>or both? What is the "real world" like with respect to building
programs. Do you start out with a minimal idea, a skeleton and start
working? Do you have everything written out first and then just
translate that model to an application, using a progamming language?
Both? When do you know it is overkill?

Do you sit around, draw something on a table napkin, and then off you
go (a little silly, but could be true)? I would think some of it would
have to do with how large the project is, how many developers are
involved, and so on. I also guess that while the application overview
may be planned, the actually programming may be organic. By that last
one I simply mean that a developer may not really know how to design
functionality x, so they develop something and then use trial and
error.

I would be interested in any links someone may have that shows what a
real lifetime development cycle entails, if anyone has any
recommendations.

Thank you.



Nov 15 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

33
by: Joe | last post by:
I'm designing a company website. I'm relatively new to CSS and I'm having trouble creating what seems to me a very simple design: - body background: fixed full page image - banner: fixed, 100...
9
by: chris | last post by:
I've been scripting with python for a while now. Basically writing a few functions and running in the ipython shell. That's been very useful. But the more I do this the more I see that I'm doing...
10
by: BlueDolphin | last post by:
I'm not sure if this is a question or more of a rant... but I'm looking for some input on this from other developers out there. How often has the following happened to you and how have you dealt...
8
by: Stewart Allen | last post by:
Hi Just asking for ideas on table design. The design I have is as follows: *tblBuildData* BuildID (PK) AutoNumber ManufactureDate SerialNumber
1
by: Chua Wen Ching | last post by:
Hi there, I had a scenario here. I had many tonnes of C codes in my office. Each C codes are used in low level stuff. Like connecting to smart card readers or even the OS itself. I was being...
1
by: Andy Fish | last post by:
Hi, I am about to commence the design of what will turn out to be a fairly large asp.net web app, and I am looking for any good advice and resources (books, web pages) concerning how best to...
18
by: john | last post by:
I have 3 tables: Message, Workgroup, and Hyperlink. Message has 1xM link with Hyperlink and Workgroup has 1xM link with Hyperlink. Hyperlink has the following fields: IDhyperlink* IDmessage...
6
by: JoeC | last post by:
I have a question about designing objects and programming. What is the best way to design objects? Create objects debug them and later if you need some new features just use inhereitance. Often...
13
by: Rafe | last post by:
Hi, I am in a situation where I feel I am being forced to abandon a clean module structure in favor of a large single module. If anyone can save my sanity here I would be forever grateful. My...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.