Describe a range of algorithmic and logical approaches to solve problems using computational thinking.
LO4: Identify and use fundamental hardware, software and programming resources and techniques.
Case Study
DailyMart is a small supermarket chain that sells groceries including food and other non-food items. They have 20 branches
across London. They have records of the locations of all the branches. Their products come from suppliers from around the
EU. They keep records of all their products. They also have a loyalty card program. For that reason, they need to store customer
details. Currently, all their records are paper based.
They would like to have a centralised database for all these records. They also would like to communicate with each branch
electronically. Therefore, they would like a proposal of how that can be done.
Computers in each branch are running on Intel i3 processors with 2 GB of RAM and they don’t have any screens for their
Checkout/Till System. They would like to upgrade the Computer Systems and have touch screens at the Checkouts/Tills.
They would also like you to write a simple program in Java for their Checkout Systems. For instance, they have 10 cans of
coke in stock, and they must always have at least 5 cans in stock. What happens:
• If they sell 3 cans
• If they sell 7 cans
You are a System Analyst, and they have contacted you to propose to them a solution for the upgrade of their entire System
(hardware and software) and the Network.
You are required to do the following:
Tasks:
Write a report that includes the following:
1. Introduction – Briefly describe the problem that you have been presented and how you are going to approach the
solution logically.
2. Suggest hardware requirements with justifications (I/O devices, Storage, RAM, etc.).
3. Suggest Software requirements with justification (OS, Application Software, etc.).
4. Propose network connectivity and data solutions (Local or Cloud based? Explain why).
(Consider that different users will require different types of hardware and software).
5. Create a simple database structure (i.e. an ERD) for their database. Justify the Entities and the Attributes you have
chosen for the database. Explain the importance of Primary and Foreign Keys.
6. Describe what the purpose of an algorithm. Use one example of a searching algorithm.
7. Write an algorithm for linear search through a database. Explain the steps. You are encouraged to use
images/diagrams of the steps.
8. Create pseudocode based on the algorithm you have written.
9. Present 2 Diagrams – Use Case and Flow Chart, based on the algorithm and the pseudocode. Briefly explain the
diagrams.
10. Describe the different types of data with examples of where and how they can be used.
11. Describe the use of Variables and Constants with examples.
12. Briefly explain the difference between Compiler, Interpreter, Linker and Assembler.
13. Write a simple programme to implement the solution you have proposed. Include code and output snippets and
explain the code.
14. Demonstrate solution/output based on the code you have written.
15. Conclude your document summarising what you have produced and why.
16. Use citation and referencing in Harvard style throughout the report.