Understanding Program Development Cycle
A look into the steps involved in building a program from concept to maintenance
What do you do when someone asks you to build a program for them? What do you do when you sit down in front of a blank code editor thinking of how to begin? Do you get scared and close the editor after staring for 30mins and wondering why you became a developer in the first place 😂. Well, I hope not. In this post, we'll look at the program development cycle and how it can help you plan and write programs without getting overwhelmed😉
What Is The Program Development Cycle In The First Place?🤷♂️
Well, it is a series of helpful steps towards building a program over time. The cycle usually varies in the number of steps involved but usually has a general idea. These steps can be summarised into six:
- Understand the problem
- Plan the logic
- Write the code
- Test the code
- Publish the program
- Maintenance
1. Understanding The Problem
To be able to write any program on the planet, the first thing you need to ask yourself is, "What is the purpose of the program?". This question helps you understand the end goal. This is important for the obvious reason that there's no way you can write a good workable program if you don't even fully understand what the program is supposed to do.
Let's look at an example. Consider we are asked to write a program to find the maximum of two numbers. To anyone familiar with programming, this might seem like a very simple task. However, the example might be more complex depending on who we're working for. An experienced programmer who wants to clearly understand the purpose of the program might ask, "What happens in the case of equal numbers?", "Do we consider only positive integers?", "How do we output the result?". All these questions are such that the programmer understands clearly what the employer wants and delivers as required.
2. Planning The Logic
This is a very crucial stage in the cycle. After understanding the problem, some of you might think, now it's time to get to your code editor and start bashing away on your keyboard. Wait! hold one a second, are you sure you know what to write once you get to the code editor?🤔 This is why planning the logic is important. This is where you determine what variables, statements, or functions you need for your program. Some people use whiteboards or the famous pen and paper for this step. Getting the logic for your code right makes it way easier to get into the next step.
3. Writing The Code
Finally, what you all have been waiting for. Now it's time to hammer away😊. The difference now is that, since you understand what you're building and you have planned the flow of your program, you know exactly what you need to write in your code editor. So this time you're not scared of your editor and you can write your code with confidence
4. Testing The Code
This is probably an obvious step because there's no way you are putting a program out there when you're not even sure it works. The easiest way of testing is called manual testing. This is when you run the code yourself and work with it to make sure it does what you expect. However, with the advancement of technology, automated testing is now a thing. Automated tests are code tests you write for your program which will automatically test your program for you so that you save time from repeatedly performing the same actions. Some people don't find automated testing necessary but for large programs with complex logic, having automated tests can save a lot of debugging headaches and testing time.
5. Publishing The Program
Now it's time to let the world see what you've been working on. That's probably why you wrote the program right? To solve a problem in the world. There are different ways of publishing depending on what kind of program you're writing. For website/web apps, they just need to be hosted on a web hosting service to be available on the internet. For mobile apps, they are posted on App stores depending on the OS the program is made for. Time to go party on finishing the job? Nope not yet😁
6. Maintaining The Program And Codebase
It is common that after publishing (deploying) your program, there might be some bugs/issues that may occur. Maintenance is about finding these issues and repeating steps 1 to 5 in order to fix these issues. This is the program development cycle that goes on as long as the program exists.
So there you have it. Thanks so much for reading. I hope this article gave you insight on how programs are built. This is the first article in a series of upcoming articles on Building and designing the logic for your programs. If that interests you, definitely stick around for future articles, you can follow me on twitter to get notified everytime I post an article. Time to get out of your way, see you on the next one!😉