This position paper suggests an approach for building software systems using patterns, right from business architecture to software architecture. Further, the approach incorporates a concurrent and iterative development process to ensure that the business architecture and software architecture are aligned, end to end. Usage of patterns leads to reuse of various artifacts, involved in the software development life cycle.