Click here to Skip to main content
15,922,533 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: C# WCF Dead or alive? Pin
rhyous25-Apr-16 4:59
rhyous25-Apr-16 4:59 
GeneralRe: C# WCF Dead or alive? Pin
pkfox21-Apr-16 10:57
professionalpkfox21-Apr-16 10:57 
AnswerRe: C# WCF Dead or alive? Pin
Gerry Schmitz21-Apr-16 6:59
mveGerry Schmitz21-Apr-16 6:59 
AnswerRe: C# WCF Dead or alive? Pin
Shopko21-Apr-16 12:50
Shopko21-Apr-16 12:50 
GeneralGreenfield Software Design Pin
kdmote20-Apr-16 8:26
kdmote20-Apr-16 8:26 
GeneralRe: Greenfield Software Design PinPopular
GuyThiebaut20-Apr-16 8:46
professionalGuyThiebaut20-Apr-16 8:46 
GeneralRe: Greenfield Software Design Pin
Maximilien20-Apr-16 9:16
Maximilien20-Apr-16 9:16 
GeneralRe: Greenfield Software Design Pin
Scott Serl20-Apr-16 9:28
Scott Serl20-Apr-16 9:28 
I don't have any book recommendations, but I have done this kind of development many times in my 25+ year career. My degree is in chemistry, and I have worked on scientific software in the past.

I start by collecting a list of "stuff the software needs to do". It is a high level list of what the scientist wants the software to do, such as "document some stuff", "read data from instruments", "perform calculations", "output reports". Explore each of these areas with the scientist to get more detail. Try to get an idea for the type of data you will need to handle in each "stuff the software needs to do" (network data, document data, key/value pair data, or maybe just regular old rdbms data). Now that you have a better idea about what needs to be done and what kind of data you will be handling, try to imagine the types of software best suited for each of the things (web ui/ mobile app/ databases/ services).

You should start imagining how the different pieces will interact with each other, and deciding on an architecture for ui/data/services. There may be many different pieces, and each of them may use different tools (db, ui, services). Try to split out reusable parts into services so you can use them from web, desktop, or mobile clients; you can always run the services locally if you end up with a desktop-only system.

Now as you start, keep things as simple as possible; do not introduce ANY unneeded complexity (especially imagined future complexity). If you include complexity early, design changes will be MUCH more difficult as you continue, but if you keep it simple as you go, it will be easy to modify as you discover new necessary features. Simplicity goes for the data as well; do not introduce some large db framework early, but wait until as late as possible. For example, with .Net, linq2sql is simple and flexible for fast progress. You may need to change to Entity Framework later, but it is much easier to update data structures in linq2sql than in Entity Framework (which has some issues with the update process). This will keep progress moving forward without drag from tool issues as changes will be happening very quickly in the early stages.

As you continue, you will be able to refine your ideas about the amount of work involved, the time it will take to complete, and start setting milestones for continued development.
GeneralRe: Greenfield Software Design Pin
kdmote20-Apr-16 10:18
kdmote20-Apr-16 10:18 
GeneralRe: Greenfield Software Design Pin
Eddy Vluggen20-Apr-16 10:14
professionalEddy Vluggen20-Apr-16 10:14 
GeneralRe: Greenfield Software Design - Here's the book Pin
raddevus20-Apr-16 11:18
mvaraddevus20-Apr-16 11:18 
GeneralRe: Greenfield Software Design - Here's the book Pin
kdmote20-Apr-16 13:11
kdmote20-Apr-16 13:11 
GeneralRe: Greenfield Software Design - Here's the book Pin
raddevus20-Apr-16 13:28
mvaraddevus20-Apr-16 13:28 
GeneralRe: Greenfield Software Design - Here's the book Pin
Mycroft Holmes20-Apr-16 14:57
professionalMycroft Holmes20-Apr-16 14:57 
GeneralWelcome to Duckietown Pin
JoeSox20-Apr-16 8:15
JoeSox20-Apr-16 8:15 
GeneralRe: Welcome to Duckietown Pin
908236520-Apr-16 9:02
908236520-Apr-16 9:02 
GeneralRe: Welcome to Duckietown Pin
JoeSox20-Apr-16 9:03
JoeSox20-Apr-16 9:03 
NewsRIP Victoria Wood - dies aged 62 Pin
Nagy Vilmos20-Apr-16 5:52
professionalNagy Vilmos20-Apr-16 5:52 
GeneralRe: RIP Victoria Wood - dies aged 62 Pin
User 842020-Apr-16 5:55
User 842020-Apr-16 5:55 
GeneralRe: RIP Victoria Wood - dies aged 62 PinPopular
Nagy Vilmos20-Apr-16 5:59
professionalNagy Vilmos20-Apr-16 5:59 
GeneralRe: RIP Victoria Wood - dies aged 62 Pin
Mike Hankey20-Apr-16 7:47
mveMike Hankey20-Apr-16 7:47 
GeneralRe: RIP Victoria Wood - dies aged 62 Pin
Richard Deeming20-Apr-16 8:04
mveRichard Deeming20-Apr-16 8:04 
GeneralRe: RIP Victoria Wood - dies aged 62 Pin
R. Giskard Reventlov20-Apr-16 6:11
R. Giskard Reventlov20-Apr-16 6:11 
GeneralThought of the day PinPopular
OriginalGriff20-Apr-16 4:56
mveOriginalGriff20-Apr-16 4:56 
GeneralRe: Thought of the day Pin
Johnny J.20-Apr-16 4:59
professionalJohnny J.20-Apr-16 4:59 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.