0% found this document useful (0 votes)
9 views

Question of Software Engineering

Uploaded by

Neda'a Hamed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Question of Software Engineering

Uploaded by

Neda'a Hamed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Question of Software Engineering

Chapter 17 Distributed SWE


17.1. What do you understand by “scalability”? Discuss the differences between
scaling up and scaling out and explain when these different approaches to scalability
may be used.

17.2. Explain why distributed software systems are more complex than centralized
software systems, where all of the system functionality is implemented on a single
computer.

17.3. Using an example of a remote procedure call, explain how middleware


coordinates the interaction of computers in a distributed system.

17.4. What are the different logical layers in an application with a distributed client–
server architecture?

17.5. You have been asked to design a secure system that requires strong
authentication and authorization. The system must be designed so that
communications between parts of the system cannot be intercepted and read by an
attacker. Suggest the most appropriate client server architecture for this system and,
giving the reasons for your answer, propose how functionality should be distributed
between the client and the server systems.

17.6. Your customer wants to develop a system for stock information where dealers
can access information about companies and evaluate various investment scenarios
using a simulation system. Each dealer uses this simulation in a different way,
according to his or her experience and the type of stocks in question. Suggest a client–
server architecture for this system that shows where functionality is located. Justify
the client–server system model that you have chosen.

17.7. Using a distributed component approach, propose an architecture for a national


theater booking system. Users can check seat availability and book seats at a group of
theaters. The system should support ticket returns so that people may return their
tickets for last-minute resale to other customers.

17.8. What is the fundamental problem with a two-tier client–server approach?


Define how a multi-tier client–server approach overcomes this.
17.9. List the benefits that a distributed component model has when used for
implementing distributed systems.

17.10. Your company wishes to move from using desktop applications to accessing
the same functionality remotely as services. Identify three risks that might arise and
suggest how these risks may be reduced.
Chapter 18 Service-Oriented SWE

18.1. Why is it important to define exceptions in service engineering?

18.2. Standards are fundamental to service-oriented architectures, and it was


believed that standards conformance was essential for successful adoption of a
service-based approach. However, RESTful services, which are increasingly widely
used, are not standards-based. Discuss why you think this change has occurred and
whether or not you think that the lack of standards will inhibit the development and
take-up of RESTful services.

18.3. Extend Figure 18.5 to include WSDL definitions for MaxMinType and
InDataFault. The temperatures should be represented as integers, with an additional
field indicating whether the temperature is in degrees Fahrenheit or degrees Celsius.
InDataFault should be a simple type consisting of an error code.

18.4. Suggest how the SimpleInterestCalculator service could be implemented as a


RESTful service.

18.5. What is a workflow? List out the key stages in the process of system
construction by composition.

18.6. Design possible input and output messages for the services shown in Figure
18.13. You may specify these in the UML or in XML.

18.7. Giving reasons for your answer, suggest two important types of application
where you would not recommend the use of service-oriented architecture.

18.8. Explain what is meant by a “compensation action” and, using an example, show
why these actions may have to be included in workflows.
18.9. For the example of the vacation package reservation service, design a workflow
that will book ground transportation for a group of passengers arriving at an airport.
They should be given the option of booking either a taxi or a hire car. You may assume
that the taxi and rental car companies offer web services to make a reservation.

18.10. Using an example, explain in detail why the thorough testing of services that
include compensation actions is difficult.
Chapter 19 System Engineering

19.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.

19.2. Explain briefly why the involvement of a range of professional disciplines is


essential in systems engineering.

19.3. Complex sociotechnical systems lead to three important characteristics. What


are they? Explain each in brief.

19.4. What is a “wicked problem”? Explain why the development of a national


medical records system should be considered a “wicked problem.”

19.5. 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 virtual reality
experience. Develop a conceptual design for such a system, highlighting its key
characteristics and essential high-level requirements.

19.6. Explain why you need to be flexible and adapt system requirements when
procuring large off-the-shelf software systems, such as ERP systems. Search the web
for discussions of the failures of such systems and explain, from a sociotechnical
perspective, why these failures occurred. A possible starting point is:
http://blog.360cloudsolutions.com/blog/bid/94028/ Top-Six-ERP-Implementation-
Failures
19.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.

19.8. Why is system evolution inherently costly?

19.9. What are the arguments for and against considering system engineering as a
profession in its own right, like electrical engineering or software engineering?

19.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 extent should you, as a systems engineer,
become involved in this situation? Is it your professional responsibility to complete the
installation as contracted? Should you simply abandon the work until the procuring
organization has sorted out the problem?
Chapter 20 Systems Of Systems
20.1. Explain why managerial and operational independence are the key
distinguishing characteristics of systems of systems when compared to other large,
complex systems.

20.2. Briefly explain any four essential characteristics of systems of systems.

20.3. The classification of SoS presented in Section 20.2 suggests a governance-


based classification scheme. Giving reasons for your answer, identify the
classifications for the following systems of systems:
(a) A health care system that provides unified access to all patient health records from
hospitals, clinics, and primary care.
(b) The World Wide Web
(c) A government system that provides access to a range of welfare services such as
pensions, disability benefits, and unemployment benefits.
Are there any problems with the suggested classification for any of these systems?

20.4. Explain what is meant by reductionism and why it is effective as a basis for
many kinds of engineering.

20.5. Define systems of systems engineering. List the problems of software SoS
engineering that are also common to problems of integrating large-scale application
systems.

20.6. How beneficial is a unified user interface in the interface design of SoS? What
are the factors on which the cost-effectiveness of a unified user interface is
dependent?

20.7. Sillitto suggests that communications between nodes in a SoS are not just
technical but should also include informal sociotechnical communications between
the people involved in the system. Using the iLearn SoS as an example, suggest
where these informal communica tions may be important to improve the effectiveness
of the system.

20.8. Suggest the closest-fit architectural pattern for the systems of systems
introduced in Exercise 20.3.
20.9. The trading system pattern assumes that there is no central authority involved.
However, in areas such as equity trading, trading systems must follow regulatory
rules. Suggest how this pattern might be modified to allow a regulator to check that
these rules have been followed. This should not involve all trades going through a
central node.

20.10. You work for a software company that has developed a system that provides
information about consumers and that is used within a SoS by a number of other retail
businesses. They pay you for the services used. Discuss the ethics of changing the
system interfaces without notice to coerce users into paying higher charges. Consider
this question from the point of view of the company’s employees, customers, and
shareholders.
Chapter 21 Real-time SWE
21.1. Explain why responsiveness in real time is the critical difference between
embedded systems and other software systems.

21.2. Identify possible stimuli and the expected responses for an embedded system
that controls a home refrigerator or a domestic washing machine.

21.3. Using the state-based approach to modeling, as discussed in Section 21.1.1,


model the operation of the embedded software for a voicemail system that is included
in a landline phone. This should display the number of recorded messages on an LED
display and should allow the user to dial-in and listen to the recorded messages.

21.4. What are the commonly used architectural patterns in real-time systems and
when are they used?

21.5. Show how the Environmental Control pattern could be used as the basis of the
design of a system to control the temperature in a greenhouse. The temperature
should be between 10 and 30 degrees Celsius. If it falls below 10 degrees, the
heating system should be switched on; if it goes above 30, the windows should be
automatically opened.

21.6. Design a process architecture for an environmental monitoring system that


collects data from a set of air quality sensors situated around a city. There are 5000
sensors organized into 100 neighborhoods. Each sensor must be interrogated four
times per second. When more than 30% of the sensors in a particular neighborhood
indicate that the air quality is below an acceptable level, local warning lights are
activated. All sensors return the readings to a central computer, which generates
reports every 15 minutes on the air quality in the city.

21.7. A train protection system automatically applies the brakes of a train if the speed
limit for a segment of track is exceeded or if the train enters a track segment that is
currently signaled with a red light (i.e., the segment should not be entered). Details
are shown in Figure 21.20. Identify the stimuli that must be processed by the onboard
train control system and the associated responses to these stimuli.

21.8. Suggest a possible process architecture for this system.


21.9. If a periodic process in the on-board train protection system is used to collect
data from the trackside transmitter, how often must it be scheduled to ensure that the
system is guaranteed to collect information from the transmitter? Explain how you
arrived at your answer.

21.10. With the help of examples, define what a real-time operating system is.
Explain how it is different from a conventional operating system. What are the
components included in real-time operating systems and what are their
responsibilities?

You might also like