Presentation is loading. Please wait.

Presentation is loading. Please wait.

Informatics 43 – May 21, 2015. A quote from Piazza “This course is trying to teach you how to be a PM (product manager).”

Similar presentations


Presentation on theme: "Informatics 43 – May 21, 2015. A quote from Piazza “This course is trying to teach you how to be a PM (product manager).”"— Presentation transcript:

1 Informatics 43 – May 21, 2015

2 A quote from Piazza “This course is trying to teach you how to be a PM (product manager).”

3 Software Engineering “The multi-person creation of multi-version programs.” What does this mean in practice for co-ordination? How do we keep multiple developers for interfering with each other?

4 Software Engineering “The multi-person creation of multi-version programs.” What does this mean in practice for co-ordination? How do we keep multiple developers for interfering with each other? Version control software! (aka Revision control and source control)

5 Version Control Challenges Software is typically stored in multiple files. A change (bug fix, new feature) often requires changes to several of these files. Multiple people are working on the software at the same time. It is easy for people to “step on each others’ feet” Two or more people editing a file simultaneously. Updates need to be synchronized. People may wait for others to “release” files.

6 Version Control Solutions Use software to manage a project’s source files. git is a popular option and the basis of homework 3

7 Software Architecture is... "The set of principal design decisions about a system." -ISR @ UCI (in their opinion)

8 What do you need to know before you architect some software?

9 Facebook What features does Facebook have?

10 What is a client-server architecture? What happens on the server side? What happens on the client side?

11 3-tier architecture

12

13 Does Facebook only have one server?

14

15 Facebook has over 1 billion users!

16 Facebook has LOTS and LOTS of servers. >180,000 servers across multiple data centers.

17

18 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.)

19 What do software architects do? Figures out non-functional requirements Figures out what the components should be and how they communicate. Instruct programmers Design tests Code (yes, software architects code)

20 But wait, there’s more Pipes-and-filters

21 But wait, there’s more Event driven

22 But wait, there’s more Database-centric


Download ppt "Informatics 43 – May 21, 2015. A quote from Piazza “This course is trying to teach you how to be a PM (product manager).”"

Similar presentations


Ads by Google