Entradas

Mostrando las entradas de abril, 2020

The 4+1 View Model

The 4+1 View Model Developed on 1995 by Philippe Krunchten. This model break down the whole into sets of related parts. Is composed of the Logical View, the Process view, the Physical view, the Development view and the Use Case View. Logical view: Shows the parts that comprise the system it describes the system object model. And it has the following UML's: Class diagrams, state diagrams, object diagrams, sequence diagrams and communication diagrams. Process view: Describes as system´s processes it's UML is the Activity diagram. The Physical view: Maps software artifacts onto the hardware that hosts them. It has the deployment UML diagram. Development view: Gives a building-block view of the system which is composed of  system's modules, or components, including packages, subsystems, and class libraries. It uses the component UML diagram and the package diagram. Use case View: Show the system functionality, is helpful in defining and explaining the structure and

Understanding the SOLID Principles

Understanding the SOLID principles SOLID  is an acronym that stands for five widely accepted principles of object-oriented programming and design. These principles are: ➜ S Single Responsibility Principle ➜ O Open/Closed Principle ➜ L Liskov Substitution Principle ➜ I Interface Segregation Principle ➜ D Dependency Inversion Principle Th solid principles seek to avoid dependence, the more things you depend on, the greater the chance something will go wrong. The Single Responsibility Principle  (SRP) declares a class should have exactly one responsibility. Here is a violation of the principle extracted from the article: var myReport = new CashflowReport (); formatReportHeader ( myReport ); printReport ( myReport ); void formatReportHeader ( Report report ) { report . Header . Bold = true ; if ( report is CashflowReport && report . Content . Profit < 10000 ) { SendAlertToCEO ( "Profit warning

Microservices

Imagen
Microservices The term "Microservice Architecture" has sprung up over the last few years to describe a particular way of designing software applications as suites of independently deployable services.  "The microservice architecture  is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API." Enterprise Applications are built in three main parts:  A client-side user interface A database  A server-side application. The server-side application will handle HTTP requests, execute domain logic, retrieve and update data from the database, and select and populate HTML views to be sent to the browser.  Monolithic applications vs Microservices Monolithic applications have some disadvantages just as: "A change made to a small part of the application, requires the entire monolith to be rebuilt and deployed." In a simi