Chapter 12
5GLs are primarily used in _____
AI & PaaS development
_______ is the most frequently used model, particularly for time-critical problems
Agile Development
An incremental and iterative process that uses short iterations or sprints, with the project team stopping and reevaluating the direction of a project every two weeks.
Agile Development/ Extreme programming
describe the software features and operations in detail—usability, reliability, interface, storage and processing, and output—using tools such as pseudocode and flowcharts.
Application specifications
_______ issues are also a common cause of runtime errors.
Computer memory
the process of converting an algorithm into instructions the computer can understand.
Computer programming (coding)
used to show the logic and the flow of data processing. (decision points)
Control structures
the process of detecting and fixing errors, or bugs, in a computer program. can be considered as alpha testing
Debugging
a form of machine learning that relies on neural networks.
Deep learning
created throughout the programming cycle and is written both for the user and for programmers
Documentation
comments within the code that explain what each section is designed to do as well as external documentation that outlines the project, problem, and design logic
Documentation for programmers:
recognizes that not everything can be broken down to a true or false answer.
Fuzzy logic
______ ensures that the modules work together.
Integration or link testing
______ results in shorter development times because of the continued involvement of users throughout the development process.
JAD
A collaborative system development process that involves the end user throughout the design and development of the project, through a series of sessions.
Joint Application Development (JAD)
a form of AI that enables software applications to become more accurate at predictions by learning from data sets, rather than by being programmed.
Machine learning (ML)
expresses the steps of an algorithm using English-like statements that focus on logic, not syntax.
Pseudocode
_____ tools use object-oriented programming (OOP) and reusable code modules to speed up the process
RAD
______ is user-driven and is ideal for developing software such as graphical user interfaces
RAD
An iterative development process that uses prototyping and user testing of the designs.
Rapid Application Development (RAD)
______ is best for high-risk projects
Spiral
errors in the way code is written. (typos, missing parameters, or incorrect use of symbols like brackets)
Syntax errors
define the correct construction of commands in a programming language.
Syntax rules
______ runs the system under normal usage conditions to ensure that it can handle the expected volume of data.
Volume testing
System specification report
a logical model of the new system
______ ensures that the system does what it's supposed to do.
acceptance testing
a set of steps to solve a problem
algorithm
goal of the _____ phase is to produce a list of requirements for the new system.
analysis
A programming language that is written with statements closer to language that humans speak, which must be converted into machine language by an assembler before the computer can execute it.
assembly language
The process of testing a program under actual working conditions.
beta testing:
A program in which the coding is within a webpage, downloaded to the client computer, and compiled and executed by a browser or plug-in.
client-side program
sequence of instructions for a computer to follow. It's written in a language that the computer can understand and includes any data the computer needs to perform the instructions.
computer program
A diagram that shows the flow of data through an information system to highlight the system's deficiencies.
data flow diagram (DFD)
4GL is designed to be closer to natural language and is often used for accessing _______
databases
Changes to the system cannot be made during the maintenance phase
false
A study created by a project team that includes the creation of the terms of reference (project charter) that state the objectives and scope of the project, the timeline for the project, risks, participants, deliverables, and budget. The four types of feasibility are economic, technical, operational, and political.
feasibility study
A system that a user can use without actually writing code. Primarily used in artificial intelligence applications and in combination with Platform-as-a-Service (PaaS) application development.
fifth-generation language (5GL)
A machine language written in binary that can be understood by a computer.
first-generation language (1GL)
a graphic view of the algorithm using arrows to show direction and other symbols to show actions and data
flowchart
A computer language that's designed to be closer to natural language than a 3GL. Many 4GLs are used for accessing databases.
fourth-generation language (4GL)
A complete system for developing software, typically consisting of a code editor, one or more compilers, one or more SDKs, and a debugger.
integrated development environment (IDE)
error in programming logic that results in an unexpected outcome.
logic error
A small program used to automate tasks in applications such as Word and Excel.
macro
______ is a system that simulates human thinking by emulating the biological connections—or neurons—of the human brain.
neural network
defines objects and the actions or methods that can be performed on them.
object-oriented programming (OOP)
uses a step-by-step list of instructions,
procedural programming
A set of steps that a programmer follows to create a computer program.
program development cycle
Define > Design > Code > Debug > Test and document
program development cycle
The leader of a project team, who coordinates the team and keeps the project on track.
project manager (PM)
when the program is running and data or a command that is entered causes it to crash.
runtime error
A program that runs on a web server instead of the client computer. No special software is needed by the client.
server-side program
A person who designs and writes computer programs.
software developer
A bundle of libraries and tools that are developed for a particular platform.
software development kit (SDK)
Tools that help a programmer create programs include
software development kits (SDKs), integrated development environments (IDEs), and Platform-as-a-Service (PaaS)
A person who has an interest in and will be affected by the successful completion of a project.
stakeholder
The traditional model for system development, which consists of five phases—planning, analysis, design, implementation and testing, and maintenance—where each phase is completed in order before the next can begin.
system development life cycle (SDLC)
A computer language for which a compiler is needed to convert the code into machine language that a computer can understand and execute. Most modern programming languages, both procedural and object-oriented programming (OOP), fall in this category.
third-generation language (3GL)
An advantage to using a client-side program is that the client doesn't need to have special software to see the results.
true
Documentation for users of the system:
user manuals (print or online)