Creating and Using a Software Factory

How to Automate Your Programs and Make Your Coding Easier

RH
When it comes to creating a program, there are several different obstacles and problems that can come about. These problems are just the nature of the beast. Whether it is a simple typo, or confusion among the team members, errors, extended deadlines, and exceeding budgets seem to be the biggest problems. Some of these risks and problems can be minimized with a simple addition of a software factory. This is a lot simpler than it sounds and can be created in house very easily. You can even set up a database or excel file that can monitor and sort this system for a much easier and faster solution.

The first thing that you need to understand is what a "Software Factory" is. All this really consists of is a way to store previously created classes and functions. There are some software factories that can automatically call up these functions and implement them for you. These can also cost you thousands. You can easily make a system of your own that will do the same thing.

There are several things that you can do to create your own software factory and vastly improve your productivity. Whether you are a major corporation or just a hobbyist, you can benefit greatly from this set up. The first thing to do is keep your variables generic. Instead of some encrypted and super long and confusing variable, try to stick to some more generic variables. A simple label like strName, or bolTrueFalse, are much more preferable to some series of numbers and random digits for each variable. This will also be the best way to cut down on a lot of the errors and bugs that arise. Making things as simple as possible can end confusion and cut down on typos. This will also allow you to keep things simple and offers the ability to re-use the code in other programs.

To implement a software factory, you want to keep each function of the program as a separate class. This may be a little extra work in the beginning, but it can save you hours later and a lot of headaches as well. You can also create some small functions and processes in your down time that may save you a few steps later. By keeping all of these functions simple and small, you will be able to piece them together so that you can create a full program based on proven and excessively debugged code in a matter of hours.

The biggest key to this whole setup is having a documented file that explains which function does what. This file can be a complex database system with several cross check functions and queries and reports and all the bells and whistles. You can also have a simple excel worksheet that contains the name of the function, a brief description, variables passed and variables returned, and possibly a short list of programs that have used it to refresh your memory on what it does. Anything that will help you remember the details of the function can be helpful. This will allow you to easily cross reference and find the right ones for the project you are working on.

If you store all of these in the same folder, it is a manual software factory. While you could spend thousands on a third party system, it is still the same thing. All this consists of is a recycling center of old code. This old code can be improved or upgraded as necessary, but it is a solid and proven function with no bugs and typos remaining. Once you get your software factory up to speed and filled with a vast library of functions, a full program would take hours or even just days to piece together and package for your clients. It would be a matter of finding the right functions and piecing them together in one platform. You can then debug, compile, package and send it out.

By incorporating this age old open source method, you can save yourself or your business several months of work and compiling. People all over the world are seeing the benefits of recycling, why can we not use it in the world of coding. This will also give you much more time to find better practices and improve the current projects that you have. By eliminating the need to reinvent the wheel on each project, you can dedicate your time to finding the next cutting edge methods or processes. These software factories can also be shared between several partner companies so that everyone can benefit from them. If you are partnered with other hobbyists or companies, you can easily share some tried and tested methods with each other and make everyone's job easier and faster. The faster we can produce end user programs, the sooner we can make some cool breakthroughs and advances.

Published by RH

View profile

To comment, please sign in to your Yahoo! account, or sign up for a new account.