+ All Categories
Home > Documents > Informatics 43 – May 29, 2014

Informatics 43 – May 29, 2014

Date post: 30-Dec-2015
Category:
Upload: winter-zamora
View: 31 times
Download: 3 times
Share this document with a friend
Description:
Informatics 43 – May 29, 2014. Restatement of G oals for Testing. Want to verify software’s correctness  Need to test  Need to decide on test cases  No set of test cases is sufficient - PowerPoint PPT Presentation
Popular Tags:
19
Informatics 43 – May 28, 2015
Transcript
Page 1: Informatics 43 –  May 29, 2014

Informatics 43 – May 28, 2015

Page 2: Informatics 43 –  May 29, 2014

Architectural Styles and Patterns

A named, commonly used set of

Components – subsets of functionality (we are concerned with what a component does, not how it is implemented) – aka modules

And Connections – function calls, shared memory, network traffic (message passing), sequencing, roles

Page 3: Informatics 43 –  May 29, 2014

Styles from last lecture

• Client – server

• Typically, the client and the server are separate computers that communicate over a network.

• Layered

• Typically, the modules in the various layers are all on one computer. Modules on one layer are implemented by calling functions from the layer below.

• Model View Controller

• Particularly useful for building flexible user interfaces.

Page 4: Informatics 43 –  May 29, 2014

3-tier architecture

Page 5: Informatics 43 –  May 29, 2014

3-tier architecture

Page 6: Informatics 43 –  May 29, 2014

3-tier architecture

Page 7: Informatics 43 –  May 29, 2014

n-tier architecture

Page 8: Informatics 43 –  May 29, 2014

Does Facebook only have one server?

Page 9: Informatics 43 –  May 29, 2014
Page 10: Informatics 43 –  May 29, 2014

Facebook has over 1 billion users!

Page 11: Informatics 43 –  May 29, 2014

Facebook has LOTS and LOTS of servers.

>180,000 servers across multiple data centers.

Page 12: Informatics 43 –  May 29, 2014
Page 13: Informatics 43 –  May 29, 2014

Non-Functional Requirements

Performance: Scalability: Availability: Security: Privacy: Reliability: Portability:

It's fast.

Uptime.

It's not privacy.

It's fast even with lots of users.

It's not security.

Don't delete my data by accident.

Works on different platforms(operating systems, web browsers, phones, etc.)

Page 14: Informatics 43 –  May 29, 2014

What do software architects do?

Figure out non-functional requirements Figure out what the components should be and

how they communicate. Instruct programmers Design tests Code (yes, software architects code)

Page 15: Informatics 43 –  May 29, 2014

But wait, there’s more

Pipes-and-filters

Page 16: Informatics 43 –  May 29, 2014

Unix command example

tr 'A-Z' 'a-z' <fnord.txt |

tr -cs 'a-z' '\n' | sort | uniq | comm -23 - /usr/share/dict/words

tr “translate” uppercase to lower case

tr turn everything except lowercase to newline

sort puts words in alphabetical order

uniq gets rid of duplicates

comm compares to words in dictionary and prints what’s not in the dictionary

Page 17: Informatics 43 –  May 29, 2014

But wait, there’s still more

Event driven

Page 18: Informatics 43 –  May 29, 2014

But wait, there’s more

Database-centric

Page 19: Informatics 43 –  May 29, 2014

“Where do they find the time?”

Clay Shirky: Cognitive Surplus

http://blip.tv/web2expo/web-2-0-expo-sf-2008-clay-shirky-862384


Recommended