Presentation is loading. Please wait.

Presentation is loading. Please wait.

WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.

Similar presentations


Presentation on theme: "WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010."— Presentation transcript:

1 WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint They may not show up well on other PowerPoint versions. You can download PowerPoint 2010 viewer from here. These slides contain a lot of animations. For optimal results, watch in slideshow mode.

2 77577 OR tinyurl.com/answerpost
:MSLogic :Timer :ScoreCard :Minefield :Cell :Mine :Score a b :MSLogic :Minefield Which one is a behavior diagram? (as opposed to a structure diagram) diag {a|b|c} e.g. diag c MSLogic Minefield Cell ScoreCard Mine Timer Score feed2103 blah… c OR tinyurl.com/answerpost :Cell :Cell

3 :Cell :Cell

4 :Cell :Cell

5 Object diagram Sequence diagram [some period] [moment] Class diagram [all the time] :Cell :Cell

6 Collaborating objects
Blueprints for objects How to structure? Object rules Collaborating objects Object structure Follow a paradigm OOP Object behavior 1 2 3 4 1. Abstraction 2. Encapsulation 3. ………….. 4. ……………..

7 Ignore lower level details (functions, data) and treat as higher level entities called objects.
Package things together. Hide implementation and show only the interface.

8 If we do not know how to use them in the right way, that is, in the Object Oriented way, we are not going to get their full benefit.

9 Data function Class 1 Class 2 Class 3

10 Student Admin Data Data Data Data function function Data function Data function Data Lecturer Data Data Data function function function

11 f2 function1 data1 data2 function3 Student Lecturer Admin f2 function1

12 f2 function1 data1 data2 function3 Student Lecturer Admin
19/11/2019 1. Abstraction 2. Encapsulation

13 ClassA ClassB

14

15

16

17

18

19 Client 1 Client 2

20

21 TEAMMATES classes GaeSimulation Base TestCase Ui Tests BrowserPool Account Browser BackDoor HtmlHelper AssertHelper TestProperties AppPage AdminHomePage etc. BaseUi TestCase Base Component TestCase Driver tests Common tests Logic tests Storage tests Action _xyz_Servlet _xyz_Helper PageData _xyz_.jsp *.css *.js _abc_Action _xyz_PageData LoginFilter Action Factory ControllerServlet *Servlet ActionResult RedirectResult ShowPageResult HttpServletRequest FileDownloadResult Logic TeamEvalResult BackDoorLogic BackDoorServlet Automated RemindersServlet EvaluationClosing RemindersServlet s InstructorsLogic StudentsLogic EvaluationsLogic AccountsLogic CoursesLogic SubmissionsLogic GateKeeper …….. Logic TeammatesException EnrollException etc. Submission Feedback Response Evaluation Student EntityAttributes StudentAttributes CourseAttributes InstructorAttributes EvaluationAttributes ………………Attributes AccountAttributes * However, complexity is inherent. These are some of the classes in our project. Most links have been omitted and yet it looks daunting. Feedback Question Course Account Feedback Session * Instructor EvaluationsDb FeedbackSessionsDb CoursesDb AccountsDb SubmissionsDb FeedbackQuestionsDb StudentsDb FeedbackResponsesDb InstructorsDb *Type *Bundle *Stats *Summry Assumption Templates FieldValidator *Helper Sanitizer Config Const Url Utils Datastore DatastoreFilter

22 TEAMMATES classes GaeSimulation Base TestCase Ui Tests BrowserPool Account Browser BackDoor HtmlHelper AssertHelper TestProperties AppPage AdminHomePage etc. BaseUi TestCase Base Component TestCase Driver tests Common tests Logic tests Storage tests Action _xyz_Servlet _xyz_Helper PageData _xyz_.jsp *.css *.js _abc_Action _xyz_PageData LoginFilter Action Factory ControllerServlet *Servlet ActionResult RedirectResult ShowPageResult HttpServletRequest FileDownloadResult Logic TeamEvalResult BackDoorLogic BackDoorServlet Automated RemindersServlet EvaluationClosing RemindersServlet s InstructorsLogic StudentsLogic EvaluationsLogic AccountsLogic CoursesLogic SubmissionsLogic GateKeeper …….. Logic TeammatesException EnrollException etc. Submission Feedback Response Evaluation Student EntityAttributes StudentAttributes CourseAttributes InstructorAttributes EvaluationAttributes ………………Attributes AccountAttributes * However, complexity is inherent. These are some of the classes in our project. Most links have been omitted and yet it looks daunting. Feedback Question Course Account Feedback Session * Instructor EvaluationsDb FeedbackSessionsDb CoursesDb AccountsDb SubmissionsDb FeedbackQuestionsDb StudentsDb FeedbackResponsesDb InstructorsDb *Type *Bundle *Stats *Summry Assumption Templates FieldValidator *Helper Sanitizer Config Const Url Utils Datastore DatastoreFilter

23 TEAMMATES classes Logic TeamEvalResult BackDoorLogic BackDoorServlet Automated RemindersServlet EvaluationClosing RemindersServlet s InstructorsLogic StudentsLogic EvaluationsLogic AccountsLogic CoursesLogic SubmissionsLogic GateKeeper …….. Logic GaeSimulation Base TestCase Ui Tests BrowserPool Account Browser BackDoor HtmlHelper AssertHelper TestProperties AppPage AdminHomePage etc. BaseUi TestCase Base Component TestCase Driver tests Common tests Logic tests Storage tests Action _xyz_Servlet _xyz_Helper PageData _xyz_.jsp *.css *.js _abc_Action _xyz_PageData LoginFilter Action Factory ControllerServlet *Servlet ActionResult RedirectResult ShowPageResult HttpServletRequest FileDownloadResult *Type *Bundle *Stats *Summry Assumption Templates FieldValidator *Helper Sanitizer Config Const Url Utils StudentsDb InstructorsDb EvaluationsDb TeammatesException EnrollException etc. FeedbackSessionsDb Student AccountsDb CoursesDb SubmissionsDb * FeedbackQuestionsDb Submission Course Account FeedbackResponsesDb * Feedback Response Evaluation EntityAttributes StudentAttributes CourseAttributes InstructorAttributes EvaluationAttributes ………………Attributes AccountAttributes Datastore DatastoreFilter Instructor However, complexity is inherent. These are some of the classes in our project. Most links have been omitted and yet it looks daunting. Feedback Question Feedback Session

24 TEAMMATES classes

25 TEAMMATES classes And the design of each component is separate.

26 TEAMMATES classes And the design of each component is separate.

27 TEAMMATES classes And the API of components it depends on.

28 ? This kind of multi-level design minimize information overload and helps you manage complexity.

29 Design top-down, at multiple levels
This kind of multi-level design minimize information overload and helps you manage complexity.

30 77577 OR tinyurl.com/answerpost
What should Jim type? (if you support multiple formats, give the shortest format) Have to submit report by this coming Sunday command {team id} {answer} e.g. command w12-2j … feed2103 blah blah… OR tinyurl.com/answerpost

31 Define a command for this now…
Hmm.. Better to submit it by Saturday instead How about this? e by Sat


Download ppt "WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010."

Similar presentations


Ads by Google