Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Architecture Overview Client3 HTTP Client1 Server Client2 View ppt notes pages for discussion! Database (can be on the server or separate) Clients • Clients are thin clients • Can be many kinds of user devices – PC’s, laptops, workstations, etc. • Browser-based client applications (e.g. HTML, Javascript) drive these • Java client applications can be used • Windows/client applications also possible Server Web Access RMI Business Layer JDBC/ODBC Database Server (contd.) Java RMI, Servlets, JSP’s etc. Web Access Middleware in business layer (EJB’s or .NET services) Business Layer Database Database (SQL Server, Oracle, MySQL, etc.) Server (contd.) Web Access Business Layer Database HTML Web Services (communicates to/from the browser) Formatting Services (formats data to/from the business layer) Server (contd.) Session Management Web Access (managing client sessions) (authentication, permissions) Business Layer Transaction Management (queuing messages for each client) Database Business Logic (scheduling, conflict mgmt etc.) Database Access Layer (formats calls unique to each DB manager) Admin functions Security Maintainability • Localize modifications – Layered architecture • Using layers as intermediaries – Semantic coherence – Generalized modules – Testability enhanced by layering Usability • Clients use browsers • User Interface – can be off the shelf software • Design Concerns – Separate user interface from the rest of the application – Model View Controller Weaknesses • • • • Performance can be an issue Complexity – more layers, more classes Availability (single server) No special security considerations beyond data access