All Matches
Solution Library
Expert Answer
Textbooks
Search Textbook questions, tutors and Books
Oops, something went wrong!
Change your search query and then try again
Toggle navigation
FREE Trial
S
Books
FREE
Tutors
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
Ask a Question
AI Study Help
New
Search
Search
Sign In
Register
study help
business
software testing and quality assurance
Questions and Answers of
Software Testing And Quality Assurance
Using your knowledge of Java, C++, C or some other programming language, derive a checklist of common errors (not syntax errors) that could not be detected by a compiler but that might be detected in
Produce a list of conditions that could be detected by a static analyser for Java, C++ or another programming language that you use. Comment on this list compared to the list given in Figure 22.7.
Explain why it may be cost-effective to use formal methods in the development of safetycritical software systems. Why do you think that some developers of this type of system are against the use of
A manager decides to use the reports of program inspections as an input to the staff appraisal process. These reports show who made and who discovered program errors. Is this ethical managerial
One approach that is commonly adopted to system testing is to test the system until the testing budget is exhausted and then deliver the system to customers. Discuss the ethics of this approach.
Explain why testing can only detect the presence of errors, not their absence.
Compare top-down and bottom-up integration and testing by discussing their advantages and disadvantages for architectural testing, demonstrating a version of the system to users and for the practical
What is regression testing? Explain how the use of automated tests and a testing framework such as JUnit simplifies regression testing.
Write a scenario that could be used as the basis for deriving tests for the weather station system that was used as an example in Chapter 14.
Using the sequence diagram in Figure 8.14 as a scenario, propose tests for the issue of electronic items in the LIBSYS system.
List four types of systems that would require system software safety cases.
Assume you were part of a team that developed software for a chemical plant, which failed in some way, causing a serious pollution incident. Your boss is interviewed on television and states that the
What are the arguments for and against the licensing of software engineers?
Why should several estimation techniques be used to produce a cost estimate for a large, complex software system?
A software manager is in charge of the development of a safety-critical software system that is designed to control a radiotherapy machine to treat patients suffering from cancer. This system is
Give three reasons why algorithmic cost estimates prepared in different organisations are not directly comparable
Explain how the algorithmic approach to cost estimation may be used by project managers for option analysis. Suggest a situation where managers may choose an approach that is not based on the lowest
Some very large software projects involve writing millions of lines of code. Suggest how useful the cost estimation models are likely to be for such systems. Why might the assumptions on which they
Is it ethical for a company to quote a low price for a software contract knowing that the requirements are ambiguous and that they can charge a high price for subsequent changes requested by the
Should measured productivity be used by managers during the staff appraisal process? What safeguards are necessary to ensure that quality is not affected by this?
Explain why a high-quality software process should lead to high-quality software products.Discuss possible problems with this system of quality management.
Explain how standards may be used to capture organisational wisdom about effective methods of software development. Suggest four types of knowledge that might be captured in organisational standards.
Discuss the assessment of software quality according to the quality attributes shown in Figure 27.7. You should consider each attribute in turn and explain how it might be assessed
Design an electronic form that may be used to record review comments and that could be used to electronically mail comments to reviewers.
Briefly describe possible standards that might be used for:■ The use of control constructs in C, C++ or Java■ Reports which might be submitted for a term project in a university■ The process of
Assume you work for an organisation that develops database products for microcomputer systems. This organisation is interested in quantifying its software development. Write a report suggesting
In the development of large, embedded real-time systems, suggest five factors that are likely to have a significant effect on the productivity of the software development team.
Explain why consistency, respect, inclusion and honesty are factors that contribute to effective people management.
What factors should be taken into account when selecting staff to work on a software development project? Giving reasons for your answer, suggest which of these would be most important in choosing
Develop the case study example on motivation in Figure
to include general activities that Alice could introduce to ensure that other members of the team remain motivated.
Explain why keeping all members of a group informed about progress and technical decisions in a project can improve group cohesiveness.
Explain what you understand by groupthink. Describe the dangers of this phenomenon and explain how it might be avoided.
What problems do you think might arise in extreme programming teams where many management decisions are devolved to the team members themselves?
Why are open-plan and communal offices sometimes less suitable for software development than individual offices? Under what circumstances do you think that open-plan environments might be better?
Why is the P-CMM an effective framework for improving the management of people in an organisation? Suggest how it may have to be modified if it is to be used in small companies.
Should managers become friendly and mix socially with more junior members of their group?
Is it ethical to provide the answers that you think the tester wants rather than saying what you really feel when taking psychological or aptitude tests?
Under what circumstance might a company charge a much higher price for a software system than that suggested by the cost estimate plus a normal profit margin?
Describe two metrics that have been used to measure programmer productivity. Comment briefly on the advantages and disadvantages of each of these metrics.
Explain why design metrics are, by themselves, an inadequate method of predicting design quality.
understand what software engineering is and why it is important;
understand that the development of different types of software systems may require different software engineering techniques;
understand some ethical and professional issues that are important for software engineers;
have been introduced to three systems, of different types, that will be used as examples throughout the book.
1.1. Explain why professional software is not just the programs that are developed for a customer.
1.2. What is the most important difference between generic software product development and custom software development? What might this mean in practice for users of generic software products?
1.3. What are the four important attributes that all professional software should have? Suggest four other attributes that may sometimes be significant.
1.4. Apart from the challenges of heterogeneity, business and social change, and trust and security, identify other problems and challenges that software engineering is likely to face in the 21st
1.5. Based on your own knowledge of some of the application types discussed in section 1.1.2, explain, with examples, why different application types require specialized software engineering
1.6. Explain why there are fundamental ideas of software engineering that apply to all types of software systems.
1.7. Explain how the universal use of the Web has changed software systems.
1.8. Discuss whether professional engineers should be certified in the same way as doctors or lawyers.
1.9. For each of the clauses in the ACM/IEEE Code of Ethics shown in Figure 1.3, suggest an appropriate example that illustrates that clause.
1.10. To help counter terrorism, many countries are planning or have developed computer systems that track large numbers of their citizens and their actions. Clearly this has privacy implications.
understand the concepts of software processes and software process models;
have been introduced to three generic software process models and when they might be used;
know about the fundamental process activities of software requirements engineering, software development, testing, and evolution;
understand why processes should be organized to cope with changes in the software requirements and design;
understand how the Rational Unified Process integrates good software engineering practice to create adaptable software processes.
2.1. Giving reasons for your answer based on the type of system being developed, suggest the most appropriate generic software process model that might be used as a basis for managing the development
2.2. Explain why incremental development is the most effective approach for developing business software systems. Why is this model less appropriate for real-time systems engineering?
2.3. Consider the reuse-based process model shown in Figure 2.3. Explain why it is essential to have two separate requirements engineering activities in the process.
2.4. Suggest why it is important to make a distinction between developing the user requirements and developing system requirements in the requirements engineering process.
2.5. Describe the main activities in the software design process and the outputs of these activities. Using a diagram, show possible relationships between the outputs of these activities.
2.6. Explain why change is inevitable in complex systems and give examples (apart from prototyping and incremental delivery) of software process activities that help predict changes and make the
2.7. Explain why systems developed as prototypes should not normally be used as production systems.
2.8. Explain why Boehm’s spiral model is an adaptable model that can support both change avoidance and change tolerance activities. In practice, this model has not been widely used.Suggest why this
2.9. What are the advantages of providing static and dynamic views of the software process as in the Rational Unified Process?
2.10. Historically, the introduction of technology has caused profound changes in the labor market and, temporarily at least, displaced people from jobs. Discuss whether the introduction of extensive
understand the rationale for agile software development methods, the agile manifesto, and the differences between agile and plandriven development;
know the key practices in extreme programming and how these relate to the general principles of agile methods;
understand the Scrum approach to agile project management;
be aware of the issues and problems of scaling agile development methods to the development of large software systems.
3.1. Explain why the rapid delivery and deployment of new systems is often more important to businesses than the detailed functionality of these systems.
3.2. Explain how the principles underlying agile methods lead to the accelerated development and deployment of software.
3.3. When would you recommend against the use of an agile method for developing a software system?
3.4. Extreme programming expresses user requirements as stories, with each story written on a card. Discuss the advantages and disadvantages of this approach to requirements description.78 Chapter 3
3.5. Explain why test-first development helps the programmer to develop a better understanding of the system requirements. What are the potential difficulties with test-first development?
3.6. Suggest four reasons why the productivity rate of programmers working as a pair might be more than half that of two programmers working individually.
3.7. Compare and contrast the Scrum approach to project management with conventional plan-based approaches, as discussed in Chapter 23. The comparisons should be based on the effectiveness of each
3.8. You are a software manager in a company that develops critical control software for aircraft. You are responsible for the development of a software design support system that supports the
3.9. It has been suggested that one of the problems of having a user closely involved with a software development team is that they ‘go native’; that is, they adopt the outlook of the development
3.10. To reduce costs and the environmental impact of commuting, your company decides to close a number of offices and to provide support for staff to work from home. However, the senior management
understand the concepts of user and system requirements and why these requirements should be written in different ways;
understand the differences between functional and nonfunctional software requirements;
understand how requirements may be organized in a software requirements document;
understand the principal requirements engineering activities of elicitation, analysis and validation, and the relationships between these activities;
understand why requirements management is necessary and how it supports other requirements engineering activities.
4.1. Identify and briefly describe four types of requirement that may be defined for a computerbased system.
4.2. Discover ambiguities or omissions in the following statement of requirements for part of a ticket-issuing system:An automated ticket-issuing system sells rail tickets. Users select their
4.3. Rewrite the above description using the structured approach described in this chapter.Resolve the identified ambiguities in an appropriate way.
4.4. Write a set of non-functional requirements for the ticket-issuing system, setting out its expected reliability and response time.
4.5. Using the technique suggested here, where natural language descriptions are presented in a standard format, write plausible user requirements for the following functions: An unattended petrol
4.6. Suggest how an engineer responsible for drawing up a system requirements specification might keep track of the relationships between functional and non-functional requirements.
4.7. Using your knowledge of how an ATM is used, develop a set of use cases that could serve as a basis for understanding the requirements for an ATM system.
4.8. Who should be involved in a requirements review? Draw a process model showing how a requirements review might be organized.
4.9. When emergency changes have to be made to systems, the system software may have to be modified before changes to the requirements have been approved. Suggest a model of a process for making
4.10. You have taken a job with a software user who has contracted your previous employer to develop a system for them. You discover that your company’s interpretation of the requirements is
understand how graphical models can be used to represent software systems;
Showing 1400 - 1500
of 3313
First
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Last