- Here is summarization for the Airport Controller project.
./20170816-2007-cet-1-1.png
- Write a small application to manage information system in an airport.
- They said here it is a "small" application. However, I to make a "small" application I think I have been thinking to hard.
./20170816-2007-cet-1-2.png
- The application is intended to manage arrival and departure of all arriving and ongoing out airplanes.
./20170816-2007-cet-1-3.png
./20170816-2007-cet-1-4.png
./20170816-2007-cet-1-5.png
./20170816-2007-cet-1-6.png
- Here, the first user is mentioned, the airport.
- The airport needs to state these informations attached for each departing and ongoing airplanes.
- Airport which the airplane departing from.
- Airport which the airplane going to.
- The date of of these airplanes departing or going to this (particular) airport.
- The flight codes (for example AZ383, ...).
- So these requirements means that this application will be made specifically for an airport. The airport management and not the air traffic controller (ATC).
./20170816-2007-cet-1-7.png
- Every time a flight starts (departing from this airport) the controller (I think this is the controller's job) needs to assign which lane will be used to depart and date and time.
- Thus, there are only 2 variables need to be filled by the ATC.
- When (date and time).
- Which lane is used.
./20170816-2007-cet-1-8.png
- Same variables are there when an airplane just landed into this airport.
./20170816-2007-cet-1-9.png
- Each controller is represented by a code and a name (first name and last name).
- There are 3 fields need to be there when registering ATC.
- Code.
- First name.
- Last name.
./20170816-2007-cet-1-10.png
- The user need to state the flight codes.
- However, I am confused who is the "user"? The airport management itself or the ATCs?
./20170816-2007-cet-1-11.png
./20170816-2007-cet-1-12.png
- The system then visualizes the data of the flight.
- However, it is stated here that the data needs to be an actual flight data.
- I think I need to search for an API that has all airplanes schedule.
- I am thinking of Schipol Airport. However, since I think Schipol is too big, I would consider smaller airport like the one in Eindhoven.
./20170816-2007-cet-1-13.png
./20170816-2007-cet-1-14.png
- The user (I assume this is the ATC) chooses if they want to register new departure or arrival.
./20170816-2007-cet-1-15.png
- The statement above means that every controller is attached to a flight.
- There is this important statement. The system adds the controller to the flight departure and arrival.
- So, I was thinking that I need to have two different kind of users: the airport management and then the ATCs.
- However, "the system" mentioned here, I think, means that the airport management itself is a back - end system that adjust everything automatically.
- The only human - users are those designated as ATC.
./20170816-2007-cet-1-16.png
- The system will automatically register all incoming real - time data.
- Then it needs to put all the data into a nice web page.
./20170816-2007-cet-1-17.png
- These are some bonus point for this assignment.
- The system needs to be able to visualize error messages and ask the user to input the correct parameters.
- However, how can be this happened (or simulated)?
- The system will automatically enter data from the API. And there is little to no chance that the API will provide a wrong flight data.
- Or should I just create a simulation where time runs 10 times faster (or more) and then create a function to randomly and occasionally put an invalid flight data.
- I will think about this later.
./20170816-2007-cet-1-18.png
- It says here that all departure and arrival is already registered. And then the system visualize an error message that asks the the user (ATC?) to edit the correct data.
./20170816-2007-cet-1-19.png
- If the controller is not assigned then the system visualize an error and ask the user to correct the data.
- I started to think that this application has nothing to do with ATC.
- This application more like an airport manager that will assign free ATC to a flight.
- And then the ATC automatically assign the lane and the date.
- I will look into the whole document again later.
./20170816-2007-cet-1-20.png
- I need to develop the structure and the schema of the application.
./20170816-2007-cet-1-21.png
- Develop smaller fragments of the application to use cases.
- I think, for this assignment, it will be good to display my knowledge on unit testing with Angular and Python as well.
./20170816-2007-cet-1-22.png
- I need to find out on how to make a proper use case.
- From my first search with Google, it appears that use case or UML is a part of agile development.
- Here are some links about use case.
- From the last link it appears that the notation of "use case" is a sub - category of UML. UML itself is a method of diagramming and has a lot others than the "use case" itself.
./20170816-2007-cet-1-23.png
- Use HTML5 for structuring the view contents.
./20170816-2007-cet-1-24.png
- Use JavaScript and preferably with AngularJS 1.X and JQuery.
- My intention for this project is to create the least amount of library possible.
./20170816-2007-cet-1-25.png
- The assignment tells that the persistent data can be made with database or file.
- However, I think this would be good to display my skill on designing database.
./20170816-2007-cet-1-26.png
- Here are all the criteria for my airport management application.
- Schema of the application (please refer to "use case" in UML).
- Contextual separation between presentation, content, and behavior (please use MVC!).
- Demonstrated my skills with JavaScript.
- Access from multiple browser (perhaps, make this application mobile friendly as well).
- Performance!
- Additionally, I think I would like to show off my Linux experience as well.
- The interviewer last call told me that they use Vagrant.
- However, there are 2 other options/complimentary of Vagrant.
- Docker.
- Kubernetes.
- Vagrant.
- Here is the .pdf file for the details and requirements document.
./20170816-2007-cet-1-27.pdf