New Semester
Started
Get
50% OFF
Study Help!
--h --m --s
Claim Now
Question Answers
Textbooks
Find textbooks, questions and answers
Oops, something went wrong!
Change your search query and then try again
S
Books
FREE
Study Help
Expert Questions
Accounting
General Management
Mathematics
Finance
Organizational Behaviour
Law
Physics
Operating System
Management Leadership
Sociology
Programming
Marketing
Database
Computer Network
Economics
Textbooks Solutions
Accounting
Managerial Accounting
Management Leadership
Cost Accounting
Statistics
Business Law
Corporate Finance
Finance
Economics
Auditing
Tutors
Online Tutors
Find a Tutor
Hire a Tutor
Become a Tutor
AI Tutor
AI Study Planner
NEW
Sell Books
Search
Search
Sign In
Register
study help
business
software testing and quality assurance
Flexible, Reliable Software Using Patterns And Agile Development 1st Edition Henrik B Christensen - Solutions
=+4.8. What are the advantages and disadvantages of developing software in which quality is"good enough "? That is, what happens when we emphasize development speed over prod-uct quality?
=+resent in your own words, and then indicate how they come into play within the concurrent process model.
=+4.7. The concurrent process model defines a set of "states. " Describe what these states rep-
=+4.6. Is it possible to combine process models? I so, provide an example.
=+4.5. As you move outward along the spiral process flow, what can you say about the software that is being developed or maintained?
=+4.4. Provide three examples of software projects that would be amenable to the incremen-tal model. Be specific.
=+4.3. What process adaptations are required if the prototype will evolve into a delivery sys-tem or product?
=+4.2. Provide three examples of software projects that would be amenable to the prototyping model. Be specific.
=+4.1. Provide three examples of software projects that would be amenable to the waterfall model. Be specific.
=+conflicting requirements. Develop a process pattern (this would be a stage pattern) using the template presented in Section 3.4 that addresses this problem and suggest an effective approach to it.
=+3.4. A common problem during communication occurs when you encounter two stakehold-ers who have conflicting ideas about what the software should be. That is, you have mutually
=+3.3. Try to develop a set of actions for the communication activity. Select one action and define a task set for it.
=+Can you identify types of problems that might be applicable to each of the generic flows described?
=+3.2. Discuss the differences among the various process flows described in Section 3.1.
=+4 The SEI's CMMI [CMM07] describes the characteristics of a software process and the criteria for a successful process in voluminous detail.
=+3.1. In the introduction to this chapter Baetjer notes: "The process provides interaction be-tween users and designers, between users and evolving tools, and between designers and evolving tools [technology]." List five questions that (1) designers should ask users, (2) users should ask
To understand the notion of software engineering and why it is important
To appreciate the technical (engineering), managerial, and psychological aspects of software engineering
To understand the similarities and differences between software engineering and other engineering disciplines
To know the major phases in a software development project
To appreciate ethical dimensions in software engineering
To be aware of the time frame and extent to which new developments impact software engineering practice
Define the term software engineering.
What are the essential characteristics of software engineering?
What are the major phases in a software development project?
What is the difference between verification and validation?
Define four kinds of maintenance activity.
Why is the documentation of a software project important?
Explain the 40--20--40 rule of thumb in software engineering.
What is the difference between software development and software maintenance?
~ Do you think the linear model of software development is appropriate? In which cases do you think an agile approach is more appropriate? You may wish to reconsider this issue after having read the remainder of this text.
~ Discuss the major differences between software engineering and some other engineering discipline, such as bridge design or house building. Would you consider state-of-the-art software engineering as a true engineering discipline?
Quality and productivity are major issues in software engineering. It is often advocated that automated tools (CASE tools) will dramatically improve both quality and productivity. Study a commercial CASE tool and assess the extent to which it improves the software development process and its
~ Medical doctors have their Hippocratic oath. Could a similar ethical commitment by software engineers be instrumental in increasing the quality of software systems?
Suppose you are involved in an office automation project in the printing industry. The system to be developed is meant to support the work of journal editors. The management objective for this project is to save labor cost; the editors’ objective is to increase the quality of their work.
~ Discuss the difference between requirements-based software development and market-driven software development (Sawyer, 2001).
~ Discuss the impact of globalisation on software development.
Study both the technical and user documentation of a system at your disposal. Are you satisfied with them? Discuss their possible shortcomings and give remedies to improve their quality.
Take a piece of software you wrote more than a year ago. Is it documented adequately? Does it have a user manual? Is the design rationale reflected in the technical documentation? Can you build an understanding of the system from its documentation that is sufficient for making non-trivial changes
Try to gather quantitative data from your organization that reveals how much effort is spent on various kinds of maintenance activity. Are these data available at all? If so, is the pattern like that sketched in section 1.3? If not, can you explain the differences?
A 1999 Computer Society survey lists the following candidate fundamental principles of software engineering:A. Apply and use quantitative measurements in decision-making.B. Build with and for reuse.C. Control complexity with multiple perspectives and multiple levels of abstraction.D. Define
What is software testing?(a) It is the process of demonstrating that errors are not present.(b) It is the process of establishing confidence that a program does what it is supposed to do.(c) It is the process of executing a program with the intent of finding errors.(d) It is the process of showing
Why should testing be done?(a) To ensure the correctness of a program(b) To find errors in a program(c) To establish the reliability of a program(d) To certify the effectiveness of a program
Which phase consumes maximum effort to fix an error?(a) Requirements analysis and specifications(b) Design phase(c) Coding phase(d) Feasibility study phase
Which objective is most difficult to achieve?(a) Execute every statement of a program at least once(b) Execute every branch statement of a program at least once(c) Execute every path of a program at least once(d) Execute every condition of a branch statement of a program at least once
Software errors during coding are known as:(a) Bugs(b) Defects(c) Failures(d) Mistakes
The cost of fixing an error is:(a) More in requirements analysis and specification phase than coding phase(b) More in coding phase than requirements analysis and specification phase(c) Same in all phases of a software development life cycle(d) Negligible in all phases
Beta testing is done by:(a) Developers(b) Testers(c) Potential customers(d) Requirements writers
Alpha testing is carried out at the:(a) Developer’s site in a controlled environment(b) Developer’s site in a free environment(c) Customer’s site in a controlled environment(d) Customer’s site in a free environment
The purpose of acceptance testing is:(a) To perform testing from the business perspective(b) To find faults in the software(c) To test the software with associated hardware(d) To perform feasibility study
Acceptance testing is done by:(a) Developers(b) Customers(c) Testers(d) All of the above
Program is:(a) Subset of software(b) Superset of software(c) Set of software(d) Union of software
Which is not an infrastructure software?(a) Compiler(b) Operating system(c) Testing tools(d) Result Management Software
Software should have:(a) Program + operating system + compiler(b) Set of programs + operating system(c) Programs + documentation + operating procedures(d) None of the above
Concepts of software testing are applicable to:(a) Procedural programming languages(b) Object oriented programming languages(c) ‘C’, ‘C++’ and Java programming languages(d) All of the above
CASE Tool is:(a) Computer Aided Software Engineering Tool(b) Component Aided Software Engineering Tool(c) Constructive Aided Software Engineering Tool(d) Complete Analysis Software Enterprise Tool
One fault may lead to:(a) One failure(b) Many failures(c) No failure(d) All of the above
Test suite of a program is a:(a) Set of test cases(b) Set of inputs with pre-conditions(c) Set of outputs with post-conditions(d) Set of testing strategies
Alpha and Beta testing techniques are related to:(a) Unit testing(b) Integration testing(c) System testing(d) Testing by Customer
Testing a software is primarily focused on:(a) Verification activities only(b) Validation activities only(c) Verification and validation activities(d) None of the above
Testing a software with real data in real environment is known as:(a) Alpha testing(b) Beta testing(c) System testing(d) Integration testing
Verification activities are:(a) Performed manually(b) Related to reviewing the documents and source code(c) Known as static testing(d) All of the above
Validation activities are:(a) Dynamic activities and require program execution(b) Related to inspecting the source code(c) Related to static testing(d) Related to source code design and documentation
When the output of a program is different from the expected output, it is known as:(a) A fault(b) An error(c) A failure(d) A mistake
Software testing activities should be started:(a) After the completion of source code(b) After the completion of design phase(c) As early as possible in the software development life cycle(d) After the completion of software requirements and analysis phase
Software testing activities are important in:(a) Every phase of the software development life cycle(b) The last few phases of the software development life cycle(c) The software requirements and analysis phase(d) All of the above
The focus of acceptance testing is:(a) To find faults(b) To ensure correctness of software(c) To test integration related issues(d) To test from the user’s perspective
A reliable software is one which is:(a) Liked by its users(b) Delivered on time and with budget(c) Unlikely to cause failures(d) Very easy to use
When to stop testing and release the software to customers should be decided on the basis of:(a) Market conditions(b) Budget and availability of resources(c) Test metrics(d) Capabilities of the testing persons
What are the good software testing practices?(a) Involve testing persons as early as possible in the software development life cycle(b) Apply effective verification techniques(c) Enforce inspections and reviews after every phase of the software development life cycle(d) All of the above
What is a test case?(a) Input(s), expected output(s), pre-condition(s) and post-condition(s)(b) Steps of execution(c) A list of activities which can be tested(d) None of the above
You cannot control what you cannot :(a) Define(b) Measure(c) Improve(d) Change
What is the major benefit of verifications in the early phases of the software development life cycle?(a) It identifies changes in the SRS (b) It reduces defect multiplication (c) It allows involvement of testing persons (d) It improves discipline in the various development activities
Behavioural specifications are required for:(a) Modelling(b) Verification(c) Validation(d) Testing
Which, in general, is the least expected skill of a testing person?(a) Diplomatic(b) Reliable(c) Having good attention to detail(d) Good developer
Debugging of a program is(a) The process of executing the program(b) The process of identifying a fault and removing it from the program(c) The process of experiencing a failure(d) The process of improving the quality of the program
All validation activities come under the category of:(a) Dynamic testing(b) Static testing(c) Source code design(d) None of the above
All verification activities come under the category of:(a) Dynamic testing(b) Static testing(c) Source code design(d) None of the above
Which is not a factor of software quality?(a) Reliability(b) Portability(c) Efficiency(d) Functionality
Which is the most important factor of software quality?(a) Reliability(b) Understandability(c) Efficiency(d) Consistency
Quality assurance activities concentrate on(a) Software design(b) Software performance(c) Software products(d) Software processes
Which is not the quality of a testing person?(a) Cautious (b) Curious (c) Judgmental (d) Critical
What should be the best possible objective for testing?(a) Execute every statement at least once(b) Execute every path at least once(c) Execute every branch statement at least once(d) Execute every condition of a branch statement at least once
Which is not a user manual?(a) Reference guide(b) Beginner’s guide(c) Sequence diagrams(d) System overview
Which is not a documentation manual?(a) SRS document(b) SDD document(c) Source code(d) Installation guide
Which is not the limitation of testing?(a) Difficult to measure the progress of testing(b) Availability of testing tools(c) Input domain is too large to test(d) Too many paths in the program
How much percentage of cost is generally consumed in software testing with reference to software development cost?(a) 10 – 20(b) 40 – 50(c) 80 – 90(d) 70 – 80
How much testing is enough?(a) Not easy to decide(b) Depends on complexity and criticality(c) Depends on abilities of testing persons(d) Depends on maturity of developers
If an expected output is not specified then:(a) We cannot execute the test case(b) We may not be able to repeat the test(c) We may not be able to decide if the test has passed or failed(d) We may not be able to automate the testing activity
Which of the following is a reason for a software failure?(a) Testing fault(b) Software Fault(c) Design Fault(d) Requirement Fault
Why is it impossible to test a program completely?(a) Input domain is too large to test(b) Good testers are not available(c) Efficient testing tools are not available(d) None of the above
What is software testing? Is it possible to do complete testing?
What are the limitations of testing? Discuss with the help of examples.
Describe some software failures. How can we minimize such failures?
Why should we test software? What are the associated risks, if we release it without testing?
Who should do the testing of the software? Is there any international standard?
What should we test? Discuss the areas which should be focused on during testing.
There are two limitations in software testing:(i) Input domain is too large to test(ii) Too many paths in the program Justify these limitations with the help of suitable examples.
What are logical bugs? How are they different from syntax bugs? How can we handle logical bugs effectively?
Write a program to add two digit integers. Can we test the program completely? If so, how many test cases are required? Assume that each test case can be executed and analyzed in one second; how long would it take to execute all test cases?
Showing 3300 - 3400
of 3990
First
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Step by Step Answers