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
Software Engineering A Practitioner's Approach Software Engineering A Practitioner's Approach 8th Edition Roger Pressman - Solutions
6.6. Suggest an architecture for a system (such as iTunes) that is used to sell and distribute music on the Internet. What architectural patterns are the basis for this architecture?
6.7. Explain how you would use the reference model of CASE environments (available on the book’s web pages) to compare the IDEs offered by different vendors of a programming language such as Java.
6.8. Using the generic model of a language processing system presented here, design the architecture of a system that accepts natural language commands and translates these into database queries in a language such as SQL.
6.9. Using the basic model of an information system, as presented in Figure 6.16, suggest the components that might be part of an information system that allows users to view information about flights arriving and departing from a particular airport.
6.10. Should there be a separate profession of ‘software architect’ whose role is to work independently with a customer to design the software system architecture? A separate software company would then implement the system. What might be the difficulties of establishing such a profession?
understand the most important activities in a general, objectoriented design process;
understand some of the different models that may be used to document an object-oriented design;
know about the idea of design patterns and how these are a way of reusing design knowledge and experience;
have been introduced to key issues that have to be considered when implementing software, including software reuse and open-source development.
7.1. Using the structured notation shown in Figure 7.3, specify the weather station use cases for Report status and Reconfigure. You should make reasonable assumptions about the functionality that is required here.
7.2. Assume that the MHC-PMS is being developed using an object-oriented approach. Draw a use case diagram showing at least six possible use cases for this system.
7.3. Using the UML graphical notation for object classes, design the following object classes, identifying attributes and operations. Use your own experience to decide on the attributes and operations that should be associated with these objects. a telephone a printer for a personal computer a
7.4. Using the weather station objects identified in Figure 7.6 as a starting point, identify further objects that may be used in this system. Design an inheritance hierarchy for the objects that you have identified.
7.5. Develop the design of the weather station to show the interaction between the data collection subsystem and the instruments that collect weather data. Use sequence diagrams to show this interaction.
7.6. Identify possible objects in the following systems and develop an object-oriented design for them. You may make any reasonable assumptions about the systems when deriving the design. A group diary and time management system is intended to support the timetabling of meetings and appointments
7.7. Draw a sequence diagram showing the interactions of objects in a group diary system when a group of people are arranging a meeting.
7.8. Draw a UML state diagram showing the possible state changes in either the group diary or the filling station system.
7.9. Using examples, explain why configuration management is important when a team of people are developing a software product.
7.10. A small company has developed a specialized product that it configures specially for each customer. New customers usually have specific requirements to be incorporated into their system, and they pay for these to be developed. The company has an opportunity to bid for a new contract, which
understand the stages of testing from testing, during development to acceptance testing by system customers;
have been introduced to techniques that help you choose test cases that are geared to discovering program defects;
understand test-first development, where you design tests before writing code and run these tests automatically;
know the important differences between component, system, and release testing and be aware of user testing processes and techniques.
8.1. Explain why it is not necessary for a program to be completely free of defects before it is delivered to its customers.
8.2. Explain why testing can only detect the presence of errors, not their absence.
8.3. Some people argue that developers should not be involved in testing their own code but that all testing should be the responsibility of a separate team. Give arguments for and against testing by the developers themselves.
8.4. You have been asked to test a method called ‘catWhiteSpace’ in a ‘Paragraph’ object that, within the paragraph, replaces sequences of blank characters with a single blank character.Identify testing partitions for this example and derive a set of tests for the ‘catWhiteSpace’method.
8.5. What is regression testing? Explain how the use of automated tests and a testing framework such as JUnit simplifies regression testing.
8.6. The MHC-PMS is constructed by adapting an off-the-shelf information system. What do you think are the differences between testing such a system and testing software that is developed using an object-oriented language such as Java?
8.7. Write a scenario that could be used to help design tests for the wilderness weather station system.
8.8. What do you understand by the term ‘stress testing’? Suggest how you might stress test the MHC-PMS.
8.9. What are the benefits of involving users in release testing at an early stage in the testing process? Are there disadvantages in user involvement?
8.10. A common approach 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 for systems that are delivered to external customers.
understand that change is inevitable if software systems are to remain useful and that software development and evolution may be integrated in a spiral model;
understand software evolution processes and influences on these processes;
have learned about different types of software maintenance and the factors that affect maintenance costs; and
understand how legacy systems can be assessed to decide whether they should be scrapped, maintained, reengineered, or replaced.
9.1. Explain why a software system that is used in a real-world environment must change or become progressively less useful.
9.2. Explain the rationale underlying Lehman’s laws. Under what circumstances might the laws break down?
9.3. From Figure 9.4, you can see that impact analysis is an important subprocess in the software evolution process. Using a diagram, suggest what activities might be involved in change impact analysis.
9.4. As a software project manager in a company that specializes in the development of software for the offshore oil industry, you have been given the task of discovering the factors that affect the maintainability of the systems developed by your company. Suggest how you might set up a program to
9.5. Briefly describe the three main types of software maintenance. Why is it sometimes difficult to distinguish between them?
9.6. What are the principal factors that affect the costs of system reengineering?
9.7. Under what circumstances might an organization decide to scrap a system when the system assessment suggests that it is of high quality and of high business value.
9.8. What are the strategic options for legacy system evolution? When would you normally replace all or part of a system rather than continue maintenance of the software?
9.9. Explain why problems with support software might mean that an organization has to replace its legacy systems.
9.10. Do software engineers have a professional responsibility to produce code that can be maintained and changed even if this is not explicitly requested by their employer?
know what is meant by a sociotechnical system and understand the difference between a technical, computer-based system and a sociotechnical system;
have been introduced to the concept of emergent system properties, such as reliability, performance, safety, and security;
know about the procurement, development, and operational activities that are involved in the systems engineering process;
understand why software dependability and security should not be considered in isolation and how they are affected by systems issues, such as operator errors.
10.1. Give two examples of government functions that are supported by complex sociotechnical systems and explain why, in the foreseeable future, these functions cannot be completely automated.
10.2. Explain why the environment in which a computer-based system is installed may have unanticipated effects on the system that lead to system failure. Illustrate your answer with a different example from that used in this chapter.
10.3. Why is it impossible to infer the emergent properties of a complex system from the properties of the system components?
10.4. Why is it sometimes difficult to decide whether or not there has been a failure in a sociotechnical system? Illustrate your answer by using examples from the MHC-PMS that has been discussed in earlier chapters.
10.5. What is a ‘wicked problem’? Explain why the development of a national medical records system should be considered a ‘wicked problem’.
10.6. A multimedia virtual museum system offering virtual experiences of ancient Greece is to be developed for a consortium of European museums. The system should provide users with the facility to view 3-D models of ancient Greece through a standard web browser and should also support an immersive
10.7. Why is system integration a particularly critical part of the systems development process?Suggest three sociotechnical issues that may cause difficulties in the system integration process.
10.8. Explain why legacy systems may be critical to the operation of a business.
10.9. What are the arguments for and against considering system engineering as a profession in its own right, like electrical engineering or software engineering?
10.10. You are an engineer involved in the development of a financial system. During installation, you discover that this system will make a significant number of people redundant. The people in the environment deny you access to essential information to complete the system installation. To what
=+6.1. Based on your personal observation of people who are excellent software developers, name three personality traits that appear to be common among them.
=+6.2. How can you be "brutally honest" and still not be perceived (by others) as insulting or aggressive?
=+6.3. How does a software team construct "artificial boundaries" that reduce their ability to communicate with others?
=+6.4. Write a brief scenario that describes each of the "boundary-spanning roles" described in Section 6.2.
=+6.5. In Section 6.3, we note that a sense of purpose, involvement, trust, and improvement
=+are essential attributes for effective software teams. Who is responsible for instilling these attributes as a team is formed?
=+6.6. Which of the four organizational paradigms for teams (Section 6.4) do you think would be most effective (a) for the IT department at a major insurance company; (b) for a software
=+engineering group at a major defense contractor; (c) for a software group that builds com-puter games; (d) for a major software company? Explain why you made the choices you did.
=+6.7. If you had to pick one attribute of an agile team that makes it different from a conven-tional software team, what would it be?
=+6.8. Of the forms of social media that were described for software engineering work in Section 6.6, which do you think would be most effective and why?
=+6.9. Write a scenario in which the SafeHome team members make use of one or more forms of social media as part of their software project.
=+6.10. Presently, the cloud is one of the more hyped concepts in the world of computing.
=+Describe how the cloud can add value for a software engineering organization with specific reference to services that are specifically designed to enhance software engineering work.
=+6.11. Do some research on one of the CDE tools noted in the sidebar in Section 6.8 (or a tool assigned by your instructor) and prepare a brief presentation of the tool's capabilities for your class.
=+6.12. Referring to Figure 6.2, why does distance complicate communication? Why does dis-
=+tance accentuate the need for coordination?
=+Why types of barriers and complexity are in-troduced by distance?
=+What concepts and principles guide software engineering practice?
=+What is requirements engineering and what are the under-lying concepts that lead to good requirements analysis?
=+How is the requirements model created and what are its elements?
=+What are the elements of a good design?
=+How does architectural design establish a framework for
=+all other design actions and what models are used?
=+How do we design high-quality software components?
=+What concepts, models, and methods are applied as a user interface is designed?
=+What is pattern-based design?
=+What specialized strategiesand methods are used to design WebApps?
=+What specialized strategiesand methods are used to design mobile apps?
=+7.1. Since a focus on quality demands resources and time, is it possible to be agile and still maintain a quality focus?
=+7.2. Of the eight core principles that guide process (discussed in Section 7.2.1), which do you believe is most important?
=+7.3. Describe the concept of separation of concerns in your own words.
=+7.4. An important communication principle states, "Prepare before you communicate."
=+How should this preparation manifest itself in the early work thavt you do?
=+What work prod-ucts might result as a consequence of early preparation?
=+7.5. Do some research on "facilitation" for the communication activity (use the references provided or others) and prepare a set of guidelines that focus solely on facilitation.
=+7.6. How does agile communication differ from traditional software engineering communi-cation? How is it similar?
=+7.7. Why is it necessary to "move on"?
=+7.8. Do some research on "negotiation" for the communication activity and prepare a set of guidelines that focus solely on negotiation.
=+7.9. Describe what granularity means in the context of a project schedule.
Showing 2200 - 2300
of 3990
First
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Last
Step by Step Answers