public OutcomingDocument createOutcomingDocument(IncomingDocument initiatingDocument) {
        if (getEnvironment() != null ) {
            if (getDepartment() != null ) {
                OutcomingDocument outcomingDocument =
                        new OutcomingDocument(
                                getEnvironment().getOutcomingDocType(),
                                this,
                                getDepartment().getPublicService()
                        );
                outcomingDocument.setText(this.getInformationForReply());
                initiatingDocument.setReactionDocument(outcomingDocument);
                outcomingDocument.setInitiatingDocument(initiatingDocument);
                outcomingDocument.setDocumentName(ExecutionDefaults.OUTCOMING_DOC_NAME);
                return outcomingDocument;
            } else
                throw new IllegalStateException(ExecutionDefaults.DEPARTMENT_IS_NULL);
        } else
            throw new IllegalStateException(ExecutionDefaults.ENVIRONMENT_IS_NULL);
    }