Presentation is loading. Please wait.

Presentation is loading. Please wait.

Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Twelfth Edition.

Similar presentations


Presentation on theme: "Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Twelfth Edition."— Presentation transcript:

1 Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Twelfth Edition

2 Technology in Action Chapter 10 Behind the Scenes: Software Programming

3 Understanding Software Programming The Importance of Programming The Life Cycle of an Information System The Life Cycle of a Program Copyright © 2016 Pearson Education, Inc.10-2

4 The Importance of Programming Objective 1.Why do I need to understand how to create software? Copyright © 2016 Pearson Education, Inc. 10-3

5 The Life Cycle of an Information System Objective 2.What is a system development life cycle, and what are the phases in the cycle? Copyright © 2016 Pearson Education, Inc. 10-4

6 The Life Cycle of a Program Objectives 3.What is the life cycle of a program? 4.What role does a problem statement play in programming? 5.How do programmers create algorithms and move from algorithm to code? 6.What steps are involved in completing the program? Copyright © 2016 Pearson Education, Inc. 10-5

7 Understanding Software Programming Some tasks are complex  Require creative thought  Require human touch Some tasks are candidates for automation  Repetitive  Work with electronic information  Follow a series of clear steps Copyright © 2016 Pearson Education, Inc. 10-6

8 The Importance of Programming A career in programming offers:  Plentiful jobs  Strong salaries  Telecommuting is often easy to arrange Computer programs exist for many tasks Programming necessary when no existing software for task Basic knowledge of programming Copyright © 2016 Pearson Education, Inc. 10-7

9 The Life Cycle of an Information System System  Collection of pieces working to achieve common goal An information system includes:  Data  People  Procedures  Hardware  Software Copyright © 2016 Pearson Education, Inc. 10-8

10 The System Development Life Cycle Copyright © 2016 Pearson Education, Inc. 10-9

11 The Life Cycle of a Program Copyright © 2016 Pearson Education, Inc. 10-10

12 The Life Cycle of a Program Describing the Problem: The Problem Statement Necessary to solve problems Interact with users Programmers handle bad inputs through error handling Problem statement includes testing plan  Does not cover every possible input but patterns of inputs Copyright © 2016 Pearson Education, Inc. 10-11

13 The Life Cycle of a Program Making a Plan: Algorithm Development Developing detailed algorithm Algorithms are limited Algorithms represented through flowcharts  Provides visual representations of patterns Copyright © 2016 Pearson Education, Inc. 10-12

14 The Life Cycle of a Program Developing the Algorithm: Decision Making and Design Programmers handle complex algorithms  List of choices  Decision points Binary decisions Loops Programmers create algorithms using:  Top-down design  Object-oriented analysis Copyright © 2016 Pearson Education, Inc. 10-13

15 Developing the Algorithm Developing the Algorithm: Decision Making and Design Decision Points Flowchart Symbols Copyright © 2016 Pearson Education, Inc. 10-14

16 The Life Cycle of a Program Top-Down Design Problem is broken into series of high- level tasks Detailed subtasks created from high-level tasks Continue until steps are close to programming language commands Copyright © 2016 Pearson Education, Inc. 10-15

17 The Life Cycle of a Program Top-Down Design How top-down design is used in programming Copyright © 2016 Pearson Education, Inc. 10-16

18 The Life Cycle of a Program Object-Oriented Analysis Copyright © 2016 Pearson Education, Inc. 10-17

19 The Life Cycle of a Program Coding: Speaking the Language of the Computer Coding: translating an algorithm into CPU instructions Programmers move from algorithm to code by:  Identifying key pieces of information  Identifying flow of each step  Converting algorithm into specific programming language Copyright © 2016 Pearson Education, Inc. 10-18

20 Programming language  A “code” for instructions CPU can perform  Languages use special words and strict rules  Allows control of CPU without knowing hardware details Copyright © 2016 Pearson Education, Inc. 10-19 The Life Cycle of a Program Coding: Speaking the Language of the Computer

21 The Life Cycle of a Program Compilation Code must be converted to 1s and 0s Compiler creates an executable program Some languages use an interpreter Copyright © 2016 Pearson Education, Inc. 10-20

22 The Life Cycle of a Program Debugging: Getting Rid of Errors Debugging  Finding and correcting errors Testing plan helps programmers know program has solved the problem Compilation errors  Improper syntax Logical errors  Program runs but executes incorrectly Copyright © 2016 Pearson Education, Inc. 10-21

23 The Life Cycle of a Program Testing and Documentation: Finishing the Project Internal testing External testing Solving problems after beta testing Finishing the project Release to manufacturers (RTM) Documentation General availability (GA) Copyright © 2016 Pearson Education, Inc. 10-22

24 Programming Languages Many Languages for Many Projects Exploring Programming Languages Copyright © 2016 Pearson Education, Inc.10-23

25 Many Languages for Many Projects Objective 7.How do programmers select the right programming language for a specific task? Copyright © 2016 Pearson Education, Inc. 10-24

26 Exploring Programming Languages Objective 8.What are the most popular programming languages for different types of application development? Copyright © 2016 Pearson Education, Inc. 10-25

27 Many Languages for Many Projects Programming languages have been developed to balance conflicting goals Copyright © 2016 Pearson Education, Inc. 10-26

28 Exploring Programming Languages Copyright © 2016 Pearson Education, Inc. 10-27

29 Exploring Programming Languages Mobile Applications Tools for building apps for Android devices  Android software development kit (SDK) is required  Uses well-known IDEs with special plug-ins Copyright © 2016 Pearson Education, Inc. 10-28

30 Check Your Understanding 1.Why do I need to understand how to create software? 2.What is a system development life cycle, and what are the phases in the cycle? 3.What is the life cycle of a program? 4.What role does a problem statement play in programming? Copyright © 2016 Pearson Education, Inc. 10-29

31 Check Your Understanding 5. How do programmers create algorithms and move from algorithm to code? 6. What steps are involved in completing the program? 7. How do programmers select the right programming language for a specific task? 8. What are the most popular programming languages for different types of application development? Copyright © 2016 Pearson Education, Inc. 10-30

32 All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. Printed in the United States of America. Copyright © 2016 Pearson Education, Inc.


Download ppt "Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Twelfth Edition."

Similar presentations


Ads by Google