Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design