ASSINATURAS LABORATÓRIOS
AUGUST 2012
HTTP! HTTP!
Lorem
Dolor
Ipsum
server
server
server
TCP/IP!
HTTP!
TCP/IP!
YOUR DBMS
Auth
Amet
HTTP!
server
HTTP! TCP/IP!
Clients FOOTER — SOFTWARE ENGINEERING DIAGRAMS
← DIAGRAM
EXISTING SYSTEMS!
Interface
Authentication & Authorization (OAuth , Single Sign-On)
HTTP / REST!
NEW PLATFORM! YOUR PROJECT!
Your project
Other
server
HTTP!
REST API
Application
Web Portal HTTP!
server
Example sub-module
FOOTER — SOFTWARE ENGINEERING DIAGRAMS
← DIAGRAM
Authentication & Authorization
Legend:!
Logging & Reporting
(OAuth , Single Sign-On)
Interface! Database! System frontier!
HTTPS / REST
HTTP
Your project REST API
Web Portal HTTP
HTTP / ! REST
HTTP
Application Server
HTTP / ! JSON-P
System frontier!
Client
Client
Service Consumer
Web Browser
External Components
BUSINESS LOGIC!
FLOW LOGIC!
PRESENTATION LOGIC!
BACK-END !
I18n (*.po) TCP/ IP! HTTP/ REST!
Common Server
REST
API Django + Piston App
Web Portal Django App Model
View
Template
Router (urls.py) JSON/ *.MU!
REQUIRE.JS
FRONT-END ! Dependencies
DATA ACCESS LAYER!
Legend:!
Web Portal
Event Handler
Router Model Collection
Interface! Database! Boundaries!
View
Invocation! Asynchronous call or message!
Application Aggregation
Data Sources
Data Acquisition
& Integration.
& Processing
FOOTER — SOFTWARE ENGINEERING DIAGRAMS
← DIAGRAM
W3C Widget! Access Request Policy !
Legenda
!
Security
Desenvolvido pelo W3C (World Wide Web Consortium).! Desenvolvido pelo WAC (Wholesale Applications Community).!
W3C Digital Signatures for Widgets!
Desenvolvido pela Opera Software.! Desenvolvido por várias entidades.! Desenvolvido pela Google Inc..!
Lifecycle
W3C Widget Updates!
Preferences & basic APIs
W3C The Widget Interface!
Desenvolvido pela Mozilla Corp..!
WAC Widget Lifecycle!
Opera Extensions API!
Metadata W3C Widget Packaging and Configuration! (2006) Em 2011 chega ao estado “Proposed Recommendation”!
OpenSocial Gadget UserPrefs, IO (2007) Na versão 2.0!
OpenSocial! Core Gadget
(2007) Na versão 2.0!
Packaging
Web Technologies
Chrome Extensions Manifest File (2011)! Em produção!
Open Web Apps Manifest (2011)! Em desenvolvimento!
CRX Package Format (2011)! Em produção!
HTML, JavaScript, CSS!
Scott Wilson, “Web Apps — Snapshot of the Standards Landscape” (goo.gl/6eLvP)
← DIAGRAM
!
Container!
Social Network!
FOOTER — SOFTWARE ENGINEERING DIAGRAMS
Share and access social data!
← DIAGRAM
user: create dolor app
user: create ipsum layer
user: create! lorem app
user: update app
App state:!
App state:!
Processing
Private
server: process app
user: submit app for approval
manager: reject app
user: ! update lorem app
user: ! update. ! ipsum .
manager:! approve app
Public user: update draft
! !
Draft state:!
Draft state:!
Processing
Private
App state: Public
Pending
App state:! user: ! update ! dolor app
server: process draft
Aplicações neste es-! tado estão bloqueadas, não podendo ser editadas pelo utilizador!
App state:!
App state: Public
manager:! approve draft
user: ! submit draft for approval
!
Draft state:!
Pending App state: Public
manager: reject draft
Drafts neste estado estão bloqueados, não podendo ser editados pelo utilizador!
← DIAGRAM
Lógica de negócio das! Dolore Severe /Vitae Viverra!
Vista
Conector ao Servidor de Lorem Ipsum
Modelo
Widget Configuration API! getWidget(widgetID)! getWidgets()
Widget Factory
Widget Management API! HTTP POST ou! através do sistema de ficheiros
A partir do front-end podem ser executados simultaneamente
Widget Resources API! HTTP GET (widget)! HTTP GET (widget.js)
Página Show das! Dolore Severe /Vitae Viverra!
Dolor Severe! ou Vitae Viverra! !
( ou
)!
Dolor Severe Container
Yet Another Container
Widget Preferences JS API! preferenceForKey()! setPreferenceForkey()! ...
Proxy API! XmlHTTPRequest (external URL)!
Repositório de widgets Bibliotecas JavaScript Acesso a dados partilhado
Preferências do utilizador
Proxy Service
← DIAGRAM
Browser
Events Server
Application
Authenticate User Log In! username, password, csrf_token!
User Logged In! session_key!
Único para cada sessão
Connect to Web Socket Connect Web Socket!
Connection Established! socket_id!
Único para cada socket
← DIAGRAM
picol
fresh android icons
Web Portal and Stuff
Centralized Authentication
Developer Dashboard
Admin Interface
Isolated Environments
JavaScript APIs
Multi-Session Events
Documentation and Style Guides
FOOTER — SOFTWARE ENGINEERING DIAGRAMS
← DIAGRAM
An Archive
html
js
config
ico
css
.EXT
FOOTER — SOFTWARE ENGINEERING DIAGRAMS
← DIAGRAM
Daily Scrum Meeting
24 hours!
2 to 4 weeks!
Product Backlog!
Sprint Backlog!
FOOTER — SOFTWARE ENGINEERING DIAGRAMS
Retrospective
Potentially Shippable Product Increment!
← DIAGRAM
git pull
--re
base
BRANCH
BRANCH
BRANCH
commit
BRANCH
BRANCH
commit FOOTER — SOFTWARE ENGINEERING DIAGRAMS
← DIAGRAM
ASSINATURAS LABORATÓRIOS
AUGUST 2012