You are on page 1of 22

THE FURNITURE VILLAGE

AUTOMATED SYSTEM
Fundamentals in Programming

Cardiff Metropolitan University


College of Business & Technology

Name : K. M. K. D. Michelle S.
Fernando

No : CL/HDCSE/CMU/100/03

Assessor : Ms. Vindya

Hand out date : 03rd of September

Submission Date : 04th of October


Contents

Abstract................................................................................................................................................1
Acknowledgement................................................................................................................................1
Task 01.................................................................................................................................................2
1 Uses of basic Programming Methodology...................................................................................2
1.1 Structures................................................................................................................................2
1.2 Modularization........................................................................................................................6
1.3 Procedural Programming Methodology...................................................................................7
Task 02.................................................................................................................................................9
2.1 Software Requirement Specification Document......................................................................9
2.2 Flow Chart...............................................................................................................................13
Task 04...............................................................................................................................................14
4.1 Testing......................................................................................................................................14
Unit Testing.................................................................................................................................14
API Testing...................................................................................................................................14
Questionnaires............................................................................................................................17
4.3 Future Work Expectations......................................................................................................18
References..........................................................................................................................................19
Conclusion..........................................................................................................................................20
Abstract

The Online Shopping application is a web-based tool for online shops. Users can use this
search engine to find products that are tailored to their needs. System also provides a drag-
and-drop feature, which allows users to add goods to their shopping cart. The search engine
gives a quick and intuitive style of product search in which a customer can interactively
search for a product, and the search engine would improve the product online information
offered. user-supplied data The user can then see the details of each product's design. They
can also read and write product reviews, as well as create their own. The key goal is to design
a user-friendly search engine that displays necessary information appropriately and allows for
drag-and-drop functionality.

Acknowledgements

Mr. Madhava Dabare, Software Engineer at Sysco Labs Sri Lanka, has enhanced the
ability to complete my assessment in the “Furniture Village Automated System.”

Finally, I'd like to thank all the people for their consistent support and guidance.

1
Task 01

1 Uses of basic Programming Methodology

The solution to evaluating such complicated problems using software development planning
and control is defined as programming methodology.

1.1 Structures

Structured Programming Technique can be characterized as a programming approach in


which the program is built as a single structure. It does not enable the ability to jump from
one instruction to another using any statement such as GOTO or SUCCL followed by a series
of instructions. Structured programming is supported by the following languages:
 C
 C++
 Java
 C# etc.

The three types of things that make up the structured program are as follows:
o Selection Statements
o Sequence Statements
o Repetition Statements

A well-structured software is made up of well-separated components. In a Structured


program, however, entry and exit are one-time events. The software makes use of single-
entry and single-exit elements. This is why it is well in programming community.

2
1.1.1 Selection Statement

Place a value on the conditional statement the statements associated with the structure
typically executed when a control expression in an if statement is considered to be true.
There are three types of Selection Statements,

1. If Selection Statement

2. If-else Selection Statement

3. Switch Selection Statement

3
1.1.2 Repetition Statement

Repetition structures, usually defined as loops, are used when a computer needs to process
one or more instructions repeatedly until a condition is met. Iteration is included into the C++
programming language. A loop repeats the same line of program code with each iteration as
long as a loop condition of some sort is satisfied.
There are three types of Repetition Statement,

1. While loops.

2. Do-while loops.

3. For loops.
4
Advantages
 Decide steps are essential in selection and repetition statements. These steps rely on
true or false variables be evaluated.
 True and false are also the values of the boolean data type in C++. It helps the user to
read.
 A boolean answer will be given by most functions that answer a true query (or a
true/false condition) .
 A true/false condition can be understood as any C++ expression that evaluates to a
value .
 Friendly to the user
 Easier to Maintain Because development is almost all problem-based rather than
machine-based, it is easier to maintain.
 Machine-Independent is, for the most part, easier to debug. (Jain, 2019)

1.1.2 Sequence Statement

We want the machine to follow the instructions we issue as programmers within that order.
For example, next do this, then this, then that, etc.
5
C++ allows us to have as many actions as we want in a sequence structure. We can sequence
many actions where a single action could be placed, as we'll see later. Unless otherwise
specified, C++ statements perform one after the other in the order in which they are written.

1.2 Modularization

Modular programming is the technique of trying to break down a computer program into
several functions.
With modular programming, multiple programmers can divide up the work and debug
different sections of the project independently. Modules define logical boundaries between
components and promote maintainability. Object-oriented programming (OOP) is, to a large
extent, compatible with the modular programming concept.

In modular programming, there is a primary module and numerous auxiliary modules. The
main module is turned into an executable that calls the auxiliary modules' functions.
Auxiliary modules are standalone executable files that run in the background while the main
EXE is active. This gives developers more flexibility with respect to module maintenance.
IBM Assembler, COBOL, RPG, FORTRAN, Morpho, Zonnon, and Erlang are among the
languages that support the module concept.

Advantages
• You won't have to write as much code.
• Multiple programmers can work on the same application at the same time with
modular programming.
• The code is split into multiple files.

6
• The codes are logical, and easy to understand.
• Errors are easier to notice because they are limited to a single subroutine or function.
• The same code can be applied to a number of different applications.
• It's straightforward to control the range of variables.

(Janssen, 2010)

1.3 Procedural Programming Methodology


In the object-oriented programming (OOP) paradigm, a program is made up of objects. An
object is a representation of a class, which is a data storage and handling system. In OOP, an
object acts like a mini-program or self-contained component. Procedural programming is in
contrast to event-driven programming, in which procedures are only called/executed in
reaction to a scenario. These events include mouse clicks, keyboard presses, adding or
removing a device, receiving data from an external source, and so on.

Key Functions
 local variable: A local variable is a variable that is declared in the method's main
structure and is limited to the local scope to which it is set. The local variable can only
be used within the method it is defined. If it is used outside of that way, the code will
fail.
 Passing Parameters: Parameter passing is a system for passing parameters to
functions, subroutines, and procedures.

Advantages
o A vast library of books and online course materials on tried algorithms is available,
making it simple to study while on the go.
o The source code is portable, so it may be repurposed for a different CPU.
o The code does not need to be replaced because it can be reused in other parts of the
application.
o The use of Procedural Programming reduces the amount of memory required.The
program's flow can be easily followed. (Gupta, 2015)

7
Task 02

2.1 Software Requirement Specification Document

Introduction
1. Purpose
The Online Shopping System (OSS) for the furniture shop web product is used to
enable one-stop shopping for both suppliers and buyers via the internet. It won’t able
sellers to open online storefronts, allowing customers to browse goods and make
purchases without having to go to a physical store.
2. Scope
This technique helps customers to update their product information and add or delete
products via the internet.
3. Definition
OSS – Online shopping system for the furniture village
Stockholder – Person who take part in this system
EX: Customer and administrator
Overview- Customers can buy products without needing to visit a store, while store
owners can provide items through this system.
4. Additional Information
Because the method relies on an internet server, any end user can utilize it to make a
purchase.

Overall Description

This article describes the problem that the current model is undergoing, which is impeding
the company's able to develop. It also includes a list of the proposed solution's stakeholders
and users. It also depicts the stakeholders' needs and desires, which were identified during the
requirements workshop's brainstorming session It also includes a number and brief
description of the main aspects of each proposed system, with a brief summary of each
component.
System Features
1. Functional Requirements
 Registration- If a buyer makes a purchase, they must first register;
unregistered users will not be able to use the shopping cart.
8
 Login- - The user logs in with a correct user id and password to the system.
 Cart - After logging in or registering, a client's ability to order or reject a product
from their shopping cart is known to as "changes to cart."
 Payment- Customers can choose from a variety of safe payment methods,
example: Online payment, Cash on delivery and paypal
 Logout- The customer would be logged out after making payments or reviewing
the product.

2. External Interface Requirements


 Hardware Interface
 All of the hardware are to connect to the internet, which would
operate as the system's hardware interface.. Ex: Modem, WAN-LAN,
Ethernet -Cable
 Software Interface
 Since the program is based on a server, any scripting language, such as
C++, is allowed. The system needs a database, such as MYSQL, to
handle any system transactions. For internet naming, the system also
requires DNS (domain name space). In order to interact with the
system, the user would require a web browser.

Non-Functional Requirements

Necessary Non Functions as follows:


o Security for data base
o Improved component design to increase peak performance
o Availability at all moments of the day and night

Other Non-functional requirements are;


 Security- In all transactions involving customers’ information, the system employs
secure socket layer. Customers' personal and financial details will be encrypted before
they are sent to the server via unsecure links like the internet. In a letter to the public,
NHS Trustees stated that only verified administrators will have accessibility to the
system's back-end servers.

9
 Reliability- The dependability of all of the program's component elements is critical
to the container's and its underlying operating system's stability. The database backup,
which is maintained and updated on a regular basis to reflect the most current
changes, is the system's primary source of reliability.
 Maintainability- Program is being developed with modularity in mind, making it
simple to maintain. Database is kept up-to-date using a commercial database, and the
application server runs the site. The program will be re-initialised in the event of a
failure.
 Portability
 Extensibility
 Reusability
 Compatibility
 Resource Utilization

Assumptions and Dependencies


 It is expected that the designated hardware will function very well with third-party
operating system and software.
 The customer has an Internet connection and a computer with a browser.

10
Preliminary Schedule 

(Seiwald, 2016)

11
2.2 Flow Chart

12
Task 04

4.1 Testing

Software testing is a process of performing many tasks with the goal of recognizing software
issues. Software testing maintains software quality and represents the complete analysis of
various phases of the project, such as strategy, design, and algorithms.

Unit Testing
Unit testing is a type of dynamic testing in which the software is compiled and run in real
time. Testing was carried out in tandem with module design, with each form of input
being tracked and its relationship to the relevant output checked until the module was
discovered to be functional.
Visual Studio 2019 includes built functionality for application testing. Without use of a
feature, unit testing can be done in Visual Studio 2019. For the purpose of unit testing,
various methods have been established. For these functions, test cases are effective
production (Schulz-Hofen, 2009).

API Testing

Function Test case Conclusion

Login It properly
works after
entering
correct
username and
password

13
Invalid If user enter
login invalid
username or
password
system doesn’t
work

Search User can


Product search their
needs

Furniture Furniture type


Types of furniture
village

14
Payments Two payment
methods are
available

Exit If user wants


to exit enter
“YES”
otherwise User
doesn’t want
to exit enter
“NO”

15
Help If user needs
some help
enter users
email. Then
administrator
will contact
user

16
Questionnaires
1. Which of the following things come to mind when it comes about our product?

Feedback-
• Good stuff at decent rates with very excellent service. The entire process was
exceedingly swift and courteously followed through, from ordering,
acknowledgment, delivery notification, and follow-up following delivery.
Definitely a company who together we will be happy to deal in the future.
• From start to finish, the people were great, and the stools are still of great
quality!!
2. How much do you agree or disagree with the following statement: The company
made it simple for me to handle my problem?

Feedback
• The furniture arrived in great shape. I'm quite happy with the quality. The
customer service was outstanding.
• Great condition
3. What problem would you like to solve with our system?
Feedback-
• Lack of security
• Must be more attraction and simple
• Need more pictures of items
• Must be have mobile version more easier
4. What are the top 3 features that we're missing?
1. Minimum Peak time
2. Cart for add wishing list
3. More secure for payments (Paypal)

4.2 Limitations

There is no built-in check-out system in this application. This application requires the
integration of an external checkout package. Further, users would be unable to save shopping
carts for later access, i.e. they are unable to make wish lists for later access. This program
lacks abilities that allow users to create price ranges for products and receive alerts is when
price falls well within range.
17
4.3 Future Work Expectations

The acts may be carried out in the next,


 The current process should be enhanced to allow users to create
accounts and save goods to wish lists.
 users Generally may sign up for price alerts, which would warn them
when a product's price falls below a certain threshold.
 At the moment, the system is limited to the shopping cart process.
 new User can save multiple shipping and invoicing details. During
checkout, they can use the drag and drop feature to select delivery and
payment details.
 Client and viewers database must improve.
 Increased client delight and loyalty

18
References
Gupta, G., 2015. /hackr.io/blog. [Online]
Available at: https://hackr.io/blog/procedural-programming
[Accessed 30 september 2021].

Jain, S., 2019. geeksforgeeks. [Online]


Available at: https://www.geeksforgeeks.org/structured-programming-approach-with-
advantages-and-disadvantages/
[Accessed 29 september 2021].

Janssen, D. J. a. C., 2010. techopedia. [Online]


Available at: https://www.techopedia.com/definition/25972/modular-programming
[Accessed 1 Octomber 2021].

Schulz-Hofen, J., 2009. /plan.io. [Online]


Available at: https://plan.io/blog/test-plan/
[Accessed 1 october 2021].

Schulz-Hofen, J., 2009. plan.io. [Online]


Available at: https://plan.io/blog/test-plan/%20
[Accessed 1 october 2021].

Seiwald, 2016. perforce. [Online]


Available at: https://www.perforce.com/customers
[Accessed 2 october 2021].

19
Conclusion

The objective of 'Online Furniture Shopping' is to provide a web-based application that


allows users to search for, view, and create better products. Users can interactively search for
products while a search engine refines the outcomes. Viewers can read reviews as well as
write their own.

20

You might also like