При выполнии теста на должность PHP-девелопера в иностранную компанию неожиданно наткнулся на задание, которое ввело меня в ступор и заметно снизило самооценку. Задание я не выполнил, но теперь оно меня гложит.
In large IT company employees are working on many different projects. For controlling the project, it is crucial to know how much time the employees needed for the implementation of projects.
Please conceptually design an application with which it is possible to detect the time required. To do so, please complete the following prerequisites:
− the company has a TCP / IP based network
− the acquisition should be integrated as much as possible
− there must be a central evaluation option
Please create the following information in a Word document:
− general structure of the application (components, communications, etc.)
− proposals for technologies to be used
− important classes / modules and their relationships
Я даже не знаю, как сформулировать вопрос, потому что никогда подобным не занимался. Одно дело создать структуру классов, на в данном случае это лишь малая часть задания. Я бросился за книги (Code complete, Domain Driven Design), но они достаточно объёмны и я даже не знаю, в правильном ли направлении двигаюсь.
А вопрос, собственно, в том, что нужно делать/читать/смотреть, чтобы быть в состоянии подобное задание выполнить. Хотя бы минимально.