Software and systems engineering
Paulo Borba
Informatics Center
Federal University of Pernambuco
phmb@cin.ufpe.br ◈ twitter.com/pauloborba
Evaluation of the configuration management class
•
Only 22 answers (28 for the first class)!•
"Mesmo que todos tenham lido o capítulo, seria uma boa … dar um resumo”•
''uma revisão do workflow com a participação dos alunos”•
"prática... É melhor do que só ir pelo slide.•
"ela poderia ter sido mais pratica, e os materiais centralizados”Class structure
•
Check previous activities•
Log into google with your CIn account•
Access and answer today’s questions (…)•
Discuss class material•
what haven’t you understood? what don’t you agree?what haven’t you liked? what are you missing to perform the project task?
•
Hands-on application developmentSoftware as a Service (SaaS)
•
Delivers software and data as a service over the Internet•
No need to install applications•
No need to backup or share data•
Easier to improve the serviceClient-server architecture
http://www.flickr.com/photos/29712319@N02/3272870058/
Client-server structure and behavior
Client (firefox)
Server (rgms.com) Client
(safari)
Internet
requests replies
Pattern principles
•
Separation of concerns between clients and servers•
Separates functionality and processing place•
Different interfaces for each serverClient-server
communication protocols
Client (firefox)
Server (rgms.com) Client
(safari)
Internet
TCP/IP HTTP
GET http://hostname:port/resource_path?query_terms POST http://hostname:port/resource_path
GET http://rgms.com:80/rgms/periodico/search?inst=ufpe&year=2014 POST http://localhost:8080/rgms/book/show/1
Exploring the protocols and architecture
•
Simulating state with cookies•
Simulating Server Push with Client Pull and pollingHTML
Client (firefox)
Server (rgms.com) Client
(safari)
Internet
TCP/IP HTTP
POST http://localhost:8080/rgms/book/show/2
HTML for service
invocation
HTML for service
result… and invocation!
CSS
HTML
defines as visual attributes file
references page elements
3-Tier architecture
Client (firefox)
Server (rgms.com) Client
(safari)
Internet
Web server Application
server Database
Presentation tier Logic tier Persistence tier
Controller 1
Controller 2
Controller n
Views 11Views
1
Views 11Views
2
Views 11Views
n Model
1
Model n Model
2
Model- View-
Controller
architecture
Routes and REST
•
Maps between URI and HTTP method(GET, POST, etc.) to controller and action
•
Web application entities are viewed as resources•
HTTP requests then identify resource and the action to be performed on itTemplate Views
Software and systems engineering
Paulo Borba
Informatics Center
Federal University of Pernambuco
phmb@cin.ufpe.br ◈ twitter.com/pauloborba