Upload
blaise-riley
View
392
Download
35
Tags:
Embed Size (px)
Citation preview
Chapter 11
Building Solutions
Discovering Computers 2016Tools, Apps, Devices, and the Impact of Technology
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Objectives Overview
Differentiate among a character, field, record, and
data file and describe validation techniques
Differentiate between file processing systems and the
database approach
Describe uses of web databases, types of
databases, and Big Data
Discuss functions common to most database
management systems: data dictionary, file retrieval and maintenance, data security,
and backup and recovery
Define system development, list the system development
phases, and identify the guidelines for system
development
2See Page 498for Detailed Objectives
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Objectives Overview
Discuss the importance of project management, feasibility assessment,
documentation, and data and information gathering
techniques
Discuss the purpose of and tasks conducted in each
system development phase
Differentiate between low-level languages and
procedural languages
Identify the benefits of object-oriented
programming languages and application
development tools
Describe various ways to develop webpages and web
applications
3See Page 498for Detailed Objectives
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
Database
• Collection of data organized in a manner that allows access, retrieval, and use of that data
Data
• Collection of unprocessed items• Text• Numbers• Images• Audio• Video
Information
• Processed data• Organized• Meaningful• Useful
4Page 498
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
5Page 499Figure 11-1
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
• Database software, often called a database management system (DBMS), allows users to:
6Page 498
Create a computerized database
Add, modify, and delete data
Sort and retrieve data Create forms and reports from the data
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
• Data is organized in levels– Characters, fields records, and files
7Pages 500 - 501Figure 11-2
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
• A character is one byte– Numbers, letters, space,
punctuation marks, or other symbols
• A field is a combination of one or more related characters– Field name– Field size– Data type
8Page 500Figure 11-3
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
9Page 501Figure 11-4
• A record is a group of related fields– A primary key is a field that uniquely identifies each record
• A data file is a collection of related records
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
• File maintenance refers to the procedures that keep data current
10Page 502
Adding records
Modifying records
Deleting records
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Databases, Data, and Information
• Validation compares data with a set of rules or values to find out if the data meets certain criteria
11Page 503
Alphabetic/Numeric check Range check Consistency check
Completeness check Check digit Other checks
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
File Processing Systems and Databases
12Pages 504 - 506
File processing system
• Each department has its own set of files
• Redundant data• Isolated data
Database approach
• Programs and users share data
• Reduced data redundancy• Improved data integrity• Shared data• Easier access• Reduced development
time
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
File Processing Systems and Databases
13Page 505Figure 11-6
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
14
File Processing Systems and Databases
• Disadvantages of a database approach– Can be more complex than a file processing system– Require more memory and processing power– Data can be more vulnerable
Page 506
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
File Processing Systems and Databases
• Web databases offer information about:
15Page 506
Jobs Travel Destinations
Television programming Photos Movies
VideosLocal and national weather
Sporting events
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
16
File Processing Systems and Databases
Page 507
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
File Processing Systems and Databases
17Page 508
• A data model defines how users view the organization of the data
Relational database
Object-oriented database (OODB)
Multidimensional and other
database types
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Database Management Systems
• A data dictionary contains data about each file in the database and each field in those files
18Page 510Figure 11-7
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Database Management Systems
• A DBMS provides several tools that allow users and programs to retrieve and maintain data in the database
19Page 511
Query language
Query by example
Form
Report writer
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Database Management Systems
• A query is a request for specific data from the database• A query language consists of simple, English-like statements that
allow users to specify the data to display, print, store, update, or delete
• Structured Query Language (SQL) is a popular query language that allows users to manage, update, and retrieve data
20Pages 511 - 512
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Database Management Systems
• Most DBMSs include query by example (QBE), a feature that has a graphical user interface to assist users with retrieving data
21Page 512Figure 11-9
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Database Management Systems
• A form is a window on the screen that provides areas for entering or modifying data in a database
• A report writer allows users to design a report on the screen, retrieve data into the report design, and then display or print the report
22Pages 512 - 513Figure 11-10
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Database Management Systems
A DBMS provides means to ensure that only authorized users access data
• Access privileges• Principle of least privilege policy
23Page 513
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Database Management Systems
• A DMBS provides a variety of techniques to restore the database to a usable form in case it is damaged or destroyed
24Page 515
Backup Log
Recovery utility
Continuous backup
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• An information system is a collection of hardware, software, data, people, and procedures that work together to produce information
• System development is a set of activities used to build an information system
25Page 515
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
System development is a set of activities used to build an information system
System development activities are grouped into phases, and is called the system development life cycle (SDLC)
26Page 515
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
27Page 516Figure 11-11
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• System development should follow three general guidelines:
28Page 517
Group activities into phases
Involve users
Define standards
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• System development should involve representatives from each department in which the proposed system will be used
• A systems analyst is responsible for designing and developing an information system
29Page 517
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• Project management is the process of planning, scheduling, and then controlling the activities during system development
• To plan and schedule a project efficiently, the project leader identifies the following elements:
30Page 517
Scope Required activities
Time estimates for each activity
Cost estimates for each activity
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
31Page 518Figure 11-12
Popular tools used to plan and
schedule the time relationships among project activities are
Gantt and PERT charts
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• Feasibility is a measure of how suitable the development of a system will be to the organization
32Page 519
Operational feasibility
Schedule feasibility
Technical feasibility
Economic feasibility
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• Documentation is the collection and summarization of data, information, and deliverables
• Maintaining up-to-date documentation should be an ongoing part of system development
33Page 519
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• During system development, members of the project team gather data and information
34Page 520Figure 11-13
Review documentation Observe
Survey Interview
JAD Sessions Research
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• The planning phase for a project begins when the steering committee receives a project request
• Four major activities are performed:
35Page 521
Review and approve the
project requests
Prioritize the project
requests
Allocate resources
Form a project development
team
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• The analysis phase consists of two major activities:
36Pages 521 - 522
Conduct a preliminary
investigation•Determines the exact nature of the problem or improvement•Interview the user who submitted the request
Perform detailed analysis•Study how the current system works•Determine the users’ wants, needs, and requirements•Recommend a solution
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• The system proposal assesses the feasibility of each alternative solution
• The steering committee discusses the system proposal and decides which alternative to pursue
37Page 522
Modify existing system
Buy retail software
Use web apps
Build custom software
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• The design phase consists of two major activities
38Page 523
Acquire hardware and
software
Develop all of the details of the new or modified information
system
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• To acquire the necessary hardware and software:
39Pages 523 - 524
Identify technical specifications
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• The next step is to develop detailed design specifications
40Page 524
Database design
Input and output design
Program design
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• Systems analysts typically develop two types of designs for each input and output
41Page 524Figures 11-15 – 11-16
Mock-up Layout chart
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• A prototype (proof of concept) is a working model of the proposed system’s essential functionality
42Page 525
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• The purpose of the implementation phase is to construct the new or modified system and then deliver it to users
43Page 525
Develop programs and
apps
Install and test the new system Train users Convert to the
new system
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• Various tests should be performed on the new system
44Page 525
Unit test•Verifies that each individual program or object works by itself
Systems test
•Verifies that all programs in an application work together properly
Integration test
•Verifies that an application works with other applications
Acceptance test
•Checks the new system to ensure that it works with actual data
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• Training involves showing users exactly how they will use the new hardware and software in the system– One-on-one sessions– Classroom-style lectures– Web-based training
45Page 526Figure 11-17
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• One or more of four conversion strategies can be used to change from the old system to the new system– Direct conversion– Parallel conversion– Phased conversion– Pilot conversion
46Page 526
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
System Development
• The purpose of the support and security phase is to provide ongoing assistance for an information system and its users after the system is implemented
47Page 526
Perform mainten
ance activities
Monitor system
performance
Assess system security
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• A programming language is a set of words, abbreviations, and symbols that enable a software developer to communicate instructions to a computer or mobile device
• An application development tool provides a means for creating, designing, editing, testing, and distributing programs and apps
48Page 527
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• In a procedural language, the programmer writes instructions using English-like words that tell the computer what to accomplish and how to do it
49Page 528
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• The C programming language is used to write many of today’s programs
50Page 528Figure 11-18
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
51Page 529
A compiler converts the entire source program to machine language before executing itAn interpreter translates and executes one instruction at a time
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
Compiler Interpreter
52Page 529Figures 11-19 – 11-20
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• An object-oriented programming (OOP) language allows system developers to implement objects in a program
• Other advantages include:
53Page 530
Objects can be reused
Developers create applications faster
Most object-oriented application development tools
are IDEs
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• Java is an object-oriented programming language developed by Sun Microsystems
54Page 531Figure 11-21
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• C++ is an extension of the C programming language– Additional features for working with objects
• Visual Studio is Microsoft’s suite of object-oriented application development tools that assists software developers in building programs and apps for Windows or any operating system that supports the Microsoft .NET Framework
55Page 531
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• A 4GL (fourth-generation language) is a nonprocedural language that enables users and software developers to access data in a database– One popular 4GL is SQL
56Page 532
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• Classic programming languages include:
57Page 532
BASIC COBOl
FORTRAN RPG
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• An application generator is a program that creates source code or machine code from a specification of the required functionality– Often bundled as part of a DBMS
• A macro is a series of statements that instructs a program or app how to complete a task
• You usually create the macro in one of two ways:– Record the macro– Write the macro
58Page 532
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
59Page 533Figure 11-22
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• HTML is a special formatting language that software developers use to format documents for display on the web
60Page 535Figure 11-23
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• XML allows web developers to create tags that describe the structure of information– WML is a subset of XML and is used to design pages
specifically for microbrowsers
61Page 536
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Application Development Languages and Tools
• Software developers write scripts, applets, servlets, or ActiveX controls using a variety of languages
62Page 536
JavaScript Perl
PHP Python
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
63
Application Development Languages and Tools
Page 537Figure 11-24
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part.
Summary
Hierarchy of data, ways to validate data, the advantages of
the database versus the file processing approach, and characteristics of database
management systems
System development phases and the guidelines for
system development, along with activities that occur
during system development
Various programming languages and
application development tools
Variety of web development
tools64Page 539
Chapter 11
Building Solutions
Discovering Computers 2016Tools, Apps, Devices, and the Impact of Technology
Chapter 11 Complete