Download as pdf or txt
Download as pdf or txt
You are on page 1of 63

GROUP ASSIGNMENT

TECHNOLOGY PARK MALAYSIA

CT046-3-2-SDM

SYSTEM DEVELOPMENT METHODOLODY

APU2F2008CS-CS(CYB)

HAND OUT DATE: 03 SEPTEMBER 2020

HAND IN DATE: 4 DECEMBER 2020

WEIGHTAGE: 40%

INSTRUCTIONS TO CANDIDATES:
1. Submit your assignment online via the submission folder provided on Webspace
2. Students are advised to underpin their answers with the use of references (cited using
the Harvard Name System of Referencing)
3. Late submission will be awarded zero (0) unless Extenuating Circumstances (EC) are
upheld
4. Cases of plagiarism will be penalized
5. The assignment should be bound in an appropriate style (comb bound or stapled).
6. Where the assignment should be submitted in both hardcopy and softcopy, the softcopy
of the written assignment and source code (where appropriate) should be on a CD in an
envelope / CD cover and attached to the hardcopy
GROUP ASSIGNMENT
TECHNOLOGY PARK MALAYSIA

CT046-3-2-SDM

SYSTEM DEVELOPMENT METHODOLODY

APU2F2008CS-CS(CYB)

HAND OUT DATE: 03 SEPTEMBER 2020

HAND IN DATE: 4 DECEMBER 2020

WEIGHTAGE: 40%

Group Member:
ALEX NGU KIAN HUI TP050378
LEE KIT HIN TP050268
OOI YEE HAN TP051067
QUEK WENG HANG TP050597
YAU ZHI MING TP051145
Table of Contents
1. Diagram Design of MammaSend System ....................................................................... 3
1.1. Context Diagram (ALEX NGU KIAN HUI TP050378) ........................................ 3
1.2. Business Flow Diagram (LEE KIT HIN TP050268) .............................................. 4
1.3. Use Case Diagram (OOI YEE HAN TP051067)..................................................... 5
1.4. Entity Relationship Diagram (QUEK WENG HANG TP051145) ....................... 6
1.5. Storyboard Design (YAU ZHI MING TP051145).................................................. 7
1.5.1. Pages for All Users ............................................................................................. 7
1.5.2. Pages for Admin Users .................................................................................... 11
1.5.3. Pages for Driver Users ..................................................................................... 16
1.5.4. Pages for Parent Users..................................................................................... 20
2. Implementation and Deployment .................................................................................. 23
2.1. Construction ............................................................................................................ 23
2.1.1. MERN Stack ..................................................................................................... 23
2.1.2. MongoDB .......................................................................................................... 23
2.1.3. Express JS ......................................................................................................... 24
2.1.4. React JS............................................................................................................. 24
2.1.5. Node JS ............................................................................................................. 24
2.2. Prototype of MammaSend System (Construction) .............................................. 25
2.2.1. Pages for All User............................................................................................. 25
2.2.2. Pages for Admin User ...................................................................................... 29
2.2.3. Pages for Driver User ...................................................................................... 34
2.2.4. Pages for Parent User ...................................................................................... 38
2.3. Testing for MammaSend System ........................................................................... 41
2.3.1. Method 1: Unit Testing .................................................................................... 41
2.3.2. Method 2: User Acceptance Testing ............................................................... 49
2.4. System Deployment ................................................................................................. 56
2.4.1. Proposing a System Deployment Plan ........................................................... 56
2.4.2. System Change-Over Methods ....................................................................... 58
3. References........................................................................................................................ 60

1|Page
ASIA PACIFIC UNIVERSITY
CT046-3-2 SDM – SYSTEM DEVELOPMENT METHODS
Student Coursework Workload Matrix
INTAKE : UC2F2008, APU2F2008
QUEK
STUDENT ALEX NGU OOI YEE YAU ZHI
LEE KIT HIN WENG
NAME KIAN HUI HAN MING
HANG
PROJECT TITLE : MamaSend
TP NO. TP050378 TP050268 TP051067 TP050597 TP051145

Contribution Contribution Contribution Contribution Contribution


Group Component Total
% % % % %
Implementation and Deployment 20% 20% 20% 20% 20% 100%

* Fill up the yellow portion, the sum of all students' contribution for each component must be 100%
* Ignore the last column if your group has only 4 students
* Individual component not included here as marks will be awarded individually

2|Page
1. Diagram Design of MammaSend System
1.1. Context Diagram (ALEX NGU KIAN HUI TP050378)

Figure 1.1.1: Context diagram of MammaSend Ride Service system

According to (DdrawMax, 2020), a context diagram is a tool that is used to understand the
information and the boundaries of the system in more detail. This diagram was able to show
the relationship between the system and the external components. This is the most important
reason why I choose to use a context diagram. In Extreme Programming (XP) methodology,
there are many meetings conducted in every sprint. Context Diagram is a modelling technique
that helps the project management team to classify all the features that should include for
different users. This modelling technique also allows all members of the team to understand
the features of the system and ensure the system is done in meeting the demanded requirements.

3|Page
1.2. Business Flow Diagram (LEE KIT HIN TP050268)

Figure 1.2.1: Business flow diagram of MammaSend Ride Service system

I Chose to use a business flow diagram to represent the methodology that we have chosen XP
programming is because of some key points. A business process diagram is a blueprint for the
activities regarding the business. We can have greater visibility of the methodology with the
use of this diagram. For example, we can have a better sight of the process and its function as
everything is visualized on the diagram like how the MammaSend system works and its process.
Besides that, the transparency provided can allow the developer and the client to have a better
understanding of how everything works so that things would not get off track. Therefore, we
can achieve better productivity. The use of this diagram can allow us to visualize the
functionality of a process under different circumstances so that adjustments can be made to
achieve the best result. For instance, for some of the functions in the MammaSend system, this
diagram allows us to spot flaws of the process stages, that is why choosing a business flow
diagram is no doubt suitable for the methodology that we have chosen (BPM, 2019).

4|Page
1.3. Use Case Diagram (OOI YEE HAN TP051067)

Figure 1.3.1: Use Case Diagram of MammaSend Ride Sharing Service system

Use Case Diagram is chosen to be diagram used to define the relationship between end users
and between the system, but it does not show how they achieve the relationship. For instance,
use case shows how does users interact with each other or with the system, but it does not show
the steps in which they need to achieve in order for the relationship to form (Visual Paradigm,
n.d.). We decided to design a use case diagram for MammaSend Ride Sharing Service in the
early stage of development as it serves well in helping us design a system from the perspective
of end user. Therefore, it helps us to capture the requirements of the system easier which is
important in the early stage where requirements are unclear by Nancy and her friends. The use
case diagram for the new MammaSend Ride Sharing Service system is shown as figure above.

5|Page
1.4. Entity Relationship Diagram (QUEK WENG HANG TP051145)

Figure 1.4.1 Entity relationship diagram of MammaSend Ride Service system

The four of us are required to choose one modelling technique and it must be different from
one and another, I would like to choose ERD data modelling. What is ERD? ERD is a technique
to construct a graphical figure that represents the relationship between entities for a database,
it also shows the attributes of the entity (uregina, 2017). Nancy wanted to build a system, and
after we have concluded that Extremely Programming (XP) methodology is to apply in this
project, the ERD data modelling technique comes first in my mind. The reason is that
Extremely Programming is a platform that provides several features and allows to have good
communication between the development team Nancy as her friends. As Nancy proposed the
duration of developing the project only has 3 to 4 months, ERD can easily be converted into a
logical database structure. ERD is easy to understand and it does not require people to undergo
extensive training, therefore, the development team will be able to communicate with Nancy
and her friends in a way of simplicity. This will greatly enhance their work efficiency and
effectiveness throughout the development and able to complete within a short duration.

6|Page
1.5. Storyboard Design (YAU ZHI MING TP051145)
Design concepts are very important when it comes to developing software and people will
usually design a non-functional prototype for letting the customers know the overall looks of
the entire system and how the system should work. However, Extreme Programming
methodology is focus on the coding. Therefore, a storyboard is essential for designing a
webpage that is totally acceptable by the customer. Why do we choose to utilize the storyboard
for the system design? Design and simplicity are two of the elements that could attract
customers when they are accessing the system. For example, we must utilize the few seconds
to attract users and provides a user-friendly system to them else they will leave in the blink of
an eye. Therefore, as a programmer and designer, despite XP methodology is not focus on
design but still we must think carefully and precisely regarding the design and functionalities
before developing the system Invalid source specified..

1.5.1. Pages for All Users

Figure 1.5.1.1: Index or main page

7|Page
Figure 1.5.1.2: About us page

Figure 1.5.1.3: Choosing user login type page

8|Page
Figure 1.5.1.4: Choosing user sign up type page

Figure 1.5.1.5: Driver sign up page

9|Page
Figure 1.5.1.6: Parent sign up page

10 | P a g e
1.5.2. Pages for Admin Users

Figure 1.5.2.1: Admin – sign in page

Figure 1.5.2.2: Admin – home page

11 | P a g e
Figure 1.5.2.3: Admin – edit profile page

Figure 1.5.2.4: Admin – driver report page

12 | P a g e
Figure 1.5.2.5: Admin – SOP tracker result page

Figure 1.5.2.5: Admin – sales revenue page

13 | P a g e
Figure 1.5.2.6: Admin – sales revenue page continue part 1

Figure 1.5.2.7: Admin – sales revenue page continue part 2

14 | P a g e
Figure 1.5.2.8: Admin – sales revenue page continue part 3

15 | P a g e
1.5.3. Pages for Driver Users

Figure 1.5.3.1: Driver – sign in page

Figure 1.5.3.2: Driver – home page

16 | P a g e
Figure 1.5.3.3: Driver – home page continue part 1

Figure 1.5.3.4: Driver – home page continue part 2

17 | P a g e
Figure 1.5.3.5: Driver – home page continue part 3

Figure 1.5.3.6: Driver – edit profile page

18 | P a g e
Figure 1.5.3.7: Driver – SOP tracker page

19 | P a g e
1.5.4. Pages for Parent Users

Figure 1.5.4.1: Parent – sign in page

Figure 1.5.4.2: Parent – home page

20 | P a g e
Figure 1.5.4.3: Parent – edit profile page

Figure 1.5.4.4: Parent – SOP tracker page

21 | P a g e
Figure 1.5.4.5: Parent – driver’s schedule page

22 | P a g e
2. Implementation and Deployment
2.1. Construction
2.1.1. MERN Stack
MERN stack is a set of four different frameworks and tools that used for webpage or software
development. The frameworks are consisting of MongoDB, Express JS, React JS, and Node JS
as well. Before the release of MERN stack, the programmers are using MEAN, it is using the
frameworks except the “A”, which is AngularJS. Therefore, the release of MERN stack has
become the new stack for the developers these days, but there are some developers choose to
stick with MEAN stack, it depends on their own preference. What MERN stack does? This
technology is a stack of JavaScript that is allowing the developers to develop a full-stack web
application more efficiently and efficiency (Educative, Inc., 2020) (Jasraj, 2020).

Figure 2.1.1.1: Example of how MERN stack works (Educative, Inc., 2020)

2.1.2. MongoDB
MongoDB is a document-oriented database, it is a non-structural database that stores any type
of data in a type of document, also known as JSON, which stands for JavaScript Object
Notation. JSON document has a high flexibility and scalability compared to a structural
database like MySQL. For example, JSON is storing the data as an object and the amount of
data can be changed anytime, unlike MySQL database has a fixed number of observations
when it comes to data storing. Therefore, this database is the recommended for the current
system as the number of parents could be increasing in the future (HyperionDev, 2020).

23 | P a g e
2.1.3. Express JS
Express JS is a framework that is used to develop a back-end for the software application, it is
a server that place between the browser and the database, which means it acts as a middleware
and API that allows the browser to communication with the database as well as handling the
HTTP protocol requests (POST method) and responses (GET method) (HyperionDev, 2020).

2.1.4. React JS
React JS is a web development framework or library that is created and developed by a team
from Facebook. This framework is meant for front-end of the application compared to Express
JS. It allows us to design the Graphical User Interface (GUI) of the software application through
multiple components, and these components have the capability to communication with the
back end. Therefore, the web browser can communicate with the database like adding or getting
data through the back-end server (MongoDB, Inc., 2020).

2.1.5. Node JS
Node JS is more than a framework, it is a runtime environment that developed by Google. It is
a JavaScript that allows the users execute the JavaScript codes outside rather than in the
browser. Node JS use a single thread model to handle all the incoming and outgoing requests
and responses. Therefore, it is very fast to fulfill and response the requests compared to
traditional server. Traditional server will have to create a new thread when there is more than
the accepted range of requests or responses, then these requests or responses will have to queue
for their turn. Therefore, Node JS has a very small execution time, and it is highly
recommended for the web application these days because it allows the users to communicate
with the server in a very fast speed (Capan, 2020) (Jasraj, 2020).

24 | P a g e
2.2. Prototype of MammaSend System (Construction)
2.2.1. Pages for All User

Figure 2.2.1.1: Index or main page

25 | P a g e
Figure 2.2.1.2: About us page

Figure 2.2.1.3: Select user sign up page

26 | P a g e
Figure 2.2.1.4: Driver sign up page

27 | P a g e
Figure 2.2.1.5: Parent sign up page

Figure 2.2.6: Select user sign in page

28 | P a g e
2.2.2. Pages for Admin User

Figure 2.2.2.1: Admin – sign in page

Figure 2.2.2.2: Admin – home page

29 | P a g e
Figure 2.2.2.3: Admin – edit profile page

Figure 2.2.2.4 Admin – driver report page

30 | P a g e
Figure 2.2.2.5: Admin – SOP tracker result page

Figure 2.2.2.6: Admin – sales revenue page

31 | P a g e
Figure 2.2.2.7: Admin – sales revenue page continue part 1

Figure 2.2.2.8: Admin – sales revenue page continue part 2

32 | P a g e
Figure 2.2.2.9: Admin – sales revenue page continue part 3

33 | P a g e
2.2.3. Pages for Driver User

Figure 2.2.3.1: Driver – sign in page

Figure 2.2.3.2: Driver – home page

34 | P a g e
Figure 2.2.3.3: Driver – home page continue part 1

Figure 2.2.3.4: Driver – home page continue part 2

35 | P a g e
Figure 2.2.3.5: Driver – home page continue part 3

Figure 2.2.3.6: Driver – edit profile page

36 | P a g e
Figure 2.2.3.7: Driver – submit SOP tracker page

37 | P a g e
2.2.4. Pages for Parent User

Figure 2.2.4.1: Parent – sign in page

Figure 2.2.4.2: Parent – home page

38 | P a g e
Figure 2.2.4.3: Parent – edit profile page

Figure 2.2.4.4: Parent – submit SOP tracker page

39 | P a g e
Figure 2.2.4.5: Parent – driver’s schedule page

40 | P a g e
2.3. Testing for MammaSend System
2.3.1. Method 1: Unit Testing
We believe that unit testing is important and suitable for MammaSend Ride Sharing Service
system as the system is created through coding application. Therefore, we are able to test the
components or functions applied in implementing the system by testing the functionality of the
code through the outcomes generated from using the system. All the testing information of the
system has been gathered and documented in the testing plan in the following page.

41 | P a g e
Test Expected
Test Title Test Procedures Test Data Actual Result Status Remarks
Case Result
Login Test Correct Data Email Address: User able to Login successful.
(All users) 1. Key-in email address adminYau@gmail.com login
T001 Pass N/A
2. Key-in password Password: 123
3. Click Login in button
Login Test Incorrect Data (email Username: adminYau User unable Login failed. Popup
(All users) address/password does not Password: 1234 to login message will be displayed
match) that shows the data entered
T002 Pass N/A
1. Key-in email address are wrong and all the text
2. Key-in password boxes will turn red to
3. Click Login in button indicate the error exists.

42 | P a g e
Sign Up Test Correct Data Email address: User able to Sign up successful.
(Parent and 1. Key-in email address yeehan1617@gmail.com sign up
First name: Yee Han
Driver only) 2. Key-in first name
Last name: Ooi
3. Key-in last name Username: ooiyeehan
4. Key-in username Phone number:
010-2908181
5. Key-in phone number
T003 Gender: Male Pass N/A
6. Key-in gender Password: 1234
7. Key-in password Confirm Password: 1234
8. Key-in confirm password
9. Click Create Account button

Sign Up Test Incorrect Data Email address: User unable Sign up failed. Popup
(Parent and (Email address existed in adminYau@gmail.com to sign up message will be displayed
First name: Yee Han
Driver only) database) shows email address has
Last name: Ooi
1. Key-in email address Username: ooiyeehan already been used.
2. Key-in first name Phone number: 010-
2908181
T004 3. Key-in last name Pass N/A
Gender: Male
4. Key-in username Password: 1234
5. Key-in phone number Confirm Password: 1234
6. Key-in gender
7. Key-in password
8. Key-in confirm password

43 | P a g e
9. Click Create Account button
Sign up Test Incorrect Data (Username Email address: User unable Sign up failed. Popup
(Parent and existed in database) yeehan1617@gmail.com to sign up message will be displayed
Driver only) 1. Key-in email address First name: Yee Han shows passwords do not
2. Key-in first name Last name: Ooi match.
3. Key-in last name Username: adminyau
T005 4. Key-in username Phone number: Pass N/A
5. Key-in phone number 010-2908181
6. Key-in gender Gender: Male
7. Key-in password Password: 1234
8. Key-in confirm password Confirm Password: 1234
9. Click Create Account button
Sign up Test Incorrect Data (Passwords Email address: User unable Sign up failed. Popup
(Parent and do not match) yeehan1617@gmail.com to sign up message will be displayed
Driver only) 1. Key-in email address First name: Yee Han shows passwords do not
2. Key-in first name Last name: Ooi match.
3. Key-in last name Username: ooiyeehan
T006 4. Key-in username Phone number: Pass N/A
5. Key-in phone number 010-2908181
6. Key-in gender Gender: Male
7. Key-in password Password: 1234
8. Key-in confirm password Confirm Password: 12
9. Click Create Account button

44 | P a g e
Edit Profile Test correct data Name: Ooi Yee Jie User able to Edit Profile successful.
(All users) 1. Key-in new name Phone number: edit profile
2. Key-in new phone number 012-9317678
T007 Pass N/A
3. Key-in new email address Email address:
4. Key-in new password ooiyeejie@gmail.com
5. Click Edit Profile button Password:654321
Edit Profile Test incorrect data (email Name: Ooi Yee Jie User unable Edit Profile failed. Popup
(All users) address existed in database) Phone number: to edit profile message will be displayed
1. Key-in new name 012-9317678 shows email address has
T008 2. Key-in new phone number Email address: already been used. Pass N/A
3. Key-in new email address adminYau@gmail.com
4. Key-in new password Password:654321
5. Click Edit Profile button
Edit Profile Test incorrect data (null values) Name: User unable Edit Profile failed. Popup
(All users) 1. Key-in new name Phone number: to edit profile message will be displayed
2. Key-in new phone number Email address: shows all fields must be
T009 Pass N/A
3. Key-in new email address adminYau@gmail.com filled.
4. Key-in new password Password:654321
5. Click Edit Profile button
Search Test Correct Data Search Term: Profile that Search successful. All
Parent/Driver 1. Key-in search term Yau Zhi Ming matches the existing parent or driver
T010 Pass N/A
Profile 2. Press Enter on keyboard search term is profile that matches the
(Admin only) displayed search term will be

45 | P a g e
displayed. Other profiles
will be hidden.
Search Empty Data Search Term: All existing Search successful. If the
Parent/Driver 1. Key-in search term. profiles are search term is empty, all
T011 Pass N/A
Profile 2. Press Enter on keyboard. displayed existing profiles will be
(Admin only) displayed.
Delete 1. Click Delete button N/A Parent or Delete successful. Popup
Parent/Driver 2. Message box will be Driver profile message will be displayed
Profile displayed is deleted that shows the profile has
(Admin only) 3. Click OK been deleted and the
T012 Pass N/A
deleted profile will not be
displayed anymore.

Delete 1. Click Delete button N/A Process of Cancel successful. No data


Parent/Driver 2. Message box will be Deleting would be affected.
T013 Profile displayed parent or Pass N/A
(Admin only) 3. Click Cancel driver profile
is cancelled
Report In/Out Test Correct Data Full name: Ooi Yee Han User able to Report In/Out successful.
(Driver only) 1. Key-in full name Phone number: report in/out Popup message will be
T014 Pass N/A
2. Key-in phone number 010-2908181 displayed shows deposit
3. Key-in email address Email address: slip has been added.

46 | P a g e
4. Key-in password yeehan1617@gmail.com
5. Click Report In/Out button Password:1234
Report In/Out Test Incorrect Data (Data given Full name: User able to Report In/Out failed.
(Driver only) does not match data in database) Phone number: report in/out Popup message will be
1. Key-in full name 012-3456789 displayed shows all fields
T015 2. Key-in phone number Email address: must be inserted with Pass N/A
3. Key-in email address yeehan1617@gmail.com relevant information of the
4. Key-in password Password:1234 user.
5. Click Report In/Out button
Create Ride Test Correct Data Passenger Name | ID: User able to Create ride successful.
(Driver only) 1. Select Passenger Name | ID Quek Weng Hang | create ride
2. Key-in time U10001
3. Key-in pick up point Time: 11.00 a.m.
T016 Pass N/A
4. Key-in destination Pick up point: APU
5. Key-in fare Destination: Parkhill
6. Click Create Ride button Residence
Fare: RM10
Create Ride Test Incorrect Data (null value) Passenger Name | ID: User unable Create ride failed. Popup
(Driver only) 1. Select Passenger Name | ID Quek Weng Hang | to create ride message will be displayed
2. Key-in time U10001 shows all fields must be
T017 Pass N/A
3. Key-in pick up point Time: filled with information.
4. Key-in destination Pick up point: APU
5. Key-in fare Destination:

47 | P a g e
6. Click Create Ride button Fare: RM10
Submit SOP Test Correct Data Ride ID: R10001 User able to Submit successful.
Tracker 1. Select Ride ID Driver/passenger name: submit SOP
(Parent/Driver 2. Key-in driver/passenger Quek Weng Hang Tracker
T018 only) name Schedule Time: Pass N/A
3. Key-in schedule time 11.00 a.m.
4. Select answer for question 1 Question 1: Yes
5. Select answer for question 2 Question 2: Yes
Submit SOP Test Incorrect Data (null value) Ride ID: R10001 User unable Submit failed. Popup
Tracker 1. Select Ride ID Driver/passenger name: to submit message will be displayed
(Parent/Driver 2. Key-in driver/passenger Quek Weng Hang SOP Tracker shows all fields must be
T019 only) 3. name Schedule Time: filled with information. Pass N/A
4. Key-in schedule time 11.00 a.m.
5. Select answer for question 1 Question 1:
6. Select answer for question 2 Question 2:

48 | P a g e
2.3.2. Method 2: User Acceptance Testing
We thought that this testing method is extremely suitable for MammaSend Ride Sharing
Service system because it is known for letting end users experience the functionality of the
system themselves to determine if the system is able to take on tasks required to be done in
real-life scenarios (Setter, 2020). Therefore, we would like to receive feedbacks from Nancy
and her friends, drivers and parents testing the system themselves as it is crucial to do
assessment on whether the system developed could support day-to-day business and whether
the functionalities of the system are sufficient and have met their business requirements. We
have prepared questions to be answered by Nancy and her friends to gather feedbacks regarding
various components of the system and the results are in the following page.

49 | P a g e
Tester Profile

Name: Nancy

Position: ADMIN

Email: nancy123@gmail.com

Interface

TC NO Criteria Excellent Good Average Poor

Are the interfaces of the website


1
pleasant and easy to understand?

Are the color that been used make


2
display more user friendly?

Are the columns and instances in


3 standardized size and properly ✓
aligned?

Are the information logically


4
organized?

Are the instances on the screen


5 labeled according to its functions ✓
respectively?

50 | P a g e
Consistency
TC
Criteria Excellent Good Average Poor
NO

Are the graphical representations


1 used consistently? ✓
(e.g. symbols, icons)

Are the user input format


2
consistent?

Are the color used in website


3
consistent?

Is the information provided in


4
website consistent?

Performance

TC NO Criteria Yes No Remark

Is the alert performing without


1
any error and delay?

Does the website crash or page


2 error occur all of a sudden while ✓
in use?

Is the verification of username


3
and password time consuming?

Do you find that the response


4 time of web server is time ✓
consuming?
Do you think your data has been
5
stored in minimal time?

51 | P a g e
Information Feedback

TC NO Criteria Yes No Remark

Are the instructions stated clearly


1
in every section?

Is acknowledgement message
prompt to user after a function has
2
been executed? (e.g. logout

message, error message)

Does confirmation message


prompt for the user when user is
3
about to make irreversible

changes?

Does the system inform user on


There is no process will delay
4 time taken to execute process ✓ currently
which cause delay?

52 | P a g e
Error Prevention and Correction
TC
Criteria Yes No Remark
NO

Does the website show error


1
message when it detects error?

Does the alarm button show error The website does not have any
2
in response?
✓ alarm button

3 Is user able to cancel a process? ✓


Is the error message displayed
4
easy to understand?

Does the error message explain


5
what the error is?

Is there any option prompt with


6
message displayed?

Are the instructions given clear


7
for the user to correct the error?

As overall, is the website free


8
from error or breakdown?

53 | P a g e
User Usability

TC NO Criteria Yes No Remark

Is the process of inputting


1 ✓
information time consuming?

Is there any problem in the


website response time that
2 provide short period of time ✓
for user to know what is
happening?

Is there any function that is


3 difficult to operate and ✓
ambiguous?

Do you need extra instruction


Some people maybe need a guide
4 and instructor to demonstrate ✓ while using the website in the
on how to use the website? future

Do you find this website is


5 ✓
easy to use?

Is there any Help functionality


6 ✓ There is no FAQ section currently
on the website?

Is the system suitable for the


7 ✓
user? (e.g. parent, driver)

54 | P a g e
Security

TC NO Criteria Excellent Good Average Poor

Do you think that login element


1 ✓
is secure?

Do you think that your personal


2 ✓
data is secure?

Do you think that the use of your


3 ✓
location service is secure?

Do you think that this system is


4 ✓
safe and secured?

Tester’s Comment

The current login element is not good for me. This is because all 3 different users are not sharing
the same page of login instead the system separate them.

Improvement (Developer)

As for the improvement, the developer can try to combine all together for users' convenience.

55 | P a g e
2.4. System Deployment
2.4.1. Proposing a System Deployment Plan
Deployment plan of MammaSend Ride Sharing Service will be based on factors as follows:

Determining Deployment Options


This factor determines the platform where the system will be delivered. MammaSend Ride
Sharing Service is a web-based system and thus, it will be uploaded to the web host called
“Firebase Hosting”, which provides fast and secure hosting for the web-based system (Google
Developers, n.d.).

Packaging System
This factor will be stating the operations done to prepare a system to be transferred to the
customer site. User manual of MammaSend Ride Sharing Service system will be prepared and
given to Nancy and her friends, drivers, and parents so that they would not be confused on the
general steps to follow in completing their tasks in using the system. Technical manual will
also be prepared for developers to remember the coding implementation steps of the system so
that newcomers are able to catch up.

Deployment Scheduling
For this factor, stakeholders are to be informed so that they are aware of system deployment
events. We will ensure Nancy and her friends are truly the stakeholders of the system, and also
inform the drivers and parents about the system installation date and time. Nancy and her
friends will also be informed to back up the files or records from the old system which will be
brought to the new system.

System Change-Over Strategies


In this factor, the strategy to replace the old system with the new one will be discussed. The
strategy to be implemented for MammaSend Ride Sharing Service system is direct changeover.
Following details have been explained in the following documentation (Refer to topic
Justification of Method Used in the documentation).

56 | P a g e
Integrating System Components
In this factor, proper equipment installations, and server connection will be done so that system
could function normally. MammaSend Ride Sharing Service system will be connected to
Firebase Hosting and utilize MongoDB database to store the records in the form of document.
Installation of tools such as MERN stack, Express JS, React JS and Node JS are also done for
deployment purposes (Refer to topic Construction in the documentation for further
explanations). We also ensure that only admins of the system, who are Nancy and her friends,
are able to access the database for security reasons.

Post Deployment Test


In this factor, testing of the system will be conducted after deployment to ensure the system is
bug-free and to spot new problems in the system which can be fixed during maintenance period.
Techniques used to test the MammaSend Ride Sharing Service system would be user
acceptance test followed by test done done by developers to test for technical, connection and
security issues. Nancy and her friends, drivers and parents will be giving their feedback on the
system deployed through user acceptance test (Refer to topic Method 2: User Acceptance
Tesing in the documentation).

User Training
In this factor, training will be done for users to better understand and know how the system
functions. Training is especially needed for Nancy and her friends as not only they are the end
users of MammaSend Ride Sharing Service system, but they are also considered as the
administrators of the system which involves management of the content in web server. Since
they may not have any experience in using web server, we conclude that training is required
for them to be familiar with the functionalities so that they would understand the system better.
Training for drivers and parents is optional as in they are allowed to request for training
themselves if they are having issues in using common user functions.

57 | P a g e
2.4.2. System Change-Over Methods
Comparison of Methods
We have discovered different types of system change-over strategies which can be utilized for
MammaSend Ride Sharing Service system. Comparison of the strategies has been done as
follows (W3Computing, n.d.):

Direct Changeover Parallel Conversion Phased Conversion


End users stop using the old Old system and new system New system is introduced to
system and new system will will be running at the same one type of end user at a
be put into use on a specified time. Once new system able time.
date. to produce same result as old (Hussain, 2016)
system, old system is
discarded, and new system is
put to use.
Risky, disruption of work Less risky, disruption of User friendly, able to train
may occur. User forced to work will not occur but one type of end user at a time
use system which is not running two systems at the on using the system
familiar to them. same time costs a lot, and effectively.
burdens employee.
No way to compare new Able to compare new results Takes a lot of time to
results with old with old implement, depends on how
many end users are there

58 | P a g e
Justification of Method Used
After comparing different types of system change-over strategies, we decided to implement
direct changeover method for MammaSend Ride Sharing Service system. This is due to other
method are not suitable to be applied for this system. For instance, parallel conversion method
insists that both old and new system has to be running at the same time. Nancy and her friends
would be forced to divide their workforce and also requires drivers and parents to choose
between the two system. This would require external workforce to help in organizing the two
system and thus, cost will increase. Phased conversion method is also not suitable as it requires
us to introduce the new system to one type of end user at a time. Assuming the administrators
is the first end user to use the new system, this means that drivers and parents are still dedicating
themselves to using the old system. This is not a desirable situation as we would like them to
experience the new system together. Therefore, direct changeover is the only choice to achieve
this situation. It is less expensive and also saves a lot of time as once the old system has stopped
being used, the new system is immediately being set up.

How to Implement the Method


As explained in the proposed System Deployment Plan (Refer to topic Proposing a System
Deployment Plan), a specific date and time will be announced to the drivers and parents that is
using MammaSend Ride Sharing Service system about the release of the new system.
Therefore, we will inform them to stop using the old system to avoid any form of disruption in
work when the new system is released. To counter the risk involved in using this method, user
training will be done post system deployment for user to use the system effectively so that user
would not feel forced to use the new system which they may not be familiar of.

59 | P a g e
3. References
[1] BPM, 2019. kissflow. [Online]
Available at: https://kissflow.com/bpm/business-process-flow-diagram/
[Accessed 29 November 2020].

[2] Capan, T., 2020. Why The Hell Would I Use Node.js? A Case-by-Case Tutorial. [Online]
Available at: https://www.toptal.com/nodejs/why-the-hell-would-i-use-node-js
[Accessed 28 November 2020].

[3] DdrawMax, 2020. EdrawMax. [Online]


Available at: https://www.edrawmax.com/context-diagram/
[Accessed 29 November 2020].

[4] Educative, Inc., 2020. What is MERN Stack?. [Online]


Available at: https://www.educative.io/edpresso/what-is-mern-stack
[Accessed 28 November 2020].

[5] Google Developers, n.d. Firebase Hosting. [Online]


Available at: https://firebase.google.com/docs/hosting
[Accessed 30 November 2020].

[6] Hussain, M., 2016. Conversion Strategies - Mishaal Hussain. [Online]


Available at: http://creativehive.org.uk/mishaalhussain/2016/03/15/conversion-strategies/
[Accessed 30 November 2020].

[7] HyperionDev, 2020. Everything You Need to Know about the MERN Stack. [Online]
Available at: https://blog.hyperiondev.com/index.php/2018/09/10/everything-need-know-
mern-stack/
[Accessed 28 November 2020].

[8] Jasraj, 2020. MERN Stack. [Online]


Available at: https://www.geeksforgeeks.org/mern-stack/
[Accessed 28 November 2020].

[9] MongoDB, Inc., 2020. What is the MERN Stack?. [Online]


Available at: https://www.mongodb.com/mern-stack
[Accessed 28 November 2020].

[10]Setter, M., 2020. What is User Acceptance Testing (UAT Testing)? - Usersnap. [Online]
Available at: https://usersnap.com/blog/user-acceptance-testing-right/
[Accessed 27 November 2020].

[11]uregina, 2017. Data Modeling and Entity Relationship Diagram (ERD). [Online]
Available at: https://www.cs.uregina.ca/Links/class-
info/215/erd/#:~:text=Data%20modeling%20is%20a%20technique,Entity%20Relationship%20Di
agram%20(ERD).
[Accessed 29 November 2020].

[12]Visual Paradigm, n.d. What is Use Case Diagram?. [Online]


Available at: https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-
use-case-diagram/
[Accessed 27 November 2020].

60 | P a g e
[13]W3Computing, n.d. Conversion to a New System - Quality Assurance. [Online]
Available at: https://www.w3computing.com/systemsanalysis/conversion-new-system-quality-
assurance/
[Accessed 30 November 2020].

61 | P a g e

You might also like