Sie sind auf Seite 1von 3

nortal.

com

Developer Test Task

Nortal Summer University 2017


Legend
You are a business system analyst in the ChangeTheWorld IT company. ChangeTheWorld is
a well-known IT company that also provides service design. A customer can come to
Autonomous Life Raft (Java)
ChangeTheWorld with a problem or idea and end up with a new service and software design that
is developed and installed into its system. In other words, problem solved.

HET (HappyEasyTraveller) is a small travel company that has been active in the market for 6 years.
1. The Story
In recent years, a large number of HET’s clients have been the employees of public authorities,
such as small local municipalities. This is due to the contract that HET won in a public procurement
Alfred is always
process. building new
In comparison technology
to large travel for Batman. At
companies, the in
HET moment he is working
its smallness can be onmore
the next
flexible and
version of the utility belt, ultra strong grappling hook, a spacecraft and autonomous
offer a more personalised service. For this reason, HET wants to secure far more students life raft. He is as
also organising the Bat-Library. Due to the huge amount of projects he has decided to outsource
customers. However, they don't know enough about students to design a service for them. In
some of the work. As a test task for the autonomous life raft projects, he has offered you the
addition, they realise that a new service probably requires changes to their current information
opportunity to give it a try with implementing the algorithm for the engine control system.
system. Therefore, they turn to ChangeTheWorld to get the full solution from one single company.
When entering the hangar for briefing, you notice the vessel prototype. It is circular with four
powerful thrusters attached to it. You are wondering why Alfred has attached jet engines on top of
a life raft and is it safe at all, but he assures you, the design can be improved later. He also explains
You are assigned as business system analyst for the HET project. Your advantage over other
you, there will be a race amongst multiple control systems to identify the best performing
analysts is that you are a student yourself. You know enough about the specifics of students to be
implementation.
able to design a new travel service for them. Without even meeting the customer. Deadlines are
short – you are meeting the customer in 5 days and giving a pre-presentation to your manager in 3
days.
2. Assignment
Let the two of us meet in 3 days, your manager said, and please come with your idea. She also said
Implement
that as HET theiscontrol algorithm
the first travel to collect allthat
company the targets on the race area
ChangeTheWorld has without
had ascrashing.
a customer, she wants
you to prepare a domain model of a usual travel company, just to get an understanding of what the
Every second your vessel receives a new set of parameters from the monitoring satellite system
travel business
and needs is about.
to return Then she
a command for left.
the But she turned
engines. These around
parametersand include
added that
a listthe
of customer
targets would
really likearound
scattered to seethe a couple of user
race area. interface
The goal for themock-ups at collect
vessel is to the first
all meeting. We need
of these targets to present
in no
something visual.
particular order. ThePeople
vessel really like pictures
also receives and location
its current drawings,andshe added
current and left
speeds alongyouX standing
and Y there,
shocked by the unusually short deadline of the task and the long list of topics to be covered.
axis.

A myriad
Since you of
arequestions rushed
working with throughyou
a prototype, your head.
can only What
enableshould this new
one thruster at atravel
time. service
For eachlook like?
thruster,
What is you can control
so special aboutthestudents
level of thrust it provides
that they do notbetween Level
use larger 0 andservices?
travel Level 4. For a thrust
What is the special
travel need for students that is not yet covered by other travel companies? Then you took a deep
1
breath ... and started to consider the methods of analysis that would be appropriate for this particular
task.
nortal.com

Level X, a push force equivalent to X m/s² is generated. Once you enable a thruster, all other
thrusters will turn off.

Since your vessel is on the water, you also need to consider drag forces applying to it. The drag
forces applied are equivalent to 1.6 m/s² meaning that at least Level 2 thrust is required to start
moving the vessel. Drag forces depend on the vessel movement speed.

The race is considered to be finished when one of the following events occurs

2
nortal.com

• all the targets have been collected


• the vessel crashes to race area boundaries
• the race lasts longer than 10 minutes or 1200 simulation cycles
Target is collected when your vessel coordinates are not further than 2m from the target
coordinates.

3. Set Up
3.1. Gradle
Remember that gradle commands can be executed in three different ways:

1. When you have Gradle installed: gradle <command>


2. When working on Windows command line or PowerShell: gradlew.bat <command>
3. When working on MacOS, Linux or Windows 10 Shell: ./gradlew <command>
In current guide all examples will use the first format that you can adapt if needed.

3.2. Tests
We have provided you a set of unit tests to simplify development of the controller code. We
recommend to use your IDE to execute the tests that have been provided but you can do it from
the command line as well.

• To execute single test just run:


gradle test --tests "*SimpleStraightTest.testStraightLineSingleTarget"
If you remove --tests option, then all tests will be run.
• You can also run the tests without simulation visualizations. Just add
-Dsimulator.disable.gui=true to your command line.

Das könnte Ihnen auch gefallen