Front-end first software development approach
https://devcode.la/blog/frontend-y-backend/

Front-end first software development approach


You might have observed, currently software architecture diagrams begis with bunch of backend component, few layers, few more two way interactions and then a small box called [WEB/MOBILE] at one side.

So project architecture diagram is established for for backend and then enforced on frontend. Are you seeing the ‘web clients’ part at bottom right corner.

Frontend have many other dependencies to begin with also, e.g. Choosing a framework, deciding rest api parameters etc.

So, the face of the project is neglected somehow, and it becomes more prone to changes later on, because backend APIs keeps on updating, and frontend has to cope-up.

So I will brief the benefits of 'frontend first software development approach' below:

You have deliverable ASAP

If you start your project by developing the frontend part first, then even if your backend is not done, project is still completely deliverable, as it can give customers a hands-on experience, and make them used to the approach. They can give their feed back early on, which might save a lots of time in the future.

You can also mock your backend using sample JSON if needed

Scalability

Let’s face the situation, front-end frameworks are growing up on it’s maximum speed, and it’s never easy to incorporate all the latest feature and modules, unless your front-end is thought through.

While staying up to date is important for backend technologies also, but their fundamental designs and basic data flows never change. So it’s easier for them keep-up later on.

Better Productivity and Application Performance

If you know already that, what content you want to show, or how many fields will you have in your form or how many columns will you have in your datagrid, it will be easy to guide backend developer to write APIs accordingly, since you already know your parameters, you’r payload size will be optimum and so is your performance. You can easily decide that how many APIs you need to develop and publish, what kind of security approaches you may need etc.

Agile Cycles are more productive

Since you are having a demo-able output every week, you can also feel a sense of progress for your project. You can also show your product owners about what will come next, so they can prepare better reports and strategies as well.

Code is better structured

It’s never easy to visualize everything in mind, while your developing a modular application, you tend to over-do or under-do things. But if your frontend developer is proactive enough to give these details, that where and when you need to breakdown your packages, and modules. You will know, where you needed a separate project or a package and what utilities you need to keep in common to fulfill your exact needs.

Let me know your thoughts as well.

要查看或添加评论,请登录

Adarsh Somani的更多文章

社区洞察

其他会员也浏览了