A small web application to manage your tasks
2.1 System Container Context C1-C2
Definition:
Domain - A sphere of knowledge, influence, or activity. The subject area to which the user applies a program is the domain of the software. Domain-Driven Design Reference, Eric Evans
Main reasons for selecting this domain:
- It is common to have different tasks throughout the day.
- It is not easy to remember everything we have to do.
- It's a simple project with which I can learn a little more about Django.
- This project can help people to manage their day to day life.
Tasks and users
The main project entitie are tasks
and users
. A person becomes a user
by registering.
A task
can be created by a user
.
A task
can be deleted by a user
.
A task
can be updated by a user
.
A user
can have multiple tasks
.
Definition:
CRD Model - A CRD model is a collection of cards that represent whole or part of an application or problem domain. It's a model that I have created to represent the responsibility and dependency of the classes of a project. This model can be used for projects with object oriented programming or functional programming approach.
There are many ways to show behavior and events. One of them is a light technique called Event Storming which is becoming more popular. Below are presented 2 main business processes using this technique: user registration and tasks.
Note: Event Storming is a light, live workshop. One of the possible outputs of this workshop is presented here. Even if you are not doing Event Storming workshops, this type of process presentation can be very valuable to you and your stakeholders.
User Registration and Task Management process
C4 model is a lean graphical notation technique for modelling the architecture of software systems.
As can be found on the website of the author of this model (Simon Brown): The C4 model was created as a way to help software development teams describe and communicate software architecture, both during up-front design sessions and when retrospectively documenting an existing codebase
Model C4 defines 4 levels (views) of the system architecture: System Context, Container, Component and Code. Below are examples of each of these levels that describe the architecture of this system. In this example I will use a hybrid of system context (C1) and container (C2) for the simplicity of the application.
-
Clone the repo
git clone https://github.com/joseluistello/ToDo-List.git
-
Create Virtual Enviroment
cd ToDoList
virtualenv venv
-
Run Virtual Enviroment
venv\Scripts\activate
-
Install Django
pip install Django
-
Run Django
python manage.py runserver
José Luis Tello - @jotaele_tello - joluistello@gmail.com