1. COMPSCI5059 Software Engineering
Answer:
Introduction
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.
Discussion On The Project
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
2. "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
Planning
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
Requirement's Analysis
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 Requirement
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
3. User must be able to manage the reserved tour
The user must complete the payment procedure to complete the reservation
Required Documentation
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).
Design
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.
Use Case Diagram
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 Stories
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:
4. 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.
Prototype Design
Reservation Page
Figure: Prototype Design of a Reservation Page
Source: Created by author
Development
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
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.
Impact Of The Internet
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
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.
Testing
5. 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.
Implementation
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.
Maintenance
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
6. 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.