AD Mohamed Shimash Siraj AD Mohamed Shimash Siraj
AD Mohamed Shimash Siraj AD Mohamed Shimash Siraj
Higher Nationals
Internal verification of assessment decisions – BTEC (RQF)
INTERNAL VERIFICATION – ASSESSMENT DECISIONS
Student’s name
Pass Merit Distinction
Internal Verifier
Date
signature
Programme Leader
Date
signature (if required)
1
Mohamed Shimash Siraj AD
Resubmission Feedback:
* Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and
grades decisions have been agreed at the assessment board.
2
Mohamed Shimash Siraj AD
3
Mohamed Shimash Siraj AD
General Guidelines
1. A Cover page or title page – You should always attach a title page to your assignment. Use
previous page as your cover sheet and make sure all the details are accurately filled.
2. Attach this brief as the first section of your assignment.
3. All the assignments should be prepared using a word processing software.
4. All the assignments should be printed on A4 sized papers. Use single side printing.
5. Allow 1” for top, bottom, right margins and 1.25” for the left margin of each page.
1. The font size should be 12 point, and should be in the style of Time New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject, Assignment No, and
Page Number on each page. This is useful if individual sheets become detached for any
reason.
5. Use word processing application spell check and grammar check function to help editing your
assignment.
Important Points:
1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the
compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in the body
except for the before mentioned compulsory information will result in rejection of your work.
2. Avoid using page borders in your assignment body.
3. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
4. Ensure that you give yourself enough time to complete the assignment by the due date.
5. Excuses of any nature will not be accepted for failure to hand in the work on time.
6. You must take responsibility for managing your own time effectively.
7. If you are unable to hand in your assignment on time and have valid reasons such as illness,
you may apply (in writing) for an extension.
8. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
9. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will
then be asked to complete an alternative assignment.
10. If you use other people’s work or ideas in your assignment, reference them properly using
HARVARD referencing system to avoid plagiarism. You have to provide both in-text citation
and a reference list.
11. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be
reduced to A REFERRAL or at worst you could be expelled from the course
4
Mohamed Shimash Siraj AD
Student Declaration
I hereby, declare that I know what plagiarism entails, namely to use another’s work and to present it
as my own without attributing the sources in the correct form. I further understand what it means to
copy another’s work.
5
Mohamed Shimash Siraj AD
Unit Tutor
Issue Date
Submission Date
Submission format
The submission should be in the form of an individual written report. This should be written in a
concise, formal business style using single spacing and font size 12. You are required to make use
of headings, paragraphs and subsections as appropriate, and all work must be supported with
research. You must provide in-text citations and the reference list using Harvard referencing
system.
LO1 Produce a Software Design Document by analysing a business-related problem and deduce an appropriate solution
including a set of initial requirements.
LO2 Use design and development methodologies with tools and techniques associated with the
creation of a business application.
LO3 Work individually and as part of a team to plan and produce a functional business application
with support documentation.
LO4 Evaluate the performance of a business application against its Software Design Document
and initial requirements
6
Mohamed Shimash Siraj AD
BAUHINIA is a clothing brand in Sri Lanka, founded in 2018, which has come a long way, offering
Sri Lankans with great designs of a variety of clothing. Currently, BAUHINIA is handling orders
through social media networks such as Facebook and Instagram. Customers can message
BAUHINIA requesting an item/s by sending the item code, size and required quantity. If the item
is available, the customer is required to send the delivery address, contact number to confirm the
order. The package with the required item/s will be delivered to the customer’s doorstep within
3 to 5 working days, after which he/she must pay cash on delivery.
Over the years, BAUHINIA has grown steadily mainly due to its popularity over social media.
However, they are finding it increasingly difficult to cope up with paperwork associated with
inventory management due to the increased of number of orders through message requests. The
Managing Director is frustrated by the problems associated with inventory management and has
decided that BAUHINIA will consult a Software Development Company to automate the workflow
of BAUHINIA Clothing.
AKL Software (AKL) is a software development consultant. AKL has purpose-built rooms for
Facilitated Workshops and Agile software development projects. The Managing Director of
BAUHINIA has decided to contract AKL for the development of the new order tracking system
using an Agile development approach.
The new online solution will replace the old approach and is likely to include some of the following
functionality:
Customer Registration and sign-in : Allow customers to register free. At the time of
registration, customers need to provide name, email address, delivery address, password
and two working telephone numbers. Registered customers can sign-in using email
address and password.
Browse for products: through product catalog, check availability and add products to
cart.
Checkout products: Total amount to be paid will be shown. Customer will be redirected
to confirm billing details: Name, delivery address, email address, two contact numbers.
Payment method will be cash on delivery.
Staff registration and sign-in.
Create a daily report of orders that have been requested – carried out by the Production
Manager.
Create a daily report of product availability- carried out by Production Manager.
Add new items to inventory, update existing item details – carried out by Inventory
handling Clerk.
Create a monthly Income report- carried out of chief Accountant.
The new online solution should have the following levels of access:
Report only
7
Mohamed Shimash Siraj AD
Update only
Update and delete
Complete system access
Activity 1
1.1 Produce a well-defined Problem definition statement supported by a set of user and System
requirements for the above scenario. Identify areas (if any) of risk that might affect the
successful completion of the application.
1.2 Produce a well-structured Software Design Document that defines a proposed solution for
BAUHINIA by exploring and analyzing their business problem. Include relevant details on
requirements, system analysis, and system design. (propose a suitable language)
Activity 2
Investigate the use of software development tools and techniques for the chosen software
solution. Compare the investigated tools and techniques and justify the chosen tools, technique
and methodology that you may use for the development of an Inventory Control Application for
BAUHINIA.
Activity 3
Conduct a peer-review and identify opportunities that were not previously considered by
interpreting the recorded feedback.
3.2 Develop a business application with support documentation, based on the Software Design
Document produced in activity 1, along with supportive evidence for using the preferred tools,
techniques and methodologies investigated in activity 2. Assess new ideas or possible
improvements to the system developed while justifying the reasons for including/not including
them in the application developed.
Activity 4
Conduct a critical review for the design, development, and testing stages of the Inventory
Control application by analyzing the factors that influence its performance against the problem
definition statement and initial requirements. Conclude the review by reflectively discussing the
risks identified at the beginning and critically evaluating the strengths and weaknesses of the
application developed. Identify and justify the opportunities for improvement and further
development of the application you developed.
8
Mohamed Shimash Siraj AD
9
Mohamed Shimash Siraj AD
10
Mohamed Shimash Siraj AD
11
Mohamed Shimash Siraj AD
Acknowledgement
In order to do my duty, I needed the guidance and help of a few reputable individuals, who
have my deepest gratitude. As completing this job brought me great delight, I would want to
express my gratitude to the course facilitator on the E soft metro campus for providing me with
excellent guidelines for the task through numerous talks. I also want to express my gratitude to
everyone who helped me write this task, both directly and indirectly. In addition, I'd want to
express my gratitude to my professor, for providing me with the direction, inspiration, and
warmth I needed to complete this task. Having him as my professor has been a great joy and
privilege. Second, I want to express my sincere gratitude to every member of my family.
Without their assistance, it would not be able to complete this job. I especially want to thank
all of my friends. May God grant the aforementioned individuals success and honor in their
lives.
Yours sincerely,
Mohamed Shimash Siraj
12
Mohamed Shimash Siraj AD
INVENTORY CONTROL
APPLICATION FOR BAUHINIA
13
Mohamed Shimash Siraj AD
Table of Contents
Acknowledgement ................................................................................................................... 12
List of Figure............................................................................................................................ 17
Overview .................................................................................................................................. 21
Activity 1 ................................................................................................................................. 22
1.1 Produce a well-defined Problem definition statement supported by a set of user and
System requirements for the above scenario. Identify areas (if any) of risk that might affect
the successful completion of the application........................................................................ 22
1.1.1 Problem Statement of the Bauhinia and the 5Ws Technique Defined .................... 22
1.2 Produce a well-structured Software Design Document that defines a proposed solution
for BAUHINIA by exploring and analyzing their business problem. Include relevant details
on requirements, system analysis, and system design. (Propose a suitable language) ........ 37
Activity 2 ................................................................................................................................. 54
Investigate the use of software development tools and techniques for the chosen software
solution. Compare the investigated tools and techniques and justify the chosen tools,
technique and methodology that you may use for the development of an Inventory Control
Application for BAUHINIA................................................................................................. 54
2.1 Software development tools and techniques and identify any suitable tool or
technique that you may select for the development of this application............................ 54
14
Mohamed Shimash Siraj AD
2.1.6 IDE........................................................................................................................... 70
2.2 Compare the differences between various software development tools and techniques
researched. Justify your preferred selection and preferred software development
methodology. .................................................................................................................... 76
2.3 Justify the tools and techniques chosen to realize a custom-built website. Justify your
preferred selection of tools and techniques in deducing an appropriate solution to a
business-related problem. ................................................................................................. 93
2.3.5 IDE........................................................................................................................... 96
Activity 3 ................................................................................................................................. 98
3.1.1 Presentations about problem definition statement, proposed solution and the
development strategy of business application. ................................................................. 98
15
Mohamed Shimash Siraj AD
3.2 Develop a business application with support documentation, based on the Software
Design Document produced in activity 1, along with supportive evidence for using the
preferred tools, techniques and methodologies investigated in activity 2. Assess new ideas
or possible improvements to the system developed while justifying the reasons for
including/not including them in the application developed. .............................................. 109
3.2.2 Assess new ideas or possible improvements to the System Developed while
justifying the reasons for including/not including them in the application developed. .. 131
Conduct a critical review for the design, development, and testing stages of the Inventory
Control application by analyzing the factors that influence its performance against the
problem definition statement and initial requirements. Conclude the review by reflectively
discussing the risks identified at the beginning and critically evaluating the strengths and
weaknesses of the application developed. Identify and justify the opportunities for
improvement and further development of the application you developed. ........................ 133
4.1 Evaluate the Performance of a Business Application Against its Software Design
Document and Initial Requirements. .............................................................................. 133
16
Mohamed Shimash Siraj AD
List of Figure
Figure 1 5Ws Technique .......................................................................................................... 22
Figure 2 User Requirements .................................................................................................... 25
Figure 3 System Requirements ................................................................................................ 29
Figure 4 Risk Defined .............................................................................................................. 31
Figure 5 VMOST Analysis ...................................................................................................... 37
Figure 6 SWOT Analysis Defined ........................................................................................... 39
Figure 7 SOAR Analysis Defined............................................................................................ 40
Figure 8 Boston Matrix Defined .............................................................................................. 42
Figure 9 Porters 5 Forces Model Defined ................................................................................ 43
Figure 10 Gannt Chart for the Order tracking System ............................................................. 53
Figure 11 Software development ............................................................................................. 54
Figure 12 XAMPP Server ........................................................................................................ 55
Figure 13 WAMP Server ......................................................................................................... 56
Figure 14 MySQL .................................................................................................................... 57
Figure 15 PostgreSQL.............................................................................................................. 57
Figure 16 MSSQL .................................................................................................................... 58
Figure 17 SQLite...................................................................................................................... 58
Figure 18 MS Access ............................................................................................................... 59
Figure 19 Java Script ............................................................................................................... 59
Figure 20 Java .......................................................................................................................... 60
Figure 21 Python ...................................................................................................................... 61
Figure 22 PhP ........................................................................................................................... 62
Figure 23 C++ .......................................................................................................................... 63
Figure 24 C Programming ....................................................................................................... 64
Figure 25 Angular .................................................................................................................... 65
Figure 26 React ........................................................................................................................ 65
Figure 27 Vue .......................................................................................................................... 66
Figure 28 Ember ...................................................................................................................... 66
Figure 29 Polymer.................................................................................................................... 67
Figure 30 Laravel ..................................................................................................................... 67
Figure 31 CakePHP.................................................................................................................. 67
Figure 32 Ruby on Rails .......................................................................................................... 68
17
Mohamed Shimash Siraj AD
List of Table
Table 1 User Access Level ...................................................................................................... 29
Table 2 SWOT Analysis for Bauhinia Company .................................................................... 39
Table 3 SOAR Analysis for Bauhinia Company ..................................................................... 41
Table 4 Milestone Table for Bauhinia ..................................................................................... 48
Table 5 Comparison of IDEs ................................................................................................... 79
Table 6 Employee creating page ............................................................................................ 123
Table 7 product creating page ................................................................................................ 126
Table 8 Future Improvements ................................................................................................ 131
20
Mohamed Shimash Siraj AD
Overview
This paper displays the inventory control system for the BAUHINIA Company. BAUHINIA
is a Sri Lankan clothing company that was founded in 2018 and has made significant progress
in offering Sri Lankans great designs for a variety of apparel. Orders can now be placed with
BAUHINIA via social media sites like Facebook and Instagram. Customers can send a message
to BAUHINIA with the item code, size, and quantity needed to request one or more items. The
buyer must submit the delivery address and phone number to confirm the order if the item is
available. Within 3 to 5 working days, the box containing the requested item(s) will be
delivered to the customer's doorstep, following which he or she must pay cash on delivery.
BAUHINIA has expanded considerably over the years, owing to its popularity on social media.
However, due to the increased number of orders received via message requests, they are finding
it increasingly difficult to keep up with the paperwork associated with inventory management.
The Managing Director has determined that BAUHINIA would consult a Software
Development Company to automate the process of BAUHINIA Clothing because of the
challenges related with inventory management. AKL Software (AKL) is a software consulting
firm. Facilitated Workshops and Agile software development projects can be held in AKL's
purpose-built rooms. BAUHINIA's Managing Director has opted to hire AKL to design a new
order tracking system utilizing an agile development methodology.
21
Mohamed Shimash Siraj AD
Activity 1
1.1 Produce a well-defined Problem definition statement supported by a set
of user and System requirements for the above scenario. Identify areas (if
any) of risk that might affect the successful completion of the application.
1.1 Explore a business-related problem and produce a well-defined Problem Definition
Statement supported by a set of user and system requirements.
1.1.1 Problem Statement of the Bauhinia and the 5Ws Technique Defined
A problem statement is essentially a statement that depicts a clear vision and the overall
technique for solving the problem at hand. The 'BAUHINIA' Business utilizes the 5W's
approach to identify and build the issue statement as part of the problem statement development
process. What? Who? When and where are you going? Why? How? This strategy entails asking
a series of questions in order to gather all of the information needed to report on the present
situation, determine the real nature of the problem, and describe the context in detail.
(libguides.com, 2022)
This technique of defining the problem was adopted by the firm because
22
Mohamed Shimash Siraj AD
Each question should be answered with facts – facts that are required for a report to be
considered comprehensive. Importantly, there is no easy "yes" or "no" response to any of these
issues. It's the type of inquiry that's taught to kids when they're going to start a writing project,
and we, like kids, must display the same kind of tenacious tenacity and drive that they do when
attempting to discover new things.
What? The project, the activity, the challenge, and the project's goal are all described in detail.
Why? Describe the motive, goal, justification, or purpose behind a certain working approach.
Who? Determine the parties involved, as well as the persons who are accountable or impacted.
How? Determine the path to take, the actions to take, and the strategy to use.
What - BAUHINIA is a company that sells clothes online. It had begun two years prior.
Customers are referred to you through social media. Now they're having trouble managing their
goods. Because a large number of consumers utilize social media to contact the firm. As a
result, firm management prefers to automate its activities using software. Because manually
gathering consumer information is inefficient and inconvenient, this technique is ineffective in
tracking their customers. As a result, this business strives to adapt its approach.
Who - The BAUHINIA firm is a well-known fabric seller. Customers are attracted to the brand
through social media. That is why BAUHINIA receives a large number of orders from
consumers. As a result, they are unable to maintain their activity manual. For these activities,
the paper-based technique will fall short.
Where - The BAUHINIA Company is facing a problem, which is the typical method plan for
maintaining the company's operations. The problem is in properly supervising orders.
23
Mohamed Shimash Siraj AD
When – In the previous decade, the 'BAUHINIA' firm has experienced significant growth in
the garment sector. The reason for this is that social media has attracted a large number of
clients. The firm 'BAUHINIA' is now receiving a large number of orders. As a result,
management prefers to use the computerized system to update their administrative procedures.
How - "Bauhinia" has a conventional style of completing their daily job, and the firm keeps a
paper-based record of all of their actions, making it extremely difficult to organize and preserve
information.
Problem Statement
'BAUHINIA' is the well company that has had a strong performance over the last two years
with a greater consumer base. Due to an increase in the number of clients, the firm is having
difficulty dealing with paper-based tasks. As a result, important human resources and time are
wasted. Finally, the added stress caused by the manual approach of tacking orders makes it
difficult for corporate employees to operate at their best. Furthermore, clients expect the
'BAUHINIA' Company to provide a fast and accurate service in tracking orders and alerting
them of their status. As a result, it is critical to reduce needless burdens on employees in order
to produce an efficient and high-quality working environment. It is projected that consumer
satisfaction would rise as a result of this.
The 'BAUHINIA' online system will be primarily utilized by four levels of personnel, including
Order handling clerks who will be responsible for dealing clients at the counter and Warehouse
operatives who will be in charge of the warehouse and will update stock availability
information. This system will be used by Chief Account to create invoices and final requests
for clients. The Production Manager will be the boss, and he or she will be in charge of
producing reports and overseeing the company's whole tracking system. The diagram below
24
Mohamed Shimash Siraj AD
depicts the system's user requirements for each employee, or, in other words, the functions that
the system must do in order to meet the user's demands.
The diagram below depicts information about BAUHINIA clothing firm users and their access
status.
25
Mohamed Shimash Siraj AD
2. System Requirements
The arrangement that a framework must have in order for an equipment or computer program
application to execute smoothly and successfully is referred to as system requirements. Failure
to achieve these requirements might result in problems with setup or execution. The former
may prevent a device or program from being installed, but the latter may cause an item to
malfunction or perform poorly, or even wrap or malfunction. (techterms.com, 2022)
When considering the System Requirements, it has been said that the following hardware and
software parts are being needed.
Efficiency - The Online Order Tracking System is meant to function such that all of the
system's transactions are processed as promptly as possible.
Reliability - The system must react to member requests precisely. For example, if the
warehouse operator saves the revised stock information, the details must be altered to reflect
the most recent updated details after examining the detail. If a consumer hasn't paid in over
thirty days, a reminder should be printed correctly. In addition, the registration form undergoes
a validity check to ensure that the information entered is correct and that an erroneous data type
is not entered.
Usability - Customers and staff must be able to utilize this system easily so that the user may
execute his job effectively. It should provide clear instructions that walk the user through the
system. The error message should also provide a detailed description.
Implementation - The major programming languages and tools utilized to construct the system
are Java script, PHP, and MySQL. The SQL language is also used to handle database
information.
Delivery - The full system is planned to be completed in six months, with documentation
following in two months. The complete system is given in softcopy format, including both
hardcopy and softcopy documentation.
26
Mohamed Shimash Siraj AD
Functional Requirements
A Functional Requirement (FR) is a definition of the service which must be offered by the
program. A software device or component is defined. A function is nothing but inputs, its
actions, and outputs to the software system. It may be a measurement, data processing, business
method, user interaction, or some other particular feature that determines what is likely to
execute a system's purpose. (oracle.com, 2022)
Performance/Time: The time required should be shorter than 1 second after the request
has been sent.
Usability: A critical point in the method is accessibility. Like other people who do not
like to adapt a different style of technology and plan to use the system in a manner that
27
Mohamed Shimash Siraj AD
is close to a conventional word processor. The typical operating system and word
processing can be simulated by this system.
Notification: job reminder, payment reminder
Security: This system will be shielded from SQL injections and the virus operation will
be managed by an internal antivirus. The certificate right has been graded as a level of
Advanced and Operational. (Notification, SMS OTP, E-Mail verification)
Superior Level: Useful Evaluation Control.
Operational Stage: The level of constraint may be assigned to the Better level.
Reliability: This system is available anytime and it will not miss any data during any
disruption because it is equipped with auto saving and auto recovery modes that log
each and every single program case.
Backup: weekly automatic backup
Reusability: This will be planned to adjust to a potential update.
Security requirements
This system must be highly secure in the login part. It is because the report can only view by
admin level or production manager.
User Login
The user (customer / employee) uses this function to log on to the system. Before you may use
the system, you must first enter your user ID and password. An incorrect ID cannot be put into
the system because the user ID and password are verified.
Users can utilize this service if they forget their login password. The system sends an email to
the applicant's email address with the password. When the employees were first hired, they
were given an email address. Because only the user may establish his own mailing account,
there is no need for any validation.
28
Mohamed Shimash Siraj AD
Reliability of Information
The system must be able to provide accurate information about transactions that occur on a
specific date. The system must be able to provide accurate information about transactions that
occur on a specific date.
System Requirement
29
Mohamed Shimash Siraj AD
Due to the uncertainties involved with the business, such as competition, changes in consumer
taste and preferences, input costs, changes in government legislation, and so on, business risk
refers to the anticipation that the firm may earn less than projected profits or even lose money.
This may have an impact on the company's capacity to produce a profit. These dangers might
originate from a variety of places, therefore the boss or manager isn't necessarily to fault.
Instead, hazards might originate from within the organization or from outside the company,
ranging from legislation to the entire economy.
A company owner, for example, may be subject to a variety of hazards, including production
risks, risks associated with irregular raw material deliveries, equipment malfunctions,
30
Mohamed Shimash Siraj AD
employee dissatisfaction, and so on. Risks in marketing might develop as a result of market
price changes, shifting trends and styles, errors in sales forecasting, and so forth. Furthermore,
the firm may lose assets as a result of fires, floods, earthquakes, civil disturbance, conflicts, or
political turmoil, all of which can cause unfavorable business disruptions. As a result,
depending on the nature and scale of the company, business risks can take many various shapes.
Internal business risk is tied to the company's internal environment. Internal business concerns
have forced the organization to operate in a restricted environment. Internal business risks
differ from one organization to the next, based on the limitations imposed by the internal
environment. As a result, every firm has its unique internal hazards, and the organization's
performance is determined by its ability to manage these risks.
External business risks are related with events that a corporation has no control over. Every business
must cope with a variety of external issues, some of which are unique and industry-specific.
31
Mohamed Shimash Siraj AD
Financial risk refers to the troubles that an investment firm's financial situation may bring for
itself or others. Such a danger occurs, in particular, if a firm has adequate financial strength to
continue its trade activities, or if it makes promises to itself or to its clients. (guru99.com, 2022)
This difficulty might arise when the company that creates the application does not have enough
money or assets to invest in the program's development. This might be due to the company's
engagement in too many initiatives, each of which requires a major financial investment, or it
could be due to the company's lack of understanding of the expenses connected with developing
the app. As a consequence, the firm may spend more money building the application and
eventually go bankrupt, or they may be unable to complete their application development
project within the customer's cost requirements due to a lack of understanding about the costs
and prices of items they want (Bauhinia Company). As a result, the project will be terminated,
resulting in financial losses for the firm.
Risk Mitigation
This risk may be mitigated by the firm doing a thorough study of the development process and
the materials required in the application development process before beginning the project, as
well as analyzing and finalizing the amount of each expenditure. Following a thorough study,
a budget for application development can be developed, and the firm may decrease financial
risks and avoid bankruptcy by spending in line with the budget.
Employee Risk
The word "employee risk" refers to everything a firm employee can do, whether intentionally
or unintentionally, that can hurt the employer's business in some manner.
This risk may exist if the organization does not have enough people to work on a certain
application development project. This can occur when staff take vacations while projects are
in progress, causing the process to be interrupted in the midst and causing the project to be
delayed, and the firm to be unable to complete the project within the intended time limit.
Another danger is that the employees may not fully comprehend the project for which they are
32
Mohamed Shimash Siraj AD
responsible, which might result in errors and blunders in the application's development since
the employees were unaware of the project's full scope.
Risk Mitigation
By designating some personnel as bench employees, the project manager may decrease the
possibility of work being halted in the middle owing to the absence of some individuals.
Because of the bench staff, interrupted work can be completed, and the firm may be able to
complete the project on schedule. Employees assigned to work on an application development
project should have a pre-work session in which they should be provided enough data about
the project and their questions should be answered. Furthermore, such sessions will serve as an
icebreaker for workers, allowing them to get to know one another before they begin working
together, reducing the likelihood of disputes. (codebeamer.com, 2022)
Scheduling Risks
Scheduling risk refers to the likelihood of schedules not being met, as well as the consequences
of this inaccuracy. It is present in every schedule, and it is impossible to predict with certainty
how long it will take to complete an activity, reach a milestone, or deploy a system. Because
limited information is available in the early stages of a program, planners must depend on
personal experience, lessons learned, best practices, and expert estimations. This danger arises
when a corporation undertakes too many projects at once, causing staff such as developers,
testers, and designers to be overburdened with several projects and unable to focus on a single
project. Also, other resources, such as equipped computer laboratories, are not available to the
specific group of employees working on the Bauhinia firm's project because other teams are
using them for their own projects. These are frequent scheduling concerns in the organization.
Risk Mitigation
To prevent the hazards listed above, the project manager must first design each employee's
schedule plan and then choose team members based on their time availability to work on the
project. This may lessen the likelihood of employees experiencing time conflicts when working
on many projects at the same time. Employees' tasks might also be scheduled ahead of time.
Additionally, all teams must have access to the equipment and resources by setting correct time
plans such as roster charts.
33
Mohamed Shimash Siraj AD
Technological Risks
If the firm lacks the essential infrastructure to construct the application, such as the appropriate
hardware and software, it may suffer technological hazards. During the creation of the
application, the organization may face server failure difficulties as well as challenges with the
design and development of the program. (atlassian.com, 2022)
Risk Mitigation
This risk might be mitigated by conducting a thorough technological feasibility assessment and
determining the infrastructure needs for application development. After acquiring the concept,
the infrastructure's financial requirements could be factored into the budget, and server
difficulties, as well as concerns with the system's design and development, could be resolved
by maintaining constant communication with the project members and clients.
Customer Risks
This risk arises when the application built fails to match the needs of the consumer. The
customer may be dissatisfied with the application's design and operation because they expected
certain features that were not offered by the developer. Furthermore, there is a danger that the
customer would not pay for the job when it is completed.
Risk Mitigation
The customer risk might be mitigated by holding regular meetings with customers and
soliciting input on each component, beginning with the customer requirements analysis and
ending with the implementation. This might assist the organization in closing the gap between
the client's requirements and the fila project, resulting in customer satisfaction. Also, a suitable
agreement should be created between the client and the development business, including all of
the project's terms and conditions, to protect both sides from legal complications.
(accompa.com, 2022)
34
Mohamed Shimash Siraj AD
In the agile technique, the development business selecting the agile method over the waterfall
method to create the application helps to solve the client risk, since some customer needs can
be added in the middle of the development process.
Natural Risks
A natural hazard is a severe natural phenomenon that harms humans – or other things that we
care about, though the focus is generally on humans (which, we might note, is anthropocentric).
"Hazard always originates from the interaction of social, biological, and physical systems;
catastrophes are caused by human acts as much as by natural events." (The "Father of
Floodplain Management," geographer Gilbert F. White)
Natural catastrophes such as cyclones, floods, earthquakes, and other natural disasters can be
created. It's possible that it'll be lost due to natural disasters, and you won't be able to recover
or back them up. Furthermore, natural disasters may result in power outages in the firm, which
may cause the company's operations to be disrupted for an extended length of time.
(accompa.com, 2022)
Risk Mitigation
This risk may be mitigated by storing a backup copy of all key documents and daily application
development tasks in the cloud, allowing work to be completed from anywhere in the globe
and simply backed up without the need to start again. In addition, the organization must assess
the risk of natural catastrophes ahead of time and be prepared to make other preparations. For
example, power outages caused by heavy rain may cause a business's operations to be halted;
this might be mitigated by the firm having generator facilities for power generation, and the
impact of natural disasters on the Bauhinia Company’s operations may be minimized.
Legal Risk
This risk may arise during application development when untrustworthy staff divulge customer
information to third parties, resulting in a legal issue when the client files a lawsuit for data
loss and theft. (apptio.com, 2022)
35
Mohamed Shimash Siraj AD
Risk Mitigation
This risk can be mitigated to some extent if the organization has a security strategy for
managing data and varying levels of access restrictions for project staff.
Maintenance Risk
This risk may arise after the implementation of the application in the company.
This might happen as a result of server conflicts or other functional difficulties that develop when the
system is running on the client's machines. If this danger emerges, it may cause the clients' activities to
be delayed, and they may file complaints about the situation.
Risk Mitigations
As a result, providing assistance after the product's introduction is critical to its success. It is critical to
keep the software's functionality up to date on a regular basis.
External risks
There may be external hurdles in addition to the company's development risks. External risks are far
more difficult to foresee and control than internal risks in the firm where the system is designed.
External danger can manifest itself in a variety of ways. When it comes to market risk, some software
platforms utilized for application development may become obsolete, and future updates or usage may
be impossible. As a result, various concerns with the application's long-term functionality arise.
Furthermore, the risks posed by rivals who may be able to provide the application at a cheaper cost or
in a shorter time frame, as well as intense rivalry from several competitors, pose a risk to the Bauhinia
company in producing the application. (codebeamer.com, 2022)
Risk Mitigations
Proper planning and effective communication both inside and outside the firm may be able to assist
solve this problem. In any case, the corporation will not be able to fully resolve the problem.
Conclusions
In general, thorough and exact use of assessment methodologies and risk management may considerably
enhance the quality and safety of a product manufactured at a low cost. Given the efficiency of the
various strategies, it appears that combining them to ensure the security of the Bauhinia system
development project is the best option.
36
Mohamed Shimash Siraj AD
1. VMOST Method
37
Mohamed Shimash Siraj AD
Vision: "Bauhinia wants to be the most respected, inventive, and lucrative firm in the world
selling and servicing new and refurbished IT equipment in every way."
Mission: "By attaining excellence in product expertise, price competitiveness, and consultation
assistance, Bauhinia has established itself as the top choice for purchasing and maintaining IT
hardware in the eyes of our customers."
Objectives
The company might have an advanced system to handle their everyday activities in
order to fulfill the objectives.
Tactics
38
Mohamed Shimash Siraj AD
material pricing, and client shopping tendencies are all examples of this. (dba-oracle.com,
2022)
feels upset.
39
Mohamed Shimash Siraj AD
3. SOAR Analysis
An analysis of strengths, opportunities, goals, and results (SOAR) is a strategic planning
method that helps a company focus on its existing strengths and future visions in order to
achieve its strategic objectives.
SOAR engages all levels and functional areas of an organization. With SOAR, the focus is on
the organization and enhancing what is currently done well, rather than concentrating on
perceived threats and/or weaknesses.
S = Strengths: What an organization is doing really well, including its assets, capabilities, and
greatest accomplishments.
O= Opportunities: External circumstances that could improve profits, unmet customer needs,
threats or weakness reframed into possibilities.
A= Aspirations: What the organization can be; what the organization desires to be known for.
R=Results: The tangible, measurable items that will indicate when the goals and aspirations
have been achieved.
40
Mohamed Shimash Siraj AD
This categorizes the products into one of four different areas, based on:
41
Mohamed Shimash Siraj AD
Stars are high-growth products that compete in marketplaces where they outperform
their competitors. Stars frequently require significant expenditure to maintain their rise.
Stars will eventually slow down, and if they maintain their market share, they will
become Cash Cows.
Low-growth products with a large market share are known as cash cows. These are
well-established, profitable goods that require little investment. They must be managed
for long-term profitability in order to continue generating the robust cash flows that the
company need for its Stars.
Question marks are low-market-share products that operate in high-growth
marketplaces. This means that they have promise, but that they will need to invest more
in order to gain market share from larger competitors. Management must choose
carefully which "Question Marks" they should invest in. Which ones should they let
fail or contract?
The phrase "dogs" is used to describe products with a low market share in unappealing,
low-growth areas. Dogs may make enough money to pay for themselves, but they are
rarely, if ever, worth investing in. Dogs are typically sold or euthanized.
42
Mohamed Shimash Siraj AD
A firm would desire items from all categories (excluding Dogs!) in order to have a well-
balanced product range.
When it comes to the Bauhinia Company's products, the present status is Question Mark, with
the company having the lowest market share despite consistent growth over the past two years.
However, in terms of market growth, it is in a better position, since the number of orders is
rising and the firm is becoming more well-known on the internet. As a result, the Bauhinia
Company's investment in an online automated order monitoring system will assist them in
achieving star status.
This approach was developed in 1979 by Harvard Business School's Michael E. Porter as a
way for analyzing and evaluating a company's competitiveness and position. The carrier
defines five forces: supplier power, buyer power, competition, risk of substitution, and risk of
entrance. This approach may be used to determine the Bauhinia Company's business challenge.
These models may be used to figure out where we need to be and what we'll need to do to get
there. This is the most straightforward explanation for the maturity models. It is critical to have
a clear issue definition and a clear solution context when employing a maturity model, as we
43
Mohamed Shimash Siraj AD
all know. From the evolution model to the technology model to the team model, there are a
variety of maturity models that may be used to a corporation. Every firm or department, as we
all know, goes through a maturation process. The typical cycle is chaotic, reactive, proactive,
customer-focused, and valuable.
Conclusion
Since looking at the Bauhinia Business' daily problem, it is clear that the company has not kept
up with technical advancements in the modern world. Because they presently track their orders
using the old paper-based manner. This manual procedure has a number of flaws. Traditional
paper-based procedures were utilized in medium-sized businesses around a decade ago. The
biggest issue we ran across was that meeting customer requirements took a long time and the
paper-based tracking method was inefficient. We discovered from the investigation that they
have a following that they have gained via the internet, and that by utilizing them, the firm
would be able to increase its sales. However, they are having difficulty monitoring all orders
these days. To address the aforementioned issues, Bauhinia Company need an application that
can effectively handle orders and improve order tracking accuracy. From the instruments for
assessing business difficulties, the organization was able to pinpoint the source of the Bauhinia
Company's difficulty. If implemented by Bauhinia Company, the online order tracking
approach is expected to remedy the difficulties highlighted by the analysis. Using a variety of
ways to extract business-related problems, in my opinion, assisted us in identifying the true
issue. The Bauhinia Company's business challenge will be solved by building and deploying
an order tracking system with well-defined user access.
44
Mohamed Shimash Siraj AD
45
Mohamed Shimash Siraj AD
46
Mohamed Shimash Siraj AD
OVERVIEW
These same developers produce software for Bauhinia Company that helps the company's
internal orders. They've asked us to design a new alternative since they need to get rid of their
paper-based system because their job has become more popular over the past two years. We'll
develop an online order tracking system to address the problem faced by the Bauhinia
Company. This solution reduces the requirement for paper while increasing order tracking
efficiency. Users may enter past order information into the system and deal with those data
right away in the new system. The programming language will be PHP, and the database
solution will be MySQL. We'll strive to keep the system's user interfaces to a bare minimum.
To strengthen data security, we employ multiple degrees of user access to the system. Order
tracking clerks, warehouse operatives, chief accountants, and production managers are among
the system's four main users. The system will be constructed in such a way that the company's
production manager will have complete administrative access. The chief accountant can only
read reports in order to complete his financial responsibilities and calculate final needs.
Inserting, modifying, and removing orders is a function available to the order processing clerk.
Because the warehouse employee only checks the availability of particular commodities and
has to print confirmation copies of the system, the warehouse employee only receives an update
function. The Bauhinia Company can carry out its everyday activities in a productive and
secure manner thanks to these specified access levels. To load data, we'll strive to employ basic
user interfaces with few buttons and forms. This improves the system's simplicity. The key
rationale for having a basic interface and functionalities for this system is that all personnel,
including staff members such as manufacturing supply chains clerks and warehouse operatives,
must fully comprehend the system.
CONTEXT
Bauhinia Company's tracking system is currently done manually in most situations, which adds
time to transactions such as ordering items, confirming availability, processing payments, and
so on. As a result, a slew of issues arise, resulting in an ineffective online tracking system.
Because the firm does not use a computerized system, there may be loss and destruction of
records as a consequence of human error. However, the difficulty in looking for available
commodities, which might be referred to as an insufficiency in the Online Tracking
Management System, is an issue in the manual system, resulting in inefficiency and time-
consuming operation of the online tracking system. Also, as the quantity of records grows, the
space required for physical storage of files and data grows, as does the expense of not using a
47
Mohamed Shimash Siraj AD
GOALS
The aim of this project is to develop a system that can handle and manage the activities involved
in an online tracking system in an efficient and reliable way.
Designing a computerized Online tracking system which would help evacuate the
problem faced in manual.
Evaluating and testing the performance of the system.
Implementing the system.
MILE STONES
Table 4 Milestone Table for Bauhinia
48
Mohamed Shimash Siraj AD
and producing invoices and reminders for unpaid payments and at last producing reports for
the management regarding the operations done in the company. This project system was highly
recommended due to the rapid increase of computer related tools in the industry. With this
proposed system features and functions of the Bauhinia Company will be able to accommodate
more reliably consistent and faster in providing a better service to the customers.
EXISTING SOLUTION
Presently, tracking system of the Bauhinia Company has been done manually in most cases,
thereby taking more time for transaction like handling the orders, checking the stock
availability, preparing invoices for payments, checking the credentials of the customers and
producing reports. Series of problems occur as a result of this there by resulting to in-efficient
tracking system. In most cases as a result of human error there maybe loss and damages of
records due to not using computerized system in the library. Nevertheless, the difficulty in the
handling the orders which could be termed to be inadequacy in management is a problem in
the manual tracking system thereby causing inefficiency and time-consuming. Also, the
problem of space consuming erupts after the number of records become large the space for
physical storage of file and records also increases if no computerized system is implemented
as well as the issue of cost.
49
Mohamed Shimash Siraj AD
The order to cash cycle is continually paused if manual methods for inputting orders
and physically processing documents are still in existence. Aside from the possibility
of human mistake in order processing, there are other factors that might lengthen
processing times and expenses. If documentation must be produced before an
application can be manually input, the cost of processing each order is considerable.
Backlogs of orders awaiting human processing, as well as a stack of paper to be
processed and archived, can cause order cycle time delays. It's also worth noting that
maintaining the infrastructure for printers and fax machines might be costly.
50
Mohamed Shimash Siraj AD
ALTERNATEIVE SOLUTION
Detrack
Detrack is a robust last mile delivery management software that enables you track your cars
live on a map and collect real-time electronic proof of delivery (E-POD) with simply our iOS
/ Android app, and it's free for your first driver forever. Our applications have been translated
into 26 languages and are used to accomplish millions of deliveries every day throughout the
world. Detrack manages everything from instant real-time delivery status updates to gathering
proof such as the customer's signature, task completion time, products rejected or failed
deliveries, picture documentation of service completion, and automated customer assistance.
It's also possible to automate the sending of texts / SMS to clients before to delivery, after
delivery, and even when the driver is on his way to the location with a live ETA.
From instant real time delivery status updates to capturing evidence like customer’s signature, time of
job completion, items reject or failed deliveries, photo evidence of service completion and automating
customer support; Detrack handles it all. There’s also the ability to automate the sending texts / SMS
to customers pre-delivery, post-delivery and even when the driver is heading to destination with live
ETA.
Features:
51
Mohamed Shimash Siraj AD
Once a recipient clicks "scan and send" I cannot do anything to move the process forward
except to send an image to them. Often times they did this by accident or later find that they
don't need the mail scanned because they came into the office and physically got their mail but
it stays in the queue no matter what. I would like a delete button to clear items like this on my
end without asking the recipient to bother with anything.
Features:
52
Mohamed Shimash Siraj AD
TIME LINE
53
Mohamed Shimash Siraj AD
Activity 2
Investigate the use of software development tools and techniques for the
chosen software solution. Compare the investigated tools and techniques and
justify the chosen tools, technique and methodology that you may use for the
development of an Inventory Control Application for BAUHINIA.
2.1 Software development tools and techniques and identify any suitable tool or technique
that you may select for the development of this application.
Software development
Every site engineer should think about a massive set of regulations and processes when it comes
to web development. HTML5, CSS3, JavaScript, PHP, and MySQL were formerly considered
the core web development breakthroughs for creating a website or online application. In any
event, with the emergence of a few new web development improvements, tools, structures, and
languages in recent years, deciding what to focus on has been extremely difficult (and what to
skip). (itchronicles.com, 2022)
54
Mohamed Shimash Siraj AD
XAMPP
XAMPP is a free and open source program created by Apache buddies. The Apache
distributions for Apache server, MariaDB, PHP, and Perl are all included in the XAMPP
software package. And it's essentially a local host or server. This local server runs on your own
computer, whether it's a desktop or a laptop. XAMPP is used to test clients or websites before
publishing them to a remote web server. On a local computer, the XAMPP server software
provides a suitable environment for testing MYSQL, PHP, Apache, and Perl projects.
(cprime.com, 2022)
55
Mohamed Shimash Siraj AD
WAMP
"Windows, Apache, MySQL, and PHP" is the acronym for "Windows, Apache, MySQL, and
PHP." WAMP is a Windows-specific version of LAMP that is frequently deployed as part of
a software bundle (Apache, MySQL, and PHP). It's frequently used for web development and
internal testing, but it may also serve live websites. (cprime.com, 2022)
The source code for the world's most popular open source database, which runs on a relational
database management system (RDBMS), is accessible under the GNU General Public License.
MySQL is the most common database for online applications, as well as the most significant
component of LAMP, or open source web application software, where LAMP stands for
"Linux, Apache, MySQL, Perl/PHP/Python." MySQL web application hosting (apptio.com,
2022)
56
Mohamed Shimash Siraj AD
Figure 14 MySQL
PostgreSQL
Figure 15 PostgreSQL
MSSQL
Microsoft SQL Server (MSSQL) is a database management system created by Microsoft. It's a
relational database management system database server designed to store and retrieve data
when web applications ask for it. Using the principal query languages T-SQL and ANSI SQL,
MSSQL database server is designed for a variety of audiences and workloads ranging from
modest single-machine applications to huge Internet-facing applications. (codebeamer.com,
2022)
57
Mohamed Shimash Siraj AD
Figure 16 MSSQL
SQLite
SQLite is the first relational database management system written in the C computer language.
SQLite's working model differs from that of other database servers in that it is not implemented
as a distinct process accessed by a client application running in another program. It is, rather,
a feature of the utilizing software. SQLite is a common choice as an embedded database for
local/client storage in application software such as various web browsers, based on its
properties. It is likely the most frequently used database server engine today, with support for
all major browsers and operating systems, as well as embedded platforms. (codebeamer.com,
2022)
Figure 17 SQLite
MS Access
Microsoft's database management system - Because it supports many objects, such as DAO
(Data Access Objects), ActiveX Data Objects, and many more ActiveX components, MS
Access (Microsoft Access) is the primary option of software developers and data architects
when developing application software. To implement a graphical user interface, MS Access
has a relationship with Microsoft Jet Database Engine. It uses the Access Jet Database Engine
to store data in its own format. It may also immediately import or link to data from other
programs and databases. (atlassian.com, 2022)
58
Mohamed Shimash Siraj AD
Figure 18 MS Access
For constructing and developing websites, this is one of the most popular and dynamic
programming languages. This language may be used to manage the browser, alter the contents
of a displayed document, communicate client-side scripts with users, and execute asynchronous
communication, among other things. It was created by Netscape and takes a lot of its grammar
from the C programming language. JavaScript is often and efficiently utilized in both desktop
applications and game development. (apptio.com, 2022)
For a developer or site owner, the nicest thing about JavaScript is that it is one of the few
programming languages that is accepted and supported by all major browsers without the use
of compilers or plug-ins. It is also feasible to interact with non-web-based platforms. PDF
documents and desktop widgets this is a multiparameter language with a wide range of
capabilities. JavaScript also allows you to use functional and object-oriented programming
approaches. (atlassian.com, 2022)
A language's qualities dictate how it functions, how it responds, how easy its code is, and what
it can do.
59
Mohamed Shimash Siraj AD
Some of the most important elements of the JavaScript programming language are listed here:
Another popular and frequently utilized language for Web development that you might explore
is Java. Sun Microsystems created this object-oriented, class-based, and concurrent
programming language in the 1990s. Since then, the language has remained the most popular,
as well as a standard platform for enterprises and a number of mobile and game developers all
around the world. The software was created to function across a variety of platforms. This
means that a Mac-based software can operate on a Windows-based operating system. Java was
created with the intention of being used in interactive television, but its creators recognized
that the language and technology were much too sophisticated for the business. It was only
afterwards that it was incorporated into modern usage. (visual-paradigm.com, 2022)
Figure 20 Java
60
Mohamed Shimash Siraj AD
Each language has a certain mission, aim, or objective in mind. The five primary concepts or
purposes that have been considered when developing this language are listed below:
Python is a dynamic language computer language that is extensively used and broadly
applicable. Because the code is dynamic, a developer may write and run it without the use of a
compiler. The language was created with code readability in mind, which means that it has a
syntax that allows you to communicate a point or notion with only a few lines of code. This
idea of code readability is also achievable with Java, C++, and other programming languages.
This is a high-level or sophisticated language that is simple to comprehend and learn for
novices. (atlassian.com, 2022)
Figure 21 Python
Rdio, Instagram, and Pinterest are some of the apps that Python supports. Python, Django,
Google, NASA, and Yahoo, among others, support a variety of different web platforms.
Automatic memory management, a big library, a dynamic type system, and support for multiple
paradigms are some of the other aspects of this language.
61
Mohamed Shimash Siraj AD
Python is based on a fundamental philosophy and strictly adheres to its key ideas. The language
was created with the intention of being extremely extendable. As a result, the language is
simple to incorporate or embed into existing systems. The purpose of the language's creators
was to make learning a language enjoyable. The language has been modified by the developers.
So that it can be lowered if optimization is done too soon. Some of the concepts that have been
summarized are listed below:
Readability is crucial.
Complex is preferable than convoluted.
Beautiful is preferable to ugly.
Complexity is preferable to simplicity.
Explicit is preferable to implicit.
PHP
The language of the PHP hypertext processor is referred to as "PHP." This is a free server-side
scripting language that may be used for both web development and universal programming.
This is a widely used programming language that was first released in 2004 and currently
powers over 200 million websites across the world. Facebook, WordPress, and Digg are just a
few of the major sites that use this technology. (codebeamer.com, 2022)
Figure 22 PhP
62
Mohamed Shimash Siraj AD
C++ is a widely used, well-compiled, case-sensitive web programming language that is not
only useful but also allows for low-level manipulation. It is classified as a middle-level
language since it employs both low-level and high-level functions. Bjarne Stroustrup created
this language in 1979, and it was later enhanced and renamed in 1983. Because C ++ is an
object-oriented language, it adheres to the four object-oriented concepts of polymorphism,
encapsulation, inheritance, and data hiding. (cprime.com, 2022)
Figure 23 C++
The C++ standard library may combine a range of functions, such as strings and set
editing, and so on.
63
Mohamed Shimash Siraj AD
The STL, or default template library, has a number of techniques for manipulating data
structures and other components.
The components can be assigned literals, data types, and variables using the C++ core
language.
C language
C is a ubiquitous and appealing programming language that resembles the C ++ language and
was developed in the 1970s. This is the most extensively used programming platform,
providing building blocks for other languages including C++, Python, Java, and others. These
languages borrow functions, some of which contain control structures, the general grammar,
and standard libraries, either directly or indirectly. As a result, if you want to study
programming, you should start with C and C++ and then work on solidifying your
fundamentals. Static type system, lexical scope of variables, recursion, and structured
programming are all supported by this language.
Figure 24 C Programming
Here are a few items to assist you comprehend the C language's overall design:
64
Mohamed Shimash Siraj AD
Angular is a Google framework for building powerful web apps (originally created by Misko
Hevery and Adam Abrons). It's a framework for building rich, sophisticated online applications
that are yet simple to maintain. Angular has been used to construct a wide range of online
applications. (atlassian.com, 2022)
Figure 25 Angular
React
React is a declarative and very efficient JavaScript toolkit for creating interactive user
interfaces. It began in May 2013 and was designed by Facebook developer Jordan Walke. React
is used to generate reusable UI components for each state that may update and render data
without requiring the page to be reloaded. (brightwork.com, 2022)
Figure 26 React
Vue
Vue is a free JavaScript framework for designing better user interfaces. Evan You designed it,
and it was released in 2014. Vue's key selling point is that it is progressive, allowing it to adapt
to the demands of developers. It incorporates ideas from various frameworks and libraries, like
as Angular and React, to provide a small, lightweight solution with the greatest features and
methods. (cprime.com, 2022)
65
Mohamed Shimash Siraj AD
Figure 27 Vue
Ember
Ember is an open-source javascript front-end framework for developing strong online apps. In
2010, Ember was known as the SproutCore framework. ember was founded in December 2011
by Yehuda Katz, the creator of jQuery. Ember is a very opinionated framework based on the
MVVM (Model-View-View Model) paradigm. It comes with the Glimmer engine, which
speeds up rendering. Data binding, which connects two properties, and an inspection tool for
troubleshooting faults are two notable features. (codebeamer.com, 2022)
Figure 28 Ember
Polymer
Polymer was developed by a Google team of developers and debuted in 2015. It's a free
JavaScript framework for building cross-browser compatible online apps using reusable web
components. Polymer is used to build all major Google services, including YouTube, Google
Play Music, Google Play Movies, Allo, Google I/O, and Google Earth. Developers may use
HTML and CSS to design their own components, and JavaScript to add interactivity.
(cprime.com, 2022)
66
Mohamed Shimash Siraj AD
Figure 29 Polymer
Taylor Otwell created Laravel in 2011 and, like many current frameworks, it follows the MVC
design paradigm. Laravel is a PHP framework that prioritizes beauty, simplicity, and
readability. To study and improve laravel, one can start with laracasts, which offers hundreds
of courses. (apptio.com, 2022)
Figure 30 Laravel
CakePHP
CakePHP is a PHP framework that is free and open source. It should make application
development, deployment, and maintenance much easier. CakePHP is built on an MVC-style
design that is both strong and simple to grasp. Models, views, and controllers keep the business
logic separate from the data and presentation layers in a logical way. (cprime.com, 2022)
Figure 31 CakePHP
67
Mohamed Shimash Siraj AD
Ruby on Rails
David Heinemeier Hansson created Ruby on Rails, a highly productive web application
framework. Rails allows developers to create applications 10 times quicker than they could
with a traditional Java framework. Rails also comes with everything you'll need to build a
database-driven Web application utilizing the Model-View-Controller design.
(codebeamer.com, 2022)
Django
Another framework that allows developers to construct high-quality web apps is Django. It's
built to keep up with ever-changing editorial deadlines while while catering to the demands of
seasoned web developers. The apps are exceptionally quick, safe, scalable, and adaptable,
according to Django developers. (atlassian.com, 2022)
Figure 33 Django
68
Mohamed Shimash Siraj AD
ASP.NET
Microsoft's ASP.NET framework may be used to build sophisticated online apps for both PCs
and mobile devices. It's a lightweight and powerful framework for creating.NET web apps.
Overall, a foundation for efficiency, productivity, and speed. (cprime.com, 2022)
Figure 34 ASP.NET
CodeIgniter
Ellis Lab's CodeIgniter is a popular web application framework for creating dynamic
webpages. Because controller classes are mandatory but models and views are optional, it is
largely based on the MVC design. Code Ignitor claims high performance, little setup, and no
big monolithic libraries. (guru99.com, 2022)
Figure 35 CodeIgniter
69
Mohamed Shimash Siraj AD
2.1.6 IDE
An integrated development environment (IDE) is a software package that brings together the
essential tools for writing and testing software. To write, compile, and test software code,
developers employ a variety of tools. Text editors, code libraries, compilers, and test platforms
are all common development tools. A developer without an IDE must choose, deploy, integrate,
and manage each of these tools independently. An IDE is a framework, application, or service
that integrates several of these development-related tools into a single framework, application,
or service. The integrated toolset speeds up software development by detecting and reducing
code and typing mistakes. (visual-paradigm.com, 2022)
Sublime Text
Sublime Text is a coding editor that has completely changed the way we code. It's bright, open,
and ready to modify your file once you've managed to click the button. Sublime Text's
responsiveness is one of the characteristics that separates it as the best code editor in its class.
Another major benefit of Sublime Text is its incredible extensibility, which includes a large
and increasing list of plugins that can be added using the package manager. Topics that let you
to change the editor's look, code linters (which help you detect mistakes in your code more
quickly), Git plugins, color pickers, and other options are available..
Visual Studio Code is a code editor developed by Microsoft and, surprisingly, open source
software. VS Code may be the code editor in this list that comes closest to an IDE. It is very
robust and one of the slower programs at startup. However, while in use, VS Code is quick and
able to do some interesting tasks, such as: B. fast git commits or opening and sorting content
from multiple folders. VS Code is becoming increasingly popular - it is constantly expanding
70
Mohamed Shimash Siraj AD
its user base and pulling developers away from other editors. VS Code has a built-in terminal
and built-in Git support, both of which are big winners for fans of this program. The
IntelliSense function offers automatic completion of the code as well as information on
function parameters and known variable names.
Atom
GitHub created Atom, which is open source. It was strongly impacted by the new editor style
popularized by Sublime Text during its early development. There are, however, important
distinctions: Atom is a free and open source text editor that integrates easily with Git and
GitHub. Atom has previously experienced performance and stability concerns, however these
have considerably improved over time. It is true that it is slower to start than certain editors,
but it is just as dependable and easy to use after that.
Figure 38 Atom
71
Mohamed Shimash Siraj AD
Vim
Vim is, without a doubt, the most divisive code editor on our list. Vim is a command-line editor
that comes pre-installed on Linux and MacOS and can also be downloaded for Windows. Many
old school programmers and keyboard lovers prefer Vim. The application can be completely
managed via the keyboard, making it considerably faster and more efficient if you take the time
to learn how to use it. It's also incredibly adaptable (in that a command line program can be
customized). You may utilize a variety of keyboard shortcuts to speed up code editing, and
even better, you can construct custom instructions that are suited to your specific workflow.
Figure 39 Vim
Brackets
Adobe's open source editor, Brackets, looks to be well-rounded software. There aren't as many
syntax highlighting languages supported as there are in some other languages (but there are
still a few). It also supports CSS preprocessors like less and Sass because of its concentration
on front-end technology. The brackets aren't ahead on many of the typical performance and
reliability criteria, but there are a few anomalies worth studying. The majority of it can be
customized via menus, but the majority of the other editors on this list need editing
configuration files.
Figure 40 Brackets
72
Mohamed Shimash Siraj AD
The language's syntax is quite similar to that of HTML and XHTML, allowing for easy
synchronization and combination. A selector and a declarator make up CSS style sheets. The
language's basic syntax defines the style characteristics using several English words.
Allows people to save time by providing a stable basis on which they may rely. CSS
frameworks provide web developers with something to work with and change (if required).
Using a CSS framework is also the only option to construct a decent product for developers
with low coding expertise.
Can create a solution and put it through its paces with users. Using a framework to construct a
prototype or wireframe is considerably faster and easier than starting from scratch.
There are plenty excellent frameworks from which to choose. Because they couldn't locate a
good choice, some users give up utilizing a CSS framewor
Bootstrap
Bootstrap is a front-end programming framework for creating websites and online apps that is
available for free. The bootstrap framework is built on HTML, CSS, and JavaScript (JS) to
make it easier to create mobile-friendly websites and apps. The implementation framework, as
73
Mohamed Shimash Siraj AD
well as UI components, layouts, and JS tools, are all included in Bootstrap. The program is
either precompiled or may be downloaded as source code. (guru99.com, 2022)
Figure 41 Bootstrap
Foundation
Foundation and Bootstrap, the world's most advanced responsive front-end frameworks, are
both extensively used CSS frameworks. Foundation, on the other hand, is a far more advanced
framework. It's extremely adaptable and configurable. It's a handy tool for building responsive
websites and online apps, especially for businesses. Foundation is used by Facebook, eBay,
Mozilla, Adobe, HP, Cisco, and Disney in their products. (iplanenterprise.com, 2022)
Figure 42 Foundation
Yahoo released Pure in 2014, which is a lightweight and responsive CSS framework. It's made
using Normalize.css and uses Grids and Menus to help you develop responsive layouts. Pure
comes has a responsive layout by default, and unlike Bootstrap, it doesn't let you to create fixed
layouts.
74
Mohamed Shimash Siraj AD
Milligram is a lightweight CSS framework that can assist you in creating quick and tidy
websites. Milligram, despite its diminutive size, offers with a full collection of web
development tools. Milligram allows developers to take advantage of all of the capabilities
provided by the CSS3 standard. Milligram has become one of the top three lightweight
frameworks available as a result of these enhancements. (apptio.com, 2022)
75
Mohamed Shimash Siraj AD
2.2 Compare the differences between various software development tools and techniques
researched. Justify your preferred selection and preferred software development
methodology.
2.2.1 Comparison of Data Bases
76
Mohamed Shimash Siraj AD
77
Mohamed Shimash Siraj AD
78
Mohamed Shimash Siraj AD
Editing and Atom is, on the Searching for a Although VS t is a text editor
Workflow whole, a pretty file and across Code uses that runs from
smooth files is simple Electron, Node, the command
operating and quick. and HTML/CSS line. As a
system. When Sublime's in a similar way result, it's not
starting from performance as Atom, it is the type of
scratch, the has never quicker and has software where
most difficult suffered as a no noticeable you double-
part is result of having delays. click and
determining to search Additionally, the navigate about
which extra through Git integration is with a mouse.
programs are hundreds of quite useful. Opening,
required. files to find a Although not as shutting,
Another feature piece of code. strong as Source editing, and
of Atom that Tree, it proved to saving are all
Sublime lacks be ideal for typical controlled via
is the ability to operations like as keyboard keys.
drag and drop commits and diffs,
files and folders reducing
in the tree view. development time.
Customization Atom has an Atom and All of the Vim is quite
excellent Sublime are anticipated adaptable.
reference page extremely customization There are a
that explains similar. There capabilities are number of
how to override is the ability to included, examples of
the styles regulate things including preloaded Vim
79
Mohamed Shimash Siraj AD
80
Mohamed Shimash Siraj AD
A software development technique is a way for overseeing the development of software. This
generally has an impact on issues such as which functionality should be included in the current
version, when the product should be published, who is working on what, and which tests should
be performed.
There isn't a single approach that will work in every circumstance. For certain businesses, even
the heavily distorted waterfall technique is appropriate. In actuality, each company handles
software development project management in its own unique style, which varies somewhat
from project to project.
When adding new features, teams employ the agile development strategy to reduce risks (such
as mistakes, cost overruns, and changing requirements). Teams build software in iterations,
which feature modest increments of new functionality, using any agile strategy. Scrum, Crystal,
Extreme Programming (XP), and Feature-Driven Development are just a few examples of agile
development approaches (FDD).
81
Mohamed Shimash Siraj AD
Conclusion
The agile technique was chosen by the developers for the creation of the Online Tracking
System for the BAUHINIA Company. The following are the reasons why this strategy was
chosen. However, the key reason is that the clients (BAUHINIA Company) specifically
requested this way in their user requirement requirements.
Extreme Programming (XP), which involves a high level of interaction from two sides in the
software exchange: clients and developers, is one of the most essential agile approaches.
Through experience reports, the former motivates continued development by identifying the
most valuable characteristics of a software product. Developers, in turn, rely on this input for
every software update and every few weeks to test new improvements.
XP offers both benefits and drawbacks. A plus is that this agile technique necessitates a high
level of collaboration and less advance documentation. It is a time-saving and effective method.
82
Mohamed Shimash Siraj AD
consistent delivery model. However, the methodology also requires a high degree of discipline
and a lot of commitment from people outside the world of information technology. In addition,
advanced XP knowledge is critical for every team member to get the best results (apptio.com,
2022)
SCRUM
The application of SCRUM, like XP, has a combination of benefits and drawbacks. On the one
hand, this agile technique allows management teams to spot problems early in the development
process; on the other hand, SCRUM encourages collaboration among coworkers. SCRUM, on
the other hand, might lead to sloppy programming and scant data records for transfer. As a
result, the strategy is best suited for IT organizations that collaborate with management teams
to focus on products, features, and delivery.
83
Mohamed Shimash Siraj AD
Daily stand-up meetings, a daily event with a time frame in which all team members review
work progress and potential impediments, are a solid SCRUM practice.
SCRUM is a software development framework that has changed the industry. Its rapid
iterations and active cooperation between teams, consumers, and stakeholders helped it become
popular. For improved cooperation, there are designated team roles:
Figure 51 SCRUM
FDD methodology
The developer, who translates models into builds every two weeks, is the emphasis of the FDD
technique. Unlike XP and SCRUM, FDD emphasizes rigorous activities such as domain
traversal, design, coding, and validation. (codebeamer.com, 2022)
84
Mohamed Shimash Siraj AD
A set of functions is then used to put the model together. Each feature has its own development
and design plan. A component test is performed after a series of inspections to verify whether
the machine is ready for the building phase.
FDD argues for a well-organized development process that produces usable software that can
be created repeatedly. FDD allows for high-quality documentation and review of design and
code, which is a plus. However, the strategy necessitates a high level of design expertise and
planned security, as early flaws might result in more time-consuming fixes. FDD is most suited
to large business developers in the banking and financial industries, where process maturity
and quality control are required.
Crystal methodology
Crystal Clear, Crystal Yellow, Crystal Red, and other minor agile approaches are part of the
Crystal methodology family. Alistair Cockburn, who was involved in the design of the agile
manifesto for software development, presents this series of agile techniques. The features of
distinct projects are determined by three key factors: team size, system criticality, and project
priorities. Projects are classified into four criticality categories based on system criticality:
comfort (C), readily available money (D), vital money (E), and life (F) (L). Crystal preaches
early delivery of functioning software, frequency, reduced bureaucracy, and strong user
interaction, just like most other agile techniques. According to the Crystal family, each project
is unique and necessitates the use of diverse methods, techniques, and principles. As a result,
it is regarded as one of the lightest agile methodologies. (accompa.com, 2022)
85
Mohamed Shimash Siraj AD
Kanban is a lean production planning approach created by Toyota engineer Taiichi Ohno.
Kanban was created as a planning method to help with production and inventory management.
Kanban is a popular method for work groups to execute just-in-time (JIT) manufacturing.
Kanban has its origins in the late 1940s, when Toyota was looking for a way to replicate
supermarket storage in a plant. When a consumer visits a utility shop, for example, they are
given the things they require. (codebeamer.com, 2022)
86
Mohamed Shimash Siraj AD
Lean VS Scrum
SCRUM's ideas, such as team organization and continual feedback, are highly valued by many
individuals. Experts are now turning to Kanban, a strategy that many people use to enhance
mobility in a new sector and to put lean expertise to good use. (techterms.com, 2022)
First and foremost, we must emphasize that SCRUM is an agile software development
methodology. At the very least, it is commonly used by programmers. SCRUM, to be honest,
still offers a lot of advantages. It gives a clear picture of a team's duties, keeps the focus on the
final objective, and assists teams in finding the most efficient ways to complete work. SCRUM
even has a name that assures that teams have the tools they need to complete a project and
overcome any difficulties.
The feedback loops that team members may utilize to ensure that everything stays on track are
one of the most popular components of SCRUM. Overall, the technique provides a framework
for users to discover where a software issue originated, allowing them to gain new information
and make appropriate improvements.
A common complaint about SCRUM is the length of its sprints with time slots that startups
consider too long. The main criticism is that long sprints lead to rare releases, which can cause
work teams to pull their feet when they respond to customer needs. This often leads to
counterproductive habits, such as teams that work with archaic knowledge.
Under-sized sprints, on the other hand, force major functionalities to be broken down into
smaller tasks that are unlikely to be valuable to customers and may cause confusion among the
team's goals. The SCRUM sprint lengths are supposed to be constant, however they are no
longer as relevant in a world where technological advancements are evolving at a quicker rate
than ever before. People's tastes are changing at a quicker rate as new inventions enter the
market.
To stay afloat on the market, developers must keep moving at a breakneck speed. Only if the
duration of a sprint prevents tasks from being done on time may developers lose.
Kanban is a planning methodology that overcomes the issues presented by SCRUM. Rather of
working in time-lapse sprints, Kanban restricts the amount of topics a group may focus on in a
given period of time. (cprime.com, 2022)
87
Mohamed Shimash Siraj AD
The feature is now ready for mass production (if those responsible choose to continue).
The team may then go on to the next most essential project, which might be uncovered the
same day.
DevOps aims to shorten time to market by lowering the rate at which new releases are released,
reducing the time between patches, and minimizing downtime while maximizing
dependability. DevOps businesses strive to achieve this by automating continuous delivery to
guarantee that everything operates smoothly and dependably. DevOps methodologies help
companies reduce time to market while also enhancing customer happiness, product quality,
and staff productivity and efficiency.
The waterfall technique is often regarded as the most conventional software development
method. The waterfall approach is a rigid linear model that focuses on specified goals and
comprises of sequential phases (requirements, design, implementation, verification, and
maintenance). Before the following step may begin, each phase must be completed completely.
In most cases, there is no way to alter the project's scope or direction. (apptio.com, 2022)
88
Mohamed Shimash Siraj AD
Advantages: The waterfall development method's linear form makes it easier to understand
and manage. The waterfall technique works well for projects with defined goals and predictable
needs. The waterfall development process can help less experienced project managers and
project teams, as well as teams whose composition changes regularly.
Disadvantages: Because of its rigorous structure and strict controls, the waterfall development
technique is frequently sluggish and costly. Users of the waterfall technique may be enticed to attempt
other software development methodologies as a result of these drawbacks.
Conclusion
The waterfall approach was not chosen since the organization had previously used it and it was
not encouraged.
89
Mohamed Shimash Siraj AD
Advantages: Fast application development works well for projects with a clear business aim
and a clearly defined user group that aren't computationally heavy. RAD is especially beneficial
for time-sensitive small to medium-sized projects.
90
Mohamed Shimash Siraj AD
91
Mohamed Shimash Siraj AD
92
Mohamed Shimash Siraj AD
2.3 Justify the tools and techniques chosen to realize a custom-built website. Justify your
preferred selection of tools and techniques in deducing an appropriate solution to a
business-related problem.
2.3.1 Web Server Software
Others' reasons to utilize XAMPP
1. Speed of development: Bootstrap is a set of ready-to-use code blocks that allows a web
developer to swiftly design a new website. It is not necessary to write code from the ground
up. There are a plethora of ready-to-use bootstrap designs available online.
2. Web Developers with a Huge Support Community: Web developers with a large support
community can seek assistance in the event of a problem. Bootstrap is continually upgrading,
and users are occasionally updating as well. Github has a community of over 500 contributors
and over 9000 comments.
3. Pre-design using CSS, HTML, and JS components: When creating a website, there are a few
key aspects to consider. The importance of headings, tables, anchors, buttons, graphics, and
typography in the creation of a captivating website cannot be overstated. To accomplish so,
we'll need to condense our knowledge of CSS, JavaScript, and HTML codes. All of these
components are included in Bootstrap.
5. Bootstrap is compatible with all major web browsers, including Google Chrome, Mozilla
Firefox, Internet Explorer, Opera, and Safari.
93
Mohamed Shimash Siraj AD
6. Bundle plugin: Bootstrap provides a JavaScript plugin. If we need features like sliders,
dropdowns, carousels, etc., just add a few lines of JS code and everything will be done on the
website.
PHP-based web applications are an encrypted language with numerous dynamic but
flexible capabilities that are easy to protect. When compared to other programming
languages, they provide the most freedom. The adaptable functionalities may be
tailored to the current web development requirements. PHP, for example, is an open
source language that can be used to write code and then combined with other libraries
to incorporate additional special effects. It's simple to mix and match with dynamic
libraries like XML and graphics.
PHP is compatible with all CMS solutions and can assist web developers in meeting
consumer demands. The websites created by PHP are carefully customised in every
manner for a first-class user experience. This is due to the fact that CMS such as
WordPress, Drupal, and Joomla are built on this framework.
PHP is a powerful programming language with many useful capabilities, such as cross-
platform customizability, multi-browser compatibility, and secure online programs. In
comparison to other web languages, PHP is a fast language that works with all major
Web servers to give consistently high levels of performance. Furthermore, this is one
of the safest ways to create a Web site with an extra layer of protection against viruses
and dangers.
PHP is a free programming language that is maintained by a wide community of users
who offer technical help. Because it is distributed under a generic license, development
expenses are lower, and most of its applications, such as MySQL and Apache Server,
are free.
PHP has a plethora of useful frameworks for creating a versatile and powerful web
gateway. Laravel, CodeIgniter, Symfony, Zend, and Phalcon are some of the diverse
and powerful frameworks that allow organizations construct rich applications while
keeping high quality and efficiency standards, thanks to their modular features, built-in
support, and robust community. These frameworks allow you to create and deliver
complicated apps and websites in a fraction of the time.
94
Mohamed Shimash Siraj AD
1. Data security
MySQL is the most secure and dependable database management system available, and it's
utilized in major online applications like WordPress, Drupal, Joomla, Facebook, and Twitter.
The data security and transaction processing features provided by MySQL's current version
may be extremely beneficial to any organization, particularly e-commerce businesses that deal
with regular money transfers.
2. Scalability on demand
MySQL has unrivaled scalability, making it easier to operate deeply embedded programs in
smaller spaces, even in big warehouses with terabytes of data.
MySQL's main advantage is its on-demand flexibility. This open source solution allows e-
commerce businesses with specific database server requirements to fully customize it.
3. High performance
MySQL has its own storage engine framework that allows system administrators to configure
the MySQL database server for flawless performance. Whether it's an ecommerce site that
handles a million queries a day or a fast transaction processing system, MySQL is designed to
meet even the most demanding applications while providing optimal speed, full text indexes
and unique memory caches for to ensure improved performance.
MySQL provides a wide choice of high-availability options, including dedicated cluster servers
and master/slave replication topologies, and is available 24 hours a day, 7 days a week.
MySQL is at the top of the list of reliable transaction database engines on the market. It's the
ultimate option for total data integrity, with capabilities like full atomic, consistent, isolated,
persistent transaction support, multi-version transaction support, and unconstrained row-level
locking.
The server's referential integrity ensures that deadlocks are detected immediately.
95
Mohamed Shimash Siraj AD
MySQL ensures ease of use from the start, with an average download and installation time of
less than 30 minutes. MySQL is a full self-service solution that automates everything from
storage expansion and configuration to data creation and database maintenance, regardless of
whether your platform is Linux, Microsoft, Macintosh, or UNIX.
2.3.5 IDE
Reasons for choosing Sublime over others
Customizability
Sublime Text, like Atom, may be completely modified with plugins. Users may search, install,
update, and delete plugins right in the editor using the built-in package management, which
allows them to do so without having to reboot.
Sublime swiftly demonstrates the program's speed. The code editor made with C/C++ and
Python is simple to use. It loads fairly instantly when you pick it from the Windows Start menu.
Atom, on the other hand, takes a few seconds to appear on the screen.
Powerful search
Sublime's strong search engine is another standout feature. Regular search and replace searches
for regular expressions, is case-sensitive, and searches for whole words. You may also save the
results of your search in a buffer for later use.
Simultaneous processing
One of the most interesting features of Sublime Editor is the ability to use multiple cursors
simultaneously. The bottom line is that you can do the same editing in multiple places at the
same time.
96
Mohamed Shimash Siraj AD
The development process is rationalized and simplified: Lean development aids in the
elimination of redundant phases in the software development process. It reduces the
cost and speed of development by conserving the most valuable resources – time and
money.
Prevents any potential losses: Losses due to overproduction must be avoided at all costs.
When it comes to software, overproduction entails a high level of functionality.
Increases team participation: One of the primary values of lean development process is
people. Their participation aids in the prevention of losses and the optimization of
operations.
Lean methodology is also easily scalable, making it a viable alternative to more
traditional software development methodologies that were developed for huge projects
in the first place. Because it is adaptable across team boundaries and tends to unite
teams and optimize cooperation, lean is a good fit for agile and devops.
It also allows for more functionality to be provided in less time and empowers the
development team in decision-making, increasing motivation to perform the best job
possible.
97
Mohamed Shimash Siraj AD
Activity 3
3.1 Create a presentation to review followings
3.1.1 Presentations about problem definition statement, proposed solution and the
development strategy of business application.
Following that, there may be an introduction of the BAUHINIA Clothing Company's online
shopping system and how it can help address the company's problems.
Figure 58 Overview
98
Mohamed Shimash Siraj AD
99
Mohamed Shimash Siraj AD
FigureFigure
62 User64Access
Goals Level
100
Mohamed Shimash Siraj AD
101
Mohamed Shimash Siraj AD
102
Mohamed Shimash Siraj AD
Figure 70 Sitemap
103
Mohamed Shimash Siraj AD
104
Mohamed Shimash Siraj AD
Figure 74 Feedback
105
Mohamed Shimash Siraj AD
106
Mohamed Shimash Siraj AD
After the presentation, some users and volunteers provide input on the system, as seen in the
image above. The feedback questions concern system design and order processing. The
following is a summary of their responses to this question.
According to this Google form result, 60% of users claim they have the capacity to handle
orders. This is a fantastic system. Ability to handle orders is cited by 40% of users. This system
is excellent.
This Google form result reveals that 100% of users agree that the new system solves a key
issue.
107
Mohamed Shimash Siraj AD
According to this Google form result, 60% of users claim System report and stock handle
activates. This system is excellent. System report and stock handle activates are rated as
excellent by 40% of users.
The user provides feedback on future system upgrades for BAUHINIA Clothing Company in
response to the query "advice regarding the system." This suggestion will be taken into account.
And they'll get better in future releases.
108
Mohamed Shimash Siraj AD
This image depicts the user login screen for the BAUHINIA e-commerce website. There are
several basic traits that all systems have in common. Users who want to access the system can
do so by entering their username in the box marked 1 and their password in the space marked
2. The system will automatically authorize access if the user enters the right username and
password and clicks the log-in button. Which is denoted by the number three. Any new user
who wants to establish a new account can utilize the signup feature to build a profile, which is
indicated by a number 4.
109
Mohamed Shimash Siraj AD
Signup page
The user sign-up screen for the BAUHINIA e-commerce website is seen in this image. There
are several basic traits that all systems have in common. If users wish to join the system, they
must first fill out the necessary information in order to create a profile.
No Detail Features
1 First name In this area, the user must give their first name.
2 Last name In this section, the user must input their last name.
3 Password When a person wants to log in, he or she is required to enter a
secret password.
4 address For delivery purposes, the user must input the right address.
5 Tele. no The user must input a valid and working phone number.
6 Profile pic The user can choose which profile image they want to use.
7 create When the user clicks the Create Account button after successfully
filling out the form, the system generates a new account for the
user.
110
Mohamed Shimash Siraj AD
Dashboard
Figure 81 Dashboard
The dashboard of the BAUHINIA e-Commerce website is seen in this photograph. No. 1 is a
search area where users may quickly locate what they're looking for. No. 2 assists visitors in
accessing various sections of the e-commerce website based on their demands. No. 3: The
consumer clicks on the link to "explore more products." This allows the consumer to look into
different products.
111
Mohamed Shimash Siraj AD
The View product page of the BAUHINIA e-Commerce website is seen in this image. When a
user clicks on the 'explore other product' link, the graphic above displays information about the
page that will be presented. This allows the consumer to look into different products. Once the
consumer has found the item they wish to purchase, they may pick it. The user is presumed to
have chosen the object indicated by the number 1 in this case.
112
Mohamed Shimash Siraj AD
When a user clicks on their favorite item, this picture displays information about the page that
will be presented. No. 1 displays the product name, while No. 2 displays the product brand,
size, color, and price, while No. 3 displays picking the item for shop into the 'add to cart page
with the button indicated. and Actions such as purchasing an item with the number 4 button,
as well as no. 5 displaying product details. The last one (number 6) displays client feedback
and ratings.
113
Mohamed Shimash Siraj AD
If a visitor tries to purchase the item, the visitor will see a warning notice similar to the one
shown above if the visitor does not have an account with the BAUHINIA Clothing company's
online shopping system. Based on the symbol inside the zone stamped by number 1, it is
possible to confirm that the client does not have an account.
114
Mohamed Shimash Siraj AD
The ranking page of the BAUHINIA e-Commerce website is seen in this image. If the user
selects to buy the product, they will be sent to this page. The information in Nos. 1, 2, 3, and 5
is valid; the user may place his order by clicking on the Location Order button (no6); users can
also examine product details to purchase the (no7) item by clicking on the Product Details
button (no7).
115
Mohamed Shimash Siraj AD
Wishlist page
The User Wishlist page of the BAUHINIA e-commerce website is seen in this image. The user
may pick and keep all of their favorite goods, just like any other merchandise. If a user does
not like a product after storing it, he or she can erase it. The number 1 is used to represent it.
and If the user wishes to buy the item, he or she must click on the second-mentioned button.
116
Mohamed Shimash Siraj AD
My orders page
The user order page of the BAUHINIA e-commerce website is seen in this photograph. This
page is used to examine information about items that the user has purchased. Users may also
track their current purchases, as well as determine when the item will be delivered and track its
present location. Users, on the other hand, dislike that product. Order cancellation is also
possible.
117
Mohamed Shimash Siraj AD
Cancellation pages
This image may be found on the cancellation page of the BAUHINIA e-commerce site. The
user can cancel their orders using this option. Users may also examine the current state of the
cancel operation after it has been cancelled.
118
Mohamed Shimash Siraj AD
My return pages
The image above shows data from a website designed to provide points of interest about items
returned by the customer following delivery of the item ordered by the client. Clients can also
check the status of their return preparations using this page.
119
Mohamed Shimash Siraj AD
Login page
The Employee Login Page is seen in this image. If any employee want to access the system,
they should type 'username' in field 1 and 'password' in field 2. After entering the right
username, password, and employee type, click the log-in button, the system will immediately
authorize access. Which is denoted by the number four. Any new employee who creates a new
account has a signup option to construct their profile, which is indicated by a number 5.
120
Mohamed Shimash Siraj AD
Dashboard
Figure 91 Dashboard
The Employee Dashboard page is seen in this image. This dashboard controls the entire system.
The features denoted by the number 1 are present in the system. Employees can access the
needed pages via the inner sidebar.
121
Mohamed Shimash Siraj AD
The Employee type creation page of the BAUHINIA e-Commerce site is seen in this image. In
the box shown by the number 1, the employee can input the Employee type name. Employees
can save the Employee type by clicking the 'create' button.
122
Mohamed Shimash Siraj AD
No Detail Features
1 First name Employee must enter their First name in this field.
2 Last name Employee must enter their last name in this field.
3 Employee user Employee must enter their employee user name in this field.
name
4 Password Employee must enter a secret Password this is used to this is
when the user tries to log in
5 Gender Employee must to select their gender
6 E-mail Employee must enter the correct E-mail address for
communication purposes.
7 address Employee must enter the correct address for communication
purposes.
8 Tele. no Employee must enter the correct workable telephone number.
9 Profile pic The Employee can upload the desired profile image.
123
Mohamed Shimash Siraj AD
10 create After filling the form correctly, the employee click creates
button system automatically creates a new account for the
employee.
The employee view page of the BAUHINIA e-Commerce site is seen in this image. If workers
wish to find a certain author employee, they can do so by typing his or her name in the field
indicated with the number 1. Employees also prefer to edit or add information about
themselves, such as their profile photo or name. Employees can alter details by pressing the 2,
3, 4 buttons, correspondingly.
124
Mohamed Shimash Siraj AD
This image depicts the BAUHINIA e-Commerce site's product type creation page. In the box
shown by the number 1, the employee can insert the product type name. Employees may save
the product type by clicking the 'create' button.
125
Mohamed Shimash Siraj AD
126
Mohamed Shimash Siraj AD
This image depicts the BAUHINIA e-Commerce site's product view page. If workers want to
edit or add product data such as the image or name. Employees can alter details by pressing the
1, 2, 3 buttons, correspondingly. If staff desire an inventory report, they may click the "report"
button, and the system will produce one for them.
127
Mohamed Shimash Siraj AD
The customer View page of the BAUHINIA e-Commerce site is seen in this image. This page
is a survey for those who have registered for the system.
128
Mohamed Shimash Siraj AD
This image depicts the BAUHINIA e-Commerce site's Review view page. This page is based
on a client survey that was practically identical to what they got. These highlights aid in
determining customer preferences and attitudes. Additionally, it is possible to figure out which
things are most likely to sell.
129
Mohamed Shimash Siraj AD
This graphic depicts the BAUHINIA e-Commerce website's Monthly Income Analyzer
interface. If an employee clicks the "report" button, the system generates a monthly income
report for them.
130
Mohamed Shimash Siraj AD
3.2.2 Assess new ideas or possible improvements to the System Developed while justifying
the reasons for including/not including them in the application developed.
3.2.2.1 Future Improvements
Table 8 Future Improvements
Feature Detail
Password Encryption Password encryption is executed within the system because this
can be an awfully critical security degree and there's less time to
execute that.
Order Cancelling This feature has been incorporated in the system for the benefit
of the customers since it allows them to cancel a purchase within
a certain time frame.
Alert Message This feature has been integrated into the system for the benefit of
the clients. This feature will notify the user if the customer
missed to complete any crucial tasks when making the purchase.
131
Mohamed Shimash Siraj AD
132
Mohamed Shimash Siraj AD
Activity 4
Conduct a critical review for the design, development, and testing stages of
the Inventory Control application by analyzing the factors that influence its
performance against the problem definition statement and initial
requirements. Conclude the review by reflectively discussing the risks
identified at the beginning and critically evaluating the strengths and
weaknesses of the application developed. Identify and justify the
opportunities for improvement and further development of the application
you developed.
4.1 Evaluate the Performance of a Business Application Against its Software Design
Document and Initial Requirements.
This table shows how the system is designed to meet user needs and system requirements.
4.1.1 User Requirements
User Implementation in the System
Requirements
133
Mohamed Shimash Siraj AD
Users’ registration This picture depicts the process of creating a user account on the
system.
Add new items to On the system, this graphic depicts the user's account creation.
Inventory
134
Mohamed Shimash Siraj AD
Generate Report This graphic depicts the system's Generate Report on Product
about Product Availability.
Availability
Generate Daily This graphic depicts the system's Generate Daily Report on Orders.
Report about
Orders
135
Mohamed Shimash Siraj AD
Generate a This image depicts In the system, create a Monthly Income Report.
Monthly Income
Report
Update Item On the system, this graphic depicts Update Item Details.
Details
136
Mohamed Shimash Siraj AD
Usability This graphic demonstrates how simple and user-friendly this system is.
This functionality has been incorporated in the system, according to the
evidence.
Availability This method is set up using the internet. As a result, users can access the
system at any time.
Supportability The major aim for establishing this system was to make it simple to process
orders, as seen in this graphic. As a result, developers On the system, a
dedicated page is generated.
137
Mohamed Shimash Siraj AD
Security This image suggests that the system has a few security structures dependent
on access, one of which may be the login page.
Wish list This feature allows users to store their favorite goods for purchasing
later.
138
Mohamed Shimash Siraj AD
Return Due to reluctance or other reasons, the user can return the item provided
within a specific time frame.
Track my The features include the ability to track an order after it has been placed.
Order
139
Mohamed Shimash Siraj AD
Conclusion
Building an online monitoring system for Bauhinia Company, which now uses a manual
tracking approach, is the aim of this project. The student is required to develop a system that
addresses user requirements including, but not limited to, order administration, product
manufacturing, invoice creation, and daily report generating. The learner created the system
using the custom-built method because to its adaptability, user friendliness, usefulness, and
other features. The student picked CSS and Bootstrap as the front-end framework for the
system, while the Php language was utilized to link the database on the back end. MySQL has
been utilized for the database, while sublime has been used as the system's source code editor.
The learner gained knowledge while constructing the system, such as the necessity to produce
a design document that includes the user requirements and other system specifications before
developing the system. This is required in order to provide the developer with a clear image of
the desired system. The system must be divided into two parts during development: first, a
group of developers must work on the front-end and replicate the wireframes that have
previously been developed, and second, the net team must work on logical code for accessing
data from databases at the backend. For a better development with fewer mistakes, these two
works must be completed in order. Because the learner designed and developed the system for
the assignment on their own, it helped them understand the importance of front-end and back-
end work and how they communicate and function together. They also realized that they needed
to be done separately to reduce errors and save time and resources. The learner also learned the
necessity of reviewing the system once it has been successfully constructed, because this will
guarantee that the system is functioning effectively and will assist the developers in
understanding any faults that may occur. Preparing user documentation for any system would
assist other users/developers in going through it and working appropriately, reducing ambiguity
in using the system and ensuring a better user experience for the users. Overall, this work
provides the learner with the necessary idea and knowledge for designing a system for a firm,
as well as the proper documentation of the system to be delivered to the company's top
management.
140
Mohamed Shimash Siraj AD
Self-Criticism
The following are believed to be the learner's strengths:
Since the learner had a variety of experiences and educational backgrounds, which help
to foster more original thought, the student's varied knowledge seemed to be a plus.
The learner is a more devoted and determined individual. Despite the fact that the
learner has different professions and credentials, their dedication to participate in this
study demonstrated their enthusiasm to study, and this behavior assisted them in
completing the tasks efficiently and without errors.
A learner is a person who puts forth a lot of effort. Despite his other professional and
personal obligations, the student was able to complete the task within the specified time
frame.
Learner possesses strong presenting and communication abilities, which aided in the
narration of our strategy to professors and colleagues, as well as the ability to
successfully arrange assignments.
Learners have a specific degree of understanding of how to utilize technology
effectively, which aided us in accurately preparing documentation and creating the
system for the organization.
Another strength that the student has was the ability to receive adequate help and
supervision from the specific professor. As a result, the learner was able to receive
sufficient instruction in order to complete the assignments and solve the issues in a
timely manner.
The learner's multi-skilling ability appears to be a significant strength that aided in the
simultaneous processing of the assignment and other tasks.
The learner's writing abilities were another asset that aided in the successful completion
of the tasks.
Being ambitious and never letting go of one's personality helped the student compete
with others and complete things more efficiently.
The learner's extrovert personality aided him in obtaining assistance from others in
creating the system and collecting the essential data.
141
Mohamed Shimash Siraj AD
Gantt chart
142
Mohamed Shimash Siraj AD
References
wimi-teamwork. 2022. 5w1h-method-project-management. [ONLINE] Available
at: https://www.wimi-teamwork.com/blog/the-5w1h-method-project-management. [Accessed
3 December 2022].
orientsoftware. 2022. web-technologies. [ONLINE] Available
at: https://www.orientsoftware.com/technologies/web-technologies/. [Accessed 10 December
2022].
tillerdigital. 2022. web-development-technologies. [ONLINE] Available
at: https://tillerdigital.com/blog/an-introduction-to-web-development-technologies/.
[Accessed 10 December 2022].
sheffield. 2022. ProblemStatement. [ONLINE] Available
at: https://www.sheffield.ac.uk/polopoly_fs/1.440722!/file/HowtoWriteaProblemStatement..
[Accessed 11 December 2022].
ofnisystems. 2022. user-requirement-specifications. [ONLINE] Available
at: http://www.ofnisystems.com/services/validation/user-requirement-specifications/.
[Accessed 10 December 2022].
techterms. 2022. system_requirements. [ONLINE] Available
at: https://techterms.com/definition/system_requirements. [Accessed 10 December 2022].
stakeholdermap. 2022. risk. [ONLINE] Available
at: https://www.stakeholdermap.com/risk/risk-definition.html. [Accessed 11 December
2022].
tatvasoft. 2022. software-development-methodologies. [ONLINE] Available
at: https://www.tatvasoft.com/blog/top-12-software-development-methodologies-and-its-
advantages-disadvantages/. [Accessed 18 December 2022].
143
Mohamed Shimash Siraj AD
144
Mohamed Shimash Siraj AD