to assess the student’s ability to provide

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%

I'm asking for help with different perspectives on purpose. Also, you do not have to complete the code, I’m posting the entire question in order for the question to be clear. Sorry if you see this question ask more than once.

 

Objectives: 

The main objective of this assignment is to assess the student’s ability to provide a complete Black-Box testing plan for a computer program

 

Description: 

you will need to design a complete Black-Box testing plan for the following program. Instead of changing passwords every semester, students will now change passwords once a month. Unfortunately, the school has realized that many students are bad at picking their passwords. Ideally, passwords alternate between letters, numbers, and symbols. However, most students and faculty pick passwords such as “12345password”. To make matters worse, when students and faculty are forced to change their password, usually only a single character is added to the end of their previous password. Due to this problem, the University has created a program to help students and faculty create strong, new passwords. Although the program has been created, it has not been tested. You are tasked with created a complete Black-Box testing plan for the program. The password generation program is somewhat simple. First, the user will enter their last name. In this program, students that have last names beginning with A-M will change their passwords between the 15th and the 20th of every month. Students that have last names beginning with N-Z will change their passwords between the 20th and the 25th of every month. Next the user will input a multi-digit integer. Afterwards, the user will input a string. Lastly the user will select how many passwords they would like to generate with this information. The program then uses this information to randomly generate passwords using this data. The program will not execute if the current date is not correct. Using this information, please create a Black-Box testing plan for the program. 

 

Task: 

You must design a complete Black-Box testing plan for the given program. Your task is to apply what you have learned about black-box testing techniques to develop a full suite of test data for this program. 

 

** I have access to “passwordgeneration.cbp,.depend, and .layout…. however I cannot access it at the moment. let me know if this would help. 

 

- main.cpp attached 

-solution template attached

Certainly! Here is a transcription of the provided image, which includes a C++ program. This transcription is intended for an educational website:

---

## Sample C++ Program for User Input Verification and Password Generation

### Program Overview

This C++ program prompts the user for specific inputs and verifies certain conditions before generating passwords. It starts by asking for the user's last name, month of birth, and day of birth. The program then verifies the user's data based on the first letter of their last name and their birth date. Finally, the program generates passwords based on user-defined criteria.

### Code Explanation

```cpp
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string>

using namespace std;

int main() {
    int numPasswords = 0;
    int randNum = 0;
    int originalLength = 0;
    int month = 0;
    int day = 0;
    char trash = ' ';
    char firstLetter = ' ';
    string inputInt = "";
    string inputString = "";
    string allInput = "";
    string tmpInput = "";
    string password = "";
    string lastName = "";

    cout << "Please enter your last name" << endl;
    cin >> lastName;
    cout << "Please enter the month and day i.e.(1/25)" << endl;
    cin >> month >> trash >> day;

    firstLetter = lastName[0];

    if((firstLetter > 64 && firstLetter < 78) || (firstLetter > 96 && firstLetter < 110)) {
        if(day > 14 && day < 21)
            cout << "Date Verified" << endl;
        else {
            cout << "Error: Names that begin with A-M register between the 15th and the 20th!" << endl;
            return 1;
        }
    }
    else if((firstLetter > 77 && firstLetter < 91) || (firstLetter > 108 && firstLetter < 123)) {
        if(day > 19 && day < 26)
            cout << "Date Verified" << endl;
        else {
            cout << "Error: Names that begin with N-Z register between the 20th and the 25th!" << endl;
            return 1;
        }
    }
    else {
        cout << "Invalid last name!" << endl;
        return 1;
    }
Transcribed Image Text:Certainly! Here is a transcription of the provided image, which includes a C++ program. This transcription is intended for an educational website: --- ## Sample C++ Program for User Input Verification and Password Generation ### Program Overview This C++ program prompts the user for specific inputs and verifies certain conditions before generating passwords. It starts by asking for the user's last name, month of birth, and day of birth. The program then verifies the user's data based on the first letter of their last name and their birth date. Finally, the program generates passwords based on user-defined criteria. ### Code Explanation ```cpp #include <iostream> #include <stdio.h> #include <stdlib.h> #include <time.h> #include <string> using namespace std; int main() { int numPasswords = 0; int randNum = 0; int originalLength = 0; int month = 0; int day = 0; char trash = ' '; char firstLetter = ' '; string inputInt = ""; string inputString = ""; string allInput = ""; string tmpInput = ""; string password = ""; string lastName = ""; cout << "Please enter your last name" << endl; cin >> lastName; cout << "Please enter the month and day i.e.(1/25)" << endl; cin >> month >> trash >> day; firstLetter = lastName[0]; if((firstLetter > 64 && firstLetter < 78) || (firstLetter > 96 && firstLetter < 110)) { if(day > 14 && day < 21) cout << "Date Verified" << endl; else { cout << "Error: Names that begin with A-M register between the 15th and the 20th!" << endl; return 1; } } else if((firstLetter > 77 && firstLetter < 91) || (firstLetter > 108 && firstLetter < 123)) { if(day > 19 && day < 26) cout << "Date Verified" << endl; else { cout << "Error: Names that begin with N-Z register between the 20th and the 25th!" << endl; return 1; } } else { cout << "Invalid last name!" << endl; return 1; }
# Password Generation Test Cases Documentation

## Solution Template
Fill in the information for each test that you develop for the four tables below. Add more rows as required to list all possible tests for each type. Do not repeat tests which have already been used to test a particular description. Use as many rows as needed to capture all of your tests. Each of the four tables may span more than one page if necessary.

### Representative Input Tests

| Test # | Test Description                     | Test Data          | Expected Result                          | Actual Result                            | Pass/Fail |
|--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------|
| 1      | Give input in normal range           | 12345, hello, 5    | 5 randomly generated passwords of length 10 | 5 randomly generated passwords of length 10 | pass      |
|        |                                      |                    |                                          |                                          |           |
|        |                                      |                    |                                          |                                          |           |

### Functional Coverage Tests

| Test # | Test Description                     | Test Data          | Expected Result                          | Actual Result                            | Pass/Fail |
|--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------|
| 1      | Test that generating 10 passwords works correctly | 123, hi, 10       | 10 randomly generated passwords of length 5 | 10 randomly generated passwords of length 5 | Pass      |
|        |                                      |                    |                                          |                                          |           |
|        |                                      |                    |                                          |                                          |           |

### Boundary Values Tests

| Test # | Test Description                     | Test Data          | Expected Result                          | Actual Result                            | Pass/Fail |
|--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------|
| 1      | Test a 1 digit integer               | 1, hello, 5        | 5 randomly generated passwords of length 6 | 5 randomly generated passwords of length 6 | Pass      |
|        |                                      |                    |                                          |                                          |           |
|        |                                      |                    |                                          |                                          |           |

### Special Values Tests

| Test # | Test Description                     | Test Data          | Expected Result                          | Actual Result                            | Pass/Fail |
|--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------|
| 1      | Test generation of 0 passwords       | 12345, hello,
Transcribed Image Text:# Password Generation Test Cases Documentation ## Solution Template Fill in the information for each test that you develop for the four tables below. Add more rows as required to list all possible tests for each type. Do not repeat tests which have already been used to test a particular description. Use as many rows as needed to capture all of your tests. Each of the four tables may span more than one page if necessary. ### Representative Input Tests | Test # | Test Description | Test Data | Expected Result | Actual Result | Pass/Fail | |--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------| | 1 | Give input in normal range | 12345, hello, 5 | 5 randomly generated passwords of length 10 | 5 randomly generated passwords of length 10 | pass | | | | | | | | | | | | | | | ### Functional Coverage Tests | Test # | Test Description | Test Data | Expected Result | Actual Result | Pass/Fail | |--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------| | 1 | Test that generating 10 passwords works correctly | 123, hi, 10 | 10 randomly generated passwords of length 5 | 10 randomly generated passwords of length 5 | Pass | | | | | | | | | | | | | | | ### Boundary Values Tests | Test # | Test Description | Test Data | Expected Result | Actual Result | Pass/Fail | |--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------| | 1 | Test a 1 digit integer | 1, hello, 5 | 5 randomly generated passwords of length 6 | 5 randomly generated passwords of length 6 | Pass | | | | | | | | | | | | | | | ### Special Values Tests | Test # | Test Description | Test Data | Expected Result | Actual Result | Pass/Fail | |--------|--------------------------------------|--------------------|------------------------------------------|------------------------------------------|-----------| | 1 | Test generation of 0 passwords | 12345, hello,
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Module hierarchy chart
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education