Skip to content

Software Development at Program Tom LTD

Place for coding, programming, development and software in general.

Menu
  • Blog
  • PDF Booklets
  • Dev Utils & Content
  • Java Spring Boot Or Web Apps
  • English
    • български
    • English
    • Español
    • Português
    • हिन्दी
    • Русский
    • Deutsch
    • Français
    • Italiano
    • العربية
  • About Us
Menu
Vertical vs Horizontal Software

Vertical / Horizontal Software Development

Posted on June 14, 2023June 14, 2023 by Toma Velev

Vertical and horizontal software development are two different approaches to organizing and structuring software development. This depends on the client and organization requirements and business and architecture choices.

Vertical Software Development

From Business Perspective

Coding software vertically means – getting things in production as fast as it can – even if the product is not 100% complete and functional. The goal here is the engineers to complete a Minimal Viable Product one of the steps of a startup. The end user should have something working that he could experiment with and probably – suggest – some direction to the feature that he/she requires. This is again a good startup step.

Software Developer Perspective

From Engineer perspective – this means a lot more than it is seen for, especially if the continuos development will step on the work done so far.

  • Some clarity by the business analyzers – on the functional requirements. Without clear requirements – the software will be endlessly changed – getting into frustraction all the participants – coders, testers, managers, clients, users.
  • Coders than offer first development environment that will be sufficiant and will execute the logic
  • In a perfect world there should be also a test environment – tested independentily from the developer
  • Two one or two more setups are needed – where – ideally – even the developer does not have access to – but a person with Non Discloser Agreement signed. There – the code of the developer is deployed independently by a DevOps expert.

For start-ups some of the above role separations may be executed by single person. But, the required work – mostl likely will not be devided. After the initial setup – thanks to Git hooks – a code change should be moved to production with minimal effort.

Horizontal Software Development

Horizontal development means – getting s package of features done – before delivering it to production. This approach is more meaningful for well-financed projects and products. They generally are build by bigger teams  and the quality is greater – thanks to the additional eyes looking at every step of the product develolment and to the time for work.

Image Source https://pixabay.com/vectors/algebra-axis-blue-calculus-column-155879/

  • Feature Flags – Enable Functionality from the BackEnd
  • Integrating xAI Grok API with Spring Boot
  • How to Progresively Integrate AI
  • What is an AI Agent
  • Flutter image scaling

Categories

  • Apps (22)
  • ChatGPT (23)
  • Choosing a Framework (38)
  • Flutter (256)
  • Graphical User Interface (14)
  • Marketing (116)
  • Software Development (281)
  • Spring (44)
  • StartUp (22)
  • Uncategorized (14)
  • Uncategorized (4)
  • Vaadin (14)

Tags

Algorithms (9) crypto (29) flutterdev (39) General (86) Java (7) QR & Bar Codes (3) Software Dev Choices (33) Spring Boot (1) standards (1) Theme (3) User Authentication & Authorization (9) User Experience (10) Utilities (19) WordPress (11)

Product categories

  • All Technologies (84)
    • Flutter Apps (24)
    • GPT (4)
    • Java (38)
    • Native Android (3)
    • PHP (9)
    • Spring (Boot) / Quarkus (35)
    • Utils (15)
    • Vaadin 24+ (27)
    • Vaadin 8 (1)
  • Apps (18)
    • Employees DB (1)
    • Notes (6)
    • Personal Budget (1)
    • Recipes Book (1)
    • Stuff Organizer (1)
    • To-Do (2)
  • PDF Books (3)
  • Source Code Generators (8)

Recent Posts

  • Feature Flags – Enable Functionality from the BackEnd
  • Integrating xAI Grok API with Spring Boot
  • How to Progresively Integrate AI
  • What is an AI Agent
  • Flutter image scaling

Post Categories

  • Apps (22)
  • ChatGPT (23)
  • Choosing a Framework (38)
  • Flutter (256)
  • Graphical User Interface (14)
  • Marketing (116)
  • Software Development (281)
  • Spring (44)
  • StartUp (22)
  • Uncategorized (14)
  • Uncategorized (4)
  • Vaadin (14)