Pages.

Slides:



Advertisements
Similar presentations
Computers Are Your Future
Advertisements

Professor Michael J. Losacco CIS 1150 – Introduction to Computer Information Systems Programming and Languages Chapter 13.
Chapter 13 Programming Languages and Program Development
Programming Creating programs that run on your PC
Programming System development life cycle Life cycle of a program
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
Computers Are Your Future © 2006 Prentice Hall, Inc.
Computers: Tools for an Information Age
Computer Programming How Can You Create Your Own Software? Chapter 11.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
S/W Programming & Languages Chapter 10 Where Your Software Comes From © The McGraw-Hill Companies, Inc., 2000.
Objectives Overview Define system development and list the system development phases Identify the guidelines for system development Discuss the importance.
1414 CHAPTER PROGRAMMING AND LANGUAGES. © 2005 The McGraw-Hill Companies, Inc. All Rights Reserved Competencies Describe the six steps of programming.
Computer Programming How Can You Create Your Own Software? Chapter 13.
Programming Concepts and Languages Chapter 12 – Computers: Understanding Technology, 3 rd edition 1November
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Building Applications.
UNIT 21 Software Engineering.
Your Interactive Guide to the Digital World Discovering Computers 2012.
CS102 Introduction to Computer Programming
© Paradigm Publishing Inc Chapter 12 Programming Concepts and Languages.
Principles of Programming Chapter 1: Introduction  In this chapter you will learn about:  Overview of Computer Component  Overview of Programming 
Software Development Concepts ITEC Software Development Software Development refers to all that is involved between the conception of the desired.
Computers Are Your Future Tenth Edition Chapter 11: Programming Languages & Program Development Copyright © 2009 Pearson Education, Inc. Publishing as.
Chapter 13 Programming Languages and Program Development 1.
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Computers Are Your Future Tenth Edition Chapter 11: Programming Languages & Program Development Copyright © 2009 Pearson Education, Inc. Publishing as.
Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables.
Program development & programming languages Chapter 13.
Programming Languages: Telling the Computers What to Do Chapter 16.
Computers Are Your Future Eleventh Edition
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
CC111 Lec#5: Program Development 1 Program Development and Programming Languages Lecture 4 Reference :Understanding Computers Chapter 13.
Alexandria University Faculty of Science Computer Science Department Introduction to Programming (CS 102) C++ Programminhg.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
1 UNIT 20 Software Engineering Lecturer: Ghadah Aldehim.
Chapter 15 Program Development and Programming Languages.
1 Pertemuan 26 Bahasa-bahasa Pemrograman (Lanjutan) Matakuliah: T0604-Pengantar Teknologi Informasi Tahun: 2008 Versi: 2.0/0.0 Williams, B.K, Stacy C.
1 Chapter 13 Understanding Computers, 11 th Edition 13 Program Development and Programming Languages TODAY AND TOMORROW 11 th Edition CHAPTER.
Discovering Computers 2009 Chapter 13 Programming Languages and Program Development.
Computer Programs and Programming Languages What are low-level languages and high-level languages? High-level language Low-level language Machine-dependent.
IXA 1234 : C++ PROGRAMMING CHAPTER 1. PROGRAMMING LANGUAGE Programming language is a computer program that can solve certain problem / task Keyword: Computer.
McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 4 Computer Software.
Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages.
Software Development Programming & Languages. Programming: A Five-Step Procedure Define the problem Design a solution Code the program Test the program.
1 Pertemuan 25 Bahasa-bahasa Pemrograman Matakuliah: T0604-Pengantar Teknologi Informasi Tahun: 2008 Versi: 2.0/0.0 Williams, B.K, Stacy C. Sawyer (2007).
Chapter 12 Information Systems and Program Development Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet.
Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved.
Alexandria University Faculty of Science Computer Science Department Introduction to Programming C++
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 13 A & B Programming Languages and the.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
Introduction to Programming Languages © 2005 Prentice Hall, Inc. CXC IT Unit 2: Intro. to Programming.
1 Bahasa-bahasa Pemrograman Williams, B.K, Stacy C. Sawyer (2007). Using Information Technology: A Practical Introduction to Computers & Communications.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
PROGRAMMING (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
1 Pengembangan Sistem Informasi Williams, B.K, Stacy C. Sawyer (2007). Using Information Technology: A Practical Introduction to Computers & Communications.
Systems Analysis & Programming 10.1 Systems Development 10.2 Programming: A Five-Step Procedure Generations of Programming Languages 10.4 Programming.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
CHAPTER ELEVEN Information System Development and Programming Languages Copyright © Cengage Learning. All rights reserved.
CSCI-235 Micro-Computer Applications
Bahasa-bahasa Pemrograman
Programming Concepts and Languages
Objectives Overview Differentiate between machine and assembly languages Identify and discuss the purpose of procedural programming languages, and describe.
Systems Analysis & Programming
Building Systems & Applications Software Development, Programming, & Languages 10 Chapter.
Pengembangan Sistem Informasi
Bahasa-bahasa Pemrograman
Pengembangan Sistem Informasi
and Program Development
Presentation transcript:

Pages

Systems Analysis & Programming Page 491

10.1 Systems Development Purpose of a System 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 Page 492 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development How It Starts, Who’s Involved 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 do Systems Analyst: Information specialist who performs systems analysis, design, and implementation Page 493 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Six Phases of Systems Analysis and Design Systems analysis and design is a six-phase problem-solving 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 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Systems Development Life Cycle (Six Phases): Preliminary investigation Systems analysis Systems design Systems development Systems implementation Systems maintenance Information systems are frequently revised and upgraded Steps in the cycle often overlap Page 493 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development 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 Get management approvals for next phase Page 494 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Phase 2: Analyze the System 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 Pages 494-495 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Phase 2: Analyze the System (continued) Write a report Document how the current system works Document problems with the current system Describe the requirements for the new system Recommend what to do next Get management approval to proceed © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Phase 3: Design the System Do a preliminary design Often involves prototyping and continued use of CASE tools Do a detail design, showing: Output requirements Input requirements Storage requirements Processing requirements System controls Backup Write a report and get approval for next phase Pages 496-497 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Phase 4: Develop the System Develop or acquire the software Make-or-buy decision If creating own system, programming (coding must be done) Acquire or upgrade the hardware Test the system Unit testing: performance of system’s individual parts tested System testing: parts are linked and tested to see if they work together properly; real data may be used Pages 497-498 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Phase 5: Implement the System Choose a strategy to convert to the new system Direct implementation: quit the old and start using the new Parallel implementation: use both the old and the new side by side, until the new system has been proved reliable Phased implementation: phase in parts of new in gradually as parts of old are phased out Pilot implementation: have the new system tried out by a few users Train the users Pages 498-499 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.1 Systems Development Phase 6: Maintain the System Perform system audits and periodic evaluations Make changes to the system based on new conditions Finalize documentation Note that documentation should have been continuously maintained during the entire SDLC Page 499 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure A program is a list of instructions that the computer must follow to process data into information Programming is done during phase 4 of the SDLC The five steps: Clarify/define the problem Design the program Code the program Test the program Document and maintain the program Pages 499-500 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Step 1: Clarify the Programming Needs Clarify objectives & users Clarify desired outputs Clarify desired inputs Clarify the desired processing Double-check the feasibility of implementing the program Document the analysis Pages 500-501 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Step 2: Design the Program Create an algorithm, or set of clear steps, to solve the problem Use structured programming approach Determine program logic using top-down approach and modules, using a hierarchy chart (graphic form) and pseudocode (narrative form) Pages 501-502 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Pseudocode Page 503 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Page 505 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Step 2: Design the Program (continued) Structured programming Use control structures: Sequence: one statement follows another in logical order Selection: IF-THEN-ELSE Iteration (loop): DO UNTIL / DO WHILE © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Page 506 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Step 3: Code the Program Translate the logic requirement from flowcharts and pseudocode into a programming language Select a programming language--set of rules that tells the computer what operations to do Each programming language has a syntax, or set of grammatical rules to follow to write valid expressions Syntax rules must be followed or there will be syntax errors Computers don’t understand what you want, only what you type in Pages 507-508 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Step 4: Test the Program Desk checking is reading through, or checking, the program for syntax errors and logic errors Debugging is the process of detecting, locating, and removing all syntax errors and logic errors in a computer program Beta testing is the process of testing the program using real data One phase of testing uses correct data Once the program works, the next phase of testing uses invalid data and untrained users to root out hidden errors Page 508 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.2 Programming: A Five-Step Procedure Step 5: Document and Maintain the Program Documentation is written descriptions of what a program is and how to fix it; should be done through all 5 steps User documentation – for the people who will use the program (e.g., user manual – hardcopy or CD, and online) Operator documentation – for the computer operators, so they know what to do if the program or hardware malfunctions Programmer documentation – for the next programmer who must modify and maintain what has been written Maintain the program – keep everything in working condition Pages 509-510 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.3 Five Generations of Programming Languages First Generation: Machine Language The basic language of the computer – all 0s and 1s Each CPU model has its own machine language, thus machine language is machine dependent Not convenient for people to read and use Evolution of languages started in 1945 Pages 511-512 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.3 Five Generations of Programming Languages Second Generation: Assembly Language Low-level mnemonic version of machine language; uses abbreviations and simple words Faster to program in than machine language Is also machine dependent Assembler program needed to translate assembly language into machine language Pages 512-513 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.3 Five Generations of Programming Languages Third Generation: High-level Languages (Procedural Languages) These languages resemble human language (e.g., English) and are portable (not machine dependent) Examples are FORTRAN, COBOL, BASIC, Pascal, C The programmer writes the source code, then uses a translator program to interpret or compile the code into machine language (object code) Interpreter translates and executes immediately Compiler translates and saves the code as an entire unit to be executed later Pages 513-514 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.3 Five Generations of Programming Languages Fourth Generation: Very-High-Level or Problem-Oriented Languages Easier to program in than third-generation languages Three types: Report generators (RPGIII) Query languages (SQL) Application generators (NOMAD, FOCUS)—used to create parts for other programs Pages 514-515 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.3 Five Generations of Programming Languages Fifth Generation: Natural Languages Programming languages that use human language to give people a more natural connection with computers Part of the field of artificial intelligence (AI; Chapter 8) Page 516 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.4 Programming Languages Used Today FORTAN The language of mathematics The first high-level language written A machine-independent procedural language COBOL The most-frequently used language for business legacy applications on mainframe computers Pages 516-517 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.4 Programming Languages Used Today BASIC 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 Not used in business or commercial companies Pages 518-519 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.4 Programming Languages Used Today C General-purpose machine-independent compiled language developed for mid-range computers Used to write the Unix operating system Widely used for writing common software applications and is necessary for programmers to know Doesn’t handle math as well as FORTRAN Page 519 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.4 Programming Languages Used Today LISP: For Artificial Intelligence Programs Third-generation language Used to control AI programs Used to write expert systems and natural language programs Page 519 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.5 Object-Oriented & Visual Programming 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 The processing instructions within the object to perform the specified action Pages 519-520 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.5 Object-Oriented & Visual Programming Three basic concepts of OOP 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 Allows a single definition to be used with different data types and different functions Means a message produces different results depending on the object it is sent to Pages 520-521 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.5 Object-Oriented & Visual Programming Examples of OOP languages 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) Page 521 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.5 Object-Oriented & Visual Programming 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 Pages 521-522 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.6 Markup & Scripting Languages 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 web page that perform a specified function or routine Pages 522-523 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.6 Markup & Scripting Languages HTML 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 Page 523 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.6 Markup & Scripting Languages XML 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 Pages 523-524 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.6 Markup & Scripting Languages ActiveX Developed by Microsoft as an alternative to Java for creating interactive web pages A 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 Often used by crackers to propagate viruses and/or Trojans; before you allow an ActiveX component to download from your browser to your computer, make sure you trust that website Page 525 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.6 Markup & Scripting Languages Perl A general-purpose programming language developed for text manipulation. Used for web development, network programming, system administration, GUI development, other tasks Widely used for web server programs to perform automatic tasks such as updating user accounts and newsgroup postings Page 525 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.6 Markup & Scripting Languages CGI (Common Gateway Interface) Standard protocol for interfacing external application software with a web server Manages the exchange of information and makes web pages more interactive TCL (Tool Command Language) Created for the Unix platform Interpreted script language Comparable to JavaScript and Visual BASIC Page 525 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.

10.6 Markup & Scripting Languages Ruby Basic and completely object-oriented scripting language Open-source language Can be compiled and run on most operating systems PHP (Personal Home Page, or PHP Hypertext Preprocessor) and R Allows creation of dynamic content that interacts with databases Normally found on Linux servers with MySQL databases General-purpose scripting language R used in data mining Pages 525-526 © 2011 The McGraw-Hill Companies, Inc. All rights reserved.