Arctool is built for efficiency and ease, it aims to make the architect's job easy which in turn will make everyone's work easier. It does this by accepting and processing Functional Requirements written in a Natural Language, either structured or unstructured. With the Functional Requirements being specified, it then processes the JavaDoc to identify requirement patterns with the aim of reusing already established solutions from a Software-Portfolio. These solutions are then used to construct a meta-model, a model that is later used to generate a component diagram and/or an interaction diagram.