On my first post I wrote about what software development was, if it was an art or a discipline. Now, I’ll tell you about software life cycle and that is somewhat similar with art. Just like art, you don’t create something without preparing, you need to follow several things before creating software.
The first step is gathering and analysis of what is needed to solve a problem, it seems literally weird because software is born from coding but if compare it with art, it will make sense. For example, an artist must to be inspired before creating something, a picture, a sculpture, music, etc.; and the feelings he wanted to share will determine the final product. The software engineer need, just like an artist use inspiration, information about the problem that will determine the software itself.
The second step is design; after knowing what you have to solve, you need too know how it’s going to look, you can start coding without design but the software will be such a mess and it will be difficult to find errors. If we compare it with a painter, design will be like the sketch which is made before painting the picture.
The next step is what I like the most, coding. This longest phase of the software life circle, is the step where software is created. After this, testing is needed to ensure the function of the program and to make sure that it can solve the problem. (on this step I couldn’t find something similar to art).
The product is then deployed to the customer for their use. They do the beta testing to find out if there is a bug of if it needs some changes. After fixing those small problems the final deployment take place.
The last step is maintenance, this where new problems comes up and it needs to be solved, you want your software to still be useful for your clients, so you update it and make it look better. This phase is much like the restoration and conservation of plastic arts.