Build Real World Web Application in ASP.NET Core and MVC

Sandeep Kumar
Web Development
  • 343 students
  • 46 lessons
  • 0 quizzes
  • 16 week duration

1.8 Get Ready for your first challenge

This is a very common question from new software developer that from where we should start. So I thought to explain you the  various steps involved from requirement gathering to actually start the development.

What are use cases

So after getting the requirement from a client, the first thing in software development is to break the requirement into smaller tasks. These smaller tasks are called Use cases. Basically these smaller tasks are the activities performed by different users into any software.

Use Case Diagram

So before creating the use cases, business analyst creates high level diagram of use case, that is called “Use case diagram”

Let’s look at the use case diagram of the application we are going to build. I have not added all the activity in this use case for our application, as it will make our diagram too much complicated to understand.

Use case diagram for our application

I have created diagram for two roles here and in the same way we can create diagram for other roles as well.

This one is very basic use case diagram, If you want to know more about use case diagram, you can watch the video from the following link

So after creating the high level use case diagrams, I writes detailed use cases for each activity

Dependency Graph

Once I have all the use cases, I create dependency graph for each activity. So let’s pick one of use case for our application, i.e.

Sort Bike – So in order to create this functionality, we should have List of Bike, so we should have List Page first

List Page – In order create list of bikes, we should be able to add bikes

Add Bike – So you have the order in which you will have to add the functionality in your application.

Add Bike -> Bike List -> Sort Bike

Dependency Graph

Isolate your mind

When working on any activity, you should isolate your mind only for that activity. And always first try to create very basic functionality, for example if  you are working on Listing Bike, you should not be worried about sorting, layout of page and other fancy features.

After creating very basic list page, you can further go ahead and can make your list page more attractive by adding style sheet and images.

Add Bike Dependency

After creating the dependency chart we can start implementing the use cases. So let’s implement “Add Bike” use case. To implement any use case, we have to think that how our user will interact with our system for that use case. So to add a Bike we will have a user interface something like below

Add Bike Form

Make – We will have drop down list here for various makes i.e. Harley Davidson, Ducati etc.

Model – After selecting the make, related model should be populated for that particular make in this dropdown. So will will create cascading dropdown here.

Features – And to select features we will have check boxes to select various features on this screen.

Let’s go back to our Dependency Graph and further analyse that what is needed to add MAKE in our application.

Dependency graph to add a bike

Add Bike – To add the Bike , we should have a user interface, in MVC Framework, user interface is created from View, that is “V” in MVC.

View – In order to save the Make , we should have database tables

Database Tables – As we are using code first approach in our course, So to create a table in database, we will add domain classes first

Domain Classes – So here we will add domain class “MAKE”

We will take baby steps here, we will just create Database and Domain Model for our first challenge.

Week #1 Activities

We will complete following activities in coming week

  1. Create Basic MVC project
  2. Add  connection string
  3. Create domain class for Make
  4. Add Database Migration
  5. Run Update-database command to create Database and MAKE table in our database.

I will complete these activities in coming week and will publish the video and code by the end of week.


2 thoughts on “1.8 Get Ready for your first challenge

  1. Nice to see you introduce the concept of Use Cases in this course. Normally, you don’t see this in development courses/tutorials, but it has so much power as its visualization support understanding.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.