File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Agile and Other Processes and the fly likes Process recommendations for a solo developer working from home Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » Agile and Other Processes
Bookmark "Process recommendations for a solo developer working from home" Watch "Process recommendations for a solo developer working from home" New topic

Process recommendations for a solo developer working from home

Jared Sprague

Joined: Jun 16, 2004
Posts: 16
I'm starting a medium sized project of reimplementing my coldFusion store using only java frameworks. My store is:
I'm trying to select a development process that will work well for a solo developer working from home during the evenings and weekends. I may not even need a process for this kind of thing, but it would be nice to have a structured approch for analysis, design, development, testing, deployment, etc.. So my question is does anyone have any suggestions of a process that would be a good fit for a solo developer with no interaction between teams, or have any ideas of how to adapt an existing process to fit my needs? What if any process do you use when you work on solo projects from home?
I'd love to hear any ideas.

Jared Sprague

[ August 05, 2004: Message edited by: Jared Sprague ]

[ August 05, 2004: Message edited by: Jared Sprague ]
[ August 05, 2004: Message edited by: Jared Sprague ]
Lasse Koskela

Joined: Jan 23, 2002
Posts: 11962
You might want to consider starting by writing automated tests against the existing application -- something that navigates your store over HTTP and verifies that things work as expected -- and then start to migrate functionality piece-by-piece over to Java, or just build the Java version of the application next to the old one and use your test script to guide you through missing features. That way, you make sure that what worked in the ColdFusion version, works in the Java version as well.

Assuming you are your own customer for the project, I suspect you don't really need a "process" as much as you need a smart set of practices. My stab at a list you might benefit from would be:
1) Write automated tests
2) Have a continuous integration system run all your tests all the time, while you're focused on a specific task and run only those few tests while developing
3) Take small steps and refactor often

Author of Test Driven (2007) and Effective Unit Testing (2013) [Blog] [HowToAskQuestionsOnJavaRanch]
Stan James
(instanceof Sidekick)
Ranch Hand

Joined: Jan 29, 2003
Posts: 8791
I like those ideas. I'd add frequent backups and/or a real version control system. Test first is the coolest new idea I've run into in a long time. It's darned hard to get used to but really pays off. And in addition to being a nice coding technique, it has the most wonderful influence on design.

A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
Ilja Preuss

Joined: Jul 11, 2001
Posts: 14112
I fully agree with Stan and Lasse.

Damn sure I would use a version control system, most likely subversion; and I would commit often, up to every couple of minutes.

I would also go with test-driven-development. For a small project I wouldn't even care about manually running the tests any longer:

I would also be rather draconic about implementing features in order of value - that is, split features into parts of more and less importance and defer the latter part until late in the project (when you know how much time is left).

The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
Consider Paul's rocket mass heater.
subject: Process recommendations for a solo developer working from home
It's not a secret anymore!