Here we’ll learn how we can start any project. Most of the time, we just learn the things. But we never focus on how to start the things. I’ve seen many students in my life and myself I’ve also wasted my lot of time because I don’t know how to start the project. And mostly people learn this skill in the professional life.
Difference of Software Industries
We’ve 2 kinds of software industries.
In Product Based Industry, most of time it doesn’t matter how we’re writing code. They want just tasks completions. In product based scenario, software houses doesn’t care about the refactoring of code. They just focus on how to make money. And it is really true, if you want to make money then you can choose product based approach. But keep in mind, they are not interested to learn and implement the new technology. They know that the work has been done with the classical technologies which they’re using so they are not interested to learn the new things. They even don’t care about the design patterns, architectural patterns for software development.
But in the Project Based Scenario, you learn the new things. Although you’ll make less money instead of in product based but it would be better for you to move with project based. You’ll use the new tools and technologies here. You’ll see the new and latest approaches. But you’ll make your nighter on as well. Because in the Project Based companies, employees are fully available in day n night.
If you ask the interviewer that what is your company approach Product based or Project based, it makes a good impression as well on the interviewer.
Project Plan Steps
Now come back to the point, we were discussing how we should start our project. Actually the requirement gathering is so much important. If the requirement is clear to the developer and the client then your project 50% has been completed. Most of the time you’ve seen the software companies just start with a document. They should visual clear the things. Anyways let’s discuss the cycle that I found many helpful and saves a lot of time and effort.
Mind Mapping is a technique where we use the main pointers which describes our project completely. Most of the time client just thinks that he need this feature, this feature, this feature and same in the developer case and we also forget these important things.
So what we do, we visualize the things to make the better understandability of the things. Just gossips about the requirement isn’t enough, we need to clearly understand and document the things visually.
There are many formats of data which increases the understandability of the document. So instead of read the textual file from start to the end. Make the mind map and verify it from the client. In this way client will also get an idea what he is ordering and what they’ll develop for him.
There are many mind mapping tools, but I recommend 2 of them.
The concept of making the mind map is same on any tool you just know what they are and how you can use it.
After completing mind map, you can easily discuss with the client how many modules are there in the system, how they work, what is the basic need, how much time you need to make this project. Most of the things will be clear to you.
In different scenarios and for the different requirements obviously mind map and mind map making technique will be different. But the main idea is.
Start with Main Idea
And then add the branches named with modules
And then add sub branches with their functionality.
I’ve make a mind map you can take an idea from here.
Now it is the time to define the flow of your project. You’ve everything is clear what you’re going to build. But you don’t know what the layout of your project is.
The recommendation is, let’s suppose you’re building a matrimonial application then you should search minimum 5 different matrimonial applications and of different regions. List down the strong and weak points of these application at one pace. And then you’ll get an idea what you should do and what you should avoid from, which makes your system more attractive and what increase the user attraction. Here we’ve mockup tool is Balasmiq.
You need to do no code. You just drag and drop the things and it will be clear to you what layout you should have for this screen. You can design any mockup of mobile, desktop and web as well.
Decide The Theme (For Web Developers)
Now you’ve an idea what are the important things you should have in the mockup. You can easily decide the theme for your web project. And if the theme isn’t according to your mockup then it might be near to your balsamiq mockup and then you need to manually customize the theme according to your own requirements. You can see thousands of themes from themeforest relevant to your requirement.
Business Requirement Document (BRD)
It is important because if you make the BRD of your project then you can make your database very easily but it is not so essential. If you directly move on from the 3rd step to the 5th step then it will be ok as well. But BRD also important.
Take the screenshot of your screen
Place it in Word File
And Add the description that what you need here in this screen (name of fields)
It helps the team to understand how we can develop this screen. How to develop the database what are fields actually we need there.
Table mapping is also the part of BRD in which we mention all the table names and their columns instead of giving the credentials to any developer who is working on the project and make something bad in database. The purpose of BRD is if we give this document to anyone anytime then he can develop the application independently without asking any question. All the details are mentioned there. For example, this is the screen
House Items comes from ‘House’ Table
Items should be in order, latest house items comes first.
Redirect to House Item Detail Page on clicking the item.