SlideShare a Scribd company logo
1
Search Engine for
“Zygura” Classified Ads
Website
by the “Aspiring Developers”:
Team Leader: Artur Musin
Team Quality Checker: Sean Martinez
Technical Advisors:
Pamela Price & Hong Lin
2
Team Roles
• Artur Musin
• Site base
• Ad handling
• Database development
• Sean Martinez
• User handling
• Message handling
• Backend functions
3
“Zygura” Features
• Publish Ads
• View Ads as a Listing
• View Ads on the Google Map
• Quick access to Ad details and images
• Flexible search by various criteria
• Handy user-to-user communication 4
“Zygura” Advantages
• Clean & User friendly interface
• Browsing and searching without page reloads
• Quick access to an Ad content and its images
• Quick and simple communication mechanism
• Unobtrusive client-side forms input validation
• Decoupled code base for facilitating Unit Testing
5
Problem
• Users have to browse the full ad list
• Ads contain too much information
• Time is wasted skimming through
irrelevant ads 6
Design Patterns used
7
• MVC (Model-View-Controller)
• Unit of Work (Repository)
• Service Locator (Inversion of Control container)
• Composition Root (Modules Dependency Inversion)
• Dependency Injection (Class Constructor Injection)
• Factory pattern
• Iterator pattern
• Observer pattern
• Decorator pattern
• Strategy pattern
• Singleton pattern
• Façade pattern
Design Principles used
(S.O.L.I.D.)
8
• Single Responsibility principle
(class should have only one responsibility)
• Open-Closed principle
(class should be opened for extension and closed to modification)
• Liskov Substitution principle
(subtypes should be substitutable for its base types)
• Interface Segregation principle
(interfaces should not be “fat”)
• Dependency Inversion principle
(depend upon abstraction, not upon concretion)
ERD Diagram
9
Architectural Scheme - MVC
10
Modular Scheme
11
Database Entities
Business LogicUser Interface
Modules Decoupling for
Unit Testing
12
Search Activity Diagram #1
13
www.zygura.net/ad/search?image=true&categ=car&city=Cupertino
&priceMin=100&priceMax=1000&searchText=tesla_model_s
www.zygura.net/ad/search?image=true&categ=car&city=Cupertino&
priceMin=100&priceMax=1000&searchText=tesla_model_s
14
Search Activity Diagram #2
Register New User Page
15
Login User Popup
16
Publish Ad UI
17
Ads List Search
18
Advanced Search UI
19
Ads List Page
20
Displaying Single Ad
21
Responding to Ad’s Host
22
Routing Directions Popup
23
Google Map “Radar Search”
24
Map Advanced Search Page
25
Ad Details Page
26
User Profile Ads Management
27
User Messages Page
28
Admin’s Backend Page
29
Unit Testing
30
Integration Testing
Test Data Expected Results Actual Results
Test Status (Pass,
Fail, Not Tested)
Tested By Comments Corrective Action
What data will be
used
What should the
module do
What actually
occurred
Outcome Who did the test Any comments
What was done to
fix the problem
Textual
information along
with images
All manually added
Ads must be
displayed on the
webpage after
clicking Search
button
List of ads was
returned to user
Pass Artur Musin There were no
problems
Textual
information along
with images
All manually added
Ads must be
displayed on the
webpage after
clicking Search
button
Array of ads was
returned to the
Google map
Pass Artur Musin There were no
problems
Simple text and
images
Ad record should
be added to the
database
A new record
appeared in the
dbo.Ads table
Pass Artur Musin There were no
problems
Already precreated
ads in the
database
A record should
disappear from
Database
A record was
removed from
dbo.Ads table
Pass Artur Musin There were no
problems
Already precreated
ads in the
database
A record should
change its state
A record was
successfully
updated
Pass Artur Musin There were no
problems
31
User Acceptance Testing
Activity
Lead
Responsibility
Date Result
Search Engine
working
Artur Musin 6/24/2013 No problems
Map Search
working
Artur Musin 6/24/2013 No problems
Publishing Ads
working
Artur Musin 6/24/2013 No problems
Editing Ads
working
Artur Musin 6/24/2013 No problems
Deleting Ads
working
Artur Musin 6/24/2013 No problems
32
Lessons Learned
• Decoupled modules make code editing and updates cleaner
• Interfaces make classes more flexible
• The biggest challenge of the MVC code structure is
transferring data from one module to another
33
34

More Related Content

PPTX
Online classifieds PROJECT using .NET
PPTX
Mychoice -classified site for buying, selling, rent etc
PPT
E-CLASSIFIEDS
PPT
PPTX
Monetising mobile apps, apppli ltd
PPTX
Codestrong 2012 keynote how to build a top ten app
PPT
PPT
Salons
Online classifieds PROJECT using .NET
Mychoice -classified site for buying, selling, rent etc
E-CLASSIFIEDS
Monetising mobile apps, apppli ltd
Codestrong 2012 keynote how to build a top ten app
Salons

What's hot (20)

PPTX
How apps makemoney
PPT
PPT
Salons
PPT
PPT
Legal
PPT
Legal
PPTX
App monetization
PDF
Mobile app development converted
PPTX
BechDe App
PPT
Infozone detailed pitch Feb 2013
PPTX
Appsvswebsites2
PPTX
Sitecore Mobile Apps
PPTX
Safeshare - MARKETING PLAN FOR AN ANDROID APP
PPTX
Travel guide
PPSX
PPT for webinar- AppCompany
PPTX
Marketing Plan for an App ( Parking Finder!)
PPTX
Promoting your business on mobile devises
PDF
How To Get Low CPI High Value Users Via Mobile Ad Networks by Naghi Prasad
PPTX
Prototyping Mobile Application with Adobe FireWorks - By Linus Lim for VOX LAB
PPTX
Presentazione shopapp
How apps makemoney
Salons
Legal
Legal
App monetization
Mobile app development converted
BechDe App
Infozone detailed pitch Feb 2013
Appsvswebsites2
Sitecore Mobile Apps
Safeshare - MARKETING PLAN FOR AN ANDROID APP
Travel guide
PPT for webinar- AppCompany
Marketing Plan for an App ( Parking Finder!)
Promoting your business on mobile devises
How To Get Low CPI High Value Users Via Mobile Ad Networks by Naghi Prasad
Prototyping Mobile Application with Adobe FireWorks - By Linus Lim for VOX LAB
Presentazione shopapp
Ad

Similar to ZygurAds.com Classified Ads Website (20)

PDF
API Design & Moving from Junior to Senior Developer
PPT
My experience in Software QA
DOC
Manoj resume
PPT
Qe conference milan_searchtestrobot
PDF
NYU Talk
KEY
Website Testing Practices
PDF
Test Automation and Innovation with Open Source Tools
KEY
A Service-Based Architecture for Multi-domain Search on the Web
PPTX
Rabbit Hole® – A User Experience Case StudyCx ux engage_2014_rabbit_hole
PDF
Automated UI test on mobile - with Cucumber/Calabash
PPTX
SPA 2009 - Acceptance Testing AJAX Web Applications through the GUI
KEY
Why You Need a Front End Developer
PDF
Search&Filter Interface Round Up by Amy Cueva, Mad Pow
PPTX
TDD in functional testing with WebDriver
PPTX
User Experience: Why and How
PDF
John Resig Beijing 2010 (English Version)
PDF
CV Jose Maria Estevez Canales - EN
PDF
Google Product Dev Process
PPTX
SEO and User Experience (UX): A Vision of Collaboration
PPT
Embellish bureau
API Design & Moving from Junior to Senior Developer
My experience in Software QA
Manoj resume
Qe conference milan_searchtestrobot
NYU Talk
Website Testing Practices
Test Automation and Innovation with Open Source Tools
A Service-Based Architecture for Multi-domain Search on the Web
Rabbit Hole® – A User Experience Case StudyCx ux engage_2014_rabbit_hole
Automated UI test on mobile - with Cucumber/Calabash
SPA 2009 - Acceptance Testing AJAX Web Applications through the GUI
Why You Need a Front End Developer
Search&Filter Interface Round Up by Amy Cueva, Mad Pow
TDD in functional testing with WebDriver
User Experience: Why and How
John Resig Beijing 2010 (English Version)
CV Jose Maria Estevez Canales - EN
Google Product Dev Process
SEO and User Experience (UX): A Vision of Collaboration
Embellish bureau
Ad

Recently uploaded (20)

PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Approach and Philosophy of On baking technology
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
cuic standard and advanced reporting.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Digital-Transformation-Roadmap-for-Companies.pptx
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Building Integrated photovoltaic BIPV_UPV.pdf
Review of recent advances in non-invasive hemoglobin estimation
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Approach and Philosophy of On baking technology
The Rise and Fall of 3GPP – Time for a Sabbatical?
Network Security Unit 5.pdf for BCA BBA.
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
cuic standard and advanced reporting.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Electronic commerce courselecture one. Pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
A Presentation on Artificial Intelligence
Bridging biosciences and deep learning for revolutionary discoveries: a compr...

ZygurAds.com Classified Ads Website