In this
research paper Gartner analyst points out that “Cloud deployments, mobile
interfaces and advanced analytics are changing the way in which applications
need to be structured. Application managers must ensure that application
architecture is effective in improving the versatility, usability,
maintainability and robustness of applications.”
One of the
key challenges is that architectural communications are sometimes inconsistent
within application development team actives. Application architects must
quickly determine which of their decisions are important for the success of the
project. The primary activity here is balancing the project requirements
(including time and budget) with architectural requirements — and identifying
what decisions will need to be made, and which architectural tools make sense
to implement those decisions.
Often time I
see in our organization is that project requirements take the dominant position
and architecture requirements are being neglected due to the constraint of time
and budget. Application architects pay more attention to the project itself
rather than architecture requirements. One of the examples is that when we try
to implement an application, from desired architecture perspective we should
consider cloud implementation which is in alignment with enterprise architecture principle
and organization’s vision and strategies. In the meantime the cloud providers
on the market cannot meet all project requirements at the moment. As an
application architects we should balance the architecture requirements and
project requirements, we can define a transitional architecture to provide
business continuity while keep the architecture requirements. Sometimes it
becomes battle and ends up architecture requirements are being neglected.
Best practices
make sense but require education and communication within the organization
especially between project teams and enterprise architecture team. Maturity of
the organization enterprise architecture plays a big role for adopting best
practices.