Systems Design will naturally lead to another stage where it becomes closer to the actual deployment of the planned software. Since the design is already there, developers have an idea on how the software actually look like. All they need is to put them all together to realize the intended software.
It is also at this point that differences of SDLC models are noticed. Some treat system design as the actual creation of the software. Generally implementation of the software is considered as the actual creation of the software. Since system design stage usually suggest that the interface, data and actual output are created, the implementation stage brings them all together.
Once the three different types of designs are complete, it is time for the developers to put place them together. Although it has been tested while the designs were created, it is the final construction of the designs as they are combined by the project manager or the assigned developers.
From this point, developers have to stand with what they work for. In the previous stages, developers can freely make some changes in their software design plans simple because it is still in the designing phase. In this stage however, there is no going back as everybody’s effort will now be tested.
The project manager or the supervisor will take a responsible role during this stage since the project manager decides when to get them all together. In systems design, project managers oversee the project. Since they have practically seen everything about the project, they know when the correct time is to get them all together.
It is not all about getting them all together that is important. It is also the time during which developers have the first glimpse of their actual work making it a perfect moment for evaluation. During this time, developers become users as they try out the software to determine if it is up to their expected performance and output.
This stage becomes an important phase of the project since it will be the first time that bugs and errors in the system are determined. Of course everyone has been working on the plans and design for sometime and their familiarity guarantees they have created something as planned. However, bugs will always be there since each design is created by a different developer. Although each of them works independently, it is not guaranteed they are built to complement each other.
During this stage, different type of errors will be determined. It will gauge how far the team has advanced in building software. Since they are also responsible for building software, it is also proper that they have to fix these problems.
Even though it is not mentioned before, this stage will mark importance of documentation of the software. As the system is being developed, developers must document on what they have done in this stage. Once they are brought together, it becomes even more important since developers will know how their documentation will fare against other developers.
Documentation is very important especially in this stage as bugs are determined. Sometimes developers will even find out that certain expected functions are not working. Instead of scrutinizing the software all over again, developers will go back to the documentation and see which part of the program has gone wrong. Documentation will also give the developers a chance to re-evaluate the process they have created.
Uses of Implementation in Different Techniques
Each of the SDLC model has their own interpretation of the implementation stage. Depending on the SDLC model implementation will suggest the next stage of development.
Basically there are two general types of SDLC model in terms of implementation:
- Waterfall Model
- Iterative Model
Implementation in Waterfall Model
To understand the implementation stage in Waterfall Model, we need to have the basic understanding of the model first.
Waterfall model follows the traditional form of developing software. This is probably the first of the SDLC models that it only gained its name as a “waterfall model” when other SDLC models are created.
Waterfall model follows a simple flow of planning for the software, designing, implementation, testing and integrating to the business or consumer’s environment. From that workflow, you will understand how the waterfall model treats the implementation stage. Developers have to work real hard during this stage when they are following waterfall model since the next phase will be testing and eventual implementation. Since everything has been laid out, implementation should be easy.
The good thing about this model is that the documentation is easy. Developers can easily go back to the documentation in case something bad happens or a bug was found in the software. If developers has to follow the waterfall model of SDLC, they have to make sure that documentations should be complete otherwise they have to go back exactly where they have started and that is obviously in system design.
Waterfall model will require stronger documentation because of this account. One great advantage of this model is it could foster easier documentation since each stage is clearly laid out. That is why in SDLC model, developers will have more time concentrating in system design and implementation since they know they have to ensure everything will go through as planned. Going back and forth to documentation and system design is not the behavior of a waterfall model.
Implementation in Iterative Model
On the other hand, the iterative models of SDLC are different. The implementation stage in iterative models is less pressured compared to the waterfall model. Iterative model focuses on creating prototypes right from the start. That means there will always be implementation in the iterative model. However, these are just stages in development software.
The advantage of implementation in iterative models of SDLC is its ability to change easily. Developers often use this model to determine what they have done so far for the software. Most to the iterative models need the help of potential end users.
The good thing about this is that when the software is implemented it is guaranteed to work based on the preference of the users since they have helped in the creation of the software.
The bad thing about this model in implementation is it does not have a powerful documentation in the first place. Because there are so many changes that has happened in the software, developers will have to work on the documentation again. Usually developers prefer to change just the software rather than the documentation. With constant changes, the end product is effective yet its possible that it could be very fragile from bugs and other deficiency especially when they are found at the later stage.
Depending on the SDLC model, implementation becomes an important stage in knowing for the first time if the actual plan and system design works in the real environment. Implementation will always suggest that something might be wrong, users and developers has to exploit it extensively. Documentation will be highlighted for the first time since developers will have to refer to documentation not only for troubleshooting but also for future development and the next stages of SDLC.