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 2010. They may not show up well on other PowerPoint versions. You can download PowerPoint 2010 viewer from here.here These slides contain a lot of animations. For optimal results, watch in slideshow mode.

2 TEAMMATE WAITING working WAITING

3

4

5 But not like scrum

6

7 The View from the Top: Architecture CS2103/T, Lecture 4, Part 1, [Sep 6, 2013]

8 + (important technical decisions) Architecture

9 Architecture

10 Architecture

11 Architecture TEAMMATES

12 + (important technical decisions) Architecture

13 Architecture a a b b c c d d

14 Architecture a a b b c c d d

15

16 The architect

17

18

19 Architecture a a b b c c d d

20 a a b b c c d d Architecture styles

21 a a b b c c d d Architecture styles

22 n-tier | Client-server| Transaction processing | service-oriented | pipes and filters Architecture styles

23 Tier 0 Tier 1 Tier 2 Tier n Storage Logic UI Hardware Access Network Protocol Encryption FTP Access GUI Console n-tier | Client-server| Transaction processing | service-oriented | pipes and filters Architecture styles

24 Server Client 2 Client 1 Client n Web Server Browser 2 Browser 1 Mobile Browser Game Server Game Client 1 Game Client 2 Web Network n-tier | Client-server| Transaction processing | service-oriented | pipes and filters Architecture styles

25 Dispatcher Transaction creator n Transaction creator 1 Transaction executor 1 Transaction executor n T4T4 T4T4 T5T5 T5T5 T6T6 T6T6 T1T1 T1T1 T3T3 T3T3 T2T2 T2T2 Dispatcher Teller n Teller1 Account Manager Currency Mgt System C4C4 C4C4 A5A5 A5A5 A6A6 A6A6 A1A1 A1A1 C3C3 C3C3 A2A2 A2A2 n-tier | Client-server| Transaction processing | service-oriented | pipes and filters Architecture styles

26 Internet eBookShop xml data n-tier | Client-server| Transaction processing | service-oriented | pipes and filters Architecture styles Web services

27 n-tier | Client-server| Transaction processing | service-oriented | pipes and filters Architecture styles

28 Architecture a a b b c c d d

29 Architecture a a b b c c d d [Application Programming Interface]

30

31

32 UI A A B B C C

33 A A B B C C

34 A A B B C C

35 A A B B C C

36 Define APIs systematically to match features UI A A B B C C

37 System: Minesweeper Use case: 01 - play game Actors: Player MSS: 1. Player starts a new game. 2. Minesweeper shows the mine field with all cells initially hidden. 3. Player marks or clears a hidden cell. 4. Minesweeper shows the updated mine field. Steps 3-4 are repeated until the game is either won or lost. 5. Minesweeper shows the result. Use case ends.

38 System: Minesweeper Use case: 01 - play game Actors: Player MSS: 1. Player starts a new game. 2. Minesweeper shows the mine field with all cells initially hidden. 3. Player marks or clears a hidden cell. 4. Minesweeper shows the updated mine field. Steps 3-4 are repeated until the game is either won or lost. 5. Minesweeper shows the result. Use case ends. The architect

39 System: Minesweeper Use case: 01 - play game Actors: Player MSS: 1. Player starts a new game. 2. Minesweeper shows the mine field with all cells initially hidden. 3. Player marks or clears a hidden cell. 4. Minesweeper shows the updated mine field. Steps 3-4 are repeated until the game is either won or lost. 5. Minesweeper shows the result. Use case ends.

40 UI MSLogic Storage History

41 UI [interactions between components for a given scenario]

42 :UI [interactions between components for a given scenario] operation returned value

43 :UI

44

45 SD for PC phone Complete this Sequence diagram. System: PC Phone Actor: phone user MSS: 1. User presses digit 2. System shows digit Repeat step 1-2 until telephone number is entered. 3. User press ‘send’ 4. System connects the call. Telephone conversation takes place. 5. User press ‘end’ 6. System disconnects the call Use case ends. :PCPhoneUI ‘send’ call connected ‘end’ call disconnected User press key Shows digit loop[Until full number]

46 Assume you are implementing a minesweeper game. Explain how you would eliminate the possibility of losing the game on the first click. first {answer} e.g. first blah blah blah first {answer} e.g. first blah blah blah 77577

47 :UI

48

49 :MSLogic

50 I want a foo() No way!

51 :UI :MSLogic

52 :UI :MSLogic

53 :UI :MSLogic

54 :Storage :History

55

56 Architecture a a b b c c d d

57 Architecture a a b b c c d d

58 agile camp full-design camp

59 Architecture a a b b c c d d

60 Architecture a a b b c c d d

61 UI MSLogic Storage History

62 UI MSLogic Storage History UI MSLogic Storage History

63 UI MSLogic Storage History UI MSLogic Storage History

64 MSLogic

65 ?? ???

66 Top-down design Minesweeper UI MSLogic Storage History MSLogic ?? ??? History ???

67 Minesweeper UI MSLogic Storage History MSLogic ?? ??? History ??? Bottom-up design

68 Which one is better?

69 Define architecture to work in parallel Define API systematically Can use architectural styles When to stop? Depends on agility Can be top-down or bottom-up. SDs help to discover APIs

70 Somewhat relevant Define APIs first Use SDs where necessary Force yourself to be top-down OK to be agile

71 Which one of these is the least applicable to the CS2103/T project? a) Top-down design. b) API design. c) Agile approach to design. d) Service-oriented architecture. e) Sequence diagrams project {a|b|c|d|e} e.g. project c project {a|b|c|d|e} e.g. project c 77577


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