SlideShare uma empresa Scribd logo
1 de 41
Ganesh Kamath
MS – EWT (Embedded and Wireless Technology)
Internship at Intel
MCIS - 111003002
Development of Python Script Generator
 INTRODUCTION
 CONCEPTS
 The AMP Stack
 Benefits of using Database with Server-side scripts
 Client-side versus Server-side scripting
 Project Requirement
 Problem Statement
 Web Application Architecture
 Expectation at the end of the project
 Structure of the Script
 Web Application in action
 Features Supported
 Auto update of script based on Test Case Details
 Auto update of script based on Library Selection
 Auto update of script based on Function Selection
 Undo-Redo Feature
 Auto-population of dropdown
 Conclusion
 Summary
WebApplicationDevelopmentusingPHPandMySQL
2
5/25/2013
1. Today, PHP and MySQL are the most widely used
combination of open source technologies for Web
Application Development
2. In the presentation, we first discuss the various concepts
that form a base-line for the development of web-
technologies, followed by extensive focus on the specific
application namely the Python Script Generator (PSG)
3. In the discussion of the Python Script Generator, the
technologies that come into play behind the scenes are
covered so that viewers of this presentation are
acquainted with the knowledge to utilize the right
technology for the application they intend to create
WebApplicationDevelopmentusingPHPandMySQL
3
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
4
5/25/2013
 The AMP stack consists of:
 A -> Apache the web-server.
 M -> MySQL the database.
 P -> PHP the server-side scripting engine.
 There are several open-source AMP stacks readily available for
use such as:
 LAMP – Linux Apache MySQL PHP, Perl & Python
 WAMP – Windows Apache MySQL PHP
 MAMP – Mac Apache MySQL PHP
 XAMPP – Cross-platform Apache MySQL PHP Platform
WebApplicationDevelopmentusingPHPandMySQL
5
5/25/2013
 Free and open-source
 Maintained by the Apache Software Foundation
 Multi-platform & cross-platform support
 Good support in the form of mailing list and large
community of users
 Strong Default Configuration
 PHP has several inbuilt functions to perform query with
MySQL
 Ease of duplication of infrastructure on development
machine
WebApplicationDevelopmentusingPHPandMySQL
6
5/25/2013
Web Server Usage Open-source DBMS usage
Server-side scripting language usage
WebApplicationDevelopmentusingPHPandMySQL
7
5/25/2013
1. Storage, Retrieval, Management – Easy because database
allows users to store data in a logic format
2. Security – Database adds to security of the web-application as
database access includes secured authentication.
3. Independence – Data can be updated independently from the
content of the web-site as well as from independent locations
4. Scalability – If data grows exponentially, it can be handled
independently with respect to the web-site infrastructure.
Database can be scaled across servers by implementation of
several HDR options
5. Simple Integration – An existing database can be easily
integrated
6. Load Sharing – Database queries are processed autonomously
with respect to server-side scripts calling them, this decreases
load on the server-side scripts. Moreover, data retrieval from
database has been optimized over decades of data related
studies
7. Concurrency – Databases provide robust concurrent multi-user
access
WebApplicationDevelopmentusingPHPandMySQL
8
5/25/2013
Client-side script Server-side script
Processing Browser. Server.
Process Script is sent to the browser. Script is fetched from file system into the
server-side scripting engine
Load User's computer. Server machine.
Security Lower security because source-code
of the script can be exposed on the
user's computer.
Higher security because source-code is
interpreted and the resulting HTML is
returned to the user's computer (Logic is
secure).
Speed Very quick, because processing is
happening on user's computer
There is delay in fetching the processed
resource from the server.
Dependency User's browser needs to support the
client-side scripting language. It must
also be enabled for the web-
application to function smoothly.
The result of server-side script processing is
generally HTML which is supported on all
browsers.
Performance
Improvement
Performance can be improved by
increasing hard-disk/RAM of the user's
computer. There is performance
impact seen when the user opens
multiple web-application/web-pages
on the browser simultaneously.
Performance depends not only on server's
hard-disk, RAM and the Network but also on
simultaneous concurrent connections to the
server-side application.
Application Input-validation, user-interaction. Database or server-resource access
Example CSS, JavaScript, AJAX, VBScript PHP, ASP.Net, Ruby on Rails, JSP, Perl
WebApplicationDevelopmentusingPHPandMySQL
9
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
10
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
11
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
12
5/25/2013
 The dispatcher converts an URL such as:
https://www.google.co.in/webhp?hl=en&tab=ww
, into function calls with parameters:
Dispatch.run(https://www.google.co.in/webhp, hl=en, tab=ww)
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
13
WebApplicationDevelopmentusingPHPandMySQL
14
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
15
5/25/2013
 Test automation is a challenging yet important
field in Validation world
 An average validation engineer is not expected to
be expert in any of the programming languages
that can be used to create the scripts to
automate test execution
 The idea was to create a tool that can aid
validation engineers to generate scripts quickly
and efficiently without the need of being an
expert in the scripting language
 Common Python script errors were improper
indentations and spelling mistakes which were
reducing the performance of validation engineers
WebApplicationDevelopmentusingPHPandMySQL
16
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
17
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
18
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
19
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
20
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
21
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
22
5/25/2013
 http://localhost/college/PSG.php
WebApplicationDevelopmentusingPHPandMySQL
23
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
24
5/25/2013
Table in Content
Database
Table in User
Database
Visitor Count through “IP + Time Stamp”
interpretation
WebApplicationDevelopmentusingPHPandMySQL
25
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
26
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
27
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
28
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
29
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
30
5/25/2013
 Auto-population of library specific dropdown
values
 Independent update database values
 Ability to undo/redo an activity
 Fill in the mandatory header field manually
 Save the script on script completion
 Function prototype
 Authentication
 Centralized storage
 Analytics for the Admin
 Formatting
WebApplicationDevelopmentusingPHPandMySQL
31
5/25/2013
Change in state transition diagram and associated additional processing
WebApplicationDevelopmentusingPHPandMySQL
32
5/25/2013
Redo
Undo
Undo
Redo
Change induced on Dependent Library part of the script
Change induced on Script body
WebApplicationDevelopmentusingPHPandMySQL
33
5/25/2013
Dynamic Dropdown population
WebApplicationDevelopmentusingPHPandMySQL
34
5/25/2013
Web Application Development using PHP and MySQL 35
5/25/2013
 Common standard of test-case script creation – a benchmark
tool
 web-application - available everywhere, no need to install
 It has eliminated the chances syntax errors such as spelling
mistakes and problematic indentations.
 It does not require a Python expert to create a test-case
script. This eliminates the need to train people in Python to
create the wrapper files.
 Updating library - now independent of script creation
 Fast
 Centralized repository of scripts
WebApplicationDevelopmentusingPHPandMySQL
36
5/25/2013
 Using AMP stack can help developers reduce the
application development time.
 The python code generator enabled rapid
development of test-case execution scripts
thereby reducing the duration of validation
cycle.
 In this project, no of scripts in library were ~800
where as scripts were ~4000
 This give domain experts more time to create
efficient & more generic scripts
WebApplicationDevelopmentusingPHPandMySQL
37
5/25/2013
 In this presentation, we discussed the concepts
which come into play during developing a web-
application
 Distinction between Client-side and Server-side
scripting
 Benefits of implementing a database with web-sites
 The advantages of AMP stack was also discussed,
where we saw why PHP worked so well with MySQL
 Test cycle used in the Automation Team was
discussed, this was followed by requirements of
Python Script Generator
 Architecture and Detailed implementation of
each feature was discussed with a brief
description of problems solved by the tool
WebApplicationDevelopmentusingPHPandMySQL
38
5/25/2013
 Web technologies like HTML, PHP, CSS,
JavaScript, JQuery, SQL, AJAX was learnt
along with software suits like XAMPP,
Doxygen, Perforce during the course of the
project implementation.
 Database implementation concepts
 Importance of Scripting languages such as
Python in test-case execution
 Functioning of an organization with several
teams
WebApplicationDevelopmentusingPHPandMySQL
39
5/25/2013
 “Beginning PHP6, Apache, MySQL® Web
Development”, Timothy Boronczyk, Elizabeth
Naramore, Jason Gerner, Yann Le Scouarnec,
Jeremy Stolz, Michael K. Glass, 2009
 “Learning PHP, MySQL and JavaScript”, Robin
Nixon, 2009
 “PHP & MySQL For Dummies 3rd edition”,
Janet Valadey, 2007
 “Build your own Database driven Website using
PHP & MySQL”, Kevin Yank, 2009
 “How to Do Everything with PHP and MySQL”,
Vikram Vaswani, 2007
5/25/2013
WebApplicationDevelopmentusingPHPandMySQL
40
WebApplicationDevelopmentusingPHPandMySQL
41
5/25/2013

Mais conteúdo relacionado

Mais procurados

Web Servers: Architecture and Security
Web Servers: Architecture and SecurityWeb Servers: Architecture and Security
Web Servers: Architecture and Security
george.james
 
Web servers – features, installation and configuration
Web servers – features, installation and configurationWeb servers – features, installation and configuration
Web servers – features, installation and configuration
webhostingguy
 

Mais procurados (20)

web server
web serverweb server
web server
 
Php Tutorials for Beginners
Php Tutorials for BeginnersPhp Tutorials for Beginners
Php Tutorials for Beginners
 
Web Servers (ppt)
Web Servers (ppt)Web Servers (ppt)
Web Servers (ppt)
 
WEB I - 01 - Introduction to Web Development
WEB I - 01 - Introduction to Web DevelopmentWEB I - 01 - Introduction to Web Development
WEB I - 01 - Introduction to Web Development
 
Overview of PHP and MYSQL
Overview of PHP and MYSQLOverview of PHP and MYSQL
Overview of PHP and MYSQL
 
Asp.Net Tutorials
Asp.Net TutorialsAsp.Net Tutorials
Asp.Net Tutorials
 
Php.ppt
Php.pptPhp.ppt
Php.ppt
 
Php Presentation
Php PresentationPhp Presentation
Php Presentation
 
IIS
IISIIS
IIS
 
php
phpphp
php
 
PHP Presentation
PHP PresentationPHP Presentation
PHP Presentation
 
PHP
PHPPHP
PHP
 
Web Servers: Architecture and Security
Web Servers: Architecture and SecurityWeb Servers: Architecture and Security
Web Servers: Architecture and Security
 
Joomla and cms
Joomla and  cmsJoomla and  cms
Joomla and cms
 
Web servers – features, installation and configuration
Web servers – features, installation and configurationWeb servers – features, installation and configuration
Web servers – features, installation and configuration
 
Client & server side scripting
Client & server side scriptingClient & server side scripting
Client & server side scripting
 
Client Side scripting and server side scripting
Client Side scripting and server side scriptingClient Side scripting and server side scripting
Client Side scripting and server side scripting
 
Css
CssCss
Css
 
Lab manual asp.net
Lab manual asp.netLab manual asp.net
Lab manual asp.net
 
Web ,app and db server presentation
Web ,app and db server presentationWeb ,app and db server presentation
Web ,app and db server presentation
 

Destaque

Tutorial Pembuatan Aplikasi Website Beserta Databasenya
Tutorial Pembuatan Aplikasi Website Beserta DatabasenyaTutorial Pembuatan Aplikasi Website Beserta Databasenya
Tutorial Pembuatan Aplikasi Website Beserta Databasenya
RCH_98
 
Web Application PHP and MySQL Database
Web Application PHP and MySQL DatabaseWeb Application PHP and MySQL Database
Web Application PHP and MySQL Database
Sunny U Okoro
 

Destaque (12)

PHP and MySQL
PHP and MySQLPHP and MySQL
PHP and MySQL
 
Php with MYSQL Database
Php with MYSQL DatabasePhp with MYSQL Database
Php with MYSQL Database
 
Buku Ajar Pemrograman Web
Buku Ajar Pemrograman WebBuku Ajar Pemrograman Web
Buku Ajar Pemrograman Web
 
80+ Variabel Key performance indicators
80+ Variabel Key performance indicators80+ Variabel Key performance indicators
80+ Variabel Key performance indicators
 
Php and MySQL
Php and MySQLPhp and MySQL
Php and MySQL
 
Contoh Penilaian Kinerja Karyawan
Contoh Penilaian Kinerja KaryawanContoh Penilaian Kinerja Karyawan
Contoh Penilaian Kinerja Karyawan
 
Contoh/Template JOB DESC dalam Perusahaan
Contoh/Template JOB DESC dalam PerusahaanContoh/Template JOB DESC dalam Perusahaan
Contoh/Template JOB DESC dalam Perusahaan
 
Contoh KPI Individu. Rapor Prestasi Kerja
Contoh KPI Individu. Rapor Prestasi KerjaContoh KPI Individu. Rapor Prestasi Kerja
Contoh KPI Individu. Rapor Prestasi Kerja
 
Tutorial Pembuatan Aplikasi Website Beserta Databasenya
Tutorial Pembuatan Aplikasi Website Beserta DatabasenyaTutorial Pembuatan Aplikasi Website Beserta Databasenya
Tutorial Pembuatan Aplikasi Website Beserta Databasenya
 
Web Application PHP and MySQL Database
Web Application PHP and MySQL DatabaseWeb Application PHP and MySQL Database
Web Application PHP and MySQL Database
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 

Semelhante a Web Application Development using PHP and MySQL

Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
George Kanellopoulos
 

Semelhante a Web Application Development using PHP and MySQL (20)

PPT - A slice of cake php
PPT - A slice of cake phpPPT - A slice of cake php
PPT - A slice of cake php
 
Top 8 Reasons ASP.NET Core is the Best Framework for Web Application Developm...
Top 8 Reasons ASP.NET Core is the Best Framework for Web Application Developm...Top 8 Reasons ASP.NET Core is the Best Framework for Web Application Developm...
Top 8 Reasons ASP.NET Core is the Best Framework for Web Application Developm...
 
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
 
Why CakePHP Is Superior to Other Web Frameworks! Examine Its Pros & Cons For ...
Why CakePHP Is Superior to Other Web Frameworks! Examine Its Pros & Cons For ...Why CakePHP Is Superior to Other Web Frameworks! Examine Its Pros & Cons For ...
Why CakePHP Is Superior to Other Web Frameworks! Examine Its Pros & Cons For ...
 
Global Logic sMash Overview And Experiences
Global Logic   sMash  Overview And  ExperiencesGlobal Logic   sMash  Overview And  Experiences
Global Logic sMash Overview And Experiences
 
WebSphere sMash June Product Review
WebSphere sMash June Product ReviewWebSphere sMash June Product Review
WebSphere sMash June Product Review
 
sMash_for_zOS-users
sMash_for_zOS-userssMash_for_zOS-users
sMash_for_zOS-users
 
Mvc3 part1
Mvc3   part1Mvc3   part1
Mvc3 part1
 
Developing apps with techstack wp-dm
Developing apps with techstack wp-dmDeveloping apps with techstack wp-dm
Developing apps with techstack wp-dm
 
Full Stack Web Development: Vision, Challenges and Future Scope
Full Stack Web Development: Vision, Challenges and Future ScopeFull Stack Web Development: Vision, Challenges and Future Scope
Full Stack Web Development: Vision, Challenges and Future Scope
 
Presemtation Tier Optimizations
Presemtation Tier OptimizationsPresemtation Tier Optimizations
Presemtation Tier Optimizations
 
All the amazing features of asp.net core
All the amazing features of asp.net coreAll the amazing features of asp.net core
All the amazing features of asp.net core
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
 
RESTful APIs and SBCs
RESTful APIs and SBCsRESTful APIs and SBCs
RESTful APIs and SBCs
 
Node Summit 2016: Web App Architectures
Node Summit 2016:  Web App ArchitecturesNode Summit 2016:  Web App Architectures
Node Summit 2016: Web App Architectures
 
Top 5 backend frameworks for web development in.pptx
Top 5 backend frameworks for web development in.pptxTop 5 backend frameworks for web development in.pptx
Top 5 backend frameworks for web development in.pptx
 
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
 
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
 
Full lifecycle of a microservice
Full lifecycle of a microserviceFull lifecycle of a microservice
Full lifecycle of a microservice
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 

Mais de Ganesh Kamath

Study of USB Device Drivers under Linux _1_
Study of USB Device Drivers under Linux _1_Study of USB Device Drivers under Linux _1_
Study of USB Device Drivers under Linux _1_
Ganesh Kamath
 
documentc43 - AutoDesk inventor.PDF
documentc43 - AutoDesk inventor.PDFdocumentc43 - AutoDesk inventor.PDF
documentc43 - AutoDesk inventor.PDF
Ganesh Kamath
 
documentc19 - AutoCad Training Certificate.PDF
documentc19 - AutoCad Training Certificate.PDFdocumentc19 - AutoCad Training Certificate.PDF
documentc19 - AutoCad Training Certificate.PDF
Ganesh Kamath
 
documentc23 E Surveying Solutions Student Trainee Certifiate.PDF
documentc23 E Surveying Solutions Student Trainee Certifiate.PDFdocumentc23 E Surveying Solutions Student Trainee Certifiate.PDF
documentc23 E Surveying Solutions Student Trainee Certifiate.PDF
Ganesh Kamath
 
documentc21 - BSNL Summer Training Course.PDF
documentc21 - BSNL Summer Training Course.PDFdocumentc21 - BSNL Summer Training Course.PDF
documentc21 - BSNL Summer Training Course.PDF
Ganesh Kamath
 
documentc24 - Intel Internship Certificate.PDF
documentc24 - Intel Internship Certificate.PDFdocumentc24 - Intel Internship Certificate.PDF
documentc24 - Intel Internship Certificate.PDF
Ganesh Kamath
 
document11 - 10th Standard Marks Card.PDF
document11 - 10th Standard Marks Card.PDFdocument11 - 10th Standard Marks Card.PDF
document11 - 10th Standard Marks Card.PDF
Ganesh Kamath
 
document12 - 12th Standard Marks Card.PDF
document12 - 12th Standard Marks Card.PDFdocument12 - 12th Standard Marks Card.PDF
document12 - 12th Standard Marks Card.PDF
Ganesh Kamath
 
BTech University Certificate
BTech University CertificateBTech University Certificate
BTech University Certificate
Ganesh Kamath
 
BTech Transcript - Electronics and Communication
BTech Transcript - Electronics and CommunicationBTech Transcript - Electronics and Communication
BTech Transcript - Electronics and Communication
Ganesh Kamath
 
MS Degree Certificate
MS Degree CertificateMS Degree Certificate
MS Degree Certificate
Ganesh Kamath
 
MS Gold Medal Certificate from Manipal University
MS Gold Medal Certificate from Manipal UniversityMS Gold Medal Certificate from Manipal University
MS Gold Medal Certificate from Manipal University
Ganesh Kamath
 
MS Transcript - Embedded and Wireless Technology
MS Transcript - Embedded and Wireless TechnologyMS Transcript - Embedded and Wireless Technology
MS Transcript - Embedded and Wireless Technology
Ganesh Kamath
 
Ganesh Kamath's Résumé (3)
Ganesh Kamath's Résumé (3)Ganesh Kamath's Résumé (3)
Ganesh Kamath's Résumé (3)
Ganesh Kamath
 

Mais de Ganesh Kamath (15)

Study of USB Device Drivers under Linux _1_
Study of USB Device Drivers under Linux _1_Study of USB Device Drivers under Linux _1_
Study of USB Device Drivers under Linux _1_
 
Ganesh
GaneshGanesh
Ganesh
 
documentc43 - AutoDesk inventor.PDF
documentc43 - AutoDesk inventor.PDFdocumentc43 - AutoDesk inventor.PDF
documentc43 - AutoDesk inventor.PDF
 
documentc19 - AutoCad Training Certificate.PDF
documentc19 - AutoCad Training Certificate.PDFdocumentc19 - AutoCad Training Certificate.PDF
documentc19 - AutoCad Training Certificate.PDF
 
documentc23 E Surveying Solutions Student Trainee Certifiate.PDF
documentc23 E Surveying Solutions Student Trainee Certifiate.PDFdocumentc23 E Surveying Solutions Student Trainee Certifiate.PDF
documentc23 E Surveying Solutions Student Trainee Certifiate.PDF
 
documentc21 - BSNL Summer Training Course.PDF
documentc21 - BSNL Summer Training Course.PDFdocumentc21 - BSNL Summer Training Course.PDF
documentc21 - BSNL Summer Training Course.PDF
 
documentc24 - Intel Internship Certificate.PDF
documentc24 - Intel Internship Certificate.PDFdocumentc24 - Intel Internship Certificate.PDF
documentc24 - Intel Internship Certificate.PDF
 
document11 - 10th Standard Marks Card.PDF
document11 - 10th Standard Marks Card.PDFdocument11 - 10th Standard Marks Card.PDF
document11 - 10th Standard Marks Card.PDF
 
document12 - 12th Standard Marks Card.PDF
document12 - 12th Standard Marks Card.PDFdocument12 - 12th Standard Marks Card.PDF
document12 - 12th Standard Marks Card.PDF
 
BTech University Certificate
BTech University CertificateBTech University Certificate
BTech University Certificate
 
BTech Transcript - Electronics and Communication
BTech Transcript - Electronics and CommunicationBTech Transcript - Electronics and Communication
BTech Transcript - Electronics and Communication
 
MS Degree Certificate
MS Degree CertificateMS Degree Certificate
MS Degree Certificate
 
MS Gold Medal Certificate from Manipal University
MS Gold Medal Certificate from Manipal UniversityMS Gold Medal Certificate from Manipal University
MS Gold Medal Certificate from Manipal University
 
MS Transcript - Embedded and Wireless Technology
MS Transcript - Embedded and Wireless TechnologyMS Transcript - Embedded and Wireless Technology
MS Transcript - Embedded and Wireless Technology
 
Ganesh Kamath's Résumé (3)
Ganesh Kamath's Résumé (3)Ganesh Kamath's Résumé (3)
Ganesh Kamath's Résumé (3)
 

Web Application Development using PHP and MySQL

  • 1. Ganesh Kamath MS – EWT (Embedded and Wireless Technology) Internship at Intel MCIS - 111003002 Development of Python Script Generator
  • 2.  INTRODUCTION  CONCEPTS  The AMP Stack  Benefits of using Database with Server-side scripts  Client-side versus Server-side scripting  Project Requirement  Problem Statement  Web Application Architecture  Expectation at the end of the project  Structure of the Script  Web Application in action  Features Supported  Auto update of script based on Test Case Details  Auto update of script based on Library Selection  Auto update of script based on Function Selection  Undo-Redo Feature  Auto-population of dropdown  Conclusion  Summary WebApplicationDevelopmentusingPHPandMySQL 2 5/25/2013
  • 3. 1. Today, PHP and MySQL are the most widely used combination of open source technologies for Web Application Development 2. In the presentation, we first discuss the various concepts that form a base-line for the development of web- technologies, followed by extensive focus on the specific application namely the Python Script Generator (PSG) 3. In the discussion of the Python Script Generator, the technologies that come into play behind the scenes are covered so that viewers of this presentation are acquainted with the knowledge to utilize the right technology for the application they intend to create WebApplicationDevelopmentusingPHPandMySQL 3 5/25/2013
  • 5.  The AMP stack consists of:  A -> Apache the web-server.  M -> MySQL the database.  P -> PHP the server-side scripting engine.  There are several open-source AMP stacks readily available for use such as:  LAMP – Linux Apache MySQL PHP, Perl & Python  WAMP – Windows Apache MySQL PHP  MAMP – Mac Apache MySQL PHP  XAMPP – Cross-platform Apache MySQL PHP Platform WebApplicationDevelopmentusingPHPandMySQL 5 5/25/2013
  • 6.  Free and open-source  Maintained by the Apache Software Foundation  Multi-platform & cross-platform support  Good support in the form of mailing list and large community of users  Strong Default Configuration  PHP has several inbuilt functions to perform query with MySQL  Ease of duplication of infrastructure on development machine WebApplicationDevelopmentusingPHPandMySQL 6 5/25/2013
  • 7. Web Server Usage Open-source DBMS usage Server-side scripting language usage WebApplicationDevelopmentusingPHPandMySQL 7 5/25/2013
  • 8. 1. Storage, Retrieval, Management – Easy because database allows users to store data in a logic format 2. Security – Database adds to security of the web-application as database access includes secured authentication. 3. Independence – Data can be updated independently from the content of the web-site as well as from independent locations 4. Scalability – If data grows exponentially, it can be handled independently with respect to the web-site infrastructure. Database can be scaled across servers by implementation of several HDR options 5. Simple Integration – An existing database can be easily integrated 6. Load Sharing – Database queries are processed autonomously with respect to server-side scripts calling them, this decreases load on the server-side scripts. Moreover, data retrieval from database has been optimized over decades of data related studies 7. Concurrency – Databases provide robust concurrent multi-user access WebApplicationDevelopmentusingPHPandMySQL 8 5/25/2013
  • 9. Client-side script Server-side script Processing Browser. Server. Process Script is sent to the browser. Script is fetched from file system into the server-side scripting engine Load User's computer. Server machine. Security Lower security because source-code of the script can be exposed on the user's computer. Higher security because source-code is interpreted and the resulting HTML is returned to the user's computer (Logic is secure). Speed Very quick, because processing is happening on user's computer There is delay in fetching the processed resource from the server. Dependency User's browser needs to support the client-side scripting language. It must also be enabled for the web- application to function smoothly. The result of server-side script processing is generally HTML which is supported on all browsers. Performance Improvement Performance can be improved by increasing hard-disk/RAM of the user's computer. There is performance impact seen when the user opens multiple web-application/web-pages on the browser simultaneously. Performance depends not only on server's hard-disk, RAM and the Network but also on simultaneous concurrent connections to the server-side application. Application Input-validation, user-interaction. Database or server-resource access Example CSS, JavaScript, AJAX, VBScript PHP, ASP.Net, Ruby on Rails, JSP, Perl WebApplicationDevelopmentusingPHPandMySQL 9 5/25/2013
  • 13.  The dispatcher converts an URL such as: https://www.google.co.in/webhp?hl=en&tab=ww , into function calls with parameters: Dispatch.run(https://www.google.co.in/webhp, hl=en, tab=ww) 5/25/2013 WebApplicationDevelopmentusingPHPandMySQL 13
  • 16.  Test automation is a challenging yet important field in Validation world  An average validation engineer is not expected to be expert in any of the programming languages that can be used to create the scripts to automate test execution  The idea was to create a tool that can aid validation engineers to generate scripts quickly and efficiently without the need of being an expert in the scripting language  Common Python script errors were improper indentations and spelling mistakes which were reducing the performance of validation engineers WebApplicationDevelopmentusingPHPandMySQL 16 5/25/2013
  • 25. Table in Content Database Table in User Database Visitor Count through “IP + Time Stamp” interpretation WebApplicationDevelopmentusingPHPandMySQL 25 5/25/2013
  • 31.  Auto-population of library specific dropdown values  Independent update database values  Ability to undo/redo an activity  Fill in the mandatory header field manually  Save the script on script completion  Function prototype  Authentication  Centralized storage  Analytics for the Admin  Formatting WebApplicationDevelopmentusingPHPandMySQL 31 5/25/2013
  • 32. Change in state transition diagram and associated additional processing WebApplicationDevelopmentusingPHPandMySQL 32 5/25/2013
  • 33. Redo Undo Undo Redo Change induced on Dependent Library part of the script Change induced on Script body WebApplicationDevelopmentusingPHPandMySQL 33 5/25/2013
  • 35. Web Application Development using PHP and MySQL 35 5/25/2013
  • 36.  Common standard of test-case script creation – a benchmark tool  web-application - available everywhere, no need to install  It has eliminated the chances syntax errors such as spelling mistakes and problematic indentations.  It does not require a Python expert to create a test-case script. This eliminates the need to train people in Python to create the wrapper files.  Updating library - now independent of script creation  Fast  Centralized repository of scripts WebApplicationDevelopmentusingPHPandMySQL 36 5/25/2013
  • 37.  Using AMP stack can help developers reduce the application development time.  The python code generator enabled rapid development of test-case execution scripts thereby reducing the duration of validation cycle.  In this project, no of scripts in library were ~800 where as scripts were ~4000  This give domain experts more time to create efficient & more generic scripts WebApplicationDevelopmentusingPHPandMySQL 37 5/25/2013
  • 38.  In this presentation, we discussed the concepts which come into play during developing a web- application  Distinction between Client-side and Server-side scripting  Benefits of implementing a database with web-sites  The advantages of AMP stack was also discussed, where we saw why PHP worked so well with MySQL  Test cycle used in the Automation Team was discussed, this was followed by requirements of Python Script Generator  Architecture and Detailed implementation of each feature was discussed with a brief description of problems solved by the tool WebApplicationDevelopmentusingPHPandMySQL 38 5/25/2013
  • 39.  Web technologies like HTML, PHP, CSS, JavaScript, JQuery, SQL, AJAX was learnt along with software suits like XAMPP, Doxygen, Perforce during the course of the project implementation.  Database implementation concepts  Importance of Scripting languages such as Python in test-case execution  Functioning of an organization with several teams WebApplicationDevelopmentusingPHPandMySQL 39 5/25/2013
  • 40.  “Beginning PHP6, Apache, MySQL® Web Development”, Timothy Boronczyk, Elizabeth Naramore, Jason Gerner, Yann Le Scouarnec, Jeremy Stolz, Michael K. Glass, 2009  “Learning PHP, MySQL and JavaScript”, Robin Nixon, 2009  “PHP & MySQL For Dummies 3rd edition”, Janet Valadey, 2007  “Build your own Database driven Website using PHP & MySQL”, Kevin Yank, 2009  “How to Do Everything with PHP and MySQL”, Vikram Vaswani, 2007 5/25/2013 WebApplicationDevelopmentusingPHPandMySQL 40

Notas do Editor

  1. Good morning and welcome Ladies and gentlemen for my presentation on Web Application Development using PHP and MySQL. I am Ganesh Kamath a student of MCIS