Internship

Company relative to develop a software platform to manage fleets by GPS

Onboarding

Objetive:

A junior or sernior software developer would be read the document, explained below, and understand it:

  • the business model.
  • kwnow the practices on the company.
  • develop software.

Tools

  • IDE Visual Studio with c# for server and client side.
  • GIT
  • SQL Management Studio
  • Postman
  • Azure Devops: boards, repository, Pipelines,
  • Workspace Google

Enviroment Configuration

  • access to network
  • git user
  • connection string to database
  • ip’s servers.

TODO: explain how

Arquitecture and framework

  • Angular
  • RestFul API
  • Microservices
  • Multilayer
  • Entity Framework
  • Patterns : DI, Mediator, Repository

Techniques

  • SOLID
  • LINQ
  • CQRS with MediatR
  • Mapping with Dapper
  • Event bus with RabbitMQ

References

Microservices

Procedures

  • Git: creating branches by US

TODO: explain how

Bussines model

  • Management fleets by gps.
  • Entities:
    • base
    • companymaster
    • company
    • client
    • employe
    • product
    • order
    • fleet
    • vehicle
    • insurance
    • operator
  • Diagram class

classDiagram

class CompanyMaster 
class Company 
class Customer
class Employee 
class Insurance
class Fleet
class Base
class Product
class Vehicle
class Order
class Operator

CompanyMaster <|-- Base: Aggregation
CompanyMaster <|-- Product: Aggregation
CompanyMaster <|-- Company: Aggregation
Company <|-- Customer: Aggregation
Company <|-- Employee: Aggregation
Company <|-- Fleet: Aggregation
Customer <|-- Insurance: Aggregation
Fleet <|-- Vehicle: Aggregation
Order <|-- Company: Aggregation
Order <|-- Operator: Aggregation
Operator <|-- Employee
Order <|-- Fleet: Aggregation

Features

company, clients, providers, orders, employees, schedule control, job signing

Definition of the terms according the point of view.

Apliying Business model to develop sotware

  • List microservices
  • Uses Cases.
  • Query logic.

Example of diagram

gantt
    title A Gantt Diagram
    dateFormat  YYYY-MM-DD
    section Apis
    Develop     :a1, 2022-01-01, 20d
    Publish     :after a1  , 20d
    section Platform
    Develop      : 2022-01-12  , 12d
    Testing      : 24d
    Production : 2d

Vocabulary

  • flotas
  • pedido
  • servicio
  • facturación
  • cobro
  • orden
  • supervisor
  • empleado
  • recorrido
  • distancias
  • tarifas

Functions

  • Localizar flota.
  • Asignar choferes a ordenes de trabajo.
  • Fichajes.
  • Facturación.
  • Informes de la actividad de la fota.
  • Informes de la facturación a los clientes.
  • Comisiones y liquidaciones.
  • Seguimiento del pedido.
  • Integración API.