Clothes Store This project is concerned about an information system done to a clothes store named OXA
I.T. MANAGEMENT LECTURED BY DR. JABER JABER
I.T. MANAGEMENT
OXA CLOTHES STORE
1
Sincerely yours Haidar Shouman Mohammad Ismael Bassem El Ahmar Mohamad Abidsater Hassan Zogeib Ali Hassan N.B: All additional information including programming languages and databases was done by Haidar Shouman due to his knowledge in programming (BS Computer Science)
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Abstract This project is concerned about an information system done to a clothes store named OXA, typically the old system was based on paper documentation and Microsoft office, especially Excel. The documentation system (papers) was enough at the early beginning, but when the store became famous and sells goods for more than 200 customers per day, there was a need to a new system that facilitates the work done and satisfy the customers’ needs in more efficient ways. The new system is based on IT (computerized system) and basically will solve all the problems faced by the store’s manager and employees.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
2
I.T. MANAGEMENT
OXA CLOTHES STORE
SDLC OUTLINE 1. PROJECT IDENTIFICATION 1.1. Project definition 1.2. Problematic 1.3. Goals and objective 1.4. Project scope 1.4.1. In scope 1.4.2. Out of scope 2. SYSTEM ANALYSIS 2.1. Functional specifications of users requirements 2.2. Technical Specifications 2.2.1. Client Server System Architecture 2.2.2. Technical environment 2.3. Functional specifications 2.3.1. Backup and restore strategies 3. SYSTEM DESIGN 3.1. DB design 3.2. GUI design 3.3. Reports design 4. PROTOTYPING SYSTEM 5. SYSTEM IMPLEMENTATION 5.1. Client side implementation 5.2. Application and DB server implementation 6. SYSTEM DEPLOYMENT 6.1. Technical deployment 6.2. Documentation 6.2.1. Installation and configuration guide 6.2.2. Reference manual and users guide 7. End user’s training 8. QUALIFICATION 8.1. Internal qualification 8.2. External qualification
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
3
I.T. MANAGEMENT
OXA CLOTHES STORE
1. PROJECT IDENTIFICATION 1.1. Project Definition Arabash clothes store was established five years ago. It sells all the types of clothes and shoes from all types and for all ages and genders. Because of its product quality, competitive prices, perfect location in the middle of the city, and clever marketing, its business started to improve, till it became one of the most famous stores in Baal beck. It receives more than 200 customers daily. This store employs four people, and manager. The Manager is responsible of managing, marketing, and choosing products. The seven employees are divided in to one accountant, two assistances responsible for helping the customers in finding and choosing products, and arranging these products. One decorator decorates the front of the store, In addition to that, there are two tailors who are responsible for modulating the size of clothes if the customers wanted to .finally one employee are responsible for cleaning. The store used to register the sales, goods, customers, purchases by filling their names using Excel and printing the lists. With respect to the accounting system, it was based on calculators without any tool to speed up the generating of the accounting reports, everything is done manually. Consequently, the Organization will be as follows:
The manager wants a system that replaces the manual Work. First, manual work costs the company a lot of money; second it takes a lot of time. The work is completely manual, and according to what we saw and what the accountant told us, we found out that it is too complicated.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
4
I.T. MANAGEMENT
OXA CLOTHES STORE
Fact Finding We decided to meet the manager again to find some additional problems, and we found out that Mr. Mohamed Alshal who are the owner and the manager at the same time, is suffering from the human errors that are found in the accounting system, and he decided that the only solution for decreasing these errors is by using a new system. 5
After that we met Mr. Nadir Alderanee who handle the accounting System, and he Assured that their accounting system is not able to handle the accounting of 200 customers per day, especially if the accounts are recorded manually after being added to the system. After that, we met one of the assistants, Samia Awad, who said that it takes her a lot of time to find a certain type of clothes or shoes in such a wide store, and that many customers didn’t come back because of this problem. Another assistant, Rasha Mortada, said that she doesn’t have experience with the computer and she is afraid to be out of her job because of my new system, as a result she wanted the system to be so easy to use. With respect to the customer who is loyal to the store, some Interviews were done with them, and as a summary of their needs is that they suffer from waiting and some Accounting mistakes that happened to some of them when paying their debts. PRELIMINARY INVESTIGATION Our team completed their preliminary investigation to create a new clothes store system for the Arabash store. This investigation was the result of a system’s request from Mohamed Alshal. PRELIMENARY INVESTIGATION FINDINGS The following problems were found during the investigation: • •
•
Difficulty in finding the locations of the clothes and shoes in the shop needs a lot of time. The reports are generated manually by humans, so the technology to process and generate data reports is not found. So there are many errors in the reports because there is no technology that handles generating these reports. The accounting system needs to be simpler, because it is made of a book which contains many parts, each part is named by an
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
• •
OXA CLOTHES STORE
alphabetical letter and according to these letters we search for names. There is no information about the customers that come usually to the store. Updating the information about the employees is not found.
RECOMMENDATION 6
Due to all of these problems, we see that the handling of information in this store is Manual. As a result, the store suffers from many disadvantages that are increasing because of the business of this store is growing rapidly. TIME AND COST ESTIMATES We estimate that one week will be required for an analyst to perform the recommended analysis. If the system development work continues on this project, total cost will depend on what approach is taken. And since the current system can’t be modified, we estimate a total effort of $4,000 to $ 6,000 over the three to four-months period. EXPECTED BENEFITS This project will be created to help activate the work in the store, and make it faster. With respect to the manager, it will offer him the ability to access the system at any time he want and see all the business functions that occur, in addition to the daily reports which contain all the accounting processes, as daily profits, monthly profits, and the quantities of all the types of clothes he has .As a result the manager can know easily what he should buy and what are the styles that are popular. With respect to the assistants, it will make their job easier by offering all the locations of the products just by entering type, color, and size, so it will reduce the mess that was resulted from searching. In addition to that it will offer all kinds of reports that he needs, adding the goods to the system will be accomplished by entering few information’s to the system such as quantity, type, size, color, initial price, final price, and location. With respect to the accountant, this system will decrease the human errors, offer all the daily and monthly reports that is made now by the accountant, and listing all the accounting information about any customer and about any type of clothes, so it will make his job so fast and easy.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Finally with respect to the customer, this system will save time and money, so in addition to offering the products locations quickly, it will reduce the accounting errors that were happened.
1.2. Problematic The problems that our project will solve are: • Accounting reports for customers is done manually. • Hardness in finding the locations of the clothes and shoes in the shop • The reports are generated manually by humans, so the technology to process and generate data reports is not found. • The appearance of many errors in the reports, because there is no technology that handle, and generate these reports. • The accounting system needs to be simpler, because it is made up of a book which contains many parts; each part is named by an Alphabetical letter. • There is no information’s about the customers that comes usually to the store. • Updating the information about takes a lot of time. SYSTEM REQUEST Mr. Mohamed Alshal found that there are many difficulties in his current system, with respect to the errors in the accounting system, and to the wasted time in searching for products. Consequently the manager decided to ask our team to design a new system for the store and which will solve the problems of the old system. He prepared a letter containing all the problems of the old system. After receiving the manager letter, Mohamed lakkiss started to make the Preliminary investigation, and sent a letter to all the store employees requesting their help in giving information.
Date: Submitted by: Mr. Mohamed Alshal Department: Administration Phone: REQUEST FOR: URGENCY: [] Correction of system error [ ►] System enhancement [] Handle in normal priority sequence [►] New system [] Defer until new system
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
7
I.T. MANAGEMENT
OXA CLOTHES STORE
SYSTEMS REQUEST SUMMARY In the system request the problems are: •
This system is not able to handle the accounting jobs of 200 customers per day, especially if the accounts are recorded manually after being added to the system. 8
•
It takes them a lot of time to find certain type of clothes or shoes in such a wide store, and they lost many customers due to these problems.
1.3. Goals and Objectives Our Project is considered to be an important technology that handles the store work, which is considered as a company that contains products, employees, distributors, Monthly Salaries, Fees, and payments. It will provide the names of the sold products according to the selling line, fees of the customers according to what they took locations of the products according to the size, color and type. The system is divided in to 2 sub _systems:
•
Assistant system
This System is responsible for Adding, updating deleting information’s about products, customers, and suppliers and searching for the locations of the products, according to the following inputs: size, color and mark. If the product is found, the system will give the number of the floor which holds. This system is used only by the assistants, and the manager who is the administrator.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
•
OXA CLOTHES STORE
Accountant System
This system is responsible for recording the payments, and the debts. the bill for customers, and accountant reports for manager. Each bill contains the name of the customer, amount of money, the date he purchase and the type of clothes he took, in addition to that, this system decrease the quantity of the goods after each purchase. With respect to the accountant reports this system offers reports called profits, these reports shows all the sales per one day till thirty days. This system is used only by the accountant, and the manager who is the administrator. Each of these Sub systems will have a password that will offer the access of each employee only to his Subsystem.
1.4. Project Scope 1.4.1.
In scope
The Owner wants this System to provide information's about the products, clothes and suppliers, accounting reports according to the selling process, and the locations of the products according to the size, color and mark. As a result, it will activate the work in the store, and make it faster because taking 5 minutes to find a type of clothes is considered to be a waste of time which is considered to be a major problem not only for the owner but also for the customer who want a fast service. 1.4.2.
Out of scope
This system also will decrease the mess which is the result of searching which is the main reason behind wasting time .By decreasing the mess, the manager will not need to have an additional employee in the store. Methodology and costs Hardware • • • • •
4 Computers and 1 server 2 high speed printers Printer Network Others (UPS, Batteries)
3000$ 400$ 800$ 300$ 1900$
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
9
I.T. MANAGEMENT
OXA CLOTHES STORE
Software Languages used Java programming language is going to be used in this system, because it is functional in these types of systems, and because I (Haidar Shouman) have an experience with this language .With respect to the DBMS, I will use My-SQL because it’s for free.
2. SYSTEM ANALYSIS 2.1. Functional specifications of user’s requirements Management Summary The Management wants this System to provide the names of the sold products according to the selling process. The customers are charged according to what they bought. The locations of the products are classified according to the size, color and mark. This system also will decrease the mess that is the result of searching which is the main reason for wasting time and by decreasing the mess the manager will not need to have an additional employee in the store. In addition to that this system will be active in registering information about the customers, employees, and products. Information System Background We decided to develop the information system from many sides. First we will develop the payment system to prevent errors that happened between the customers and the employees; second the new system will offer daily and monthly accounting reports for the manager. With respect to the clerical part, we will design a program that will offer all kinds of reports, so the Assistants will not take so much time in registering, In addition to that this program will take the phone number of the customer as an id number, which will save so much time in searching, and with respect to search for clothes, all of the locations will appear by just a click on the search button. Data Flow Diagram During requirements modeling, we used interviews and techniques to gather facts about the system, and we learned how the various people, departments, data, and processes fit together to support business operations. After reviewing the collected set of requirements, we decided that the first step which is to prepare a context diagram since we were familiar
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
10
I.T. MANAGEMENT
OXA CLOTHES STORE
with the store system, so we prepared the diagram shown below (Figure 1). The diagram shows how the system works.
11
(Figure 1)
This diagram shows all the functions during the work, so the customers gives their order list to the manager system and the system registers the customers and returns to them their purchasing list which contain what he had purchased . With respect to the provider, the system sends the request report which contains all the needs of the store. After that the provider sends the products needed, and receives the payment from the system. With respect to the employees, they generate reports; make registering and searching for the system and get money from it. Finally we have the accounting system which sends accounting reports, receives cash entries, and provide accounting reports to the management system. Diagram The system creates an account for each Customer directly. The Accounting entity contains all the accounts of the customers, record all the payments and generate accounting status for each customer. Furthermore, the Assistant system sets up a list for each customer containing the clothes .A Context diagram provides the most general
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
view of an information system. After going through several draft versions, the diagram was completed in the figure below (Figure 2). The Customers are added by filling up a form, and after the completion of the adding process, a new account is being created directly and the customer is added to the Assistant System entity. After the adding process, a customer applies payments to the system and the Accounting entity manages to create an invoice for the customer. The Accounting System entity is used to generate customer lists. A customer list is established for each customer containing all the information of this customer plus the clothes type, color, date of purchase, and price.
(Figure 2)
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
12
I.T. MANAGEMENT
OXA CLOTHES STORE
Use case diagram This use case represents a visual summary of several related cases within a system (Figure 3). The Actors are: Assistant, Librarian, and Manager. The Use cases are Add Suppliers, Add Parts, Add customers, Make search, Apply payments, Add Accounts, Create lists, View profits. 13
(Figure 3)
In the use case diagram, the assistants search for products, register suppliers, customers and clothes. The accountant system creates some lists and provides daily and monthly reports called profit reports. Finally the manager views all of these reports.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Sequence Diagrams •
Sequence Diagram for Make search use Case
In this diagram the assistants sends an order to the assistant system to find a certain type of product. Then the assistant system adds the keys of the product and sends them to the ware Registration to make a successful search. If the product is available, the system returns the location.
(Figure 4)
•
Sequence diagram for Add Customers use case
Adding Customer use case (Figure 5) is responsible for Adding Customers, updating Customers information, and deleting customers. When adding a new customer, the system creates a customer Id which is his phone number. As for updating, the system updates the customer information.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
14
I.T. MANAGEMENT
OXA CLOTHES STORE
15
(Figure 5)
In this diagram the Assistant enters the information’s about the customers or employees in to the assistant system, then the assistant system sends the employees or customer information to the Accounting system to create an account for them, and if the information about them exist, the assistant system can update information and update also the accounting information The same process is performed for Adding supplier and Adding clothes. •
Sequence diagram for create lists use case
The Assistant is responsible for managing the store activities. The assistant (Figure 6) creates clothes list for each customer; the system generates the amount of the selected items, and notifies the Accountant.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
16
(Figure 6)
•
Sequence Diagram for Apply payments Use Case
The Accountant use case (Figure 7) is responsible for managing the customer’s payments. When the Accountant adds a payment, a new invoice is generated.
(Figure 7)
Class Diagram A class diagram (Figure 8) represents a detailed view of a single use case, it shows the classes that participate in the use case, and documents the relationship among the classes. Like a DFD, a class diagram is a logical model, which evolves into a physical model and finally becomes a functioning information system. In the structured analysis, entities, data stores, and processes are transformed into data
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
structures and program code. Similarly, class diagrams evolve into code modules, data objects, and other system components. The use case diagram helped me to understand how the various objects and classes interact. At this point, I constructed the class diagram for the use cases. The class diagram documents the classes and the relationships involved in the use cases. 17
The class diagram includes eleven classes and several different types of relationships. The classes are: Assistant System, Accounting System, Accounting reports, Manager System, and Reports. The Assistant class is responsible for adding, updating and deleting students, suppliers, clothes, generating reports, and searching. The accounting System class is responsible for creating accounts for the students and generating account reports concerning students ‘payments. Accounting payments class is responsible for managing the payments of the customers.
(Figure 8)
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Activity Diagram This diagram (Figure 8) shows the process of demanding a certain type of clothes, and the process of the searching system in finding this type of clothes.
18
(Figure 9)
2.2. TECHNICAL SPECIFICATIONS 2.2.1. •
Client server system architecture Client/Server Architecture
The manager is the only user who access the hole System, and he should access it randomly, so he must have his own computer that connects him to the system as well as users. This network is based on client/server (2-tier) Architecture so that data will be stored on a powerful server, which store all the data needed and which run the Oracle management system. With respect to clients they ha no need to connect to the server. •
Internet Based Architecture:
A user doesn’t need to connect to the internet, which is a good thing because connecting to the internet will lead to security threats that may be so dangerous.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
•
OXA CLOTHES STORE
Network topology
All the users will be connected to a hub which will connect them to the server and to the printer.
19
2.2.2.
Technical environment
Hardware • • • • •
Server: Intel Original processor, 2 hard disks 500 GB each (one of them will be used for backup), 8GB RAM Computers: Intel Processors P4 3000 MHZ, 80GB hard Disks, 1GB RAM, 17 inch LCD screens 2 high speed printers (Laser printers “SAMSUNG” cause its warranty exceeds 2 years) Network (Hub and network cables) Others (UPS, Batteries)
Software Languages used Server: Windows NT for Servers 2003 Computers (PC’s): windows XP professional Edition service pack2. The system will be written using JAVA 1.4.1 programming language and Oracle 9i (Database) The reasons for choosing Java as a programming language can be summarized in the following advantages: • Speed: Java programs are accessible on the client-side, hence they are faster than programs running on remote servers. Interoperability: Java applets can interface with various forms of media formats (text, graphics, animation and sound) and languages (such as JavaScript and VRML). Applets can also interact with other applets, with programs on its host server and with HTML/XML documents on remote servers.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
• •
•
•
OXA CLOTHES STORE
User Interaction: Unlike Java, HTML is equipped with a limited set of graphical user interface (GUI) elements. Java applets can thus provide a better user interaction. Platform Independence and Portability: Multi-platform versions of educational software are scarce, and often have a strong dependency on the underlying hardware. On the other hand, users can access a Java applet using different types of architectures and Java-compliant browsers, but still all see the same information in nearly the same format. Distributed and Network Computing: Until recently, results from one application usually could not be shared by remote users in real-time. Java Application Programming Interface (API) has support for writing distributed and network programs which can access and share data residing at remote repositories, thus supporting data reusability. Development and Maintenance: Usually, the process of writing an educational program is as follows: o Main program (which does the computations) + graphics (which plots the results) + user interface. o Each of them often written in different languages. This can be difficult to extend and maintain. With the support of Java API, these three components can be integrated into one unified environment.
Moreover, the reason for choosing Oracle 9i can be listed in the following advantages: • • • • • •
Helps to ensure continued performance as the database environment changes over time. Provides consistent and complete recommendations. Performs interdependency checking during analysis. Detects and reports symptoms of poor performance. Shifts through vast quantities of data quickly to identify performance problems. Identifies situations where advanced performance features of the database may be applied.
However, the most dramatic is the ability to take two or more computers and hook them together so they act as a single database, and allow them to scale on Intel servers.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
20
I.T. MANAGEMENT
OXA CLOTHES STORE
2.3. Non Functional Specifications 2.3.1.
Backup and Restore Strategies
According to the backup strategies, a Continuous Backup will be used for many reasons: • It will backup every stage of every transaction • It is a time based backup • Allowing recovery from data corruption, by finding the exact point where data was corrupted. • It updates only the changed byte or block which saves a lot of disk space especially with large databases. • It automatically captures on disk in a separate location every version of data that a users save. • There is no need for data compression which makes it faster than other backup strategies. • No tapes will be used to restore the data. • The data will be saved in different and full secured hard disk. Security All the users will access through specific username and password name(each employee can access only his/her data), and because the system is not an internet based system so there is no need for high security and a Norton Anti Virus will be enough to secure the computers.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
21
I.T. MANAGEMENT
OXA CLOTHES STORE
3. SYSTEM DESIGN •
Classes
After the coding process was finished, there were about 17 java classes. The classes are show below 22
The above classes were implemented using java programming language. In this section, methods in each class will be explained using English structure just to make it simple to understand the role of each class in this system. Database.sql create table Supplier( ) create table Users( ) create table Clothes( ) create table Customer( ) create table Sale( ) (ALTER TABLE Supplier ADD CONSTRAINT supplier_primary PRIMARY KEY (SupplierID) ; ALTER TABLE Users ADD CONSTRAINT users_primary PRIMARY KEY (username); ALTER TABLE Clothes ADD CONSTRAINT clothes_primary PRIMARY KEY (ClothID); ALTER TABLE Clothes ADD CONSTRAINT clothes_foreign1 FOREIGN KEY (SupplierID) REFERENCES Supplier (SupplierID);
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
ALTER TABLE Customer ADD CONSTRAINT customer_primary PRIMARY KEY (CustomerPhone); ALTER TABLE Sale ADD CONSTRAINT sale_primary PRIMARY KEY (SaleID); ALTER TABLE Sale ADD CONSTRAINT sale_foreign1 FOREIGN KEY (CustomerPhone) REFERENCES Customer (CustomerPhone); ALTER TABLE Sale ADD CONSTRAINT sale_foreign2 FOREIGN KEY (ClothID) REFERENCES Clothes(ClothID); 23
•
AccountingSystem.java
public class AccountingSystem{ § Connection connection; § PreparedStatement sqlInsertSupplier,sqlDeleteSupplier,sqlUpdateSupplier,sqlUpdatep assword,sqladdcloth,sqlDeleteClothes,sqlInsertCustomer,sqlDelet eCustomer,sqlAddToList,UpdateQuantity,sqlUpdateQuantity1,sql DeleteSale; § public AccountingSystem(){ § sqlInsertSupplier=connection.prepareStatement("insert into Supplier values(?,?,?,?,?)"); § sqlDeleteSupplier=connection.prepareStatement("delete from Supplier where SupplierID = ? "); § sqlUpdateSupplier=connection.prepareStatement("update Supplier set SupplierName=?, SupplierAddress = ?, SupplierPhone= ?, SupplierFax=? where SupplierId= ?"); § sqlUpdatepassword=connection.prepareStatement("update Users set passwordname=? where username= ?"); § sqladdcloth=connection.prepareStatement("insert into Clothes values(ClothIDseq.NEXTVAL, ? , ? , ? , ? , ? , ?,?,?,?,? )"); § sqlDeleteClothes=connection.prepareStatement("delete from Clothes where ClothID = ? "); § qlInsertCustomer=connection.prepareStatement("insert into Customer values(?,?,?,?)"); § sqlDeleteCustomer=connection.prepareStatement("delete from Customer where CustomerPhone = ? "); § sqlAddToList=connection.prepareStatement("insert into Sale values(SaleIDseq.NEXTVAL,?,?,sysdate)"); § sqlUpdateQuantity=connection.prepareStatement("update Clothes set quantity=quantity-1 where ClothID= ?"); § sqlUpdateQuantity1=connection.prepareStatement("update Clothes set quantity=quantity+1 where ClothID= ?"); § sqlDeleteSale=connection.prepareStatement("delete from Sale where SaleID = ? ");
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Sale. Java Sale(){ AddtoList(){} Remove(){} Print(){} } Search. Java Public Search(){ query ="select ClothID , ClothName ,Gender,'$' || FinalPrice As PRICE, Store ,quantity from Clothes where Type='"+ operation+"' and Size_of_item='"+operation5+"' and Color='"+color+"' and quantity > 0 " ;}
3.1. Database Design •
Rough ERD
Map attributes to entities
•
Supplier Entity Supplier Id (Primary key) Supplier Name Supplier Phone Supplier Fax
•
Clothes Entity Cloth ID (primary key) Cloth Name Type Color Size Gender Initial Price, Final Price | Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
24
I.T. MANAGEMENT
OXA CLOTHES STORE
Quantity Store Supplier Id (foreign key) •
Customer Entity Customer Phone (primary key) Customer Name Customer Email Customer Addres
New Entities •
Sale entity SaleID (primary key) CustomerPhone ClothID Dateofsale
•
ERD Implementation
create Sequence ClothIDseq increment by 1 start with 1 maxvalue 5000000; create Sequence SaleIDseq increment by 1 start with 1 maxvalue 50000000; create table Supplier( SupplierID varchar2(20) NOT NULL, SupplierName varchar2 (40) NOT NULL, SupplierAddress varchar2 (40) NOT NULL, SupplierPhone varchar2 (40) NOT NULL, SupplierFax varchar2 (40) NOT NULL );
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
25
I.T. MANAGEMENT
OXA CLOTHES STORE
create table Users( username varchar2 (40) NOT NULL, passwordname varchar2 (40) NOT NULL ); create table Clothes( ClothID int NOT NULL, ClothName varchar2 (40) NOT NULL, Type varchar2 (20) NOT NULL, Color varchar2 (20) NOT NULL, Size_of_item varchar2(25) NOT NULL, Gender varchar2 (25) NOT NULL, InitialPrice real NOT NULL, FinalPrice real NOT NULL, Quantity int not null, Store varchar2(20) not null, SupplierID varchar2 (20) NOT NULL ); create table Customer( CustomerPhone varchar2(40) NOT NULL, CustomerName varchar2 (40) NOT NULL, CustomerEmail varchar2 (40) NOT NULL, CustomerAddress varchar2 (40) NOT NULL ); create table Sale( SaleID int NOT NULL, CustomerPhone varchar2 (40) NOT NULL, ClothID int NOT NULL, Dateofsale DATE DEFAULT SYSDATE ); ALTER TABLE Supplier ADD CONSTRAINT supplier_primary PRIMARY KEY (SupplierID); ALTER TABLE Users ADD CONSTRAINT users_primary PRIMARY KEY (username); ALTER TABLE Clothes ADD CONSTRAINT clothes_primary PRIMARY KEY (ClothID) ; ALTER TABLE Clothes ADD CONSTRAINT clothes_foreign1 FOREIGN KEY (SupplierID) REFERENCES Supplier (SupplierID); ALTER TABLE Customer ADD CONSTRAINT customer_primary PRIMARY KEY (CustomerPhone); ALTER TABLE Sale ADD CONSTRAINT sale_primary PRIMARY KEY (SaleID); ALTER TABLE Sale ADD CONSTRAINT sale_foreign1 FOREIGN KEY (CustomerPhone) REFERENCES Customer (CustomerPhone);
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
26
I.T. MANAGEMENT
OXA CLOTHES STORE
ALTER TABLE Sale ADD CONSTRAINT sale_foreign2 FOREIGN KEY (ClothID) REFERENCES Clothes (ClothID);
3.2. GUI DESIGN The following (Figure 9) represents the main menu of the program This is the main page for the Store system which shows all the keys needed for this System. When the user enters the system, the following window will be displayed where the user can choose his name and type his password. Users are Manager, Accountant, and Assistant. Each user has his own password, which enables him to enter the application of his user type, for example, the Assistant can enter the types of clothes and store Report menus.
Input Design The following forms represent some input designs that users use to input data to the system. • New Customer Add a Customer by entering his Customer Phone, Customer Name, Customer Email, and Customer Address.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
27
I.T. MANAGEMENT
OXA CLOTHES STORE
This form will register a new Customer:
28
• Update Customer Update a Customer by entering his Customer Phone, Customer Name, Customer Email and Customer Address. This form will update a Customer.
• Delete Customer Delete a Customer by selecting his phone number. This form will delete a Customer.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Search input This system will Search for any type of clothes through entering the type, size, Color of the clothes.
29
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Accounting System This form enables Accouter to manage the accounting system by selecting the customer ID and the given Clothes name. The accouter can display the customer list, delete the list, display the amount, display the bill, and accounting reports called profits and this profits are divided to daily and monthly profits. 30
3.3. REPORT DESIGN The following forms represent some output and report designs that users use to output data from the system. • Customer list This form is responsible for listing all the payments of a certain customer including all the types of clothes he took.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
31
• Search output This form shows the result of the search about certain of clothes.
• Profit output This form is a kind of output that is used by the manager to view the profits according to the number of days (1 to 30 days).
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
4. PROTOTYPING SYSTEMS The incremental development process were used so there was no need for a simple prototype since the system is not large and the identifications are well shown Define system deliverables
32
Specify system increment
Design system architecture
Build system increment
Validate increment
Validate system
Integrate increment
NO Deliver final system
System complete? YES
5. SYSTEM IMPLEMENTATION As mentioned before in the architecture, client server architecture is used (2-tier)
5.1. Client side implementation The system application is installed in this side (pc), where it contains the business logic (BL’s) and the graphical user interface (GUI).
5.2. Server-side implementation In this side all the data will be stored and the backup data also, this side will also contains business logic (BL’s). so the database system will be located in the server side.
6. SYSTEM DEPLOYMENT 6.1. Technical deployment (system changeover) System changeover is the process of putting the new information system online and retiring the old system. Changeover can be rapid or slow, depending on the method. The three changeover methods are direct cutover, parallel operation, and phased operation. However, this system must be implemented using parallel operation. The parallel | Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
operation changeover method requires that both the old and the new information system operate fully for a specified period. Data is input into both systems, and output generated by the new system is compared with the equivalent output from the old system. When users are satisfied that the new system operates correctly the old system is terminated. The most obvious advantage of parallel operation is lower risk. If the new system does not work correctly, the store can use the old system as a backup until appropriate changes are made. It is much easier to verify that the new system is working properly under the parallel operation than under direct cutover.
6.2. Documentation 6.2.1.
Installation and configuration guide
The System needs the installation of Oracle 9i , java 1.4.1 and installing all the classes of the program, After that all the things will act correctly. 6.2.2.
Reference Manuel and user’s guide
This reference and User Manual was created to help user to clearly understand how to work with the system and to manage all the activities in accurate way. Moreover, the reference will help end users to manage problems with the system in case if it happens. This manual includes the role of: •
Menus & Toolbars
•
Assistant
•
Search
•
Accountant
Menus and Toolbars The main objective is to get use to the user interface, and view objects such as menus and toolbars. The user will be able to understand the attributes and the functionality of the system. You will now view the main interface, the toolbars and the menus.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
33
I.T. MANAGEMENT
•
OXA CLOTHES STORE
Main Window
34
•
Menus o Program Menu o Logoff the system o Change the user password o Exit from the system
•
Assistant Menu o Add a clothes type. o View all the Clothes in the store, and update all the information about it. o Search for any type of clothes.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
•
OXA CLOTHES STORE
Accounting Menu o Provide the customer list, and make profit reports with the final amount. o Today Profit gives the whole profits at one day. o Profit gives all the accounting bills According to thirty days.
Assistant • New Customer Add a Customer by entering his Customer Phone, Customer Name, Customer Email, and Customer Address. This form will register a new Customer: How to work as an assistant Create a New Customer Select: Cutomer → Add Customer. The Assistant must fill in all the fields such as: Customer Phone, Customer Name, Customer Email, and Customer Address.
And we make the same process for adding clothes or Supplier by selecting supplier or clothes instead of customer.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
35
I.T. MANAGEMENT
•
OXA CLOTHES STORE
Update Customer
Select: Customer →Select Update Customer icon. The Assistant must fill in the Customer Phone, Customer Name, Customer Email and Customer Address.
36
• Search Select: Clothes →Select Search icon. The Assistant must fill in the Type, Size, and Color. Then he should press on the Search button •
Accounting
This form enables Accouter to manage the accounting system by selecting the customer ID and the given Clothes name. The accouter can display the customer list, delete the list, display the amount, display the bill, and accounting reports called profits and this profits are divided to daily and monthly profits.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
First Select: Sale →Select Start Sale icon. The Accouter must select icons from the three toolbars on the top of the image below, after then he should select the clothes name with the customer Phone and press list the customers. 37
This list will show all the Clothes bought by the customer, after that accouter should click on icon Add to list to add the new items to the customer list, or he will choose the icon Delete to make a new customer list. After that accouter may press on the icon print to print the bill.
7. End user’s training As systems and data structures become more complex, users need constant support and guidance. To make data more accessible and to empower users, I intended to make the program so simple to be used, and I will make some training sessions for the employees to be ensured that they work on it in a perfect way.
8. QUALIFICATION 8.1. Internal Qualification After implementing the system, we decided to interview Mohamed Elshal , general manager , Nadir Alderani , the accountant ,Rasha Mortada and Samia Awad, the assistants. Mr. Elshal was surprised with the high performance of the system. He said that the system terminates overtime and provides high capabilities to resolve any problem that encounters any user. Later that day, in our meeting with Mr. Alderani, we found out more about the new system. We knew that the accounting system satisfies the accounting needs. Moreover, he stated that he is able to organize the customer’s accounts accurately without any damage or error.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
I.T. MANAGEMENT
OXA CLOTHES STORE
Later on, we met Rasha Mortada, the registrar. She confirmed that she is very happy with the way of registering customers and the way of generating searches.
8.2. External Qualification OXA’s customers were satisfied by getting their products as fast as possible; we made an interview with a customer after the new system was implemented. He said “shopping from OXA store became a joy. No wasting time in finding the products”. OXA store now can manage double the size of customers per day without any problem.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
38
I.T. MANAGEMENT
OXA CLOTHES STORE
Summary Project identification is the first phase of the systems development life cycle. Effective information systems help an organization support its business processes and carry out its mission and serve its stakeholders. During project definition, the store examines its purpose, vision, and values and develops a mission statement, which leads to goals, objectives, day-to-day operations, and business results that affects its business. During the project scope, the analyst evaluates the systems request and determine whether the project is operationally, technically, and economically feasible. Analysts evaluate systems requests on the basis of their expected costs and benefits, both tangible and intangible. In the second phase which is system analysis, data and process modeling is used to construct a logical model for an information system of any size or level of complexity. Data and process modeling use DFDs. DFDs graphically show the movement and transformation of data in the information system. Besides in this phase, Object modeling was introduced, which is a popular technique that describes a system in terms of objects. Objects represent real people, places, events, and transactions. Objects include data and processes that can affect the data. During the implementation process, objects are transformed into program code modules that can be optimized, tested, and reused as often as necessary. The third phase helps in understanding the system, planning and implementation. Database contains data about people, places, things, or events that affect the information system. A database consists of linked tables that form an overall data structure. A database management system is a collection of tools, features, and interfaces that enable users to add, update, manage, access, and analyze data in a database. In the implementation phase the language and the database driver are verified. This phase also describes the application programs in details such as classes and methods used in the application programs. Moreover, it states the mapping of methods from one class to another. However, the system changeover is mentioned in this phase to emphasis the implementation process. Finally the documentation phase examines the support and testing phase of the system; in this phase the training process and the user manual are established.
| Prepared by: Haidar Shouman, Mohammad Ismael, Bassem El Ahmar, Mohamad Abidsater, Hassan Zogeib
39