Jump to content
  • Advertisement
Sign in to follow this  
Sophic Delusion

Software Engineering for Independent Development

This topic is 4800 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, I'm currently beginning a very large (IMO) research project in moddable games as well as software engineering techniques and I was just curious as to what you all thought about software engineering for independent development. By independent development in this context I mean a very, very small team, possibly just one person (as my project currently is). I realize that some of the work involved in things such as automated builds, continuous integration, unit testing, etc. can be a lot of work if you'd like to focus on just the construction aspect of the project. To that end though, I've found all three of the things I just mentioned a tremendous help in even my smallest projects as of late. So I guess the main question I ask is, have those techniques or any others that would conventionally seem to apply only to 100k-lines projects, etc. with medium to larger development teams been applied by anyone out there at just a personal level? (And my main focus with that question would be on more complicated processes like continuous integration.) - Sophic Delusion

Share this post


Link to post
Share on other sites
Advertisement
Now that is an interesting question.

I can't say I have done any of the heavy SE stuff, but as one just starting in the topic( i.e - reading my first book on SE ) I have to say that the use of basic SE practices have helped me a great deal.

I thought the documents I was writing up were a chore at first, but when I got into the coding phase I had the familiar feeling of "I did a similar loop for the other menu...but I really don't want to trundle through that code again!". Lucky for me, I had writen a basic design of that code and so I had only to refer to that.

As a person on their lonesome writing a game I'd say you have alot of work to do with no else to back you up. Also, when the passion for the project fades, you feel like you can't be bothered to carry on, so from there you're on auto pilot following a flight plan. In which case you better have a damn good flight plan! ^_^

I think for a game like asteroids you can throw caution to the wind, but moving on to an RPG or FPS you've got to have a great plan to work from.

Share this post


Link to post
Share on other sites
Any good habits that you get into can only help you in the long run. The real balancing act when working on a solo project is to keep the excitement balanced with efficiency. It can be hard to keep yourself motivated on a solo project without having tangible results that you can really see so unit tests or documentation can fall along the wayside. I think everyone has to find their level of good practices they can keep up without losing their self motivation.

If you have no problem with self motivation then I highly suggest having clean and robust processes like unit tests, using a documenting markup language for your source (like Doxygen), a source control system, etc. I've found that they really do help in getting more work done in a professional AAA level environment and in a solo environment. Just don't get so caught up on implementing your cool automated build system with BVTs that you never get around to writing the code they gets built.

Share this post


Link to post
Share on other sites
Well I dunno what it is with me... I guess you could call it a fetish. But generating pretty documentation for my code and writing lots of unit tests, as well as fooling around with CruiseControl.NET and NAnt for hours on end to get the configurations working actually constitutes a level of excitement for me comparable to the same that I get working on the actual game code :) Perhaps I'm just odd that way :)

Share this post


Link to post
Share on other sites
The thing is, unless you happen to be particularly gifted and writing well designed, flexible, bug free code on your first attempt with no planning, those software engineering techniques are going to help because that's what they're designed to do. For a simple little project you can get away without it because there isn't enough code for real issues to appear, and it's easy to keep track of and debug your code as needed. But when you're simple project turns out bigger than you thought, those things come back to bite you.

tj963

Share this post


Link to post
Share on other sites
Re: Tj963.

"But when you're simple project turns out bigger than you thought, those things come back to bite you"

Amen to that!

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!