Submitted by: Moran Mishan. Instructed by: Osnat (Ossi) Mokryn, Dr.
:Table of contents The system - General description. User types. Functional requirements. Technology. System Structure. System Data Base. Data Base schema.
The system – General description The system, which also be referred as “nayad2 website”, is offering sale table service for all types of vendors of all kinds of mobile products. For example: cell phone, laptops, PDA etc… The users can also read and write reviews on their subject of interest.
The System End Users Anonymous users: Users who are interesting in buying mobile product/s, or in reading other people reviews on their subject of interest. Users who whish to express their own opinion and write a product usage review. Registered users: Users who wish to publish their product/s on the site.
Functional Requirements The system should be approachable from any web access station. The system should have extendable abilities for future concern. The system should enable publishing users ads through 3 step procedure. The system should communicate with data stores. The system should not be depend on specific data store. e.g. could work with “my sql” and with “microsoft sql”. The system should enable publish reviews for products.
Technology (server side) The system is build on the.Net platform from Microsoft using the ASP.Net technology. ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites, web applications and web services. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write ASP.NET code using any supported.NET language.
Technology (client side) In Attempt for creating convenient User Interface, the system is using the well known client side scripting technologies. jQuery - is a cross-browser JavaScript library designed to simplify the client-side scripting of HTML. Used by over 31% of the 10,000 most visited websites, jQuery is the most popular JavaScript library in use today. AJAX is a group of interrelated web development techniques used on the client-side to create interactive web applications. With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page. The use of Ajax techniques has led to an increase in interactive or dynamic interfaces on web pages. Data is usually retrieved using the XMLHttpRequest object. Despite the name, the use of XML is not actually required, nor do the requests need to be asynchronous.
System Structure The system Structure is based on the N-Tier model. The N-Tier Model: In software engineering, multi-tier architecture (often referred to as n-tier architecture) is a client–server architecture in which the presentation, the application processing, and the data management are logically separate processes. For example, an application that uses middleware to service data requests between a user and a database employs multi-tier architecture. The most widespread use of multi-tier architecture is the three-tier architecture. N-tier application architecture provides a model for developers to create a flexible and reusable application. By breaking up an application into tiers, developers only have to modify or add a specific layer, rather than have to rewrite the entire application over. There should be a presentation tier, a business or data access tier, and a data tier
Data Base Creation using ORM. For working and communicating with the data base, the system is using the LINQ to SQL.NET Framework component. What is LINQ and what is ORM? ORM - Object-relational mapping (ORM, O/RM, and O/R mapping) in computer software is a programming technique for converting data between incompatible type systems in object-oriented programming languages. This creates, in effect, a "virtual object database" that can be used from within the programming language. There are both free and commercial packages available that perform object-relational mapping, although some programmers opt to create their own ORM tools. LINQ - Basically LINQ address the current database development model in the context of Object Oriented Programming Model. LINQ has a great power of querying on any source of data, data source could be the collections of objects, database or XML files.
LINQ to SQL So what is Linq to sql? LINQ to SQL is an O/RM (object relational mapping) implementation that ships in the.NET Framework "Orcas" release, and which allows you to model a relational database using.NET classes. You can then query the database using LINQ, as well as update/insert/delete data from it. LINQ to SQL fully supports transactions, views, and stored procedures. It also provides an easy way to integrate data validation and business logic rules into your data model.
ORM using Linq to sql Example All the class in the picture was created from the data base tables using the linq to sql technology.
Data Base Schema – presented via ER-Diagram.