Order from us for quality, customized work in due time of your choice.
The main purpose of the SDLC is to develop systems at a lower price with improved quality and the least amount of production time. Proper planning can help achieve these goals by addressing the constraints, conflicting goals of stakeholders, and risks in a software development project. One of the biggest challenges students face when they decide to study abroad is how to manage their expenses. Studying abroad is expensive, and while students weigh deciding to study abroad, they must also consider many factors such as job opportunities, the cost of living, etc. As a lot of this information is not easily available on the internet we decided to build a system that will allow the potential international student to research more extensively all living costs before selecting a university. The main idea of building a system is to help international students get more information about the universities, expenses, job opportunities as well as additional information that they can access at a single stop. There are different stages to a software development life cycle and adhering to each step will ensure that the system works efficiently. We discussed different SDLC methods to solve our business problem such as the Agile Model, Waterfall Model, Iterative Model, etc. For our needs, we felt that the Iterative model would be the most ideal.
There is information available on more than 8000 universities approved by SEVP. This means that there is a huge amount of data to process. As a result, the data will be uploaded in chunks. In each iteration, details on each of the 20 universities will be added to the system. As there will be a wide variety of options in the systems portal which will help students calculate the expenses and make informed decisions, managing smaller iterations will be much easier. The requirements will be constantly changing due to an increase or decrease in university tuition fees, changes in the list of job opportunities, etc. For such scenarios, the system needs to be flexible and this is one of the advantages of the iterative model. As the system grows in size, we will be developing and constantly improving it step by step. However, the previous iteration will be still accessible, so any changes to those iterations can also be made if required. We also considered using the Agile model as it is the combination of both iterative models and incremental process models however, it requires continuous customer interaction. In our case, this will not work as the end-users are students who will be clueless about the expenses in the universities and if the requirements are not clear the development might be driven in the wrong direction. Additionally, Agile methodology requires an agile leader and agile project manager that is highly involved in the process which adds to the overhead expense of developing the system. The traditional waterfall model will also not align with our project as the requirements will be constantly changing and the length of the project is long as well. Rapid Application Development was also briefly discussed, however, using it will give the customer a part of the portal developed. They could then review this and give feedback on it, but the model will fail as identifying the business requirements in such a short time will be very difficult and would require highly skilled developers and designers which will increase the overall cost of the project. After carefully considering different SDLC methods we felt that the iterative model would best fit our system. For any system to work to its complete potential understanding the basic requirements is very important.
We have chosen the iterative model because we do not have to know the complete specification of requirements. Hence, we can start the development process with publication information of the top 20 universities which will be reviewed and identify further requirements based on this. Although there might be issues faced concerning system architecture as not all the requirements are gathered before starting the software development lifecycle, this challenge could be overcome by accessing the previous iteration or by releasing a new version of the software. There might be cases where the requirements will change during the software development phase, but the iterative model is highly flexible and is less costly to incorporate those changes. The iterative lifecycle model is repeatable and thus during every lifecycle, a new version of the software will be generated as each university will have its own rules. Universities having similar rules will be identified and an iteration for this will be released. One of the major advantages of using an iterative model is that the requirements will be validated rigorously for each iteration and it can be verified with previous verifications of the software. As the system will be released for 20 universities per iteration it is much easier to test and validate the information of 20 universities rather than 8000 universities at a time. When handling a smaller iteration, the risky portions can be easily identified and addressed immediately. After carefully considering different software development lifecycle models we believe that the pros outweigh the cons, and this is the right approach to move forward to solve this problem.
Order from us for quality, customized work in due time of your choice.