Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fundamentals of Software Development 1Slide 1 Two kinds of programs Some programs are like the draw-my-picture program.Some programs are like the draw-my-picture.

Similar presentations


Presentation on theme: "Fundamentals of Software Development 1Slide 1 Two kinds of programs Some programs are like the draw-my-picture program.Some programs are like the draw-my-picture."— Presentation transcript:

1 Fundamentals of Software Development 1Slide 1 Two kinds of programs Some programs are like the draw-my-picture program.Some programs are like the draw-my-picture program. –They start with ingredients –then step-by-step calculate whatever they must –then stop. What are some examples of such programs?What are some examples of such programs? Perhaps: make a sandwich; convert Fahrenheit to Celsius; compute the fastest route to Detroit.Perhaps: make a sandwich; convert Fahrenheit to Celsius; compute the fastest route to Detroit. What are some examples of programs that don’t fit this paradigm?What are some examples of programs that don’t fit this paradigm? –See the next slide for some answers

2 Fundamentals of Software Development 1Slide 2 Ongoing computational activity Today, most computer programs:Today, most computer programs: –Are embedded in an environment –Interact with that environment Examples include: –word processing program –spreadsheet –video game –web browser –cruise control for car –robot control system

3 Fundamentals of Software Development 1Slide 3 Computational Communities Today’s computer systems are often:Today’s computer systems are often: –Composed of many separate pieces –that interact with each other –as well as with the world. Coordinating the activity among the many entities that make up your program – and their interactions with the world around them – is the second aspect of computer programming.Coordinating the activity among the many entities that make up your program – and their interactions with the world around them – is the second aspect of computer programming.

4 Fundamentals of Software Development 1Slide 4 Example: Restaurant Computational Community Consider a restaurant as an example programConsider a restaurant as an example program Key questions to ask yourself:Key questions to ask yourself: –What is the desired behavior of the program? E.g., in a restaurant: each customer is seated at a clean table, the order is taken, food is served, etc.E.g., in a restaurant: each customer is seated at a clean table, the order is taken, food is served, etc. –Who are the entities who interact to produce this behavior? E.g., in a restaurant: wait staff, kitchen staff, manager, etc.E.g., in a restaurant: wait staff, kitchen staff, manager, etc. –How do these entities work? (What goes inside each entity?) E.g., wait staff: greet customer, supply menu, take order, etc.E.g., wait staff: greet customer, supply menu, take order, etc. –How do these entities interact? E.g., [details of interaction between waiter and cook, via piece of paper with order]E.g., [details of interaction between waiter and cook, via piece of paper with order]


Download ppt "Fundamentals of Software Development 1Slide 1 Two kinds of programs Some programs are like the draw-my-picture program.Some programs are like the draw-my-picture."

Similar presentations


Ads by Google