Kingdom of Saudi Arabia Ministry of Education College of Engineering & Computer Sciences Car Gallery Students: Bader Alherbi Abdulaziz Alqasem Supervisor: Dr. Osamah Ghalib Database Mustaqbal University - Saudi Arabia 1443-1444 (2021-2022) Dedication We dedicate this project to our beloved families and college members. 1 Acknowledgement First and for most, we would like to express my sincere thanks to the almighty God for the gift of life, wisdom understanding he has given to me , a reason for my existence and to my families for the love and support they had been provided throughout course. Dr. Osamah Ghalib whom I regard as a parent and a supervisor, I thank him for the expertise and intelligence he displayed the whole supervising in this project. I believe this good work in a result of his good guidance and cooperation. I cannot forget my friends in the faculty of Computer Science for the academic interactions and ideas. Lastly, I would like to convey my gratitude to the Department of Computer science for the support and providing everything we need. 2 Abstract Updating *( 3 Chapter 1: INTRODUCTION 4 1.1 Background The a is a car showroom that helps the person who wants to search for a specific car. This site displays the specifications of the car you want and saves a lot of time in searching and ease of use, and you can show the car for all Cities, and you can use it at all times and it is one of the best sites to display cars and is available 24 hours. 1.2 Problem Statement For businessmen getting special things that distinguish them from other competitors, one of this things are cars which you need to have garages and galleries. To prepare you need a lot of money and effort. 1.5 Objectives • Ease of searching for cars. • User friendly. • To keep track of cars • To compare cars in one place. 1.6 Scope of project and limitations Every project is done to achieve a set of goals with some conditions keeping in mind that it should be easy to use and user friendly. Our scope is to make car gallery to show the user his cars, but there are limitations that we will discuss here : 1.6.1 Duplicates: We are aware of that you can’t save same car name, and we are willing to add this feature in the future by assign to each car an id. 5 1.7 Project plan Millstone Millstone duration in number of weeks Week 7 Week 8 Week 9 Week 10 Week 11 Week 12 Responsibility Week 13 Introduction Bader & abdulaziz Requirements and System Design Bader & abdulaziz Implementation Bader & abdulaziz Test Bader & abdulaziz Table1.1 1.8 Contribution We went to near car owners in Al-qassim, we got some requirement that help us to build our system. We found solutions for their problems and implement it in our system. 6 Chapter 2: LITERATURE REVIEW 7 2.1 Introduction Literature review is an expressive study based on the detailed review of earlier relevant studies related to the various concepts of Cars galleries to discover the concept of car galleries. It highlights importance and comparison of other car galleries. 2.2Importance of Car Galleries Car galleries app is not well known but it adds very valuable use to whom have a lot of cars and want to show them to people. 2.3 Related Work 2.3.1 Mojaz is an advanced service which provides information about vehicles, from the date of entry into the Kingdom. The service is designed to help buyers who want to purchase used vehicles, by obtaining reliable information from a reliable source about the used vehicle. 2.3.1 AutoDna It displays the vehicle data and image by the vehicle identification number. 2.6 conclusion We compared our application so we improve it, our vision as mentioned before is to make local stores into online stores. We cannot outcome these huge companies, but we want to solve problem that these companies did not see. 8 Chapter 3: METHODOLOGY 9 3.1 Introduction This Section describes the methodology applied during the development of Car gallery. A methodology is a model, which project managers employ for the design, planning, implementation and achievement of their project objectives. Effective project management is essential in absolutely any organization, regardless of the nature of the business and the scale of the organization. From choosing a project to right through to the end, it is important that the project is carefully and closely managed. Based on the nature of my project solution, it was essential to use waterfall Software development life cycle (SDLC). The project typically has several Phases and the level of control required over each phase are primarily defined by the nature of the Project, the complexity of the same and the industry to which the Project has to cater to. 3.2 Methodology The Waterfall Model was the first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases. The Waterfall model is the earliest SDLC approach that was used for software development. The waterfall Model illustrates the software development process in a linear sequential flow. This means that any phase in the development process begins only if the previous phase is complete. In this waterfall model, the phases do not overlap. 3.3 Waterfall Model – Design Waterfall approach was first SDLC Model to be used widely in Software Engineering to ensure success of the project. In "The Waterfall" approach, the whole process of software development is divided into separate phases. In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially. The following illustration is a representation of the different phases of the Waterfall Model in figure 3.1. 10 Figure 3.1 The sequential phases in Waterfall model are: Requirement Gathering and analysis All possible requirements of the system to be developed are captured in this phase and documented in a requirement specification document. System Design The requirement specifications from first phase are studied in this phase and the system design is prepared. This system design helps in specifying hardware and system requirements and helps in defining the overall system architecture. Implementation With inputs from the system design, the system is first developed in small programs called units, which are integrated in the next phase. Each unit is developed and tested for its functionality, which is referred to as Unit Testing. 11 Integration and Testing All the units developed in the implementation phase are integrated into a system after testing of each unit. Post integration the entire system is tested for any faults and failures. Deployment of system Once the functional and non-functional testing is done, the product is deployed in the customer environment or released into the market. Maintenance There are some issues which come up in the client environment. To fix those issues, patches are released. Also, to enhance the product some better versions are released. Maintenance is done to deliver these changes in the customer environment. All these phases are cascaded to each other in which progress is seen as flowing steadily downwards (like a waterfall) through the phases. The next phase is started only after the defined set of goals are achieved for previous phase and it is signed off, so the name "Waterfall Model". In this model phases do not overlap. 3.4 Waterfall Advantages While agile or dynamic methods often replace the waterfall model, there are some advantages: • Upfront documentation and planning stages allow for large or shifting teams to remain informed and move towards a common goal. • Forces structured , disciplined organization. • Is simple to understand, follow and arrange tasks. • Facilitates departmentalization and managerial control based on schedule or deadlines. • Reinforces good coding habits to define before design and then code. • Allows for early design or specification changes to be made easily. • Clearly defines milestones and deadlines. 12 3.5 Tools and Technology For the Cross-platform application that is to be developed during the implementation phase of the project, these technology enablers are going to be used: Visual Studio was used to modify the code for the web, Visual Studio desktop and mobile application. C# (pronounced "C-sharp") is an object-oriented programming language from C# Microsoft. Table 3.1 Other Tools: Photoshop was used to design the graphical user interface of the mobile application’s Photoshop activities. (Backgrounds, Images, and icons). Draw.io was used to draw the different diagrams of the Draw.io design part of the project. Table 3.2 13 3.6 Conclusion We used waterfall Model as our methodology for developing this system, and we described the advantages of waterfall, its process. 14 Chapter 4: REQUIREMENT SPECIFICATION AND ANALYSIS 15 4.1 Introduction This chapter will provide a full description of the system and its users. Then it depicts the functional and non-functional requirements that have been collected using several methods like brainstorming, interview, and e-surveys. After determining the most important requirements, requirement. 4.2 System Description Car gallery is windows application to enable car owners to show there car, search them and track them. Also it enables admin to add, delete and modify cars. 4.3 User Description There are two main users for the proposed system; these are Admin and user. Each user can perform several different functions during the use of the system. These functions were determined according to the design of the proposed system and a user-friendly function to make the system more effective and efficient. Actors Admin Function -Add car -Delete car -Modify car -Logout -Log in -Search the car -Browse the cars user Table 4.1 4.4 System Requirement Before creating any windows application, it is necessary to visualize the layout, design and all features intended to be incorporated. In addition, how users will interact with each page and icon and how the website should perform (behavior, load time etc.). Requirements are the necessary attributes in the system, a statement that identifies a capability, characteristic or quality factor of the system to have value and utility to the users. Once the requirements are set, developers can initiate the other technical work including system design, development, testing, implementation, and operation. For any system, there are functional and non-functional requirements to be considered while determining the requirements of the system. The functional 16 requirements are user “visible” features that are typically initiated by stakeholders of the system, such as generate report, login, and signup. On the other hand, nonfunctional requirements are requirements that describe how the system will do what it is supposed to do, for example, security, reliability, and maintainability. 4.4.1 Functional Requirement 4.4.1.1 Admin - Admin should be able to add car. - Admin should be able to delete car. - Admin should be able to modify car. - Admin should be able to log in. - Admin should be able to log out. 4.4.1.2 User - User should be able Log in / out. -User should be able to search the cars. -User should be able to browse the cars 4.4.2 Non-Functional Requirement 4.4.2.1 Security Every user has his own account and only authorized users can access the system with username and password. The passwords are encrypted using a PHP. 4.4.2.2 Performance Easy tracking of records and updating can be done. 17 4.4.2.3 Availability The system is available to users anytime, anywhere, just need a PC and Internet Connection. Also, the system work in multiple web browsers like (Chrome, Mozilla, Opera, and Internet Explorer). 4.4.2.4 User Friendly The system has a friendly user interface and the system very interactive. 4.5 System Analysis This part contains the analysis of the functional and non-functional requirements using use-case diagrams, and use-cases details. In addition, the interactive behavior of the activities is analyzed using sequence diagrams and activity diagrams. 4.6 Conclusion We had a description for the system and its users, and the functional and non-functional requirements, then we talked about use case diagram that have been used to analyze the interactive behavior of the activities. 18