The what of SOFEA
Instead of server-side programs, the JavaScript simply calls a web service, gets an answer, and populates the website itself. This transfers the building of the web onto the web browser, reducing server load. It entirely separates the front end from the back, allowing them to be tested and built separately.
Instead of server-side programs, the JavaScript simply calls a web service, gets an answer, and populates the website itself. This transfers the building of the web onto the web browser, reducing server load. It entirely separates the front end from the back, allowing them to be tested and built separately.
Implementing a SOFEA project forces the company to apply web services for every client action -- from login to search to product details -- that can pull data back. Although the most common implementations are REST and JSON, the form of service doesn’t really matter. What doesmatter is that when you are done, you’ve got an entire set of reusable components you can call from anywhere -- like the iPhone app you have to write next month, the Windows 8 app you’ve got create after that, or the app you might need to put together on the platform that hasn’t yet been invented.
Once the services are in place, writing the new app is a re-skinning process, not a rewriting process.
One person (or team) can work on the services, another on the front-end, and we can reduce both time to market and debugging. This is exactly what was happening at Joe's company, with two different teams doing the work through clearly-defined service contracts.
Pros and cons
All this brings me back to figuring out what was broken: the JavaScript on the client or the back-end service data. To determine that, I became very familiar with Chrome, IE, and Firefox's Dev Tools, and how to monitor the traffic flow and examine the payload that actually came back from service requests. It takes a few minutes of extra debugging for every problem, so I guess the cost depends on how good your programmers are.
All this brings me back to figuring out what was broken: the JavaScript on the client or the back-end service data. To determine that, I became very familiar with Chrome, IE, and Firefox's Dev Tools, and how to monitor the traffic flow and examine the payload that actually came back from service requests. It takes a few minutes of extra debugging for every problem, so I guess the cost depends on how good your programmers are.
To implement SOFEA, you'll probably need a rewrite, or you'll have to convince someone to use the architecture for a brand-new, from-scratch project -- which, of course, carries other kinds of risks.
Will SOFEA be the standard architecture for all tomorrow’s projects? Probably not. One thing I can tell, however, is that whatever the architecture of tomorrow will be, it won’t be the architecture of yesterday. And SOFEA does let you cut off the head of the user interface and substitute something else:
1 comment:
This is taken from http://www.internetevolution.com/author.asp?doc_id=264700
Post a Comment