SlideShare a Scribd company logo
Software Engineering 10th Edition Sommerville
Solutions Manual download pdf
http://testbankbell.com/product/software-engineering-10th-edition-
sommerville-solutions-manual/
Visit testbankbell.com to explore and download the complete
collection of test banks or solution manuals!
We believe these products will be a great fit for you. Click
the link to download now, or visit testbankbell.com
to discover even more!
Quizzes for Software Engineering, 10/E 10th Edition Ian
Sommerville
http://testbankbell.com/product/quizzes-for-software-
engineering-10-e-10th-edition-ian-sommerville/
Solution Manual for Software Engineering, 9/E 9th Edition
Ian Sommerville
http://testbankbell.com/product/solution-manual-for-software-
engineering-9-e-9th-edition-ian-sommerville/
Shigleys Mechanical Engineering Design 10th Edition
Budynas Solutions Manual
http://testbankbell.com/product/shigleys-mechanical-engineering-
design-10th-edition-budynas-solutions-manual/
Test Bank for Strategic Management: Concepts and Cases:
Competitiveness and Globalization, 13th Edition, Michael
A. Hitt R. Duane Ireland Robert E. Hoskisson
http://testbankbell.com/product/test-bank-for-strategic-management-
concepts-and-cases-competitiveness-and-globalization-13th-edition-
michael-a-hitt-r-duane-ireland-robert-e-hoskisson/
Understanding Basic Statistics 6th Edition Brase Test Bank
http://testbankbell.com/product/understanding-basic-statistics-6th-
edition-brase-test-bank/
Solution Manual for Practical Management Science, 5th
Edition
http://testbankbell.com/product/solution-manual-for-practical-
management-science-5th-edition/
Business Law Text and Cases Legal Ethical Global and
Corporate Environment 12th Edition Test Bank Clarkson
http://testbankbell.com/product/business-law-text-and-cases-legal-
ethical-global-and-corporate-environment-12th-edition-test-bank-
clarkson/
Chemistry Chang 11th Edition Test Bank
http://testbankbell.com/product/chemistry-chang-11th-edition-test-
bank/
Test Bank for The Economy Today 14th Edition Schiller
http://testbankbell.com/product/test-bank-for-the-economy-today-14th-
edition-schiller/
Test Bank for Critical Care Nursing 8th Edition by Urden
http://testbankbell.com/product/test-bank-for-critical-care-
nursing-8th-edition-by-urden/
Software Engineering 10 – Solutions Manual
7
7 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
Software Engineering 10th
Full chapter download at: https://testbankbell.com/product/software-engineering-10th-edition-
sommerville-solutions-manual/
2 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 of
the following systems:
• A system to control anti-lock braking in a car
• A virtual reality system to support software maintenance
• A university accounting system that replaces an existing system
• An interactive travel planning system that helps users plan journeys
with the lowest environmental
impact
1. Anti-lock braking system This is a safety-critical system so requires a lot
of up-front analysis before implementation. It certainly needs a plan-
driven approach to development with the requirements carefully
analysed. A waterfall model is therefore the most appropriate approach
to use, perhaps with formal transformations between the different
development stages.
2. Virtual reality system This is a system where the requirements will change
and there will be an extensive user interface components. Incremental
development with, perhaps, some UI prototyping is the most appropriate
model. An agile process may be used.
3. University accounting system This is a system whose requirements
are fairly well-known and which will be used in an environment in
conjunction with lots of other systems such as a research grant
management system. Therefore, a reuse-based approach is likely to be
appropriate for this.
4. Interactive travel planning system System with a complex user interface
but which must be stable and reliable. An incremental development
approach is the most appropriate as the system requirements will change
as real user experience with the system is gained.
2.3 Consider the integration and configuration process model shown in Figure
2.3. Explain why it is essential to repeat the requirements
engineering activity in the process.
Software Engineering 10 – Solutions Manual
8
8 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
You need to repeat the requirements engineering activity because it is essential
to adapt the system requirements according to the capabilities of
the system/components to be reused. These activities are:
1. An initial activity where you understand the function of the system and
set out broad requirements for what the system should do. These should
be expressed in sufficient detail that you can use them as a basis for
deciding of a system/component satisfies some of the requirements
and so can be reused.
2. Once systems/components have been selected, you need a more detailed
requirements engineering activity to check that the features of the reused
software meet the business needs and to identify changes and additions
that are required.
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.
There is a fundamental difference between the user and the system
requirements that mean they should be considered separately.
1. The user requirements are intended to describe the system’s functions
and features from a user perspective and it is essential that users
understand these requirements. They should be expressed in natural
language and may not be expressed in great detail, to allow some
implementation flexibility. The people involved in the process must be
able to understand the user’s environment and application domain.
2. The system requirements are much more detailed than the user
requirements and are intended to be a precise specification of the system
that may be part of a system contract. They may also be used in
situations where development is outsourced and the development team
need a complete specification of what should be developed. The system
requirements are developed after user requirements have been established.
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 software being
developed more resilient to change.
Systems must change because as they are installed in an environment
the environment adapts to them and this adaptation naturally generates
new/different
Software Engineering 10 – Solutions Manual
9
9 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
system requirements. Furthermore, the system's environment is dynamic
and constantly generates new requirements as a consequence of changes
to the business, business goals and business policies. Unless the system is
adapted to reflect these requirements, its facilities will become out-of-step with
the facilities needed to support the business and, hence, it will become less useful.
Examples of process activities that support change are:
1. Recording of requirements rationale so that the reason why a
requirement is included is known. This helps with future change.
2. Requirements traceability that shows dependencies between
requirements and between the requirements and the design/code of the
system.
3. Design modeling where the design model documents the structure of
the software.
4. Code refactoring that improves code quality and so makes it more
amenable to change.
2.9 Suggest two advantages and two disadvantages of the approach to
process maturity that is embodied in the SEI’s Capability Maturity
Framework.
Advantages of process improvement frameworks
1. The approach provides a means of measuring the state of a process and
a structured approach to introducing process improvements.
2. It is useful as a way of building on the experience of others in process
improvement.
Disadvantages of process improvement frameworks
1. Like any measurement system, there is a tendency to introduce
improvements to improve the measured rating rather than concentrate
on improvements that meet real business goals.
2. The maturity model approach is expensive and bureaucratic to operate. It
is not really suitable for organisations that use agile development.
Software Engineering 10 – Solutions Manual
10
10 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
3 Agile Software
Development
3.2 Explain how the principles underlying agile methods lead to the
accelerated development and deployment of software.
The principles underlying agile development are:
1. Individual and interactions over processes and tools. By taking
advantages of individual skills and ability and by ensuring that the
development team know what each other are doing, the overheads of
formal communication and process assurance are avoided. This means
that the team can focus on the development of working software.
2. Working software over comprehensive documentation. This contributes
to accelerated development because time is not spent developing, checking
and managing documentation. Rather, the programmer’s time is focused
on the development and testing of code.
3. Customer collaboration over contract negotiation. Rather than spending
time developing, analyzing and negotiating requirements to be included in
a system contract, agile developers argue that it is more effective to
get feedback from customer’s directly during the development about
what is required. This allows useful functionality to be developed and
delivered earlier than would be possible if contracts were required.
4. Responding to change over following a plan. Agile developers argue
(rightly) that being responsive to change is more effective than following
a plan-based process because change is inevitable whatever process is
used. There is significant overhead in changing plans to accommodate
change and the inflexibility of a plan means that work may be done
that is later discarded.
Software Engineering 10 – Solutions Manual
11
11 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
3.3 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.
Advantages of stories:
1. They represent real situations that commonly arise so the system
will support the most common user operations.
2. It is easy for users to understand and critique the stories.
3. They represent increments of functionality – implementing a story
delivers some value to the user.
Disadvantages of stories
1. They are liable to be incomplete and their informal nature makes
this incompleteness difficult to detect.
2. They focus on functional requirements rather than non-
functional requirements.
3. Representing cross-cutting system requirements such as performance
and reliability is impossible when stories are used.
4. The relationship between the system architecture and the user stories
is unclear so architectural design is difficult.
3.6 Compare and contrast the Scrum approach to project management with
conventional plan-based approaches as discussed in Chapter 23. Your
comparison should be based on the effectiveness of each approach for
planning the allocation of people to projects, estimating the cost of
projects, maintaining team cohesion and managing changes in project
team membership.
Planning allocation of people to
projects
Scrum
Scrum handles people allocation informally. Team members ‘bid’ for features
from the product backlog to implement if they think that their expertise is
appropriate. Alternatively, the tasks can be allocated by the Scrum master.
There is no formal mechanism in Scrum for planning for project members
with very specific expertise to be temporarily allocated to a team. This need
must be identified by the Scrum master and he or she has to discuss how the
expertise can be made available.
Plan-based
development
Software Engineering 10 – Solutions Manual
12
12 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
A project plan is used to identify the parts of the system to be delivered and
these are specified in the requirements document. The expertise required for
each part can then be identified and the allocation of people to projects planned
on that basis.
Estimating project
costs
Scrum
Project costs are estimated based on the required delivery date for the software
and people working in the Scrum team. The functionality of the system is
adjusted so that some working system will always be delivered for the original
cost estimation. Of course, this may not be adequate for the customer and they
have to become involved in rescheduling the delivery of the system.
Plan-based
development
Project costs are based on an analysis of the functionality specified in
the requirements document as well as the non-functional requirements of the
system. They may be adjusted to reflect team size and delivery schedule. It is
normal for costs to be underestimated and the final project to cost much more
than originally estimated. An average cost for team members is assumed.
Maintaining team
cohesion
Scrum
Team member meet daily either face to face or electronically. Extensive informal
discussions and communications are encouraged. Team members negotiate
work to be done from the project backlog. This all leads to a shared feeling of
product ownership and a very cohesive team.
Plan-based
development
Team cohesion is the responsibility of the project manager and he or she has to
take explicit actions to encourage this. The general approach relies on formal
meetings that are relatively infrequent and this does not lead to the
development of a cohesive team.
Managing changes in project team
membership
Scrum
This is a topic that is rarely discussed in Scrum but is a fundamental problem
because so much information is informal and reliant on people remembering
what has been agreed. When someone leaves, it can be very difficult to
bring a replacement team member up to speed, especially if very little
project documentation is available.
Software Engineering 10 – Solutions Manual
13
13 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
Plan-based
development
Software Engineering 10 – Solutions Manual
14
14 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
The project management plan is based around expertise rather than individuals
and project documents should be available. Therefore, if a team member leaves,
then a new team member with comparable expertise can read what has been
done and, after understanding this, should be able to serve as a replacement.
3.8 Why is it necessary to introduce some methods and documentation
from plan-based approaches when scaling agile methods to larger
projects that are developed by distributed development teams.
1. Project planning is often essential when developing software with larger
teams to (a) ensure that the right people are available when they are needed
to be involved in the development process and (b) ensure that the delivery
schedules of different parts of the system developed by different teams
are aligned. This means that if Part A depends on Part B, the schedule
should ensure that Part B is developed before Part A.
2. Requirements analysis and documentation is important to decide how
to distribute the work across teams and to ensure that each team has
some understanding of what other teams are doing.
3. Design documentation especially interface specifications are important
so that teams can develop independently without having access to software
that is under development.
4. Risk management may be required to ensure that all of the teams understand
the risks faced and can organize their work to minimize these risks.
Risk management may also be useful to cope with different delivery
schedules used by different teams.
3.10 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 team and lose sight
of the
needs of their user colleagues. Suggest three ways how you might avoid this
problem and discuss the advantages and disadvantages of each approach.
1. Involve multiple users in the development team. Advantages are you
get multiple perspectives on the problem, better coverage of user tasks
and hence requirements and less likelihood of having an atypical
user. Disadvantages are cost, difficulties of getting user engagement and
possible user conflicts.
Software Engineering 10 – Solutions Manual
15
15 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
2. Change the user who is involved with the team. Advantages are, again,
multiple perspectives. Disadvantages are each user takes time to
be productive and possible conflicting requirements from different users.
3. Validate user suggestions with other user representatives. Advantages
are independent check on suggestions; disadvantage is that this slows
down the development process as it takes time to do the checks.
Software Engineering 10 – Solutions Manual
16
16 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
4 Requirements
Engineering
4.2 Discover ambiguities or omissions in the following
statement of requirements for part of a ticket-issuing system:
An automated ticket machine sells rail tickets. Users select their
destination and input a credit card and a personal identification
number. The rail ticket is issued and their credit card account charged.
When the user presses the start button, a menu display of potential
destinations is activated, along with a message to the user to select a
destination and the type of ticket required. Once a destination has been
selected, the ticket price is displayed and customers are asked to input
their credit card. Its validity is checked and the user is then asked to
input their personal identifier (PIN). When the credit transaction has
been validated, the ticket is issued.
Ambiguities and omissions include:
1. Can a customer buy several tickets for the same destination together or
must they be bought one at a time?
2. Can customers cancel a request if a mistake has been made?
3. How should the system respond if an invalid card is input?
4. What happens if customers try to put their card in before selecting
a destination (as they would in ATM machines)?
5. Must the user press the start button again if they wish to buy another
ticket to a different destination?
6. Should the system only sell tickets between the station where the
machine is situated and direct connections or should it include all
possible destinations?
Software Engineering 10 – Solutions Manual
17
17 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
4.4 Write a set of non-functional requirements for the ticket-issuing
system, setting out its expected reliability and response time.
Possible non-functional requirements for the ticket issuing system
include:
1. Between 0600 and 2300 in any one day, the total system down time
should not exceed 5 minutes.
2. Between 0600 and 2300 in any one day, the recovery time after a
system failure should not exceed 2 minutes.
3. Between 2300 and 0600 in any one day, the total system down time
should not exceed 20 minutes.
All these are availability requirements – note that these vary according to the
time of day. Failures when most people are traveling are less acceptable than
failures when there are few customers.
4. After the customer presses a button on the machine, the display should
be updated within 0.5 seconds.
5. The ticket issuing time after credit card validation has been received
should not exceed 10 seconds.
6. When validating credit cards, the display should provide a status
message for customers indicating that activity is taking place.
This tells the customer that the potentially time consuming activity
of validation is still in progress and that the system has not simply failed.
7. The maximum acceptable failure rate for ticket issue requests is 1:
10000.
Note that this is really ROCOF. I have not specified the acceptable number
of incorrect tickets as this depends on whether or not the system includes
trace facilities that allow customer requests to be logged. If so, a relatively high
failure rate is acceptable as customers can complain and get refunds. If not,
only a very low failure rate is acceptable.
Obviously, these requirements are arbitrary and there are many
other possible answers. You simply have to examine their credibility.
Software Engineering 10 – Solutions Manual
18
18 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
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.
Keeping track of the relationships between functional and non-functional
requirements is difficult because non-functional requirements are sometimes
system level requirements rather than requirements which are specific to a
single function or group of functions.
One approach that can be used is to explicitly identify system-level
non- functional requirements that are associated with a functional requirement
and list them separately. All system requirements that are relevant for each
functional requirement should be listed. They can be related by including them
in a table as shown below.
Functional requirement
Related non-functional Non-functional
system requirements requirements
The system shall provide Safety requirement: No
release of steam shall be
permitted if
maintenance
work is being carried out
on any steam generation
plant.
Timing requirement: The
an operation which valve must open
allows operators to open completely within 2
the release valve to vent seconds of the operator
steam into the initiating the action.
atmosphere.
Notice that in this example, the system non-functional requirement would
normally take precedence over the timing requirement, which applied to
the specific operation.
Obviously, any sensible answer that provides a way of linking functional and
non- functional requirements is acceptable here.
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.
There are a variety of different types of ATM so, obviously, there is not a definitive
set of use cases that could be produced. However, I would expect to see use
cases covering the principal functions such as withdraw cash, display balance,
print statement, change PIN and deposit cash. The use case description should
describe the actors involved, the inputs and outputs, normal operation and
exceptions.
Withdraw
cash:
Software Engineering 10 – Solutions Manual
19
19 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
Actors: Customer, ATM, Accounting system
Inputs: Customer’s card, PIN, Bank Account details
Outputs: Customer’s card, Receipt, Bank account details
Normal operation: The customer inputs his/her card into the machine.
He/she s promoted for a PIN which is entered on the keypad. If correct,
he/she is presented with a menu of options. The Withdraw cash option
is selected. The customer is promoted with a request for the amount
of cash required and inputs the amount. If there are sufficient funds
in his/her account, the cash is dispensed, a receipt if printed and
the account balance is updated. Before the cash is dispensed, the
card is returned to the customer who is prompted by the machine to
take their card.
Exception: Invalid card. Card is retained by machine; Customer advised
to seek advice.
Incorrect PIN. Customer is request to rekey PIN. If incorrect after
3 attempts, card is retained by machine and customer advised to
seek advice.
Insufficient balance Transaction terminated. Card returned to customer.
Display balance:
Actors: Customer, ATM, Accounting system
Inputs: Customer’s card, PIN, Bank Account details
Outputs: Customer’s card
Normal operation: The customer authenticates using card and PIN as
in Withdraw cash and selects the Display Balance option. The
current balance of their account is displayed on the screen. The card
is returned to the customer.
Exception: Invalid card. As in Withdraw cash
Incorrect PIN. As in Withdraw cash
Print statement:
Actors: Customer, ATM, Accounting system
Inputs: Customer’s card, PIN, Bank Account details
Outputs: Customer’s card, Printed statement
Normal operation: The customer authenticates using card and PIN as
in Withdraw cash and selects the Print statement option. The last
five transactions on their account is printed. The card is returned
to the customer.
Exception: Invalid card. As in Withdraw cash
Incorrect PIN. As in Withdraw cash
Change PIN:
Actors: Customer, ATM
Inputs: Customer’s card,
PIN Outputs: Customer’s
card
Software Engineering 10 – Solutions Manual
20
20 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
Normal operation: The customer authenticates as in Withdraw cash
and selects the Change PIN option. He/she is prompted twice to
input the new PIN. The PINS input should be the same. The
customer’s PIN is encrypted and stored on the card. Card returned to
customer.
Exception: Invalid card. As in Withdraw
cash. Incorrect PIN. As in Withdraw cash.
PINS do not match. The customer is invited to repeat the process to reset
his/her PIN.
Deposit cash:
Actors: Customer, ATM, Accounting system
Inputs: Customer’s card, PIN, Bank Account details, Cash to
be deposited
Outputs: Customer’s card, Receipt
Normal operation: The customer authenticates as in Withdraw cash
and selects the Deposit option. The customer is promoted with a
request for the amount of cash to be deposited and inputs the amount.
He or she is then issued with a deposit envelope in which they should
put the cash then return it to the machine. The customer’s account
balance is updated with the amount deposited but this is marked as
uncleared funds and is not cleared until checked. A receipt is issued
and the customer’s card is returned.
Exception: Invalid card. As in Withdraw
cash. Incorrect PIN. As in Withdraw cash.
No cash deposited within 1 minute of envelope being issued. Transaction
terminated. Card returned to customer.
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 these
modifications that will ensure that the requirements document and the
system
implementation do not become inconsistent.
The following diagram shows a change process that may be used to maintain
consistency between the requirements document and the system. The process
should assign a priority to changes so that emergency changes are made but
these changes should then be given priority when it comes to making
modifications to the system requirements. The changed code should be an input
to the final change process but it may be the case that a better way of making the
change can be found when more time is available for analysis.
Software Engineering 10 – Solutions Manual
21
21 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
Analyze
change
request
«DB»
[emergency
change]
[non-
emergency
change]
Change
program code
Assess
requirements
impact
Record code
changes
Change
requirements
Resubmit CR
for analysis
Design/
change code
«DB»
Change Req DB
Update CR
DB
Change Req DB
Software Engineering 10 – Solutions Manual
22
22 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
5 System Modeling
5.2 How might you use a model of a system that already exists? Explain why
it is not always necessary for such a system model to be complete and
correct. Would the same be true if you were developing a model of a
new system?
You might create and use a model of a system that already exists for the following
reasons:
1. To understand and document the architecture and operation of the
existing system.
2. To act as the focus of discussion about possible changes to that system.
3. To inform the re-implementation of the system.
You do not need a complete model unless the intention is to completely document
the operation of the existing system. The aim of the model in such cases is usually
to help you work on parts of the system so only these need to be modelled.
Furthermore, if the model is used as a discussion focus, you are unlikely to
ne interested in details and so can ignore parts of the system in the model.
This is true, in general, for models of new systems unless a model-
based approach to development is taking place in which case a complete
model is required. The other circumstances where you may need a complete
model is when there is a contractual requirement for such a model to be
produced as part of the system documentation.
5.5 Develop a sequence diagram showing the interactions involved when a
student registers for a course in a university. Courses may have limited
enrolment, so the registration process must include checks that places
are available. Assume that the student accesses an electronic course
catalog to find out about available courses.
A relatively simple diagram is all that is needed here. It is best not to be too
fussy about things like UML arrow styles as hardly anyone can remember the
differences between them.
Software Engineering 10 – Solutions Manual
23
23 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
:student
:CourseCatalog :Course
lookup ( )
Display ( )
register ( )
reportWeather ()
check-availability ( )
Confirm ( )
5.6 Look carefully at how messages and mailboxes are represented in the
email system that you use. Model the object classes that might be used
in the system implementation to represent a mailbox and an e-mail
message.
Mail message
sender:
receiver list:
cc list:
bcc list:
date:
subject:
return path:
routing info:
spam info:
mailer:
message info:
message body:
attachments:
signature:
read ()
reply ()
reply all ()
print ()
forward ()
send ()
Mailbox
name:
pathname:
creation date:
change date:
messages:
unread messages:
flagged messages:
deleted messages:
move message ( )
copy message ( )
delete message ( )
fetch mail ( )
create ( )
rename ( )
delete ( )
Software Engineering 10 – Solutions Manual
24
24 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
5.7 Based on your experience with a bank ATM, draw an activity diagram
that models the data processing involved when a customer withdraws
cash from the machine.
Notice that I have not developed the activities representing other services or
failed authentication.
Other services
[other service]
Get
custome
r info
Authenticat
e
Presen
t
service
menu
[OK]
[withdrawal
] Get
amount
Check
balanc
e
[OK]
Return
card
Dispens
e cash
Update
balanc
e
Print
receip
t
«system»
Accountin
g system
[insufficient
]
«system»
Accountin
g system
Authenticatio
n failure
Return card
5.10 You are a software engineering manager and your team proposes that
model-driven engineering should be used to develop a new system.
What factors should you take into account when deciding whether or
not to introduce this new approach to software development?
The factors that you have to consider when making this decision include:
1. The expertise of the team in using UML and MDA. (Is expertise already
available or will extensive training be required.)
2. The costs and functionality of the tools available to support MDA.
(Are tools available in house or will they have to be purchased. Are they
good enough for the type of software being developed)
Software Engineering 10 – Solutions Manual
25
25 Software Engineering 10 – Solutions
Manual
©Ian Sommerville
2014
©Ian Sommerville
2014
3. The likely lifetime of the software that you are developing. (MDA is
most suitable for long-lifetime systems)
4. Requirements for high performance or throughput (MDA relies on
code generation that creates code which may be less efficient than hand
written code)
5. The long term benefits of using MDA (are there real cost savings from
this approach)
6. The enthusiasm of the software developers. (are all team members
committed to this new approach)
Exploring the Variety of Random
Documents with Different Content
bearing with them a stretcher for the body.
The baron leaped to his feet and swung his hat to direct them; but
did not call.
“Petter loogk oudt!” he cautioned, as they came near.
“Who was that shootin’?” Nomad demanded. “We heard a rifle off
hyar. Been shootin’ at somebody?”
“Somepoty has peen shoodting at us!” the baron informed him.
“Great gallinipers! Who was et?”
“I vish dot you vouldt toldt me. Der pullet idt seems vos vor Cody;
but it ditn’t git him.”
“Couldn’t er been ther feller thet killed Dane?” said Nomad.
“Ve tond’t know who idt vos.”
The scout arose and greeted the officers and citizens.
“We have found other tracks here,” he said, pointing off to the
right, where the tracks were to be seen.
Nomad and some of the men ran over there.
“Tracks of a woman!” cried the trapper.
“So we thought.”
“Whar’d they come frum?”
“Near the point where the body was buried,” the scout told him.
“And goin’ toward town?”
“Yes.”
“Then thet woman must er been with ther man what downed
Dane.”
“It would seem so. Gentlemen, we can show you where the body
lies now,” said the scout, “if you will follow us.”
“Petter loogk oudt vor der man mit der gun!” the baron warned.
But apparently the man with the gun had vanished; for when they
set out for the spot where the body had been left, they did not see
or hear him.
But still another surprise awaited them, as stunning almost as the
first. On reaching the spot where it had been left, the body itself had
disappeared.
“Whar’d yer put et?” Nomad asked, puzzled.
The baron and the scout were staring dumfounded at the place
where the body had last been seen.
“Idt iss gone!” the baron howled. “Yumpin’ yack rappits, idt iss
gone!”
“It’s true, gentlemen,” the scout supplemented; “the body that we
left right here has disappeared.”
The thing was astounding.
“More excitement baron!” Nomad yelped.
“Don’t I knowed idt? I am grazy mit excidemendts.”
“Yer air shore gittin’ good measure, Schnitz!” the trapper
whooped.
He began to look for the trail of the man who must have borne
the body away.
Tracks were found almost immediately—those of a man, whose
shoes cut rather deeply into the ground, and made some impression
even where the soil was hard; showing that he had borne a burden.
There could be not a doubt that the burden was the body of Jackson
Dane.
“Vale, I see some daylighdts,” the baron declared; “der mans vot
haf done dhis iss der same vun vot haf shoodted at Cody; I am
petting on idt.”
“I guess ye’re right, Schnitz,” the trapper agreed. “Now, we’ll see
ef we can foller him.”
Buffalo Bill put himself at the head of the excited little party, and
the chase began.
CHAPTER VIII.
S T R A N G E D I SA P P E A R A N C E S.
As if he knew he would be followed, the man who had borne off
the body had struck rocky ground soon, so completely breaking his
trail that to pursue it promised to be a work of great difficulty.
Buffalo Bill stopped.
“I don’t think I care to go farther just now,” he said. “Though,
later, I want to come here and cipher this thing out. I’m going back
to Blossom Range.”
“Waugh!” the trapper objected. “What fer? This hyar is ther place
fer work ter be done right now.”
“I’ll tell you what I’ll do,” said Buffalo Bill, thoughtfully; “I’ll leave
you and the baron to claw the tangles out of this thing; and I’ll try to
join you before long. As you go along break a bush now and then,
so that when I return I’ll have no trouble in finding you.”
“But what ye goin’ back fer?” Nomad asked, impatiently.
It seemed to him that to pick up the lost trail was the most
important thing at the moment; at any rate, he could think of
nothing more promising.
Because of the listening ears turned toward him, Buffalo Bill did
not care to acquaint the trapper with the thoughts in his mind.
So he made a lame excuse, about having forgotten something;
and turned about, leaving the trapper and the baron to go on alone;
as all of the town men turned back when Cody did.
“You can dig out that trail, Nomad, if any one on earth can,” he
told the trapper. “So just hang to it, you and the baron—unless he
wants to go back with me! When I return, I shall come with the
expectation of finding that you have dug out something worth
while.”
But the baron had no wish to return to Blossom Range at that
time; it was his idea that the blind trail which Nomad was to try to
spell out offered worlds of excitement, of the most surprising kind.
When Buffalo Bill reached Blossom Range, he took the officer and
the coroner aside, after dismissing the other men.
“Perhaps you know all about those men who have been with you,
and that they’re to be trusted,” he explained; “but I don’t know any
of them, and the faces of one or two didn’t strike me favorably.
What I want to do now is to have you go with me to the Casino and
arrest there a woman called Vera Bright; she is with the show
company that has been giving performances in the Casino the past
week. After that, I shall ask you to go with me to Juniper Joe’s and
place Juniper Joe and his wife under arrest.”
The officer and coroner stared at him.
“Not Juniper Joe!” gasped the officer.
“None other. If I am making a mistake, I will stand responsible for
it. The man who was slain out there was the same that Juniper Joe
tried to kill the night of his wedding; and this woman, Vera Bright,
was with the murdered man shortly before daylight this morning, as
I know through the testimony of the German, who was watching the
Casino at that time. He heard them quarreling. In addition, Mrs.
Juniper Joe made that woman a visit yesterday.”
“If you back the thing, I’ll make the arrests,” said the officer, but
reluctantly.
“I will back you!” the scout told him. “Or, if you don’t want to do
it, I will make the arrests myself; yet I should prefer to have you to
do that part of the work.”
He did not think it wise, being still rather hazy about some points
himself, to tell these men all his conclusions; he preferred to let
events speak for themselves.
When they got down to the Casino and called for Miss Vera Bright,
they were informed that she was not there; that, in fact, she had left
Blossom Range that morning, on the stage for Calumet Springs.
“Let me see the manager of the show,” Buffalo Bill requested.
The manager came down—a pale, blond, young fellow—and
began to answer Buffalo Bill’s questions.
“I didn’t know she was going,” he declared; “and none of the
company did. The first we knew, she had her things packed, and
asked me for her salary. I wouldn’t pay it, of course, under the
circumstances, as we expect to play here another week, and she
was in the cast. She went away in a huff.”
“How long was she with your company?” was the scout’s next
question.
The manager admitted that he had “picked her up” at Calumet
Springs, when the company was there on its way to Blossom Range.
“She wanted to join us, and I let her do so, as I thought we could
use her,” he explained.
“So you really know nothing about her?”
“Not a thing!”
When Buffalo Bill left the Casino, he sent a telegram to the
marshal of Calumet Wells, requesting him to hold the woman until
certain charges against her could be investigated.
“Now for Juniper Joe’s!” he said to the officer.
When they reached the cabin of Juniper Joe, they had somewhat
the same experience; Juniper Joe was not there, neither was his
wife. The cabin was locked.
The door which the scout had so recently splintered had been
somewhat repaired, and was braced on the inside, as well as locked.
“This is queer!” was the officer’s comment.
“Just a little bit,” the scout agreed.
“Shall I break the door in?”
“That is my advice.”
When it was battered in and they entered, they found no one
inside.
A warrant had been secured, authorizing the house and the mine
to be searched. Therefore, the officer forced the door which led to
the mine. The mine looked dark as a cave; so lights were secured,
before they tried to enter it.
They examined the mine back of the cabin, the scout flashing the
light curiously on the walls.
He made no remarks about his discoveries, and his examination
was not a close one; but he commented freely enough on the fact
that the couple must have departed by the front door.
“Yet it seemed to have been barred on the inside!” was the
officer’s objection.
This was overcome, when a closer examination of the door was
made. The bar of wood had been so arranged that it would drop
down on the inside and so hold the door when it was closed from
the outside. Hence the theory that it had been barred from the
inside fell to the ground.
“This may be nothing but a mare’s nest, though,” the officer
suggested; “Juniper Joe and his wife may be both downtown right
now.”
“His wife was supposed to have been too badly hurt to leave the
cabin,” the scout reminded.
“But she may have gone to some doctor’s office!”
Though this was true enough, the scout did not believe it.
After they had made sure that the mine and cabin were
unoccupied, Buffalo Bill asked the men to return to the town and
make a search for Juniper Joe and his wife, and to arrest them if
they were found.
As for himself, as soon as the men set out, he turned about and
started off, with the intention of rejoining Nomad and the baron.
“A water haul!” he said to himself, as he walked on swiftly. “But I
think that at last we are making some progress.”
It was the scout’s opinion that the couple and Vera Bright had
hastily left the town.
“Why?” was the question.
It seemed to him there could be but one answer.
CHAPTER IX.
T H E C H A S E .
Old Nomad was exclaiming softly in his characteristic way,
standing on the edge of a precipitous cliff wall. The baron, by his
side, had hold of a bush, and was peering over into the depths
below.
“I’m er Piegan,” said Nomad, “ef suthin’ ain’t been throwed down
thar!”
“Aber I gand’t seen noddings, I am pelieving idt iss der pody,” the
baron averred.
Sounds of footsteps attracted their attention.
Then they saw Buffalo Bill hurrying toward them.
He had come rapidly from the town, having followed them without
trouble, because of the broken bushes they had left in their wake to
guide him.
“Waugh!” Nomad called to him, and swung his hand. “Come over
hyar!”
“I’m coming.”
“Ve haf followed der drail to dot boint ofer dhere,” the baron
explained, as the scout came up. “Idt vendt straight on; but Nomat
he seen vot he took to pe dracks goming dhis vay; unt idt loogks as
uff somed’ings had peen pitched town here.”
“We’re believin’ thet ther critter we follered sidetracked carefully to
this point,” added Nomad, “an’ hyar he got rid o’ ther body he war
kerryin’. Et looks et.”
The scout seized a bush, and began to go down the cliff side.
“We can soon discover if it is so,” he said.
“Vot dit you findt in der town?” the baron shot at him.
“Vera Bright, Juniper Joe, and his wife are all missing.”
“Waugh!” Nomad whooped. “We’ve been figgerin’ thet we’ve been
follerin’ ther trail o’ Juniper Joe and p’raps his wife. Anyhow, thar’s
big tracks and leetle ones. But we couldn’t make et come out right
thet Juniper Joe an’ his wife had been hyar, when we reckoned they
war back in ther own cabin.”
The scout soon reached the bottom of the cavity, which was bush-
grown along its sides. He called up his discovery.
“Your guess was right,” he said. “Here is the body.”
It had been pitched far enough out, so that in its fall it did not
break bushes; and it lay in a crumpled heap.
The scout only tarried long enough to be sure that it was the body
of the man known to him as Jackson Dane; then he came climbing
up out of the black depths.
“Yes,” he added, “whoever had the body threw it over here, to get
rid of it; and took it from that other place so that it might not be
found by the searchers.”
“Why sh’d he wanted ter do thet?” Nomad queried.
“I can only guess, of course; though he ought to have known that
it had already been seen. In law, you know, the body must be
produced, or identified, in order to convict any one of murder;
otherwise, there could be no showing absolutely that the man
supposed to be murdered was dead. He might be living, somewhere
in secret. But it was a foolish move, in this case, to try to hide it
here, it seems to me; as the body had already been seen.”
“Aber the man vot dook it mighdtn’t haf knowed dot,” suggested
the German.
“Very true.”
“But about thet woman and Juniper Joe cuttin’ out?” said Nomad.
“You air shore of thet?”
“I went with the officer to the Casino, to arrest the woman, but
she had left by the morning stage for Calumet Springs. I sent a
telegram to the marshal there; and if he does his duty, it will stop
her at that point. When we went to Juniper’s cabin, we found it
empty and dark. On forcing the door, we found no one, even though
we searched the cabin and the mine. Of course, if you have been
following their trail, it shows plainly enough where they are now.”
“What’s yer idee?” the trapper questioned.
“Simply that they came out and killed Dane. Perhaps they started
back to the town; then saw us, and that changed their plans. Some
one shot at me, you know; and probably that was Juniper Joe.”
“Then you’ve reached ther conclusion thet he is plum crooked?”
“I have.”
“And his wife, too?”
“Doesn’t it look it?”
“Waugh! Et does.”
“We’ll pick up their trail over there, and see if we can’t crowd ’em.
Did it seem fresh?”
“Not so very old, anyway,” Nomad told him.
“You didn’t see any indication that buckskin bags had been
cached, or pitched into some hole?”
“No; but they could er been pitched inter some hole easy ’nuff,
without our knowin’ it. Thar’s a lot o’ crevices along the trail; an’
without leavin’ his tracks a feller could easy ernough heave buckskin
bags inter any of ’em.”
“We haven’t time to look that up, now. Show me the trail, and
we’ll see what we can do.”
When the trail was regained, the scout took the lead, and pushed
the work hard.
Though the country was rocky and covered with much scrub, they
went along rapidly. There were few trailers who could equal Buffalo
Bill. It was hard work, so that often he preferred to let his Indians do
it; but he was always equal to the task, as in this instance.
There were tracks of two people—one the track of a man surely;
the other smaller, which might have been made by a woman;
though, if so, she had worn a coarse and heavy shoe, just fitted for
that kind of work.
At length the trails split; the larger tracks going off to the right,
the others to the left.
“I’ll follow the man,” said the scout; “you take the other. I fancy
the man is Juniper Joe; the other may be his wife.”
It had become evident that the couple were getting tired; they
had traveled rapidly, as if at first frightened, and so had begun to
use up their strength. It was perhaps for that reason they separated;
as they might have thought the pursuers, if they knew of them,
would follow the larger tracks.
By this time Buffalo Bill and his pards were a good five miles north
of the mining town of Blossom Range, and in the vicinity of a village
of the Ute tribe of Indians.
The Utes were supposed to be peaceably inclined. At any rate,
they had shown no hostile intentions since Iron Bow had led them
on the warpath, five years before, and had been badly worsted. But
they were still blanket Indians, much given to powwowing and
strange dances, to feathered headdresses and variegated paints.
For some time Buffalo Bill had been half convinced that the tracks
he and his pards had followed would lead, by and by, to this Ute
village.
Yet, when the tracks separated, this did not seem so likely.
Buffalo Bill, pressing ahead on the trail he had chosen, soon lost
sight of Nomad and the baron.
He had gone nearly a mile, through a very rough country, when he
became aware of the fact that the Indians were near him; he saw a
few, and heard others. They had apparently been deer hunting.
Their tracks, here and there, covered over those he was pursuing; so
that twice he had to stop and spend valuable time in puzzling out
the trail.
“If this fellow is a friend of the Utes, it’s likely he will join the deer
hunters,” thought the scout.
A little later a shot rang out.
Thereupon, a man sprang out of bushes a hundred yards away,
leaping up as if he thought the bullet had been sent at him, and ran
with big jumps across the rocks, through the rough ground.
At a glance, Buffalo Bill saw that the man was Juniper Joe.
“Our guess is right, so far,” he muttered.
The man disappeared quickly; but Buffalo Bill was in hot chase,
determined not to lose sight of him.
He was wondering, at the same time, if the Indians had shot at
this man. Apparently, the fellow had thought so; for it seemed that
he had leaped up and ran from the Indians, rather than from the
scout, whom, apparently, he had not yet seen.
Off at one side Indian yells broke out; but they were not war-trail
yells; they were hunting yells, announcing victory.
“The Utes fired at game, and brought it down,” was the scout’s
conclusion. “I am sure now they did not shoot at Juniper Joe.”
Then he came again in sight of the man, who had gained a
slippery slope, which he was trying to climb, though, at some points,
to do it he would have needed the ability of a fly.
Buffalo Bill could see that Juniper Joe was a badly frightened
individual. It seemed to the scout he was frightened by the Indian
yelling, following the shot; that, in short, Juniper Joe was sure the
Indians had fired at him and were now pursuing him.
Climbing over slippery rocks, Juniper Joe gained the treacherous
edge of a cañon, along which he ran at reckless speed.
The scout called to him.
The effect was bad. Juniper Joe tried to stop and look about; as
he did so, stumbling, so that he was thrown heavily. The next instant
he was bounding off the edge of the precipice, and went shooting
down.
The scout stopped with a gasp of surprise.
He saw Juniper Joe crash into the top of a pine, out of which he
tumbled, to land in a cleft of rock in the face of the cañon.
Apparently, in his wild haste and fright, Juniper Joe had been
seriously, perhaps fatally, wounded; he lay prostrate where he had
fallen, without motion at first. But a moment later Buffalo Bill saw
him put up his hand.
“Not dead yet, at any rate!” said the scout, looking about, with the
desire of hurrying to the man’s assistance.
Fortunately, in leaving Blossom Range the scout had not only fully
armed himself, but had brought along his lariat, which he had often
found more useful than any weapon.
Juniper Joe’s red shirt showed plainly in the niche, looking like a
gout of blood, thus making it very suggestive. Buffalo Bill had been
somewhat surprised to see Juniper Joe in full miner’s outfit, very
different from the clothing he usually wore in the town.
For some time nothing had been heard from the Indians; but now
the scout saw some of them on the top of the cañon wall, looking
down at the injured man. Others appeared in sight at various points.
Buffalo Bill paid no attention to the Utes, though they did not
seem friendly. They showed no disposition to help the injured man.
In truth, even to consider such a thing seriously was an evidence of
much courage; for Juniper Joe lay in a spot not to be approached at
all without much danger.
The scout was not thinking of the possible danger, as he hastened
along, looking for a point at which he could launch his lariat; his
intention being, if he could find such a place, to hurl the rope at it,
then swing out and over the cañon.
The cañon was of such depth that even to look down into it made
one’s head swim.
In spite of this, when he had found a favorable finger of rock
outthrust the scout swung the noose of his rope, and with a
wonderful cast fastened it round the tip of the rocky projection on
the other side.
“Here goes!” he said.
Clutching the rope, he ran forward, then flung himself boldly out
over the black gulf. The momentum carried him across, so that his
feet struck the opposite wall. As soon as he could steady the
oscillation of the rope, he began to climb it, hand over hand.
Though they had shown some evidences of an unfriendly attitude,
Buffalo Bill’s daring in going to the aid of Juniper Joe stilled the
Indians into peace.
Slowly the scout climbed up the rope, over the dizzy chasm,
mounting steadily until he gained the spot where Juniper Joe lay.
Then he saw that Juniper Joe was not only not dead, but
treacherously inclined; the fellow’s eyes were blazing, and as Buffalo
Bill swung into the notch at his side, Juniper Joe lifted himself and
drove at the scout with a knife.
Though the surprise was stupendous, the scout was equal to the
occasion; he dropped down on the treacherous scoundrel, and
gripped him.
A struggle followed; but Juniper Joe had not recovered from the
jarring effects of his fall, and the scout was quickly the victor.
Juniper Joe dropped back, panting and glaring.
“Curse you!” he fumed.
The scout had caught the fellow’s knife away, and now snatched
away his revolvers.
“A pretty greeting for a man who risked his life to come up here!”
he said bitterly.
“That’s all right!” growled Juniper Joe. “But what did ye come up
for? Me, I reckon! You didn’t come jest to help me, I know.”
Then he realized that he had said too much.
“I’m kind o’ flighty,” he apologized; “so don’t think o’ what I’ve
done. I didn’t really know it was you, Cody; ’pon honor, I didn’t. That
jolt I got sort o’ put me out o’ my head. Hope you’ll overlook it.”
He rolled his eyes round, as if looking for the Indians.
“Those Utes won’t trouble you!”
“Mebby they won’t,” Juniper Joe grumbled; “but I ain’t wantin’ to
chance it. Ye see, I onct had trouble with old Iron Bow.”
“You thought they shot at you and chased you?”
“I did.”
“Rest easy, then. They shot at a deer, or some game animal.”
“How do you know it?”
“I could tell by the way they yelled.”
“You’re thunderin’ smart, you think!”
Unnoting this insult, the scout tried to make an examination, to
discover if Juniper Joe was much hurt.
“It’s jest my leg and right hip,” said the rascal; “feels like my leg is
broke.”
“You couldn’t move it, if that was so.”
The fellow had been bruised by his heavy fall, and the breath had
been jarred out of him, yet he was not hurt, otherwise.
“Oh, I think you’re all right!” the scout told him.
“What you goin’ to do?”
“Try to get you down from here.”
“I’m surprised to see you hyar,” said Juniper Joe, more mildly. “I
don’t reckon you come out to see if Iron Bow is thinkin’ of war
trailin’?”
“We’ll talk about that when we get you down from here,” the scout
evaded.
Just then a whoop sounded; and, looking up, Buffalo Bill saw that
the baron and Nomad had come in sight.
He stood up and waved his hand to them, that they might locate
him; but at the same time he was careful not to give Juniper Joe a
chance to push him out of the notch into the cañon. He was
convinced that Juniper Joe might want to do that very thing.
“Who’s them?” asked Juniper Joe.
“My friends—the baron and old Nomad.”
Juniper Joe growled something in his throat.
“What was that?” the scout asked.
“Oh, nothin’! Lower me down, if you kin.”
“It’s going to be a hard job; you’re a heavy man.”
“Waal, then let me stay hyar!” the fellow growled.
The scout put the noose of the rope round Juniper Joe’s body,
under the arms.
“I’ll try it,” he said, “if you’ve got the grit!”
Juniper Joe looked over the edge, and shivered.
“If anything should happen, I reckon I’d fetch up dead on them
rocks down there.”
“I can get a pretty good grip, by locking a leg round this point of
rock, and I think I can hold you; but the rope is strong enough to
hold you, even if I should slip.”
“It’d cut me in two, if you should let go.”
“I suppose you’re willing for me to try it?”
The fellow looked over again.
“Go ahead!” he said, setting his jaws together. “I’ve got to git
down out of this in some way.”
Helping himself, Juniper Joe slid over the edge of the notch, aided
by the scout, the latter supporting him as he released his grip on the
rock and dangled in midair.
It was a fine exhibition of muscular strength, when Buffalo Bill
lowered the heavy body of Juniper Joe slowly down from the notch,
letting it slide against the cañon wall.
There was a shelf below; and when Juniper Joe had gained that
the scout directed him to cast off the noose.
“I’m coming down,” he announced. “But,” he warned, “no tricks!
My pards are over there, you see; and they wouldn’t stand for
treachery on your part.”
“Oh, I ain’t intendin’ any,” Juniper Joe growled back.
The scout swung out and lowered himself to the shelf.
The rope was left hanging, of course, with the noose hooked over
the finger of rock. But the scout was a rope wizard. By some clever
jerks, which made wavy ripples run up the rope, he flipped it off the
rocky point, and it dropped down.
He found another projection, to which he fastened the noose; and
the performance was gone through again, this time bringing the
scout and his prisoner to the bottom of the cañon.
When they got down there they found the baron and Nomad.
CHAPTER X.
S TA RT L I N G R E V E LAT I O N S.
If the Utes remained in the vicinity, they kept out of sight and
were not seen again.
Old Nomad and the baron had heard the shot of the Indians; but,
thinking it had come from the rifle of Buffalo Bill, they had
abandoned the trail they were following, and came over to see if the
scout was in trouble.
“We allowed you was,” explained old Nomad, “er you wouldn’t
opened up in thet way. Glad ter know it was a false alarm.”
Juniper Joe, standing up, with the noose of the lariat removed,
was walking about, apparently testing his strength; suddenly he
started off at a clipping gait, showing how little he had been hurt by
his fall.
The baron and Nomad yelled when they saw him start.
Buffalo Bill, instead of yelling, plucked out a revolver, swung it
round his head, and hurled it at the fleeing man.
It struck him in the back of the neck and knocked him sprawling.
Though he fell heavily, and was somewhat stunned, Juniper Joe
still had full use of his tongue, as his raving showed when they ran
up to him. He demanded the reason for such treatment.
“Well, we’re going to hold you, you know!” Buffalo Bill told him.
Juniper Joe tried to pretend surprise.
“What fer?” he howled.
“For the murder of Jackson Dane—if that was his name.”
Juniper Joe declared that he did not know what they were talking
about.
“You tried to kill him once, at the time of your wedding, when you
claimed he was Tim Benson, the road agent.”
“Waal, that feller was Tim Benson; but I ain’t seen him since.”
“As we think you know all about it, and for other reasons, we’re
now going to take you back to Blossom Range,” Buffalo Bill told him.
Juniper Joe protested against this loudly.
“Perhaps you will tell us who, then, was with you?”
Juniper Joe denied that any one had been with him.
“Waugh! We won’t fool wi’ no sech liar,” Nomad whooped. “You’ve
showed thet ye kin walk—you done some runnin’ a while ago; so
we’re goin’ to tie ye and march ye ahead of us, wi’ the understandin’
ef yer don’t go peaceable you’ll go some other way.”
When he saw that neither lying nor anything else would do him
any good, Juniper Joe submitted, but with bad grace; after which he
became sullen, refusing to answer questions.
On the return to the town, as they were able to pick an easier trail
than they had followed in getting there, the scout’s party made
better progress. They did not stop to follow the trail of the supposed
woman; but Nomad was detached to see what he could do with it,
under instructions not to waste too much time, but to report in the
town by nightfall. The baron’s head still troubling him, he went along
with Buffalo Bill.
When Buffalo Bill entered Blossom Range with his prisoner, the
afternoon stage was coming in from Calumet Springs. So he took his
prisoner right down to the stage stables, though Juniper Joe
protested against this outrage.
One of the passengers by the stage was the marshal of Calumet
Springs, who had with him a woman, Miss Vera Bright, whom he had
brought back to Blossom Range.
She stared at Buffalo Bill’s prisoner.
“I think it will be well if we take them into a room here together,
and see if they won’t do some talking,” was the scout’s statement to
the Calumet Springs marshal.
“If you can get anything out of her, you’re ahead of me,” the
marshal admitted; “she fit like a wildcat, when I told her she would
have to come back here, and only stopped it when I threatened I’d
put irons on her. She weakened at that, and come along; but she’s a
plum furious beauty, I tell you, git her started.”
The blonde woman and Juniper Joe were taken into a back room
of the stage office, where they were brought face to face. In the
room at the time was the marshal of Calumet Springs, with Nomad
and the baron, and, of course, the scout, together with the local
manager of the stage line.
Buffalo Bill, a shrewd reader of human nature, opened the ball by
telling the woman that Juniper Joe was under arrest for the murder
of the man called Jackson Dane, but whom Joe had said was Tim
Benson.
Her face paled at that, and her eyes flashed, and she turned on
the prisoner like a tigress.
“Is that so?” she cried.
“It’s a lie!” Juniper Joe declared to her.
She turned to Buffalo Bill.
“Is it true,” she said, “that he has killed him?”
“Dane has been killed, and we believe this man did it; we have
evidence which it seems to us proves it.”
“I’m sure he did—if he is dead.”
She bent her burning eyes on Juniper Joe; and he seemed to
wither under them.
“Where is Tim?” she demanded.
Welcome to our website – the perfect destination for book lovers and
knowledge seekers. We believe that every book holds a new world,
offering opportunities for learning, discovery, and personal growth.
That’s why we are dedicated to bringing you a diverse collection of
books, ranging from classic literature and specialized publications to
self-development guides and children's books.
More than just a book-buying platform, we strive to be a bridge
connecting you with timeless cultural and intellectual values. With an
elegant, user-friendly interface and a smart search system, you can
quickly find the books that best suit your interests. Additionally,
our special promotions and home delivery services help you save time
and fully enjoy the joy of reading.
Join us on a journey of knowledge exploration, passion nurturing, and
personal growth every day!
testbankbell.com

More Related Content

PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Software Engineering 10th Edition Sommerville Solutions Manual all chapter in...
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Download Software Engineering 10th Edition Sommerville Solutions Manual ebook...
PDF
Download full ebook of a instant download pdf
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
Software Engineering 10th Edition Sommerville Solutions Manual
Software Engineering 10th Edition Sommerville Solutions Manual
Software Engineering 10th Edition Sommerville Solutions Manual all chapter in...
Software Engineering 10th Edition Sommerville Solutions Manual
Software Engineering 10th Edition Sommerville Solutions Manual
Download Software Engineering 10th Edition Sommerville Solutions Manual ebook...
Download full ebook of a instant download pdf
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville

Similar to Software Engineering 10th Edition Sommerville Solutions Manual (20)

PDF
Get Software Engineering 10th Edition Sommerville Solutions Manual free all c...
PDF
Download full ebook of instant download pdf
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville dow...
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Software Engineering 10th Edition Sommerville Solutions Manual all chapter in...
PDF
Download the entire Software Engineering 10th Edition Sommerville Solutions M...
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Software Engineering 10th Edition Sommerville Solutions Manual 2024 scribd do...
PDF
Solution Manual for Software Engineering 10th Edition Sommerville 0133943038 ...
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville 202...
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
PDF
[PDF Download] Software Engineering 10th Edition Sommerville Solutions Manual...
PDF
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
PPTX
Get Software Engineering 10th Edition Sommerville Solutions Manual free all c...
Download full ebook of instant download pdf
Software Engineering 10th Edition Sommerville Solutions Manual
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville dow...
Software Engineering 10th Edition Sommerville Solutions Manual
Software Engineering 10th Edition Sommerville Solutions Manual all chapter in...
Download the entire Software Engineering 10th Edition Sommerville Solutions M...
Software Engineering 10th Edition Sommerville Solutions Manual
Software Engineering 10th Edition Sommerville Solutions Manual 2024 scribd do...
Solution Manual for Software Engineering 10th Edition Sommerville 0133943038 ...
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville 202...
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
Software Engineering 10th Edition Sommerville Solutions Manual
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
[PDF Download] Software Engineering 10th Edition Sommerville Solutions Manual...
Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville
Ad

Recently uploaded (20)

PPTX
Cell Structure & Organelles in detailed.
PDF
Pre independence Education in Inndia.pdf
PDF
Insiders guide to clinical Medicine.pdf
PPTX
Cell Types and Its function , kingdom of life
PDF
O7-L3 Supply Chain Operations - ICLT Program
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
Business Ethics Teaching Materials for college
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
RMMM.pdf make it easy to upload and study
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
Basic Mud Logging Guide for educational purpose
Cell Structure & Organelles in detailed.
Pre independence Education in Inndia.pdf
Insiders guide to clinical Medicine.pdf
Cell Types and Its function , kingdom of life
O7-L3 Supply Chain Operations - ICLT Program
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Business Ethics Teaching Materials for college
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra
Microbial diseases, their pathogenesis and prophylaxis
Supply Chain Operations Speaking Notes -ICLT Program
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Renaissance Architecture: A Journey from Faith to Humanism
RMMM.pdf make it easy to upload and study
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Basic Mud Logging Guide for educational purpose
Ad

Software Engineering 10th Edition Sommerville Solutions Manual

  • 1. Software Engineering 10th Edition Sommerville Solutions Manual download pdf http://testbankbell.com/product/software-engineering-10th-edition- sommerville-solutions-manual/ Visit testbankbell.com to explore and download the complete collection of test banks or solution manuals!
  • 2. We believe these products will be a great fit for you. Click the link to download now, or visit testbankbell.com to discover even more! Quizzes for Software Engineering, 10/E 10th Edition Ian Sommerville http://testbankbell.com/product/quizzes-for-software- engineering-10-e-10th-edition-ian-sommerville/ Solution Manual for Software Engineering, 9/E 9th Edition Ian Sommerville http://testbankbell.com/product/solution-manual-for-software- engineering-9-e-9th-edition-ian-sommerville/ Shigleys Mechanical Engineering Design 10th Edition Budynas Solutions Manual http://testbankbell.com/product/shigleys-mechanical-engineering- design-10th-edition-budynas-solutions-manual/ Test Bank for Strategic Management: Concepts and Cases: Competitiveness and Globalization, 13th Edition, Michael A. Hitt R. Duane Ireland Robert E. Hoskisson http://testbankbell.com/product/test-bank-for-strategic-management- concepts-and-cases-competitiveness-and-globalization-13th-edition- michael-a-hitt-r-duane-ireland-robert-e-hoskisson/
  • 3. Understanding Basic Statistics 6th Edition Brase Test Bank http://testbankbell.com/product/understanding-basic-statistics-6th- edition-brase-test-bank/ Solution Manual for Practical Management Science, 5th Edition http://testbankbell.com/product/solution-manual-for-practical- management-science-5th-edition/ Business Law Text and Cases Legal Ethical Global and Corporate Environment 12th Edition Test Bank Clarkson http://testbankbell.com/product/business-law-text-and-cases-legal- ethical-global-and-corporate-environment-12th-edition-test-bank- clarkson/ Chemistry Chang 11th Edition Test Bank http://testbankbell.com/product/chemistry-chang-11th-edition-test- bank/ Test Bank for The Economy Today 14th Edition Schiller http://testbankbell.com/product/test-bank-for-the-economy-today-14th- edition-schiller/
  • 4. Test Bank for Critical Care Nursing 8th Edition by Urden http://testbankbell.com/product/test-bank-for-critical-care- nursing-8th-edition-by-urden/
  • 5. Software Engineering 10 – Solutions Manual 7 7 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 Software Engineering 10th Full chapter download at: https://testbankbell.com/product/software-engineering-10th-edition- sommerville-solutions-manual/ 2 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 of the following systems: • A system to control anti-lock braking in a car • A virtual reality system to support software maintenance • A university accounting system that replaces an existing system • An interactive travel planning system that helps users plan journeys with the lowest environmental impact 1. Anti-lock braking system This is a safety-critical system so requires a lot of up-front analysis before implementation. It certainly needs a plan- driven approach to development with the requirements carefully analysed. A waterfall model is therefore the most appropriate approach to use, perhaps with formal transformations between the different development stages. 2. Virtual reality system This is a system where the requirements will change and there will be an extensive user interface components. Incremental development with, perhaps, some UI prototyping is the most appropriate model. An agile process may be used. 3. University accounting system This is a system whose requirements are fairly well-known and which will be used in an environment in conjunction with lots of other systems such as a research grant management system. Therefore, a reuse-based approach is likely to be appropriate for this. 4. Interactive travel planning system System with a complex user interface but which must be stable and reliable. An incremental development approach is the most appropriate as the system requirements will change as real user experience with the system is gained. 2.3 Consider the integration and configuration process model shown in Figure 2.3. Explain why it is essential to repeat the requirements engineering activity in the process.
  • 6. Software Engineering 10 – Solutions Manual 8 8 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 You need to repeat the requirements engineering activity because it is essential to adapt the system requirements according to the capabilities of the system/components to be reused. These activities are: 1. An initial activity where you understand the function of the system and set out broad requirements for what the system should do. These should be expressed in sufficient detail that you can use them as a basis for deciding of a system/component satisfies some of the requirements and so can be reused. 2. Once systems/components have been selected, you need a more detailed requirements engineering activity to check that the features of the reused software meet the business needs and to identify changes and additions that are required. 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. There is a fundamental difference between the user and the system requirements that mean they should be considered separately. 1. The user requirements are intended to describe the system’s functions and features from a user perspective and it is essential that users understand these requirements. They should be expressed in natural language and may not be expressed in great detail, to allow some implementation flexibility. The people involved in the process must be able to understand the user’s environment and application domain. 2. The system requirements are much more detailed than the user requirements and are intended to be a precise specification of the system that may be part of a system contract. They may also be used in situations where development is outsourced and the development team need a complete specification of what should be developed. The system requirements are developed after user requirements have been established. 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 software being developed more resilient to change. Systems must change because as they are installed in an environment the environment adapts to them and this adaptation naturally generates new/different
  • 7. Software Engineering 10 – Solutions Manual 9 9 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 system requirements. Furthermore, the system's environment is dynamic and constantly generates new requirements as a consequence of changes to the business, business goals and business policies. Unless the system is adapted to reflect these requirements, its facilities will become out-of-step with the facilities needed to support the business and, hence, it will become less useful. Examples of process activities that support change are: 1. Recording of requirements rationale so that the reason why a requirement is included is known. This helps with future change. 2. Requirements traceability that shows dependencies between requirements and between the requirements and the design/code of the system. 3. Design modeling where the design model documents the structure of the software. 4. Code refactoring that improves code quality and so makes it more amenable to change. 2.9 Suggest two advantages and two disadvantages of the approach to process maturity that is embodied in the SEI’s Capability Maturity Framework. Advantages of process improvement frameworks 1. The approach provides a means of measuring the state of a process and a structured approach to introducing process improvements. 2. It is useful as a way of building on the experience of others in process improvement. Disadvantages of process improvement frameworks 1. Like any measurement system, there is a tendency to introduce improvements to improve the measured rating rather than concentrate on improvements that meet real business goals. 2. The maturity model approach is expensive and bureaucratic to operate. It is not really suitable for organisations that use agile development.
  • 8. Software Engineering 10 – Solutions Manual 10 10 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 3 Agile Software Development 3.2 Explain how the principles underlying agile methods lead to the accelerated development and deployment of software. The principles underlying agile development are: 1. Individual and interactions over processes and tools. By taking advantages of individual skills and ability and by ensuring that the development team know what each other are doing, the overheads of formal communication and process assurance are avoided. This means that the team can focus on the development of working software. 2. Working software over comprehensive documentation. This contributes to accelerated development because time is not spent developing, checking and managing documentation. Rather, the programmer’s time is focused on the development and testing of code. 3. Customer collaboration over contract negotiation. Rather than spending time developing, analyzing and negotiating requirements to be included in a system contract, agile developers argue that it is more effective to get feedback from customer’s directly during the development about what is required. This allows useful functionality to be developed and delivered earlier than would be possible if contracts were required. 4. Responding to change over following a plan. Agile developers argue (rightly) that being responsive to change is more effective than following a plan-based process because change is inevitable whatever process is used. There is significant overhead in changing plans to accommodate change and the inflexibility of a plan means that work may be done that is later discarded.
  • 9. Software Engineering 10 – Solutions Manual 11 11 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 3.3 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. Advantages of stories: 1. They represent real situations that commonly arise so the system will support the most common user operations. 2. It is easy for users to understand and critique the stories. 3. They represent increments of functionality – implementing a story delivers some value to the user. Disadvantages of stories 1. They are liable to be incomplete and their informal nature makes this incompleteness difficult to detect. 2. They focus on functional requirements rather than non- functional requirements. 3. Representing cross-cutting system requirements such as performance and reliability is impossible when stories are used. 4. The relationship between the system architecture and the user stories is unclear so architectural design is difficult. 3.6 Compare and contrast the Scrum approach to project management with conventional plan-based approaches as discussed in Chapter 23. Your comparison should be based on the effectiveness of each approach for planning the allocation of people to projects, estimating the cost of projects, maintaining team cohesion and managing changes in project team membership. Planning allocation of people to projects Scrum Scrum handles people allocation informally. Team members ‘bid’ for features from the product backlog to implement if they think that their expertise is appropriate. Alternatively, the tasks can be allocated by the Scrum master. There is no formal mechanism in Scrum for planning for project members with very specific expertise to be temporarily allocated to a team. This need must be identified by the Scrum master and he or she has to discuss how the expertise can be made available. Plan-based development
  • 10. Software Engineering 10 – Solutions Manual 12 12 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 A project plan is used to identify the parts of the system to be delivered and these are specified in the requirements document. The expertise required for each part can then be identified and the allocation of people to projects planned on that basis. Estimating project costs Scrum Project costs are estimated based on the required delivery date for the software and people working in the Scrum team. The functionality of the system is adjusted so that some working system will always be delivered for the original cost estimation. Of course, this may not be adequate for the customer and they have to become involved in rescheduling the delivery of the system. Plan-based development Project costs are based on an analysis of the functionality specified in the requirements document as well as the non-functional requirements of the system. They may be adjusted to reflect team size and delivery schedule. It is normal for costs to be underestimated and the final project to cost much more than originally estimated. An average cost for team members is assumed. Maintaining team cohesion Scrum Team member meet daily either face to face or electronically. Extensive informal discussions and communications are encouraged. Team members negotiate work to be done from the project backlog. This all leads to a shared feeling of product ownership and a very cohesive team. Plan-based development Team cohesion is the responsibility of the project manager and he or she has to take explicit actions to encourage this. The general approach relies on formal meetings that are relatively infrequent and this does not lead to the development of a cohesive team. Managing changes in project team membership Scrum This is a topic that is rarely discussed in Scrum but is a fundamental problem because so much information is informal and reliant on people remembering what has been agreed. When someone leaves, it can be very difficult to bring a replacement team member up to speed, especially if very little project documentation is available.
  • 11. Software Engineering 10 – Solutions Manual 13 13 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 Plan-based development
  • 12. Software Engineering 10 – Solutions Manual 14 14 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 The project management plan is based around expertise rather than individuals and project documents should be available. Therefore, if a team member leaves, then a new team member with comparable expertise can read what has been done and, after understanding this, should be able to serve as a replacement. 3.8 Why is it necessary to introduce some methods and documentation from plan-based approaches when scaling agile methods to larger projects that are developed by distributed development teams. 1. Project planning is often essential when developing software with larger teams to (a) ensure that the right people are available when they are needed to be involved in the development process and (b) ensure that the delivery schedules of different parts of the system developed by different teams are aligned. This means that if Part A depends on Part B, the schedule should ensure that Part B is developed before Part A. 2. Requirements analysis and documentation is important to decide how to distribute the work across teams and to ensure that each team has some understanding of what other teams are doing. 3. Design documentation especially interface specifications are important so that teams can develop independently without having access to software that is under development. 4. Risk management may be required to ensure that all of the teams understand the risks faced and can organize their work to minimize these risks. Risk management may also be useful to cope with different delivery schedules used by different teams. 3.10 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 team and lose sight of the needs of their user colleagues. Suggest three ways how you might avoid this problem and discuss the advantages and disadvantages of each approach. 1. Involve multiple users in the development team. Advantages are you get multiple perspectives on the problem, better coverage of user tasks and hence requirements and less likelihood of having an atypical user. Disadvantages are cost, difficulties of getting user engagement and possible user conflicts.
  • 13. Software Engineering 10 – Solutions Manual 15 15 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 2. Change the user who is involved with the team. Advantages are, again, multiple perspectives. Disadvantages are each user takes time to be productive and possible conflicting requirements from different users. 3. Validate user suggestions with other user representatives. Advantages are independent check on suggestions; disadvantage is that this slows down the development process as it takes time to do the checks.
  • 14. Software Engineering 10 – Solutions Manual 16 16 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 4 Requirements Engineering 4.2 Discover ambiguities or omissions in the following statement of requirements for part of a ticket-issuing system: An automated ticket machine sells rail tickets. Users select their destination and input a credit card and a personal identification number. The rail ticket is issued and their credit card account charged. When the user presses the start button, a menu display of potential destinations is activated, along with a message to the user to select a destination and the type of ticket required. Once a destination has been selected, the ticket price is displayed and customers are asked to input their credit card. Its validity is checked and the user is then asked to input their personal identifier (PIN). When the credit transaction has been validated, the ticket is issued. Ambiguities and omissions include: 1. Can a customer buy several tickets for the same destination together or must they be bought one at a time? 2. Can customers cancel a request if a mistake has been made? 3. How should the system respond if an invalid card is input? 4. What happens if customers try to put their card in before selecting a destination (as they would in ATM machines)? 5. Must the user press the start button again if they wish to buy another ticket to a different destination? 6. Should the system only sell tickets between the station where the machine is situated and direct connections or should it include all possible destinations?
  • 15. Software Engineering 10 – Solutions Manual 17 17 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 4.4 Write a set of non-functional requirements for the ticket-issuing system, setting out its expected reliability and response time. Possible non-functional requirements for the ticket issuing system include: 1. Between 0600 and 2300 in any one day, the total system down time should not exceed 5 minutes. 2. Between 0600 and 2300 in any one day, the recovery time after a system failure should not exceed 2 minutes. 3. Between 2300 and 0600 in any one day, the total system down time should not exceed 20 minutes. All these are availability requirements – note that these vary according to the time of day. Failures when most people are traveling are less acceptable than failures when there are few customers. 4. After the customer presses a button on the machine, the display should be updated within 0.5 seconds. 5. The ticket issuing time after credit card validation has been received should not exceed 10 seconds. 6. When validating credit cards, the display should provide a status message for customers indicating that activity is taking place. This tells the customer that the potentially time consuming activity of validation is still in progress and that the system has not simply failed. 7. The maximum acceptable failure rate for ticket issue requests is 1: 10000. Note that this is really ROCOF. I have not specified the acceptable number of incorrect tickets as this depends on whether or not the system includes trace facilities that allow customer requests to be logged. If so, a relatively high failure rate is acceptable as customers can complain and get refunds. If not, only a very low failure rate is acceptable. Obviously, these requirements are arbitrary and there are many other possible answers. You simply have to examine their credibility.
  • 16. Software Engineering 10 – Solutions Manual 18 18 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 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. Keeping track of the relationships between functional and non-functional requirements is difficult because non-functional requirements are sometimes system level requirements rather than requirements which are specific to a single function or group of functions. One approach that can be used is to explicitly identify system-level non- functional requirements that are associated with a functional requirement and list them separately. All system requirements that are relevant for each functional requirement should be listed. They can be related by including them in a table as shown below. Functional requirement Related non-functional Non-functional system requirements requirements The system shall provide Safety requirement: No release of steam shall be permitted if maintenance work is being carried out on any steam generation plant. Timing requirement: The an operation which valve must open allows operators to open completely within 2 the release valve to vent seconds of the operator steam into the initiating the action. atmosphere. Notice that in this example, the system non-functional requirement would normally take precedence over the timing requirement, which applied to the specific operation. Obviously, any sensible answer that provides a way of linking functional and non- functional requirements is acceptable here. 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. There are a variety of different types of ATM so, obviously, there is not a definitive set of use cases that could be produced. However, I would expect to see use cases covering the principal functions such as withdraw cash, display balance, print statement, change PIN and deposit cash. The use case description should describe the actors involved, the inputs and outputs, normal operation and exceptions. Withdraw cash:
  • 17. Software Engineering 10 – Solutions Manual 19 19 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 Actors: Customer, ATM, Accounting system Inputs: Customer’s card, PIN, Bank Account details Outputs: Customer’s card, Receipt, Bank account details Normal operation: The customer inputs his/her card into the machine. He/she s promoted for a PIN which is entered on the keypad. If correct, he/she is presented with a menu of options. The Withdraw cash option is selected. The customer is promoted with a request for the amount of cash required and inputs the amount. If there are sufficient funds in his/her account, the cash is dispensed, a receipt if printed and the account balance is updated. Before the cash is dispensed, the card is returned to the customer who is prompted by the machine to take their card. Exception: Invalid card. Card is retained by machine; Customer advised to seek advice. Incorrect PIN. Customer is request to rekey PIN. If incorrect after 3 attempts, card is retained by machine and customer advised to seek advice. Insufficient balance Transaction terminated. Card returned to customer. Display balance: Actors: Customer, ATM, Accounting system Inputs: Customer’s card, PIN, Bank Account details Outputs: Customer’s card Normal operation: The customer authenticates using card and PIN as in Withdraw cash and selects the Display Balance option. The current balance of their account is displayed on the screen. The card is returned to the customer. Exception: Invalid card. As in Withdraw cash Incorrect PIN. As in Withdraw cash Print statement: Actors: Customer, ATM, Accounting system Inputs: Customer’s card, PIN, Bank Account details Outputs: Customer’s card, Printed statement Normal operation: The customer authenticates using card and PIN as in Withdraw cash and selects the Print statement option. The last five transactions on their account is printed. The card is returned to the customer. Exception: Invalid card. As in Withdraw cash Incorrect PIN. As in Withdraw cash Change PIN: Actors: Customer, ATM Inputs: Customer’s card, PIN Outputs: Customer’s card
  • 18. Software Engineering 10 – Solutions Manual 20 20 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 Normal operation: The customer authenticates as in Withdraw cash and selects the Change PIN option. He/she is prompted twice to input the new PIN. The PINS input should be the same. The customer’s PIN is encrypted and stored on the card. Card returned to customer. Exception: Invalid card. As in Withdraw cash. Incorrect PIN. As in Withdraw cash. PINS do not match. The customer is invited to repeat the process to reset his/her PIN. Deposit cash: Actors: Customer, ATM, Accounting system Inputs: Customer’s card, PIN, Bank Account details, Cash to be deposited Outputs: Customer’s card, Receipt Normal operation: The customer authenticates as in Withdraw cash and selects the Deposit option. The customer is promoted with a request for the amount of cash to be deposited and inputs the amount. He or she is then issued with a deposit envelope in which they should put the cash then return it to the machine. The customer’s account balance is updated with the amount deposited but this is marked as uncleared funds and is not cleared until checked. A receipt is issued and the customer’s card is returned. Exception: Invalid card. As in Withdraw cash. Incorrect PIN. As in Withdraw cash. No cash deposited within 1 minute of envelope being issued. Transaction terminated. Card returned to customer. 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 these modifications that will ensure that the requirements document and the system implementation do not become inconsistent. The following diagram shows a change process that may be used to maintain consistency between the requirements document and the system. The process should assign a priority to changes so that emergency changes are made but these changes should then be given priority when it comes to making modifications to the system requirements. The changed code should be an input to the final change process but it may be the case that a better way of making the change can be found when more time is available for analysis.
  • 19. Software Engineering 10 – Solutions Manual 21 21 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 Analyze change request «DB» [emergency change] [non- emergency change] Change program code Assess requirements impact Record code changes Change requirements Resubmit CR for analysis Design/ change code «DB» Change Req DB Update CR DB Change Req DB
  • 20. Software Engineering 10 – Solutions Manual 22 22 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 5 System Modeling 5.2 How might you use a model of a system that already exists? Explain why it is not always necessary for such a system model to be complete and correct. Would the same be true if you were developing a model of a new system? You might create and use a model of a system that already exists for the following reasons: 1. To understand and document the architecture and operation of the existing system. 2. To act as the focus of discussion about possible changes to that system. 3. To inform the re-implementation of the system. You do not need a complete model unless the intention is to completely document the operation of the existing system. The aim of the model in such cases is usually to help you work on parts of the system so only these need to be modelled. Furthermore, if the model is used as a discussion focus, you are unlikely to ne interested in details and so can ignore parts of the system in the model. This is true, in general, for models of new systems unless a model- based approach to development is taking place in which case a complete model is required. The other circumstances where you may need a complete model is when there is a contractual requirement for such a model to be produced as part of the system documentation. 5.5 Develop a sequence diagram showing the interactions involved when a student registers for a course in a university. Courses may have limited enrolment, so the registration process must include checks that places are available. Assume that the student accesses an electronic course catalog to find out about available courses. A relatively simple diagram is all that is needed here. It is best not to be too fussy about things like UML arrow styles as hardly anyone can remember the differences between them.
  • 21. Software Engineering 10 – Solutions Manual 23 23 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 :student :CourseCatalog :Course lookup ( ) Display ( ) register ( ) reportWeather () check-availability ( ) Confirm ( ) 5.6 Look carefully at how messages and mailboxes are represented in the email system that you use. Model the object classes that might be used in the system implementation to represent a mailbox and an e-mail message. Mail message sender: receiver list: cc list: bcc list: date: subject: return path: routing info: spam info: mailer: message info: message body: attachments: signature: read () reply () reply all () print () forward () send () Mailbox name: pathname: creation date: change date: messages: unread messages: flagged messages: deleted messages: move message ( ) copy message ( ) delete message ( ) fetch mail ( ) create ( ) rename ( ) delete ( )
  • 22. Software Engineering 10 – Solutions Manual 24 24 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 5.7 Based on your experience with a bank ATM, draw an activity diagram that models the data processing involved when a customer withdraws cash from the machine. Notice that I have not developed the activities representing other services or failed authentication. Other services [other service] Get custome r info Authenticat e Presen t service menu [OK] [withdrawal ] Get amount Check balanc e [OK] Return card Dispens e cash Update balanc e Print receip t «system» Accountin g system [insufficient ] «system» Accountin g system Authenticatio n failure Return card 5.10 You are a software engineering manager and your team proposes that model-driven engineering should be used to develop a new system. What factors should you take into account when deciding whether or not to introduce this new approach to software development? The factors that you have to consider when making this decision include: 1. The expertise of the team in using UML and MDA. (Is expertise already available or will extensive training be required.) 2. The costs and functionality of the tools available to support MDA. (Are tools available in house or will they have to be purchased. Are they good enough for the type of software being developed)
  • 23. Software Engineering 10 – Solutions Manual 25 25 Software Engineering 10 – Solutions Manual ©Ian Sommerville 2014 ©Ian Sommerville 2014 3. The likely lifetime of the software that you are developing. (MDA is most suitable for long-lifetime systems) 4. Requirements for high performance or throughput (MDA relies on code generation that creates code which may be less efficient than hand written code) 5. The long term benefits of using MDA (are there real cost savings from this approach) 6. The enthusiasm of the software developers. (are all team members committed to this new approach)
  • 24. Exploring the Variety of Random Documents with Different Content
  • 25. bearing with them a stretcher for the body. The baron leaped to his feet and swung his hat to direct them; but did not call. “Petter loogk oudt!” he cautioned, as they came near. “Who was that shootin’?” Nomad demanded. “We heard a rifle off hyar. Been shootin’ at somebody?” “Somepoty has peen shoodting at us!” the baron informed him. “Great gallinipers! Who was et?” “I vish dot you vouldt toldt me. Der pullet idt seems vos vor Cody; but it ditn’t git him.” “Couldn’t er been ther feller thet killed Dane?” said Nomad. “Ve tond’t know who idt vos.” The scout arose and greeted the officers and citizens. “We have found other tracks here,” he said, pointing off to the right, where the tracks were to be seen. Nomad and some of the men ran over there. “Tracks of a woman!” cried the trapper. “So we thought.” “Whar’d they come frum?” “Near the point where the body was buried,” the scout told him. “And goin’ toward town?” “Yes.” “Then thet woman must er been with ther man what downed Dane.” “It would seem so. Gentlemen, we can show you where the body lies now,” said the scout, “if you will follow us.” “Petter loogk oudt vor der man mit der gun!” the baron warned.
  • 26. But apparently the man with the gun had vanished; for when they set out for the spot where the body had been left, they did not see or hear him. But still another surprise awaited them, as stunning almost as the first. On reaching the spot where it had been left, the body itself had disappeared. “Whar’d yer put et?” Nomad asked, puzzled. The baron and the scout were staring dumfounded at the place where the body had last been seen. “Idt iss gone!” the baron howled. “Yumpin’ yack rappits, idt iss gone!” “It’s true, gentlemen,” the scout supplemented; “the body that we left right here has disappeared.” The thing was astounding. “More excitement baron!” Nomad yelped. “Don’t I knowed idt? I am grazy mit excidemendts.” “Yer air shore gittin’ good measure, Schnitz!” the trapper whooped. He began to look for the trail of the man who must have borne the body away. Tracks were found almost immediately—those of a man, whose shoes cut rather deeply into the ground, and made some impression even where the soil was hard; showing that he had borne a burden. There could be not a doubt that the burden was the body of Jackson Dane. “Vale, I see some daylighdts,” the baron declared; “der mans vot haf done dhis iss der same vun vot haf shoodted at Cody; I am petting on idt.” “I guess ye’re right, Schnitz,” the trapper agreed. “Now, we’ll see ef we can foller him.”
  • 27. Buffalo Bill put himself at the head of the excited little party, and the chase began.
  • 28. CHAPTER VIII. S T R A N G E D I SA P P E A R A N C E S. As if he knew he would be followed, the man who had borne off the body had struck rocky ground soon, so completely breaking his trail that to pursue it promised to be a work of great difficulty. Buffalo Bill stopped. “I don’t think I care to go farther just now,” he said. “Though, later, I want to come here and cipher this thing out. I’m going back to Blossom Range.” “Waugh!” the trapper objected. “What fer? This hyar is ther place fer work ter be done right now.” “I’ll tell you what I’ll do,” said Buffalo Bill, thoughtfully; “I’ll leave you and the baron to claw the tangles out of this thing; and I’ll try to join you before long. As you go along break a bush now and then, so that when I return I’ll have no trouble in finding you.” “But what ye goin’ back fer?” Nomad asked, impatiently. It seemed to him that to pick up the lost trail was the most important thing at the moment; at any rate, he could think of nothing more promising. Because of the listening ears turned toward him, Buffalo Bill did not care to acquaint the trapper with the thoughts in his mind. So he made a lame excuse, about having forgotten something; and turned about, leaving the trapper and the baron to go on alone; as all of the town men turned back when Cody did. “You can dig out that trail, Nomad, if any one on earth can,” he told the trapper. “So just hang to it, you and the baron—unless he wants to go back with me! When I return, I shall come with the
  • 29. expectation of finding that you have dug out something worth while.” But the baron had no wish to return to Blossom Range at that time; it was his idea that the blind trail which Nomad was to try to spell out offered worlds of excitement, of the most surprising kind. When Buffalo Bill reached Blossom Range, he took the officer and the coroner aside, after dismissing the other men. “Perhaps you know all about those men who have been with you, and that they’re to be trusted,” he explained; “but I don’t know any of them, and the faces of one or two didn’t strike me favorably. What I want to do now is to have you go with me to the Casino and arrest there a woman called Vera Bright; she is with the show company that has been giving performances in the Casino the past week. After that, I shall ask you to go with me to Juniper Joe’s and place Juniper Joe and his wife under arrest.” The officer and coroner stared at him. “Not Juniper Joe!” gasped the officer. “None other. If I am making a mistake, I will stand responsible for it. The man who was slain out there was the same that Juniper Joe tried to kill the night of his wedding; and this woman, Vera Bright, was with the murdered man shortly before daylight this morning, as I know through the testimony of the German, who was watching the Casino at that time. He heard them quarreling. In addition, Mrs. Juniper Joe made that woman a visit yesterday.” “If you back the thing, I’ll make the arrests,” said the officer, but reluctantly. “I will back you!” the scout told him. “Or, if you don’t want to do it, I will make the arrests myself; yet I should prefer to have you to do that part of the work.” He did not think it wise, being still rather hazy about some points himself, to tell these men all his conclusions; he preferred to let events speak for themselves.
  • 30. When they got down to the Casino and called for Miss Vera Bright, they were informed that she was not there; that, in fact, she had left Blossom Range that morning, on the stage for Calumet Springs. “Let me see the manager of the show,” Buffalo Bill requested. The manager came down—a pale, blond, young fellow—and began to answer Buffalo Bill’s questions. “I didn’t know she was going,” he declared; “and none of the company did. The first we knew, she had her things packed, and asked me for her salary. I wouldn’t pay it, of course, under the circumstances, as we expect to play here another week, and she was in the cast. She went away in a huff.” “How long was she with your company?” was the scout’s next question. The manager admitted that he had “picked her up” at Calumet Springs, when the company was there on its way to Blossom Range. “She wanted to join us, and I let her do so, as I thought we could use her,” he explained. “So you really know nothing about her?” “Not a thing!” When Buffalo Bill left the Casino, he sent a telegram to the marshal of Calumet Wells, requesting him to hold the woman until certain charges against her could be investigated. “Now for Juniper Joe’s!” he said to the officer. When they reached the cabin of Juniper Joe, they had somewhat the same experience; Juniper Joe was not there, neither was his wife. The cabin was locked. The door which the scout had so recently splintered had been somewhat repaired, and was braced on the inside, as well as locked. “This is queer!” was the officer’s comment. “Just a little bit,” the scout agreed.
  • 31. “Shall I break the door in?” “That is my advice.” When it was battered in and they entered, they found no one inside. A warrant had been secured, authorizing the house and the mine to be searched. Therefore, the officer forced the door which led to the mine. The mine looked dark as a cave; so lights were secured, before they tried to enter it. They examined the mine back of the cabin, the scout flashing the light curiously on the walls. He made no remarks about his discoveries, and his examination was not a close one; but he commented freely enough on the fact that the couple must have departed by the front door. “Yet it seemed to have been barred on the inside!” was the officer’s objection. This was overcome, when a closer examination of the door was made. The bar of wood had been so arranged that it would drop down on the inside and so hold the door when it was closed from the outside. Hence the theory that it had been barred from the inside fell to the ground. “This may be nothing but a mare’s nest, though,” the officer suggested; “Juniper Joe and his wife may be both downtown right now.” “His wife was supposed to have been too badly hurt to leave the cabin,” the scout reminded. “But she may have gone to some doctor’s office!” Though this was true enough, the scout did not believe it. After they had made sure that the mine and cabin were unoccupied, Buffalo Bill asked the men to return to the town and
  • 32. make a search for Juniper Joe and his wife, and to arrest them if they were found. As for himself, as soon as the men set out, he turned about and started off, with the intention of rejoining Nomad and the baron. “A water haul!” he said to himself, as he walked on swiftly. “But I think that at last we are making some progress.” It was the scout’s opinion that the couple and Vera Bright had hastily left the town. “Why?” was the question. It seemed to him there could be but one answer.
  • 33. CHAPTER IX. T H E C H A S E . Old Nomad was exclaiming softly in his characteristic way, standing on the edge of a precipitous cliff wall. The baron, by his side, had hold of a bush, and was peering over into the depths below. “I’m er Piegan,” said Nomad, “ef suthin’ ain’t been throwed down thar!” “Aber I gand’t seen noddings, I am pelieving idt iss der pody,” the baron averred. Sounds of footsteps attracted their attention. Then they saw Buffalo Bill hurrying toward them. He had come rapidly from the town, having followed them without trouble, because of the broken bushes they had left in their wake to guide him. “Waugh!” Nomad called to him, and swung his hand. “Come over hyar!” “I’m coming.” “Ve haf followed der drail to dot boint ofer dhere,” the baron explained, as the scout came up. “Idt vendt straight on; but Nomat he seen vot he took to pe dracks goming dhis vay; unt idt loogks as uff somed’ings had peen pitched town here.” “We’re believin’ thet ther critter we follered sidetracked carefully to this point,” added Nomad, “an’ hyar he got rid o’ ther body he war kerryin’. Et looks et.” The scout seized a bush, and began to go down the cliff side.
  • 34. “We can soon discover if it is so,” he said. “Vot dit you findt in der town?” the baron shot at him. “Vera Bright, Juniper Joe, and his wife are all missing.” “Waugh!” Nomad whooped. “We’ve been figgerin’ thet we’ve been follerin’ ther trail o’ Juniper Joe and p’raps his wife. Anyhow, thar’s big tracks and leetle ones. But we couldn’t make et come out right thet Juniper Joe an’ his wife had been hyar, when we reckoned they war back in ther own cabin.” The scout soon reached the bottom of the cavity, which was bush- grown along its sides. He called up his discovery. “Your guess was right,” he said. “Here is the body.” It had been pitched far enough out, so that in its fall it did not break bushes; and it lay in a crumpled heap. The scout only tarried long enough to be sure that it was the body of the man known to him as Jackson Dane; then he came climbing up out of the black depths. “Yes,” he added, “whoever had the body threw it over here, to get rid of it; and took it from that other place so that it might not be found by the searchers.” “Why sh’d he wanted ter do thet?” Nomad queried. “I can only guess, of course; though he ought to have known that it had already been seen. In law, you know, the body must be produced, or identified, in order to convict any one of murder; otherwise, there could be no showing absolutely that the man supposed to be murdered was dead. He might be living, somewhere in secret. But it was a foolish move, in this case, to try to hide it here, it seems to me; as the body had already been seen.” “Aber the man vot dook it mighdtn’t haf knowed dot,” suggested the German. “Very true.”
  • 35. “But about thet woman and Juniper Joe cuttin’ out?” said Nomad. “You air shore of thet?” “I went with the officer to the Casino, to arrest the woman, but she had left by the morning stage for Calumet Springs. I sent a telegram to the marshal there; and if he does his duty, it will stop her at that point. When we went to Juniper’s cabin, we found it empty and dark. On forcing the door, we found no one, even though we searched the cabin and the mine. Of course, if you have been following their trail, it shows plainly enough where they are now.” “What’s yer idee?” the trapper questioned. “Simply that they came out and killed Dane. Perhaps they started back to the town; then saw us, and that changed their plans. Some one shot at me, you know; and probably that was Juniper Joe.” “Then you’ve reached ther conclusion thet he is plum crooked?” “I have.” “And his wife, too?” “Doesn’t it look it?” “Waugh! Et does.” “We’ll pick up their trail over there, and see if we can’t crowd ’em. Did it seem fresh?” “Not so very old, anyway,” Nomad told him. “You didn’t see any indication that buckskin bags had been cached, or pitched into some hole?” “No; but they could er been pitched inter some hole easy ’nuff, without our knowin’ it. Thar’s a lot o’ crevices along the trail; an’ without leavin’ his tracks a feller could easy ernough heave buckskin bags inter any of ’em.” “We haven’t time to look that up, now. Show me the trail, and we’ll see what we can do.”
  • 36. When the trail was regained, the scout took the lead, and pushed the work hard. Though the country was rocky and covered with much scrub, they went along rapidly. There were few trailers who could equal Buffalo Bill. It was hard work, so that often he preferred to let his Indians do it; but he was always equal to the task, as in this instance. There were tracks of two people—one the track of a man surely; the other smaller, which might have been made by a woman; though, if so, she had worn a coarse and heavy shoe, just fitted for that kind of work. At length the trails split; the larger tracks going off to the right, the others to the left. “I’ll follow the man,” said the scout; “you take the other. I fancy the man is Juniper Joe; the other may be his wife.” It had become evident that the couple were getting tired; they had traveled rapidly, as if at first frightened, and so had begun to use up their strength. It was perhaps for that reason they separated; as they might have thought the pursuers, if they knew of them, would follow the larger tracks. By this time Buffalo Bill and his pards were a good five miles north of the mining town of Blossom Range, and in the vicinity of a village of the Ute tribe of Indians. The Utes were supposed to be peaceably inclined. At any rate, they had shown no hostile intentions since Iron Bow had led them on the warpath, five years before, and had been badly worsted. But they were still blanket Indians, much given to powwowing and strange dances, to feathered headdresses and variegated paints. For some time Buffalo Bill had been half convinced that the tracks he and his pards had followed would lead, by and by, to this Ute village. Yet, when the tracks separated, this did not seem so likely.
  • 37. Buffalo Bill, pressing ahead on the trail he had chosen, soon lost sight of Nomad and the baron. He had gone nearly a mile, through a very rough country, when he became aware of the fact that the Indians were near him; he saw a few, and heard others. They had apparently been deer hunting. Their tracks, here and there, covered over those he was pursuing; so that twice he had to stop and spend valuable time in puzzling out the trail. “If this fellow is a friend of the Utes, it’s likely he will join the deer hunters,” thought the scout. A little later a shot rang out. Thereupon, a man sprang out of bushes a hundred yards away, leaping up as if he thought the bullet had been sent at him, and ran with big jumps across the rocks, through the rough ground. At a glance, Buffalo Bill saw that the man was Juniper Joe. “Our guess is right, so far,” he muttered. The man disappeared quickly; but Buffalo Bill was in hot chase, determined not to lose sight of him. He was wondering, at the same time, if the Indians had shot at this man. Apparently, the fellow had thought so; for it seemed that he had leaped up and ran from the Indians, rather than from the scout, whom, apparently, he had not yet seen. Off at one side Indian yells broke out; but they were not war-trail yells; they were hunting yells, announcing victory. “The Utes fired at game, and brought it down,” was the scout’s conclusion. “I am sure now they did not shoot at Juniper Joe.” Then he came again in sight of the man, who had gained a slippery slope, which he was trying to climb, though, at some points, to do it he would have needed the ability of a fly.
  • 38. Buffalo Bill could see that Juniper Joe was a badly frightened individual. It seemed to the scout he was frightened by the Indian yelling, following the shot; that, in short, Juniper Joe was sure the Indians had fired at him and were now pursuing him. Climbing over slippery rocks, Juniper Joe gained the treacherous edge of a cañon, along which he ran at reckless speed. The scout called to him. The effect was bad. Juniper Joe tried to stop and look about; as he did so, stumbling, so that he was thrown heavily. The next instant he was bounding off the edge of the precipice, and went shooting down. The scout stopped with a gasp of surprise. He saw Juniper Joe crash into the top of a pine, out of which he tumbled, to land in a cleft of rock in the face of the cañon. Apparently, in his wild haste and fright, Juniper Joe had been seriously, perhaps fatally, wounded; he lay prostrate where he had fallen, without motion at first. But a moment later Buffalo Bill saw him put up his hand. “Not dead yet, at any rate!” said the scout, looking about, with the desire of hurrying to the man’s assistance. Fortunately, in leaving Blossom Range the scout had not only fully armed himself, but had brought along his lariat, which he had often found more useful than any weapon. Juniper Joe’s red shirt showed plainly in the niche, looking like a gout of blood, thus making it very suggestive. Buffalo Bill had been somewhat surprised to see Juniper Joe in full miner’s outfit, very different from the clothing he usually wore in the town. For some time nothing had been heard from the Indians; but now the scout saw some of them on the top of the cañon wall, looking down at the injured man. Others appeared in sight at various points.
  • 39. Buffalo Bill paid no attention to the Utes, though they did not seem friendly. They showed no disposition to help the injured man. In truth, even to consider such a thing seriously was an evidence of much courage; for Juniper Joe lay in a spot not to be approached at all without much danger. The scout was not thinking of the possible danger, as he hastened along, looking for a point at which he could launch his lariat; his intention being, if he could find such a place, to hurl the rope at it, then swing out and over the cañon. The cañon was of such depth that even to look down into it made one’s head swim. In spite of this, when he had found a favorable finger of rock outthrust the scout swung the noose of his rope, and with a wonderful cast fastened it round the tip of the rocky projection on the other side. “Here goes!” he said. Clutching the rope, he ran forward, then flung himself boldly out over the black gulf. The momentum carried him across, so that his feet struck the opposite wall. As soon as he could steady the oscillation of the rope, he began to climb it, hand over hand. Though they had shown some evidences of an unfriendly attitude, Buffalo Bill’s daring in going to the aid of Juniper Joe stilled the Indians into peace. Slowly the scout climbed up the rope, over the dizzy chasm, mounting steadily until he gained the spot where Juniper Joe lay. Then he saw that Juniper Joe was not only not dead, but treacherously inclined; the fellow’s eyes were blazing, and as Buffalo Bill swung into the notch at his side, Juniper Joe lifted himself and drove at the scout with a knife. Though the surprise was stupendous, the scout was equal to the occasion; he dropped down on the treacherous scoundrel, and gripped him.
  • 40. A struggle followed; but Juniper Joe had not recovered from the jarring effects of his fall, and the scout was quickly the victor. Juniper Joe dropped back, panting and glaring. “Curse you!” he fumed. The scout had caught the fellow’s knife away, and now snatched away his revolvers. “A pretty greeting for a man who risked his life to come up here!” he said bitterly. “That’s all right!” growled Juniper Joe. “But what did ye come up for? Me, I reckon! You didn’t come jest to help me, I know.” Then he realized that he had said too much. “I’m kind o’ flighty,” he apologized; “so don’t think o’ what I’ve done. I didn’t really know it was you, Cody; ’pon honor, I didn’t. That jolt I got sort o’ put me out o’ my head. Hope you’ll overlook it.” He rolled his eyes round, as if looking for the Indians. “Those Utes won’t trouble you!” “Mebby they won’t,” Juniper Joe grumbled; “but I ain’t wantin’ to chance it. Ye see, I onct had trouble with old Iron Bow.” “You thought they shot at you and chased you?” “I did.” “Rest easy, then. They shot at a deer, or some game animal.” “How do you know it?” “I could tell by the way they yelled.” “You’re thunderin’ smart, you think!” Unnoting this insult, the scout tried to make an examination, to discover if Juniper Joe was much hurt. “It’s jest my leg and right hip,” said the rascal; “feels like my leg is broke.”
  • 41. “You couldn’t move it, if that was so.” The fellow had been bruised by his heavy fall, and the breath had been jarred out of him, yet he was not hurt, otherwise. “Oh, I think you’re all right!” the scout told him. “What you goin’ to do?” “Try to get you down from here.” “I’m surprised to see you hyar,” said Juniper Joe, more mildly. “I don’t reckon you come out to see if Iron Bow is thinkin’ of war trailin’?” “We’ll talk about that when we get you down from here,” the scout evaded. Just then a whoop sounded; and, looking up, Buffalo Bill saw that the baron and Nomad had come in sight. He stood up and waved his hand to them, that they might locate him; but at the same time he was careful not to give Juniper Joe a chance to push him out of the notch into the cañon. He was convinced that Juniper Joe might want to do that very thing. “Who’s them?” asked Juniper Joe. “My friends—the baron and old Nomad.” Juniper Joe growled something in his throat. “What was that?” the scout asked. “Oh, nothin’! Lower me down, if you kin.” “It’s going to be a hard job; you’re a heavy man.” “Waal, then let me stay hyar!” the fellow growled. The scout put the noose of the rope round Juniper Joe’s body, under the arms. “I’ll try it,” he said, “if you’ve got the grit!” Juniper Joe looked over the edge, and shivered.
  • 42. “If anything should happen, I reckon I’d fetch up dead on them rocks down there.” “I can get a pretty good grip, by locking a leg round this point of rock, and I think I can hold you; but the rope is strong enough to hold you, even if I should slip.” “It’d cut me in two, if you should let go.” “I suppose you’re willing for me to try it?” The fellow looked over again. “Go ahead!” he said, setting his jaws together. “I’ve got to git down out of this in some way.” Helping himself, Juniper Joe slid over the edge of the notch, aided by the scout, the latter supporting him as he released his grip on the rock and dangled in midair. It was a fine exhibition of muscular strength, when Buffalo Bill lowered the heavy body of Juniper Joe slowly down from the notch, letting it slide against the cañon wall. There was a shelf below; and when Juniper Joe had gained that the scout directed him to cast off the noose. “I’m coming down,” he announced. “But,” he warned, “no tricks! My pards are over there, you see; and they wouldn’t stand for treachery on your part.” “Oh, I ain’t intendin’ any,” Juniper Joe growled back. The scout swung out and lowered himself to the shelf. The rope was left hanging, of course, with the noose hooked over the finger of rock. But the scout was a rope wizard. By some clever jerks, which made wavy ripples run up the rope, he flipped it off the rocky point, and it dropped down. He found another projection, to which he fastened the noose; and the performance was gone through again, this time bringing the scout and his prisoner to the bottom of the cañon.
  • 43. When they got down there they found the baron and Nomad.
  • 44. CHAPTER X. S TA RT L I N G R E V E LAT I O N S. If the Utes remained in the vicinity, they kept out of sight and were not seen again. Old Nomad and the baron had heard the shot of the Indians; but, thinking it had come from the rifle of Buffalo Bill, they had abandoned the trail they were following, and came over to see if the scout was in trouble. “We allowed you was,” explained old Nomad, “er you wouldn’t opened up in thet way. Glad ter know it was a false alarm.” Juniper Joe, standing up, with the noose of the lariat removed, was walking about, apparently testing his strength; suddenly he started off at a clipping gait, showing how little he had been hurt by his fall. The baron and Nomad yelled when they saw him start. Buffalo Bill, instead of yelling, plucked out a revolver, swung it round his head, and hurled it at the fleeing man. It struck him in the back of the neck and knocked him sprawling. Though he fell heavily, and was somewhat stunned, Juniper Joe still had full use of his tongue, as his raving showed when they ran up to him. He demanded the reason for such treatment. “Well, we’re going to hold you, you know!” Buffalo Bill told him. Juniper Joe tried to pretend surprise. “What fer?” he howled. “For the murder of Jackson Dane—if that was his name.”
  • 45. Juniper Joe declared that he did not know what they were talking about. “You tried to kill him once, at the time of your wedding, when you claimed he was Tim Benson, the road agent.” “Waal, that feller was Tim Benson; but I ain’t seen him since.” “As we think you know all about it, and for other reasons, we’re now going to take you back to Blossom Range,” Buffalo Bill told him. Juniper Joe protested against this loudly. “Perhaps you will tell us who, then, was with you?” Juniper Joe denied that any one had been with him. “Waugh! We won’t fool wi’ no sech liar,” Nomad whooped. “You’ve showed thet ye kin walk—you done some runnin’ a while ago; so we’re goin’ to tie ye and march ye ahead of us, wi’ the understandin’ ef yer don’t go peaceable you’ll go some other way.” When he saw that neither lying nor anything else would do him any good, Juniper Joe submitted, but with bad grace; after which he became sullen, refusing to answer questions. On the return to the town, as they were able to pick an easier trail than they had followed in getting there, the scout’s party made better progress. They did not stop to follow the trail of the supposed woman; but Nomad was detached to see what he could do with it, under instructions not to waste too much time, but to report in the town by nightfall. The baron’s head still troubling him, he went along with Buffalo Bill. When Buffalo Bill entered Blossom Range with his prisoner, the afternoon stage was coming in from Calumet Springs. So he took his prisoner right down to the stage stables, though Juniper Joe protested against this outrage. One of the passengers by the stage was the marshal of Calumet Springs, who had with him a woman, Miss Vera Bright, whom he had brought back to Blossom Range.
  • 46. She stared at Buffalo Bill’s prisoner. “I think it will be well if we take them into a room here together, and see if they won’t do some talking,” was the scout’s statement to the Calumet Springs marshal. “If you can get anything out of her, you’re ahead of me,” the marshal admitted; “she fit like a wildcat, when I told her she would have to come back here, and only stopped it when I threatened I’d put irons on her. She weakened at that, and come along; but she’s a plum furious beauty, I tell you, git her started.” The blonde woman and Juniper Joe were taken into a back room of the stage office, where they were brought face to face. In the room at the time was the marshal of Calumet Springs, with Nomad and the baron, and, of course, the scout, together with the local manager of the stage line. Buffalo Bill, a shrewd reader of human nature, opened the ball by telling the woman that Juniper Joe was under arrest for the murder of the man called Jackson Dane, but whom Joe had said was Tim Benson. Her face paled at that, and her eyes flashed, and she turned on the prisoner like a tigress. “Is that so?” she cried. “It’s a lie!” Juniper Joe declared to her. She turned to Buffalo Bill. “Is it true,” she said, “that he has killed him?” “Dane has been killed, and we believe this man did it; we have evidence which it seems to us proves it.” “I’m sure he did—if he is dead.” She bent her burning eyes on Juniper Joe; and he seemed to wither under them. “Where is Tim?” she demanded.
  • 47. Welcome to our website – the perfect destination for book lovers and knowledge seekers. We believe that every book holds a new world, offering opportunities for learning, discovery, and personal growth. That’s why we are dedicated to bringing you a diverse collection of books, ranging from classic literature and specialized publications to self-development guides and children's books. More than just a book-buying platform, we strive to be a bridge connecting you with timeless cultural and intellectual values. With an elegant, user-friendly interface and a smart search system, you can quickly find the books that best suit your interests. Additionally, our special promotions and home delivery services help you save time and fully enjoy the joy of reading. Join us on a journey of knowledge exploration, passion nurturing, and personal growth every day! testbankbell.com