To understand main goals of a design process, you need to know what a design process is. Well, this is a process that transforms customer requirements into products in a level that fulfill those requirements.
Well I guess the goal of the design process is obvious now. In simple terms, you need to deliver a product that meets customer satisfaction.
There are guidelines for taking this approach, but the bottom line is taking that approach is up to you.
Regarding Architecture, you are %100 correct. EJB, Oracle, Struts, are not architecture.
Architecture is overall structure of system and subsystems and their interfaces. architecture considered "mainly" non-functional requirements. (Again, mainly) i.e. scalability. Architecture functions at a high level of abstraction. Architecture is a discipline.
Although, when you get to "Architecture design" that involves creation of architectural design, that's where you start talking about technologies.
I understand that these descriptions are a bit boring, but once you realized the steps into your SW development process that only matter left would be make your hands dirty with them