Chapter 10 - Building systems & applications: software development, programming, & languages. The topics discussed in this chapter are: Systems development & the life cycle of a software project; programming: traditionally a five-step procedure; five generations of programming languages; programming languages used today; object-oriented & visual programming; markup & scripting languages.
Using Information Technology, 11e Building Systems & Applications: Software Development, Programming, & Languages 10 Chapter © © 2015 2015 by by McGraw-Hill McGraw-Hill Education Education This This proprietary proprietary material material solely solely for for authorized authorized instructor instructor use use Not Not authorized authorized for for sale sale or or distribution distribution in in any any manner manner This This document document may may not not be be copied, copied, scanned, scanned, duplicated, duplicated, forwarded, forwarded, distributed, distributed, or or posted posted on on a a website, website, in in whole whole or or part part Chapter Topics Using Information Technology, 11e UNIT 10A: Systems Development & Programming 10.1 Systems Development & the Life Cycle of a Software Project 10.2 Programming: Traditionally a Five-Step Procedure UNIT 10A: Programming Languages 10.3 Five Generations of Programming Languages 10.4 Programming Languages Used Today 10.5 Object-Oriented & Visual Programming 10.6 Markup & Scripting Languages © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e UNIT 10A: Systems Development & Programming Learning to tell a computer what to do—that is, learning systems development and programming, the subject of this chapter—can be a great career booster • You can some computer-related projects yourself—including apps • You can become a better communicator © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e 10.1 Systems Development & the Life Cycle of a Software Project © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Purpose of a System Using Information Technology, 11e • A system is a collection of related components that interact to perform a task in order to accomplish a goal • A computer-based system consists of hardware, software, people, procedures, and data, as well as communications setups © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part How It Starts, Who’s Involved Using Information Technology, 11e • Users: The new system must ALWAYS be developed in consultation with the people who will be using the completed system • Management: Managers within an organization should be consulted about the system, because they control the budget and resources • Technical staff: The Information Systems or IT staff must be involved, because they will have to execute the project or work with the people who Systems Analyst: Information specialist who performs â 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Six Phases of Systems Analysis and Design Using Information Technology, 11e • Systems analysis and design is a six-phase problemsolving procedure for examining an information systems and improving it • The systems development life cycle (SDLC) is the particular step-by-step process followed during systems analysis and design © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Systems Development Life Cycle: Using Information Technology, 11e Preliminary investigation Systems analysis Systems design Systems development Systems implementation Systems maintenance • Information systems are frequently revised and upgrade • Steps in the cycle often overlap © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e SDLC Phase 1: Conduct a Preliminary Investigation • Conduct a preliminary analysis • Propose alternative solutions • Interview people within the organization • Study what competitors are doing • Decide to leave the system as is, improve it, or develop a new system • Describe costs and benefits • Submit a preliminary plan with recommendations • This should be a written report © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part SDLC Phase 2: Analyze the System Using Information Technology, 11e • Gather data • Interview employees and managers • Develop, distribute, analyze questionnaires • Review current written documents • Observe people and processes at work • Analyze the data • Use modeling tools, such as CASE tools • Create a data flow diagram to show how data flows through the system • Write a report 10 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part BASIC Using Information Technology, 11e • Designed to be an easy language to use and learn programming with • Usually run from an interpreter, but can be compiled • Procedural language • Supplanted by Microsoft’s Visual Basic for commercial/business use Pascal • Designed to be a language to teach programming Structured, compiled language 43 â 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part C Using Information Technology, 11e • General-purpose machine-independent compiled language developed for mid-range computers • Used for portability, operating systems And scientific use • Used to write the Unix operating system • Widely used for writing common software applications and is necessary for programmers to know C++ • Enhanced object-oriented version of C; used for Microsoft system software and many web applications 44 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part LISP: For Artificial Intelligence Programs Using Information Technology, 11e • Third-generation language • Used to control AI programs • Used to write expert systems and natural language programs 45 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e 10.5 Object-Oriented & Visual Programming 46 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e In object-oriented programming (OOP), data and processing instructions are combined into a self-sufficient object that can be reused • Object • Self-contained module consisting of reusable code • Message • The instruction received by the object indicating it is time to perform an action Method 47 â 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Three basic concepts of OOP Using Information Technology, 11e • Encapsulation • One object contains (encapsulates) both data and relevant processing instructions • Inheritance • One object can be used as the foundation for other objects • Objects can be arranged in hierarchies – classes and subclasses • Objects can inherit actions and attributes from one another • Polymorphism 48 • Allows a single definition to be used with different data types and different © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Examples of OOP languages Using Information Technology, 11e • C++ • Object-oriented language that was developed after C • Often used to write computer games and CPU- and graphics-intensive applications • Java • Developed at Sun Microsystems in early 1990s • Derivative of C++ with simpler memory management and syntax • Used to develop Java applets to be downloaded into web browsers to make websites interactive and more attractive (e.g., with animations) 49 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e Visual programming is a method of creating programs in which the programmer makes connections by clicking on objects, diagrams, and icons and by interacting with flowcharts • Using a mouse, the programmer drags and drops objects on screen • This makes it fast and easy to build prototype user interfaces and get end-user approval before doing a lot of programming • Visual BASIC is an example of visual programming 50 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e 10.6 Markup & Scripting Languages 51 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e A markup language is a kind of coding (“tags”) inserted into text that embeds details about the structure and appearance of the text • HTML is a markup language (Internet use) • Has codes for indicating layout and styling (such as boldface, italics, paragraphs, insertion of graphics, etc.) • SGML: improved markup language • Specifies a syntax for including the markup in documents • Allows users to create and use any markup they wish • Script: short list of self-executing commands embedded in a 52 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part HTML Using Information Technology, 11e • Hypertext markup language • Used to create 2-D web pages • Also lets you insert hypertext links in web pages VRML • Virtual Reality Modeling (Markup) Language is used to create 3-D web pages, including interactive animation • Requires special VRML browser to view VRML pages • Used by web designers, along with HTML 53 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part XML Using Information Technology, 11e • eXtensible Markup Language is a metalanguage written in SGML that allows one to facilitate easy document interchange on the Internet • XML lets you create your own tags (“extensible”) • XML statements define data content JavaScript • Not the same language as Java • An object-oriented scripting language that adds interactive functions to HTML web pages 54 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Flash Using Information Technology, 11e • Browser add-on that uses Adobe Flash to support animation, streaming audio and video, and games on the Internet ActiveX • Developed by Microsoft as an alternative to Java for creating interactive web pages • Set of controls or components that enable programs or content of almost any type to be embedded in a web page; comprises reusable components that can be plugged into other applications • ActiveX controls are written in C, C++, Visual BASIC, and Java 55 • Often used by crackers to propagate viruses and/or Trojans; before © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part CGI (Common Gateway Interface) Using Information Technology, 11e • Standard protocol for interfacing external application software with a web server • Manages the exchange of information and makes web pages more interactive Perl • A general-purpose programming language developed for text manipulation • Used for web development, network programming, system administration, GUI development, other tasks 56 © 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part Using Information Technology, 11e PHP (Personal Home Page, or PHP Hypertext Preprocessor) • Allows creation of dynamic content that interacts with databases • Normally found on Linux servers with MySQL databases General-purpose scripting language 57 â 2015 by McGraw-Hill Education This proprietary material solely for authorized instructor use Not authorized for sale or distribution in any manner This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part .. .Chapter Topics Using Information Technology, 11e UNIT 10A: Systems Development & Programming 10. 1 Systems Development & the Life Cycle of a Software Project 10. 2 Programming:... Traditionally a Five-Step Procedure UNIT 10A: Programming Languages 10. 3 Five Generations of Programming Languages 10. 4 Programming Languages Used Today 10. 5 Object-Oriented & Visual Programming 10. 6 Markup... or posted on a website, in whole or part Using Information Technology, 11e 10. 2 Programming • Traditionally a Five-Step Procedure 17 © 2015 by McGraw-Hill Education This proprietary material