So the other two questions… what is Mastery01 and what is this post about?Mastery01 is the first topic of the course TC2004, which is Software lifecycle and this POST is about Mastery01 (what a plot!).If you are still here, reading this post, you are kind of interested aren’t you ? Kind of? Just a little bit? No?Doesn’t really matter, I have to write it anyway… Sooo let’s get started.

Wait, Wait, Wait… before I start with the theory, I want to offer you some music because I like to listen to calm music while I read, write or learn. So if you want to, just click on „music“. But seriously now! Let’s get started.

To talk about Software lifecycle, we have to understand what a Software lifecycle is.A Software lifecycle describes all activities in a software development project from the beginning to the end, which is called End of Life (EoL). Sounds kind of sad right? EoL is the last phase in a Software lifecycle, but not the only one. There are different lifecycle models with different phases, which I will talk about later. But the basic phases are :Requirements Gathering and Analysis-where fundamental decisions regarding the basic project are madeDefining Requirements -document and product requirements are defined and approved by the customer or market analysts (kind of obvious, especially the part „requirements are defined“)Designing the Product Architecture-designing the communication and data flow representation of the productDeveloping the Product-actual develop of the products starts and the programming beginsTesting-units are tested for any faults and failuresDeployment in the Market and Maintenance-once the product passed all tests, it can be released in the market-after releasing, the maintenance is done for the existing customer base.

Well, now you know the basic phases of a Software lifecycle, but how long is such a Software Lifecycle? The answer to that question, is one you won’t get often in life: „It depends“. Ha…ha… kind of. Some examples for Software lifecycles:MOCAS is a program used by the DCMA and was developed in 1958. It’s still in use and:

„The data this program is handling, is worth $1.2 trillion.“

-Pal Kienitz about MOCAS

The opposite of MOCAS is the EoL of Windows 98, which was officially in June 2006. As you can see, it really depends on aspects like the dependency of the users, competition, Software Development LifecycleModels and more. What are Software Development Lifecycle Models? I mean … I can’t just write it down and expect you to know it right? OK then, an other boring description for you!

Software Development LifecycleModels (SDLC) are different approaches in software development.There are many models, most of them have similarities like the basic phases. But they also have differences (I mean it would be the same model if not, right?). The activity order (order of the phases) and the duration of activity are different. The most popular SDLC Models are Waterfall Model, V-Model, Spiral Model, Iterative Model and Big Bang Model.

I will not explain every model I mentioned, because I don’t want to write this post for ever! If you find the description of the Waterfall model (following) interesting, feel free to read about the other models on this site.

Why did I show you a picture of a waterfall… well, I have two reasons for that. First one is that I thought that you would like a more colorful post (not true, it’s because I like it) and the second one is that the Waterfall Model and a real waterfall have more similarities than just the name.The Waterfall Model was the first process model to be introduced (just like in my post). Maybe because of that people tend to say that the Waterfall Model is dead. BUT, the good news is:

„What is dead may never die.“

-The Drowned God

Ok… Ok… you got me… I’m a GoT fan, but let’s focus on your education!The Waterfall Model has a linear sequential flow, which means that the next phase does not begin until the previous one is completed. That’s how a waterfall in real life works (I told you, it’s not only the name) right? The linear sequential flow is not the only similarity, it is also not possible to go back to an already completed phase. Imagine how a waterfall flows uphill. I mean, for a creative person (like you) or a pirate who wants to enter the Grand Line, it’s noo problemo, but in real life… not applicable.Do you remember my drivel about the phases? The following picture shows how the phases of the Waterfall Model are arranged:

So let’s talk about the advantages and disadvantages of the Waterfall Model. It’s simple to use and easy to understand. It’s easy to manage because of the phases, which are completed one at a time and clearly defined. The disadvantages are its poor application for complex and object-oriented projects, also ,it’s difficult to measure the progress within stages and there is no possibility to accommodate changing requirements.

If you have made it to this point, you are either a friend or family member of mine or you have just finished a Netflix series and don’t know what to do now. In both cases, thank you very much for sticking around.See you on my next post!-SolidSnake8