Disclaimer: This is an example of a student written essay.
Click here for sample essays written by our professional writers.

Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of UKEssays.com.

Design And Develop Supermarket Sales System Services Computer Science Essay

Paper Type: Free Essay Subject: Computer Science
Wordcount: 5316 words Published: 1st Jan 2015

Reference this

It contains details for the customers, suppliers and products. This system contains two types of users, administrator and the end user. The administrator has the authorization to create new users, edit an existing user and delete a user or disable a user.

This system generates multi reports for costumer, supplier, product, and soling. This will cut down the amount you spend away from the primary focus of your business and getting more control over your business.



SMSSS is solving a problem that could face any business. An inventory that could disappears from your stores, pharmacies, restaurants and hospitals, due to theft, wastage and employee misuse; because employee will know that inventory is being carefully tracked. SMSSS can instantly tell you about how many a particular product have sold today, or in any period you want.

My Graduation Project is applied on supermarket; this will help on tracking its remaining inventory, spot sales trends, use historical data to better forecast your needs and detailed sales reports make it much easier for it; to keep the right on hand.

SMSSS will include two types of users, administered user and a normal user. The first will have the authorization to add users to check the reports and observing the suppliers. The normal user just will prepare the customers orders and print out the billing.

Every SMSSS system needs a printer to create credit card slips for customer but the users will deal with this system without using that printer therefore the paying will be in separate operation with normal printer. Touch screens are more intuitive to use than keyboards for many users, but in this case there will not be a touch screens, the users will depend on the keyboard and a computer only. It is a simple system without providing the flexibility to users.


As it is mention before in the introduction this project will apply on supermarket, which has number of employees who received the customer’s orders. This supermarket is new, so it is looking for suitable manner to run on their business. This work is usually want a faster user who understand the customer’s order in short time, and save the money by count the order’s price without mistake, especially when your business is run will and lot of customer’s orders you should focus on to not effected on your business, that why the SMSSS system will helps to save money, provide productivity gains.


Our project helps to record any and all sales, it automate overall inventory control, helping to keep stocks in proper balance depend on demand and other factors, so management is much easier. Also you are able to track promotions more successfully, whether through capons and special discount. In SMSSS you get many tools in a single package. SMSSS can make better use of your personal by little is more maddening to a business owner than watching his/her staff bogged down. SMSSS reduce paperwork, increase productivity, reduce time you have to spend doing inventory, provide more precise information on the rate at which each product in your inventory moves so you know when and how much of each item to order, showing you what selling and what not, which vendor product are profitable, and which vendors are making you the most money overall. In this case, your customer gets faster and more accurate service.


(Project Deliverables)

Project Deliverables

The deliverables for this project is consisting into four main sections:


Analysis and Design

Implementation and Testing

Testing and Evaluation

Project management

2.1 Research

In this section, it will gather information about HCI, and similar software to the one that will be built and the language that decide to use.

2.2 Analysis and Design

Analysis is the process of breaking a case or topic into many smaller parts to increase a better understanding of it. This way will helps to find the functionality of the software should have, and what programming language should used to implement it, and solve problems found during the research section, and discuss what methodology will use for both designing and implementing the system.

Design method consists of the modeling language and the design process. Modeling language is a convention detailing how the design will be written on the paper. Unified Language is an example of a modeling language (UML). It makes details on how the software will be developed.

2.3 Implementation and Testing

The design section will contain screen designs as well as the core design of the software and the way it is implemented and it will include the testing and evaluation.

2.4 Testing and Evaluation

Testing is establishing a software system to find out the errors. Testing a set of programs against requirements specification expressed in different diagram such as data flow and entity relationship diagrams. In the process of software development, testing has historically been left until the code has been written. [1]

Testing code done by different people at different times. The testers are depending on which testing is being done and the resources allocated in order to tasting a particular software product. The testers could be: the programmers, a team of testers, people represent the market for the software, the client and maintainer [1].

During and after implementation the software, code is being tested .Pre-implementation testing is done by a testing team of reviewer’s project manager or clients or system developers. After implementation or code testing, software developers prefer to taste the system from the bottom up, in order to check if they launch to have coded correctly. The testers applying two main testing techniques: black box testing and white box testing. There are many different of testing such as unit testing, test phases, system testing, integration testing, regression testing , acceptance testing, release testing and beta testing …..[1]

2.5 Project Management

Eatch project can run smoothly and efficiently according to some sort of managements. This ways of monitoring the project is important in order to controlling the costs and benefits of any project. If there are occurred reasons that make the work is running late, or make the costs are beginning to escalate, it is necessary and essential to discover this as soon as possible and to be able to recovery these bugs . That cause uncovered a problem then corrective action can be taken to have the possible effects of the problem reduced. The project manager is responsible for organizing planning, monitoring and controlling the project only if the management side has been separated from the technical development. [2]

Get Help With Your Essay

If you need assistance with writing your essay, our professional essay writing service is here to help!

Essay Writing Service

The task of the project management, plan, estimate time and effort, identify tasks for the team, use prior experience, schedule work, use resources, monitor and control the progress of the project, evaluate what is priority , and identify quickly the causes of problems all these are expensive, in terms of both time and money. [2]It is important to project manager to be able to identify areas of risk, such as lack of knowledge, occurred new technologies or problems relating to requirements, and to obviate these all plans should be prepared.[2] most of project managers use such as graphics of charts to scheduling their work there are many different types of char, they mainly fall into one of two categories, bar chart which is often referred to Gantt chart) and network chart which is often referred to (CPM or PERT or CPA) in this project we’ll use the Gantt Chart in order to organize our timing,.

Chapter Three


Similar Product

There are a variety of software solutions available for Cashier Assistant (point of sale). Several different approaches are examined here to compare different features and gain an understanding of the best approach to take when designing a Cashier Assistant (POS) in the following pages, good and bad points about surveyed application will be examined on what to add or to improve in the software to be.

The layout of this examination is follow:

The name of the being application

A list of good points about the application

A list of bad point about the application

3.1 Harold’s Fine Home Lighting is a company based on tradition with 17 independent workstations.

3.1.1 Good Points


Eliminate the need for separate point of sale terminal.

Provide quick verification and processing of credit cards at the POS.

Simple bar coding and efficient, create a reliable way to control inventory.

3.1.2 Bad Points

Huge data, there is no automatically back up.

Difficult to update

3.2 Rod Works 5 stores depends on sale items

3.2.1 Good Points

Automatically generate purchase orders when items fall below recorder levels

Reduce inventory carrying costs by tracking inventory turns and gaining

Generate discrepancy reports to resolve errors in physical inventory

3.2.2 Bad Point

Huge data, there is no automatically back up.

Difficult to update

Research into HCI

Human computer interaction is created by computer software and hardware. Human computer interaction makes computer and human interface more interesting and satisfies users needs. Human computer interaction design methodologies are based on User Centered Design. They are focus group, affordable analysis, participatory design, rapid prototyping, user scenario, value-sensitive design, and contextual design, etc.

In Human computer interaction design seven principles are considered, tolerance, simplicity, Visibility, Affordance, Feedback, Structure, Consistency, etc. web interface and normal GUI are used according to the purpose. It is used for conferences, space shuttles, aircrafts, etc[3]

The human-computer interface is the point of communication between the user and the computer. There are several goals depend on the end user to gain his interaction.

Environment: depend where the user is used his own machine in which environment, college park whatever.

Input information: the tasks the required by the user to the computer.

Output data: whatever have generated from the computer represented to the user.

Feedback: whatever the user required pass to the computer and forward back.

HCI is affected by several forces of future computing for example:[5]

Reduction hardware price guiding to larger memories and quicker systems.

Miniaturization of hardware guiding to portability.

Decrease in power needs guiding to portability.

New present technologies guiding to the packaging of computational machines in new shapes.

Specialized hardware guiding to new roles.

Improved progress of network communication and shared out computing.

Increasingly extensive use of computers, especially by user who are outside of the computing occupation.

Growing novelty in input techniques (e.g., voice, gesture, pen), combined with lowering price, guiding to fast computerization by people who left out of the “computer insurgency.”

Widespread common concerns guiding to get better contact computers by disadvantaged groups

Interview Techniques

interview Inputs

interview Outputs

interview Interaction Techniques

interview Issues

kinds of input principle s (e.g., choice, distinct parameter specification, nonstop control)

Input techniques: keyboard, menus, mouse-, pen-based, voice.

kinds of output principles, express precise information, abstract information, show processes, create illustration of information)

Output techniques like: scrolling present, windows, animation, sprites, fish-eye displays)

Screen describe issues (e.g., focus, clutter, visual logic)

Dialogue type and techniques for example: form filling, menu selection, icons and direct treatment, generic functions)

searching, error management

Multimedia and non-graphical dialogues: mic, speaker, voice mail, video mail, active documents, CD-ROM

Real-time reaction issues

Manual organize theory

Supervisory control, automatic systems, embedded systems



3.2 Research on Software Tools

3.2.1 Research on Java http://www.csci.csusb.edu/dick/samples/java.html


Java is an object oriented program it is often used in VCRs and toasters it was originally called OAK it is a high level language developed by Sun Microsystems. One a real information is that Java is based on the first version of C++. Java includes a set of class libraries that provide basic data types it is standard Java environment, system input and output capabilities, and other utility functions. Java is Platform that means it is easy to move the program from one computer to other. This is as an advantage of java over other programming languages. To execute a Java program a bytecode interpreter should be run. Bytecode is built into every Java-enabled browser. it is read the bytecodes and executes your Java program it is often called the Java virtual machine or the Java runtime.

Java is a language that should compiled into the special machines code to then interpret. The role of the interpreter is to protect the machine from errors that can break down operating systems in C++. Compiled code can run on different systems, so a Java program can be across via a network to a machine with any different operating system you have it and with different GUI. Since java is high-level language it used to write applet and applications. An applet is a small program should send it cross the internet and interpreted on the client machine by a Java-aware browser. Java application can only be compiled and then run on the same machine. That why you cannot run the java if you do not have an application or a WWW page that refers to it. Once you decide to run the java you may have to change the properties of your browser this is a security issue in order to have the trust from your browser in order to use the compiler, that why when you do not recognize the compiler version you will face that your applet is rejected.

3.2.2 Visual Basic

It is a programming language and environment developed for such type of windows or web application or reports and many purpose belong to development.[10]. since its launch in 1990, the Visual Basic come up to be the custom for programming languages. Now there are visual environments for many programming languages, including both C and C++, plus for Pascal and Java. Sometimes VB called RAD system because it is enable programmers to speedily build proposal applications.

VB was one of the first products to supply interface environment for user, plus the VB programmers can insert a substantial quantity of code just by dragging and dropping control, like using buttons, text box, radio button…act and then defining them by using the properties functions.

Although not a true OOP language, it is sometimes known as an event-driven language because each object can act in response to several events for example when we use a mouse click.

3.2.3 C# Language

C# is an object-oriented language. It is further includes support for component-oriented programming. C# has a unified type system. All C# types, have primitive types(int and double, inherit from a single object type). C# supports user-defined reference types and value types, allowing dynamic allocation of objects and-line storage of lightweight formations.

C# programs consist of one or more source files .Concepts in C# are programs, namespaces, types, members, and assemblies. Programs declare types, which contain members and can be organized into namespaces. Classes and interfaces are examples of types. Fields, methods, properties, and events are examples of members. When C# programs are compiled, they are physically packaged into. Assemblies have both executable code in the form of Intermediate Language (IL) orders, and symbolic information in the form of metadata. Before the executed begin, the Intermediate Language code is directly changed to processor-specific code by help of the Just-In-Time compiler of .net Common Language Run time (CLR).

Variables types: value types and reference types. value types include their data where variables of reference types store references to their data. With reference types, it is likely to have two variables to reference the same object helping for operations on one variable to affect the object referenced by the other variable. Through value types, the variables have their own copy of the data. It is possible on one to affect the other.

3.3 Research on Database

3.3.1 Research on SQL Server

SQL Server

Aclient server is made of two components: an application that is used to present the application data, and a database system that is used to store it. The application may used the visual studio 2005 or access or some other graphical user interface. And to store the database it is suitable to use SQL server. Database is a collection of objects stored in the SQL server. This collection of objects including tables, views, stored procedures, functions and other object necessary to build the database. As know the tables are the first generally thing that you add to a SQL server. And each table contains information about specific case. Once the tables are created the user should mentioned the keys for each table. SQL server stored procedures and compiled code and executed on the server. You can execute them through any client(VB.net, microsoft access, microsoft word…)

If you waant to modify the a stored procedure you can modify it from the server. The change you do impact to all user client thet call the stored procedure.

Microsoft recognize that there is a plethora of database user with disparate needs. That why they release the following six version:

SQL server 2005 Express edition

SQL server 2005 workgroup edition

SQL server 2005 developer edition

SQL server 2005 standard edition

SQL server 2005 enterprise edition

SQL server 2005 mobile edition.

Features are provided by database engine


Clustering Services It is operating system allows the user to recover immediately from currently system to another.

Replication services remains data in synchronization between SQL Server databases and other database like Oracle, Microsoft Access…ect. other using for It is to send data to several systems.

XML transfer data between mixed programs or data sources.

SQL Server 2008 allow the user to report on SQL Server 2008 adds a new Policy Based Management system to SQL Server, which allows you to report on and put in force a exact pattern for any database object.

SQL Server 2008 can track the performance and other data in a central location and raise a report.

In SQL server a provider for power shell is including. This helps the user to save scrip programs and for windows, Microsoft exchange, and Microsoft office too. The SQL Server provider deals with SQL Server Instances, Databases and Database Objects . this let the user deal with them in perceptive way.

Reporting services has been built in SQL server 2000 and to SQL server 2005 and next other modern versions. The feature helps the user to do their work through SQL server directly via the browser.

3.2.3 Research on Oracle

The Oracle Database [12]referred to RDBMS or as Oracle (RDBMS). As of 2009[update], Oracle remains a major presence in database computing.

Oracle RDBMS stored data logically in table spaces and in data files if the it is in physicaly form.

Oracle DBM tracks the data stored with the help of the information that is stored in the system table space itself.

In 1970, oracle was the first commercial relation database based on the relational language SQL. It is goes in such development; oracle tools could support many methodologies. Oracle users would purchase the database, but it was possible to purchase some tools that make up the oracle product rang but not others.

Designer 2000 was formally known as oracle CASE, and is helpful on data and process modeling. Developer 2000 is used to build a application, once it has been designed using oracle designer 2000.

Discoverer 2000 consists of a suite of user friendly query tools designed for ad-hoc reporting. The oracle database management system is central to these tools, through many ends -user are hardly aware of its presence.

The main method of communicating directly with the oracle database is by using the SQL language. Although this stands for SQL. It enables the experienced user to do more than just handle queries. There are extensions to the basic SQL language provided on Oracle and together they from PL/SQL. The SQL optimizer attempts to make each SQL statements as efficient as possible when executed.

Find Out How UKEssays.com Can Help You!

Our academic experts are ready and waiting to assist with any writing project you may have. From simple essay plans, through to full dissertations, you can guarantee we have a service perfectly matched to your needs.

View our services

SQL procedure can be trigger by certain events, for example after updating or deleting a record. The security feature are now very sophisticated; you need system previleges to access the database and object level privileges at different levels to query, insert, delete and updating, any object stored in the database. Data is validated through data constraints, that is, only allowing permitted values of data to be entered into the database

Oracle database management tracks its data storage with the help of information stored in the system space table. Oracle RDBMS is supported localy managed table space which help store space management information in their headers better than in the table space.

The history of Oracle database.

(1979) was the first released Oracle version 2

(1982) released Oracle version 3

(1984) released Oracle version 4

(1986) released Oracle version 5

(1988) released especial version for OS mackintosh Oracle version 1

(1989) released Oracle version 6

(1993) released Oracle version 7

(1997) released Oracle version 8

(1999) released Oracle version 8i

(2001) released Oracle version 9i

(2003) released Oracle version 10g

(2007) released Oracle version 11g

3.4 Research into Methodologies

3.4.1 Research into Traditional System Development Life Cycle (SDLC)

The rapid increase in the power[13], speed and capacity of computers, and the demands of clients and the market-place have encouraged software developers to attempt to develop ever more ambitious systems. First attempt was in 1960s and early 1970s but this was a complex and system, it was difficult to maintain and did not do what was required. The system life cycle was an attempt to establish a structured approach to analyzing designing and building software systems. The system life cycle divided the development of system into stages.

Feasibility Study: the development team visits the customer and studies their system. They investigate requires in the given system. End of the feasibility study, the team supply a document that holds the different specific recommendations for the candidate system, personnel assignments, costs, project schedule, target dates etc…. The purpose of this phase is to find out the need and to define the problem that needs to be solved.

Analysis and design: The software development process, the software’s overall structure and its nuances are defined. In terms of the client/server technology, the number of tiers needed for the package architecture, the database design, the data structure design etc… are all defined in this phase. A software development model is thus created. Analysis and Design are very crucial in the whole development cycle. Any glitch in the design phase could be very expensive to solve in the later stage of the software development. Much care is taken during this phase. The logical system of the product is developed in this phase.

Code Generation: The design must be translated into a machine-readable form. The code generation step performs this task. If the design is performed in a detailed manner, code generation can be accomplished without much complication. Programming tools like compilers, interpreters, debuggers etc… are used to generate the code. Different high level programming languages like C, C++, Pascal, Java are used for coding. With respect to the type of application, the right programming language is chosen.

Testing: The software program testing begins when the code is generated. There are Different testing methodologies are available to solve the bugs.

Maintenance: Once the software delivered to the customer, maintenance phase is important for many reasons could change once the system is used by the clients. Bugs could happen because of some unexpected input values into the system and system directly affects the software operations. The software should be developed to accommodate changes that could happen during the post implementation period.

3.4.2 Structured System Analysis and Design Method (SSADM)

it is one of the methodologies that launch to analysis and design of IS. It is consist into sequence of stages:

Feasibility Stage

Analyze the case that you have at a high level, by using Data Flow Diagram to explain how system is work and to think about the problems. These parts are including to this stage:

Build up a Business Activity Model(BAM).

Study the requirements.

study the processing.

Study data.

Get logical view of present services.

Define Requirements Stage

Get an idea about the old environment, by know the system requirements and recognized the business environment by modeled them by using a DFD and Logical Data Structure.

Requirements Specification Stage

This stage is to assist the management, by using BSOs will telling the range and functionalities to provide and present them. They also need financial and risk evaluations to be prepared, and require to be supported by outline implementation reports. These parts are including to first stage:

Develop mandatory data model.

Receive system functions.

Grow user job specifications.

Enhance mandatory data model.

Develop specification samples.

Build up processing specification.

Verify system objectives.

Logical System Specification Stage

Officially this stage is to choice the feasible options. The development/implementation environments are particular based on this choice.

Logical System Specification Stage

In this stage Both Processes and logical designs should update, as well the dialogs are specified these parts are including to this stage:

Classify user dialogue.

Define the updating processes.

Classify enquiry processes.

Physical Design Stage

The purpose of this stage is to denote the physical data and process design. The way to define them is to use the language and features of physical environment and incorporating installation.

These parts are including to this stage:

Arranging for physical design.

Supplement the specification of functions.

Increase developing for both data and process designs.

3.4.3 Rapid Application Development (RAD)

[15] Rapid application development is one of the agile method, it is shorten the life cycle and to produce information system more quickly in order to respond to rapidly changing business requirement . it develops the projects faster and higher quality by using groups to gather requirements.

Requirement planning

User design



in requirement phase , developer seek to obtain input from users in order to determine set of system requirements.

In the user phase, is based on the sample cycle, involving experienced users and developers. This phase is consisting of a sequence of workshops, each one of them may be takes three days. During this phase the Tool CASE is used to build the prototype.

The construction phase is to produce or generate the code from the CASE prototype, and the new system is validated by users.

The final phase is cutover. It is cover the system testing, users training and introduction of the system into the client organization.

RAD has a number of obvious advantages:

Resistance to change in the organization is minimized and the new system is welcome, because of the high degree of users participation in the whole process.

The system is developed and delivered more quickly than with traditional development approaches.

The speed of the development and the use of relatively small teams means that the RAD tend to be cheaper than their traditional counterparts.

The speed of RAD means also it is closely related to current needs of the business.

3.4.5. Soft System Methodology

Soft systems methodology (SSM) was developed by Peter Check land and his colleagues at

Lancaster University in the 1970s [19]. It is designed to shape interventions in the problematic situations encountered in management, organizational and policy contexts, where there are often no straightforward ‘problems’ or easy ‘solutions.’ Though informed by systems engineering approaches, it breaks with them by recognizing the central importance of perspective or world-view in social situations. It differs significantly from the ‘systems science’ approaches developed in the 1960s, and is more reflective of action research in its philosophy and approach.

SSM is widely described as a seven-stage process, as follows:

1. Identifying the problematic situation that it is desired to intervene in

2. Researching the situation and building a ‘rich picture’ (interpretive representation) of it

3. Selecting perspectives and building ‘root definitions’ (key processes that need to take place within the desired system)

4. Developing a conceptual model of the change system

5. Comparing the model with the real-world situation

6. Defining the changes to be implemented

7. Taking action.

Stage 1: finding out

is concerned with identifying and providing a brief description of the

situation it is desired to intervene in.

Stage 2: modeling

This stage is concerned with producing definitions of transformation processes that should achieve the desired intervention(s).

Stage 3: dialogue

Conceptually the dialogue stage involves examining the change model against the real-world

situation, usually as represented by the rich picture and associated analyses, and checking that it makes sense. Often the change model needs adjusting, and sometimes the rich picture needs to be developed further.

Stage 4: defining and taking action

This stage will vary depending on the specific change project, but essentially it involves developing the (revised) change model into a concrete


Cite This Work

To export a reference to this article please select a referencing stye below:

Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.

Related Services

View all

DMCA / Removal Request

If you are the original writer of this essay and no longer wish to have your work published on UKEssays.com then please: