TransWikia.com

How to approach web app development?

Software Engineering Asked by Rasmus on December 4, 2020

I have been going through Flask and it seems that now I have a decent understanding to go ahead and build a web application. However I want to know how would I approach the problem. For eg: I decide to build a blogging application. The first thing I do is write down all the things that come to my mind, from user registrations to posting data on the blog to publishing it on the site

But after that I just get into coding. I know that is not the right approach. I have heard of UML diagrams, workflow diagrams and stuff. It would be great if someone could just outline the steps they would follow for building a large application and then I could go ahead and learn more about them.For eg,it could be something like the below:-

  1. Collect requirements
  2. Draw UML diagrams
  3. Draw workflow diagrams
  4. Start coding

Please suggest an exhaustive list so that I can make my approach much more systematic. Thanks

One Answer

Drop the diagrams for now, and only use them if/when you feel the need.

Look into value-driven development as the overall approach and TDD for the specifics.

Begin by creating a bunch of stories. For instance, if creating a blog web site, the first step would probably be "user should be able to write a simple blog entry" followed by "user should be able to display his blog entry" etc.

Next, pick the most valuable story using this question as guideline: if you had to release today, what would be the single most valuable functionality?

Then, break the selected story into small technical tasks such as "Create a html form", "Write back-end for submits" etc which can be completed in a few hours.

Now:

  1. Pick the next task
  2. Write a unit test for it
  3. Make the test pass
  4. Refactor code
  5. Not satisfied? goto 2
  6. Release it and/or goto 1

Make sure to use small incremental steps and keep your system working after each iteration so you don't get stuck in analysis paralysis.

This is just scratching the surface of course, but it should get you going I think.

Correct answer by Martin Wickman on December 4, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP