SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.

Slides:



Advertisements
Similar presentations
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Advertisements

SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Design I: Web Application Architecture and Patterns Peter Dolog dolog [at] cs [dot] aau [dot] dk Intelligent Web and Information Systems September.
Department of Computer Science and Software Engineering Concordia University E NTERPRISE A PPLICATION D ESIGN P ATTERNS : I MPROVED AND A PPLIED Stuart.
What is Architecture  Architecture is a subjective thing, a shared understanding of a system’s design by the expert developers on a project  In the.
Todd Snyder Development Team Lead Infragistics Experience Design Group.
CS 160: Software Engineering October 8 Class Meeting
JSP Architecture Outline  Model 1 Architecture  Model 2 Architecture.
CGS – 4854 Summer 2012 Web Site Construction and Management Instructor: Francisco R. Ortega Chapter 2.
SOEN 6011 Software Engineering Processes Section SS Fall 2007 Dr Greg Butler
1 Another group of Patterns Architectural Patterns.
SOEN 6011 Software Engineering Processes Section SS Fall 2007 Dr Greg Butler
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Mark Dixon 1 09 – Java Servlets. Mark Dixon 2 Session Aims & Objectives Aims –To cover a range of web-application design techniques Objectives, by end.
CS 160: Software Engineering October 6 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Architectural Patterns Support Lecture. Software Architecture l Architecture is OVERLOADED System architecture Application architecture l Architecture.
Pertemuan 10 Enterprise Application Patterns Mata kuliah: T0144 – Advanced Topics in Software Engineering Tahun: 2010.
CS 160: Software Engineering September 3 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
CS 160: Software Engineering October 22 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets.
Introduction to Engineering MATLAB – 7 Script Files - 2 Agenda Script files continued.
Hints for Assignment #8. Initial Screen Hints for the initial page You need a DOCTYPE with the proper namespaces defined You need to import the facebook.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 7 1COMP9321, 15s2, Week.
SOEN 6011 Software Engineering Processes Section SS Fall 2007 Dr Greg Butler
SEA Side – Extreme Programming 1 SEA Side Software Engineering Annotations Architectural Patterns Professor Sara Stoecklin Director of Software Engineering-
ClaRA web services V. Gyurjyan Clas12 Software Meeting
How CGI and Java Servlets are Run By David Stein 14 November 2006.
CS 160 and CMPE/SE 131 Software Engineering February 11 Class Meeting Department of Computer Science Department of Computer Engineering San José State.
OOSD Using Java CBTS Framework. 11/2/04CBTS2 Servlet  A servlet is a Java program that can extends Web server’s functionality.  Servlets interact with.
Struct-like structure. Controller extends HttpServlet //Process the HTTP Get request public void doGet(HttpServletRequest request, HttpServletResponse.
COMP9321 Web Application Engineering Semester 2, 2016
Handling Errors in Web Applications
Piecewise-Defined Functions
Servlets Hits Counter 20-Jul-18.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
In Class Assg 4 - Solution
In Class Assg 3 - Solution
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
In Class Assg 2 - solution
Enterprise Architecture Patterns
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
Exercise 11.1 Write a code fragment that performs the same function as the statement below without using the crash method Toolbox.crash(amount < 0,
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
© copyright Janson Industries 2011
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
Agenda – week 6 6:00 – 6:10 Questions, announcements, intro
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
Peter Fox Data Science – ITWS/CSCI/ERTH 4350/6350 Module 2, Fall 2017
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
Introduction to Java Servlets
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOFTWARE DESIGN Lecture 8.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
INHERITANCE.
Presentation transcript:

SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin

Agenda – Lecture 10a Review & renew. Controller Patterns Some solutions to exercise set 9. Controller Patterns GRASP EA 11/10/2018 SOEN 343, © P.Chalin,

Do-it-all Servlet Redesign solutions: lect09.ppt SOEN 343, © P.Chalin, 11/10/2018 SOEN 343, © P.Chalin,

Presentation Domain Data Source Controller Patterns Page Controller Template View Presentation Front Controller Transform View Domain Model Transaction Script Domain Data Mapper Active Record Table Module Data Mapper Row Data Gateway Table Data Gateway Data Source Table Data Gateway 11/10/2018 SOEN 343, © P.Chalin,

Page Controller 11/10/2018 SOEN 343, © P.Chalin,

A1 Page Controllers protected void processRequest( HttpServletResponse response) throws ServletException, java.io.IOException // { TaskListHelper helper = new TaskListHelper(); try { ViewTaskListTS.execute(helper); } catch (Exception e) { helper.appendStatus(e.toString()); } if (helper.getTaskList() == null) { request.setAttribute("errorMessage", helper.getStatus()); forward("Error.jsp", request, response); } else { request.setAttribute("helper", helper); forward("TaskManager.jsp", request, response); 11/10/2018 SOEN 343, © P.Chalin,

A1 Page Controllers protected void processRequest(…) throws … { TaskListHelper helper = new TaskListHelper(); try { ViewTaskListTS.execute(helper); } catch (Exception e) { helper.appendStatus(e.toString()); } if (helper.getTaskList() == null) { request.setAttribute("errorMessage", helper.getStatus()); forward("Error.jsp", request, response); } else { request.setAttribute("helper", helper); forward("TaskManager.jsp", request, response); 11/10/2018 SOEN 343, © P.Chalin,

Page Controller vs. Front Controller – Differences in URL 11/10/2018 SOEN 343, © P.Chalin,

Page Controllers for A1 http:/stu.cs/343A1/ViewTaskList http:/stu.cs/343A1/AddTask http:/stu.cs/343A1/RemoveAllTasks … 11/10/2018 SOEN 343, © P.Chalin,

Front Controller for A1 Base URL: http:/stu.cs/343A1/frontController …/frontController ?command=ViewTaskList …/frontController ?command=AddTaskGrade&title=abc&… 11/10/2018 SOEN 343, © P.Chalin,

Front Controller 11/10/2018 SOEN 343, © P.Chalin,

Front Controller 11/10/2018 SOEN 343, © P.Chalin,

Front Controller (Fowler) Command (GoF) Patterns FrontCommand + init ( ) + processRequest ( ) RemoveStudentCommand ViewStudInfoCommand + processRequest ( ) + processRequest ( ) 11/10/2018 SOEN 343, © P.Chalin,

Front Controller: Sequence Diagram 11/10/2018 SOEN 343, © P.Chalin,

Front Controller: ProcessRequest 11/10/2018 SOEN 343, © P.Chalin,

Front Controller (cont’d) 11/10/2018 SOEN 343, © P.Chalin,

Assignment 2: Front Controller Solution 11/10/2018 SOEN 343, © P.Chalin,

Front Controller: Advantages? 11/10/2018 SOEN 343, © P.Chalin,