Expert Answer:Systems Engineering & Integration Microwave Oven S

  

Solved by verified expert:Write a use case with functional and non-functional requirements forcooking food in a microwave oven system.Fill in the template given on Blackboard. The description of the usecase has been given to you in the template, and the use case diagramis given below
lec6_testing_hw5_1.pdf

lec6_usecaseexercisetemplate_homework_5.docx

Don't use plagiarized sources. Get Your Custom Essay on
Expert Answer:Systems Engineering & Integration Microwave Oven S
Just from $10/Page
Order Essay

Unformatted Attachment Preview

IT 518 Systems Engineering & Integration
Chapter 6: System Test, Evaluation, and Validation
Dr. Jim
Hood College
Dept. of Computer Science & Information Technology
Validation and Verification
• Validation: building the right system – Are we building the right
product?
• Fits the intended use (high-level checking) to determine whether it satisfies
specified requirements
• Verification: building the system right – Are we building the product
right?
• To determine whether the products of a given development phase satisfy the
conditions imposed at the start of that phase
• Ensure that product has been built according to the requirements and design
specifications
Requirements Verification
and Requirements Validation
• Requirement verification is establishing confidence that the
requirement has been met
• Requirements are verified by test, demonstration, analysis, or inspection
• Test is the most common method of verification and the technique that
provides the most confidence that the system will indeed work as intended in
its anticipated environment
• Requirement validation is a process of ensuring that
• The set of requirements is correct, complete, and consistent
• A model can be created that satisfies the requirements
• A real-world solution can be built and tested to prove that it satisfies the
requirements
Early Consideration of Requirement
Verification Helps Avoid Costly Problems
• The systems engineer should create a preliminary verification plan as
each requirement is written. Typically, this plan is no more than
establishing the technique (test, demonstration, analysis, or
inspection) that will be used for verifying a requirement.
• This early consideration of requirement verification helps
• Confirm the requirement is indeed verifiable
• Define the system verification plan
• Identify needed facilities for subsystem and system test
Stages of System Test and Evaluation During
the Life Cycle
Testing and Evaluation
• Defect testing
• Testing systems to establish presence of defects
• Successful defect test = test causes system to behave in an anomalous way
• Tests show the presence not the absence of defects
• Testing priorities
• Only exhaustive testing can show a system is free from defects. Exhaustive testing is
impossible.
• Tests should exercise a system’s capabilities rather than its components
• Testing old capabilities is more important than testing new capabilities (regression
testing)
• Testing typical situations is more important than boundary value cases
• Test data and test cases
• Test data: Inputs devised to test the system
• Test cases: Inputs to test system and predicted outputs from these inputs if system
operates according to specification
The Testing Process
• Conformance testing
• Conformance: fulfillment of a product, process, or service of specified
requirements
• Conformance clause: a section of a specification that states all the
requirements or criteria that must be satisfied to claim conformance
Conformance Testing Methodology
• Falsification Testing: find errors by means of experimentation
• Show presence of errors not their absence – prove non-conformance; can
never prove conformance
• Tests built to check for:




Required functionality implemented (basic tests)
Logical errors by misunderstanding requirements
Errors from boundary conditions and divergence
Common errors
• Validation: process necessary to perform conformance testing in
accordance with a prescribed procedure and official test suite
• Ensures tests are repeatable and reproducible
• Ensures conclusions consistent
• Certification: acknowledgement that a validation was completed and the
criteria established for issuing certificates was met
Component and Integration Testing
• Component testing
• Testing of individual system components
• Usually responsibility of component developer (except sometimes for critical
systems)
• Tests derived from the developer’s experience
• Integration testing
• Testing of groups of components integrated to create a system or sub-system
• Responsibility of an independent testing team
• Tests are based on a system specification
• Black-box testing
• System considered as a ‘black-box’
• Goal: Test functionality of system
• Test cases based on system specification
Equivalence Partitioning
• Input data and output results often fall into different classes where all
members of a class are related
• Each of these classes is an equivalence partition where the program
behaves in an equivalent way for each class member
• Test cases should be chosen from each partition
• EXAMPLE:
• Partition system inputs and outputs into ‘equivalence sets’
• If input is a 5-digit integer between 10,000 and 99,999, equivalence partitions
are <10,000, 10,000-99,999, and >10,000
• Choose test cases at the boundary of these sets: 00000, 09999, 10000,
99999, 10001
Structural Testing (aka White-Box Testing)
• Goal: Cover all paths in the system design
• Exercise all I/O parameters of each component
• Derivation of test cases according to program structure
• Knowledge of the program is used to identify additional test cases
• Objective is to exercise all system combinations
Path Testing
• Goal: ensure that the set of test cases is such that each path through
the program is executed at least once
• Starting point is a system flow graph that shows nodes representing
decisions and arcs representing the flow of control
Integration Testing Strategy
• Entire system viewed as a collection of subsystems
• The order in which the subsystems are selected for testing and
integration determines the testing strategy
• Big bang integration (nonincremental)
• Bottom up integration
• Top down integration
• Sandwich testing
Pros and Cons
• Bottom up integration testing
• Bad for functionally decomposed systems
• Tests the most important subsystem (UI) last
• Useful for integrating the following systems
• Real-time systems
• Systems with strict performance requirements
• Top down integration testing
• Test cases can be defined in terms of the functionality of the system (functional
requirements)
• Writing stubs can be difficult: Stubs must allow all possible conditions to be tested
• Possibly a very large number of stubs may be required, especially if the lowest level
of the system contains many methods
• One solution to avoid too many stubs: Modified top down testing strategy
• Test each layer of the system decomposition individually before merging the layers
Sandwich Testing Strategy
• Combines top-down strategy with bottom-up strategy
• The system is viewed as having three layers
• A target layer in the middle
• A layer above the target
• A layer below the target
• Testing converges at the target layer
• How do you select the target layer if there are more than 3 layers?
• Pros and cons of sandwich testing
• Top and Bottom Layer Tests can be done in parallel
• Does not test the individual subsystems thoroughly before integration
Performance Testing
• Stress Testing – Stress limits of system (e.g., maximum # of users, peak demands,
extended operation)
• Volume testing – Test what happens if large amounts of data are handled
• Configuration testing – Test the various software and hardware configurations
• Compatibility test – Test backward compatibility with existing systems
• Security testing – Try to violate security requirements
• Timing testing – Evaluate response times and time to perform a function
• Environmental test – Test tolerances for heat, humidity, motion, portability
• Quality testing – Test reliability, maintainability, and availability of the system
• Recovery testing – Tests system’s response to presence of errors or loss of data
• Human factors testing – Tests user interface with user
Test Cases for Performance Testing
• Push the (integrated) system to its limits
• Goal: Try to break the subsystem
• Test how the system behaves when overloaded
• Can bottlenecks be identified? (First candidates for redesign in the next
iteration)
• Try unusual orders of execution
• Remove from empty queue
• Check the system’s response to large volumes of data
• If the system is supposed to handle 1000 items, try it with 1001 items
• What is the amount of time spent in different use cases?
• Are typical cases executed in a timely fashion?
Acceptance Testing
• Goal: Demonstrate system is ready for operational use
• Choice of tests is made by client/sponsor
• Many tests can be taken from integration testing
• Acceptance test is performed by the client, not by the developer
• Majority of all bugs in software is typically found by the client after
the system is in use, not by the developers or testers
• Therefore, two kinds of additional tests:
• Alpha tests
• Beta tests
Alpha vs. Beta Tests
• Alpha test
• Sponsor uses the software at the developer’s site
• Software used in a controlled setting, with the developer always ready to fix
bugs
• Beta test
• Conducted at sponsor’s site (developer is not present)
• Software gets a realistic workout in target environment
• Potential customer might get discouraged
Homework 5
Writing Good Requirements Using
Use Cases
Use Cases
• First developed by Ivar Jacobson
• Now part of the UML
• Emphasizes user’s point of view
• Explains everything in the user’s language
• A “use case” is a set of cases or scenarios for using a system, tied
together by a common user goal
• Essentially descriptive answers to questions that start with “What does the
system do if …”
• E.g., “What does the auto-teller do if a customer has just deposited a check
within 24 hours and there’s not enough in the account without the check to
provide the desired withdrawal?”
• Use case describes what the auto-teller does in that situation
• Use case model = the set of all use cases
• Why are use cases good for brainstorming requirements?
Brief Use Case Format
• Brief format narrates a story or scenario of use in prose form, e.g.:
Rent Videos. A Customer arrives with videos to rent. The Clerk enters
their ID and each video ID. The System outputs information on each.
The Clerk requests the rental report. The System outputs it, which is
given to the Customer with their videos.
Fully Dressed Use Case (from Fowler & Scott, UML Distilled)
Use Case: Buy a Product (Describe user’s goal in user’s language)
Actors: Customer, System (Why is it a good idea to define actors?)
1.
Customer browsers through catalog and selects items to buy
2.
Customer goes to check out
3.
Customer fills in shipping information (address; next-day or 3-day delivery)
4.
System presents full pricing information, including shipping
5.
Customer fills in credit card information
6.
System authorizes purchase
7.
System confirms sale immediately
8.
System sends confirming email to customer
(Did we get the main scenario right?)
Alternative: Authorization Failure (At what step might this happen?)
6a. At step 6, system fails to authorize credit purchase
Allow customer to re-enter credit card information and re-try
Alternative: Regular customer (At what step might this happen?)
3a. System displays current shipping information, pricing information,
and last four digits of credit card information
3b. Customer may accept or override these defaults
Return to primary scenario at step 6
Heuristics for Writing Use Case Text
• Avoid implementation specific language in use cases such as IF-THEN-ELSE
or GUI elements or specific people or depts.
• Which is better: “The clerk pushes the OK button.”
• Or: “The clerk signifies the transaction is done.”?
• Write use cases with the user’s vocabulary the way a user would describe
performing the task
• Use cases never initiate actions; actors do
• Actors can be people, computer systems, or any external entity that initiate an action
• Use case interaction produces something of value to an actor
• Create use cases and requirements incrementally and iteratively
• Add pre-conditions and post-conditions in each use case
• What is the state of affairs before and after use case occurs?
Use Case Diagram
• Use case diagram provides an overview of
interactions between actors and use cases
• Bird’s eye view of use cases for a system
• Stick figures represent actors (human or computer in roles)
• Ellipses are use cases (behavior or functionality seen by users)
• What can user do with the system?
• E.g., Trader interacts with Trader Contract via a Trade Commodities transaction
• <> relationship inserts a chunk of behavior (another use case)
• <> adds to a more general use case
Homework 5
• Write a use case with functional and non-functional requirements for
cooking food in a microwave oven system.
• Fill in the template given on Blackboard. The description of the use
case has been given to you in the template, and the use case diagram
is given below.
Homework 5
Writing Good Requirements Using Use Cases
Use Case for Microwave Oven System
Brief Description: This use case describes the user interaction and operation of a microwave
oven. The cook invokes this use case in order to cook food in the microwave.
Use Case Name: Cook Food
Primary Actor:
Assumptions:
Preconditions:
Main Success Scenario (MSS):
1.
Adverse Conditions:
Extensions/Alternative Scenarios:
Functional Requirements:
1.
Nonfunctional Requirements:
1.

Purchase answer to see full
attachment

Place your order
(550 words)

Approximate price: $22

Calculate the price of your order

550 words
We'll send you the first draft for approval by September 11, 2018 at 10:52 AM
Total price:
$26
The price is based on these factors:
Academic level
Number of pages
Urgency
Basic features
  • Free title page and bibliography
  • Unlimited revisions
  • Plagiarism-free guarantee
  • Money-back guarantee
  • 24/7 support
On-demand options
  • Writer’s samples
  • Part-by-part delivery
  • Overnight delivery
  • Copies of used sources
  • Expert Proofreading
Paper format
  • 275 words per page
  • 12 pt Arial/Times New Roman
  • Double line spacing
  • Any citation style (APA, MLA, Chicago/Turabian, Harvard)

Our guarantees

Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.

Money-back guarantee

You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.

Read more

Zero-plagiarism guarantee

Each paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.

Read more

Free-revision policy

Thanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.

Read more

Privacy policy

Your email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.

Read more

Fair-cooperation guarantee

By sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.

Read more

Order your essay today and save 30% with the discount code ESSAYSHELP