Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software to Go with the Flow. Software Engineering Step #1 Analyze the problem. Step #1 Analyze the problem. Step #2 Design the architecture of a solution.

Similar presentations


Presentation on theme: "Software to Go with the Flow. Software Engineering Step #1 Analyze the problem. Step #1 Analyze the problem. Step #2 Design the architecture of a solution."— Presentation transcript:

1 Software to Go with the Flow

2 Software Engineering Step #1 Analyze the problem. Step #1 Analyze the problem. Step #2 Design the architecture of a solution. Step #2 Design the architecture of a solution. Step #3 Implement the design as a computer program. Step #3 Implement the design as a computer program.

3 Software Engineering Step #2 Design the architecture of a solution. Step #2 Design the architecture of a solution. Step #1 Analyze the problem. Step #1 Analyze the problem. Step #3 Implement the design as a computer program. Step #3 Implement the design as a computer program.

4 What are the ingredients of a computer program? 1) data 2) algorithm (instructions) Software design must also focus on these.

5 Algorithmic Thinking DEFN (revisited) An algorithm is a group of instructions (often expressed informally) for performing some task. DEFN (revisited) An algorithm is a group of instructions (often expressed informally) for performing some task. examples of algorithms recipe for baking cookies a set of travel directions directions for operating your cell phone procedures for registering for next semester’s classes instructions for completing an income tax form a computer program

6 Diagrams “Picture that!” “One picture is worth a thousand words.” Software Design Software Diagrams Activity Diagrams State Diagrams

7 Activity Diagrams part of the Unified Modeling Language (UML) a notation for depicting algorithms the purpose captures the flow of an algorithm activity diagrams are a kind of flow diagram / flowchart the notation an action to be performed a flow that determines the order of actions a point at which flows merge or split (a choice)

8 Activity Diagram Elements Simple Activity diagrams consist of: –Initial node. –Final node. –Action nodes. –Flows (sequences) given by arcs. Eat dinner

9 Details The initial node indicates where to start The activity described by the diagram ends with the final node. –An activity can have more than one final node. Action nodes operate on data and pass data to other actions. The sequence of actions is defined by the arcs of the diagram.

10 Conditional Actions Some actions are conditional. How would you say that you need to study if you have an exam tomorrow otherwise you would waste time on Facebook? –What are the actions –What is the condition? A diamond indicates points at which a flows split (a condition) or merge Waste time on Facebook Study [exam tomorrow][no exam tomorrow]

11 Simple Activity Diagram Instructions for setting wristwatch time

12 Making Choices in Algorithms the pattern Choice #1 Choice #2 Choice #N from some previous part of the diagram

13 Login Algorithm

14 Repetition in Algorithms the patterns

15 Fudge Algorithm

16 Login Algorithm 2

17 Flight Reservation Algorithm

18 Email Client Algorithm

19


Download ppt "Software to Go with the Flow. Software Engineering Step #1 Analyze the problem. Step #1 Analyze the problem. Step #2 Design the architecture of a solution."

Similar presentations


Ads by Google