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 Man Woman Let’s talk about the Evolution of (Wo)man… wants to date * * * * ** * *

3 Man Woman wants to date * * * * ** * * Assume we are building an online dating app. It allows users to indicate which other users they want to date. The following class diagram shows the ‘wants to date’ associations. Can the design be simplified? On with our lecture proper

4 Man Woman wants to date * * Person

5 Man Woman wants to date * * Person WantsToDate

6 Man Woman Person WantsToDate 1 1 * * requestor target

7 Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar

8 Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar

9 Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar Serve tea Clean table Toast bread Cut bread Accept payment Give change Issue receipt Wash utensils Pay bills Order supplies …… … …

10 Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar Serve tea Clean table Toast bread Cut bread Accept payment Give change Issue receipt Wash utensils Pay bills Order supplies …… … … Procedural

11 1 chef 2 waiters 1 cashier 1 part time accountant 1 manager 1 cash register 1 stove Serve tea Clean table Toast bread Cut bread Accept payment Give change Issue receipt Wash utensils Pay bills Order supplies …… … … Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar OOP Procedural

12 OOP 4 Abstraction Encapsulation Inheritance pOlymorphism

13 Data function

14 Data function

15 Data function Data function Student Course Lecturer

16 Data function Data Student

17 Data function Data Student cs2103: Course hchia: Lecturer john:

18 Student john:

19 Student NgStudent PgStudent UgStudent

20 {abstract} Student NgStudent PgStudent UgStudent

21 > Student NgStudent PgStudent UgStudent

22 :NgStudent :PgStudent :UgStudent :Lecturer study() foo() bar () goo ()

23 :NgStudent :PgStudent :UgStudent :Lecturer study() foo() bar () goo ()

24 :NgStudent :PgStudent :UgStudent :Lecturer study() foo() bar () goo ()

25 :Student :NgStudent :PgStudent :UgStudent :Lecturer

26 1 chef 2 waiters 1 cashier 1 part time accountant 1 manager 1 cash register 1 stove Divisions/Departments Kitchen Accounting Customer Services Purchasing OOPArchitecture

27 OOPArchitecture

28 OOPArchitecture

29 A B C D B C A Component A design * Component C design * D C Component B designComponent D design OOP Component design Architecture Achievement Unlocked! Top-down multi- level design

30 Achievement yet to be unlocked! Software Reuse Writing from scratch is better? Can you imagine trying to become a poet without reading poems written by other poets? Open Source projects

31 Achievement yet to be unlocked! Effort estimation Promise only what you can deliver, deliver what you promised.

32 Basic SE knowledge [up to B+] Theory covered  Practice in project  internalize L1-L6 L7-L12 Intermediate SE knowledge [A- to A+] Today Better design Better code Better documentation

33


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