Software Development Life Cycle
The emergence of several advanced and enhanced technologies has been benefited many businesses all around the world. Because of this, many businesses have adopted technology such as information systems to automate their entire business process and shift it from the traditional of handling the information to a complete digitalized way (Stair and Reynolds 2017). They are implementing information technology within the organization provided the capability to handle a huge amount of data and information very efficiently and easily. According to the author (Rainer and Prince 2021), the adoption of information technology removes the common challenge that almost every business faces: taking appropriate decisions for their business operation.
The term information system is referred to as the sociotechnical, formal, organizational system designed to distribute, store, process, and collect the information from various sources and keep it in a specific environment where it can be easily maintained monitored. From the sociotechnical point of view, the information system mainly consists of four main components: people, technology, stricture, and people. In this report, an information system will be suggested for the company named Global Adventures (GA) so that they can manage their buses rentals and tour guide and the reservations of the customers.
This report aims to discuss all the essential components of an information system required for implementing one of its types to assist the business of Global Adventures (GA). The report will be structured based on the software development life cycle (SDLC). The main discussion will focus on the faces planning, requirement’s analysis, design, development, testing, implementation, and maintenance. Lastly, with a conclusion, the report’s overall statement will be concluded.
In this section, the overall discussion about the project will be discussed where all the phases of SDLC will be considered to identify the requirement of the proposed information system for the company GA. Here, the suggested information system will be named “Reservation Management System” that will allow the company to manage the reservation of the customers for the tours and maintain the scheduling.
Figure: Six phases of System Development Life Cycle
The company GA faces many problems regarding maintaining the reservations of their tours by the customers and conflict during the reservation with their availability. These problems can be resolved by implementing a new information system that will help them change their annual process to a fully automated process. The new system “Reservation Management System” will have all the functions where the information about the customers and the availability of the buses and tour guide will be stored. Not only this, whenever the customer makes any reservation, their reservation details will also be stored to allow the company to check which bus and tour guide are involved in which reservation and what date and time. The anticipated cost and benefits are determined by a feasibility study of the proposed system such as:
- For the implementation of the system, need to form a project team and appoint a leader
- Need to develop the flowcharts for the system Reservation Management System
- Need to identify the proposed system’s deficiencies and set the goals
- Need to determine the feasibility of the solution system like operational and technical feasibility
- Need to weigh the cost-effectiveness and performance of the proposed system
In this section, the functional requirement of the system and the documentation required for analyzing the end-users needs will be discussed. Determining the functional requirement and appropriate documentation is essential to identify whether the RMS will meet all the customer’s requirements and need (Sharma 2017).
Functional Requirements
A functional requirement (FR) is the type of description regarding the services that the proposed system must offer. It describes the system of the software or its entire components. The functional requirement can be data manipulation, calculation, user interaction, business process, or any other functionality that defines the system’s functions it will perform (Arbain et al. 2020). Below, the FR of the proposed system RMS has been addressed:
- Users need to login into the system first to make any reservation
- Users must check the available buses for scheduling their tour
- The system must generate an invoice for the user after the completion of the reservation
- User must be able to manage the reserved tour
- The user must complete the payment procedure to complete the reservation
In order to meet the requirements of the end-user, the most appropriate documentation required is the User Requirement Document (URD) that will help to specify the user’s expectation that they must have from the proposed system RMS, which they will use once it’s being implemented. It is utilized as the guide for planning the cost, milestones, timetables, and so on (Ong and Ameedeen 2020).
In this section, the appropriate design has been discussed that will help to present the general idea of the use of the system RMS (Akinsola et al. 2020). Here, a use case diagram for every actor has been shown to present how the users (actors) interact with Reservation Management System. After that, user stories will be provided that will show the operations involved with the proposed system performed by the users.
For Customer
Figure: Use Case Diagram for Customer
Source: Created by author
For Receptionist
Figure: Use Case Diagram for Receptionist
Source: Created by author
For Accountant
Figure: Use Case Diagram for Accountant
Source: Created by author
User Story #1:
- As a customer, I want to make a reservation for my tour so that I can travel by bus
- As a customer, I want to choose a payment mode for confirming my reservation so that I can complete the payment procedure.
User Story #2:
- As a receptionist, I want to take the call from the customer so that I can make the reservation for them.
- As a receptionist, I want to confirm the reservation so that the customer can get their confirmation invoice.
User Story #3:
- As an accountant, I want to approve the customer’s payment so that they can get their reservation confirmation.
Reservation Page
Figure: Prototype Design of a Reservation Page
Source: Created by author
In this section, the development path of the proposed system RMS has been discussed, which will help start the system’s production by considering the three key topics: software outsourcing, the impact of the internet, and in-house software development.
Software outsourcing means taking a custom software solution from a third-party company that they have developed. If the company outsource the software from outside, then there are various benefits that it will bring, such as improved efficiency, cost reduction, enhanced security, and mitigated risk (Gupta 2022). But implementing the software in-house will allow them to build their software based on their business need.
The information system that will be developed depends on the internet as it requires a continuous online process of information from different sources. Appropriate and stable internet will make the developed software work smoothly.
In-house software development requires the involvement of the overall skills of the internal team in order to create the software (Tarhini, Yunis and El-Kassar 2018). Here, in-house software development seems to be appropriate as the company would be able to develop its own system focusing on the needs of the business.
The testing phase of SDLC (Software Development Life Cycle) is where an individual focuses on discovery and investigation. During this phase, the designed system will be tested in order to check whether the design meets all the business requirements or not (Sethi 2017). Here, in order to test the designed system, the most appropriate testing technique will be creating the test cases. A test case helps to measure the system’s functionality over the set of conditions and actions to verify the expected outcome and ensure it must meet the business goals.
The proposed will be implemented by creating the front-end and back-end parts for it, whereas, for the front-end, some applications will be used in order to design the system. Whereas a database tool will be used for the back-end part where all the information provided to the front-end part gets stored. Three users will use this system: customer, accountant, and receptionist.
The maintenance phase occurs when the entire system gets developed and fully operational. The maintenance of the software incorporates the software repairs, fixes, and upgrades of the software if it breaks anyhow (Umudova 2019). The importance of this phase is that, here, all the defects and errors of the system which may exist would get repaired. In SDLC, the maintenance phase is very vital as it ensures that the end-system must not have any errors or defects when it gets used by the end-user.
Conclusion
By implementing this information system named Reservation Management System, the company Global Adventure (GA) would benefit from it as it will boost their business operation. As of now, the company is using their manual process, which seems to be very inappropriate, but after using this system, all the possible drawbacks will mitigate. Here, the most preferred solution is in-house software where the company can get all the functionality whatever their business seeks. So, I concluded that all the above statements are true and beneficial for the company GA.
References
Akinsola, J.E., Ogunbanwo, A.S., Okesola, O.J., Odun-Ayo, I.J., Ayegbusi, F.D. and Adebiyi, A.A., 2020, July. Comparative analysis of software development life cycle models (SDLC). In Computer Science On-line Conference (pp. 310-322). Springer, Cham.
Arbain, A.F., Jawawi, D.N.A., Kadir, W.M.N.B.W. and Ghani, I., 2020. Case study on non-functional requirement change impact traceability for Agile software development. International Journal on Advanced Science, Engineering and Information Technology, (1), pp.34-40.
Gupta, R.S., 2022. Knowledge management and quality control in software outsourcing projects. In Research Anthology on Agile Software, Software Development, and Testing (pp. 1484-1510). IGI Global.
Ong, M.I.U. and Ameedeen, M.A., 2020, February. User Requirement Validation: Challenge Exploration in Pre-project Execution. In IOP Conference Series: Materials Science and Engineering (Vol. 769, No. 1, p. 012050). IOP Publishing.
Rainer, R.K. and Prince, B., 2021. Introduction to information systems. John Wiley & Sons.
Sethi, A., 2017. A Review Paper On Levels, Types& Techniques In Software Testing. International Journal of Advanced Research In Computer Science, 8(7).
Sharma, M.K., 2017. A study of SDLC to develop well engineered software. International Journal of Advanced Research in Computer Science, 8(3).
Stair, R. and Reynolds, G., 2017. Fundamentals of information systems. Cengage Learning.
Tarhini, A., Yunis, M. and El-Kassar, A.N., 2018. Innovative sustainable methodology for managing in-house software development in SMEs. Benchmarking: An International Journal.
Umudova, S., 2019. Analysis of software maintenance phases. Noble International Journal of Scientific Research, 3(6), pp.62-66.