###BeginCaseStudy###
Topic 1, Flight Information
Background
You are developing a flight information consolidation service. The service retrieves flight information
from a number of sources and combines them into a single data set. The consolidated flight information
is stored in a SQL Server database. Customers can query and retrieve the data by using a REST API
provided by the service.
The service also offers access to historical flight information. The historical flight information can be
filtered and queried in an ad hoc manner.
The service runs on a Windows Azure Web Role. SSL is not used.
Business Requirements
A new data source for historical flight information is
being developed by a contractor located on another continent.
If a time zone is not specified, then it should be
interpreted as Coordinated Universal Time (UTC).
When you upgrade a service from a staging deployment
to a production deployment, the time that the service is
unavailable must be minimized.
The default port must be used for HTTP.
Technical Requirements
The existing sources of flight information and the mechanism of exchange are listed below.
Blue Yonder Airlines provides flight information in an
XML file.
Consolidated Messenger provides flight information in a
Microsoft Access database that is uploaded every 12 hours to
the service using SFTP. The company uses port 22 for SFTP. Margie’s Travel provides and consumes flight
information using serialized ADO.NET DataSets. Data is
periodically synced between the service and Margie’s Travel.
Trey Research provides data from multiple sources
serialized in proprietary binary formats. The data must be read
by using .NET assemblies provided by Trey Research. The
assemblies use a common set of dependencies. The current
version of the Trey Research assemblies is 1.2.0.0. All
assemblies provided by Trey Research are signed with a key pair
contained in a file named Trey.snk, which Trey Research also
supplies.
The application specification requires that any thirdparty assemblies must have strong names.
Application Structure
###EndCaseStudy###
Data provided by Consolidated Messenger is cached in the HttpContext.Cache object.
You need to ensure that the cache is correctly updated when new data arrives.
What should you do?
A.
Ensure that the EffectivePrivateBytesLimit value is greater than the size of the database file.
B.
Change the sliding expiration of the cache item to 12 hours.
C.
Use the SqlCacheDependency type configured with a connection string to the database file.
D.
Use the CacheDependency type configured to monitor the SFTP target folder.