Apps Methodology

Patient Tools

Read, save, and share this guide

Use these quick tools to make this medical article easier to read, print, save, or share with a family member.

Patient Mode

Understand this article easily

Switch between simple English and easy Bangla patient notes. This is for education and does not replace a doctor consultation.

Recent studies suggest that software as a service (SaaS) is expected to grow to more than $104 billion in 2020. With the continued shift from on-premises licensed software to subscription-based SaaS models, this remains the largest market segment in software. Fueled by the need for software...

For severe symptoms, danger signs, pregnancy, child illness, or sudden worsening, seek urgent medical care.

বাংলা রোগী নোট এখনো যোগ করা হয়নি। পোস্ট এডিটরে “RX Bangla Patient Mode” বক্স থেকে সহজ বাংলা সারাংশ যোগ করুন।

এই তথ্য শিক্ষা ও সচেতনতার জন্য। এটি ডাক্তারি পরীক্ষা, রোগ নির্ণয় বা প্রেসক্রিপশনের বিকল্প নয়।

Article Summary

Recent studies suggest that software as a service (SaaS) is expected to grow to more than $104 billion in 2020. With the continued shift from on-premises licensed software to subscription-based SaaS models, this remains the largest market segment in software. Fueled by the need for software collaboration tools due to the COVID-19 pandemic, SaaS is needed now more than ever before. The pandemic has forced remote work...

Key Takeaways

  • This article explains 12-factor app methodology: Key concepts in simple medical language.
  • This article explains Unpacking the 12 factors: Essential components of this approach in simple medical language.
  • This article explains Find talent to match your development methodology in simple medical language.
Educational health guideWritten for patient understanding and clinical awareness.
Reviewed content workflowUse writer and reviewer profiles for stronger trust.
Emergency safety firstUrgent warning signs are highlighted below.

Seek urgent medical care if you notice

These warning signs are general safety guidance. Local emergency numbers and clinical judgment should always come first.

  • Severe symptoms, breathing difficulty, fainting, confusion, or rapidly worsening illness.
  • New weakness, severe pain, high fever, or symptoms after a serious injury.
  • Any symptom that feels urgent, unusual, or unsafe for the patient.
1

Emergency now

Use emergency care for severe, sudden, rapidly worsening, or life-threatening symptoms.

2

See a doctor

Book a professional medical evaluation if symptoms persist, worsen, recur often, affect daily activities, or occur in a high-risk patient.

3

Learn safely

Use this article to understand possible causes, tests, treatment options, prevention, and questions to ask your clinician.

Recent studies suggest that software as a service (SaaS) is expected to grow to more than $104 billion in 2020. With the continued shift from on-premises licensed software to subscription-based SaaS models, this remains the largest market segment in software. Fueled by the need for software collaboration tools due to the COVID-19 pandemic, SaaS is needed now more than ever before.

The pandemic has forced remote work into the spotlight. As the globe adapts to this new work arrangement, businesses are discovering the highly productive nature of remote work. Many companies have had to quickly adapt and solve issues that were still prevalent in physical offices. Luckily, SaaS models help solve some of the most prominent issues, like collaboration, which allows companies to reap the full benefits of remote work.

It’s no surprise that SaaS applications are everywhere, as they’re essential to modern businesses. That being said, building, developing, and maintaining these apps can be challenging. Development teams need a comprehensive approach to delivering a high-quality product.

In this guide, we’ll deliver an overview of the 12-factor app methodology, an approach to building SaaS apps.

12-factor app methodology: Key concepts

The 12-factor app methodology was developed to help developers build applications that run as a service. It can be applied to applications written in any programming language and use any combination of backing services. Nowadays, the software is usually a service, which necessitated a new methodology to deliver the highest-quality products.  

The 12-factor app methodology is a triangulation of:

  • The best practices to support the development of SaaS applications
  • The dynamics of an app when it grows organically
  • The relationships between code-based developers

The 12 factors include:

  • Codebase
  • Dependencies
  • Config
  • Backing services
  • Build, release, run
  • Processes
  • Port binding
  • Concurrency
  • Disposability
  • Dev/prod parity
  • Logs
  • Admin processes

Unpacking the 12 factors: Essential components of this approach

1. Codebase

The first factor, codebase, focuses on having a single codebase with multiple deploys or “one codebase tracked in revision control, many deploys.” To properly follow this principle, you should avoid multiple code bases for various versions. Adding branches to one codebase helps ensure that your codebase is made of a logical version control system. Your repository shouldn’t house multiple applications, as it can become confusing.

In short, this means you need to:

  • Have one codebase
  • Make a logical control system
  • Have a code repository for every deployment. This code repository should be able to be deployed in multiple environments

2. Dependencies

The next principle is dependencies: explicitly declare and isolate dependencies. This means that you should never rely on the implicit existence of system-wide packages and instead have app-specific libraries. App-specific libraries should include the necessary system libraries, like ImageMagick, Pandoc, or cURL, and should allow shelling out to the operating system.

According to this principle, the 12-factor app must be:

  • Self-containing
  • Isolated to avoid interactions with any conflicting libraries

3. Config

The third principle, config, is an incredibly important principle, which states that you should never commit any environment-specific configurations, like a password, in the source code repo. In short, the application and its configuration must be independent, and storing configs in code should be avoided.

Why having a separate config file is important:

  • It simplifies the process of updating config values because you don’t have to touch the actual codebase.
  • It eliminates the need for the redeployment of the application when certain config values are changed.
  • Variables can be moved to a different environment since they’re not configured in the app.
  • Configs are independent of the operating system and language.

4. Backing services

The next principle is to Treat backing services as attached resources. This principle focuses on treating the external service that the applications depend on equally. Whether you manage the services or another party manages them, they need to be treated the same.

According to this principle, services that do not support the core app can be accessed as services. Because they’re accessed as services, they’re considered non-core essential services and are often treated as resources.

Non-core essential services often include external storage, databases, message queues, etc. These non-core essential services should be accessed as a service via HTTP, or a similar request, and stated in the config. With the usage of backup services, the service’s code can be changed at any time without the worry of impacting the core code of the application.

5. Build, release, run

In this next principle, it’s critical to strictly separate build and run stages. To begin, the build process should start by storing the app in source control and then building out all of its dependencies. By separating the config information, you can combine it with the release stage. From there, it’s ready for the run state.

These stages must be separated:

  • Building
  • Releasing
  • Running

In addition, each release needs a unique ID. 

6. Processes

Processes, the next principle, “execute the app as one or more stateless processes.” In short, this means that you don’t have to rely on any state being present in the memory on the file system because it’s stateless. All required data should be stored in a stateful backing service, such as a database.

7. Port binding

Port binding, the seventh principle, is essentially about the app is standalone. This is contrary to other applications that rely on running instances of an application server. According to this principle, a web server library or something similar to the core app should be used. In doing so, the app can wait for requests on a defined port.

8. Concurrency

The next principle, concurrency, states that you should “scale out via the process model.” Essentially, this means that you need to build the application so that scaling them in the cloud is simple. By developing the application to be concurrent, new instances can easily be spun into the cloud.

9. Disposability

In this principle, disability means that you should “maximize robustness with fast startup and graceful shutdown.” By following this principle, you’re building a more durable application.

According to this principle, your app should be able to die at any time, without impacting the user. Apps designed in this way can shut down smoothly and come back up again quickly. This ensures that your users won’t be affected.

10. Dev/prod parity

According to the dev/prod parity principle, the development environment should be nearly identical to the production environment. It’s stated that developers should “keep development, staging, and production as similar as possible.” Twelve-factor apps should have identical development and production code.

Vast differences between the environments could result in compatibility issues between the dev and prod code. Down the line, this could result in significant issues that are potentially time-consuming and a waste of resources. By following this principle, teams avoid the “it works on my machine” conundrum.

11. Logs

The 11th principle, logs, states that you should “treat logs as event streams.” This means that developers should stream logs to a specific location. Unlike traditional models, the 12-factor app methodology avoids dumping logs into a log file.

By treating logs as event streams, development teams avoid common issues that other developers face. When new processes start or when an app crashes, logs will be allocated across different cloud machines. By following this principle, developers avoid this issue and have a common place for the logs to stream.

12. Admin processes

The final principle, admin processes, requires that administrative tasks be separated from the rest of the application. Even when administration processes are separate, tasks should run in the same environment, against the base code and configuration of the app. Ultimately, by running admin and management tasks in this way, you’re preventing any drift from one another.

Find talent to match your development methodology

Now that you understand the benefits of the 12-factor app methodology and how it can be implemented, you need to ensure that your team is well equipped to handle this methodology.

Finding talented tech workers is made easy with Upwork’s expert-vetted talent collection. We help match you to the most talented tech professionals who are hand-selected based on your needs. By hiring independent developers, you can reduce costs, access top talent, and hire professionals when you need them.

Patient safety assistant

Check your symptom safely

Hi, I am RX Symptom Navigator. I can help you understand what to read next and what warning signs need care.
Warning: Do not use this in emergencies, pregnancy, severe illness, or as a substitute for a doctor. For children or teens, use with a parent/guardian and clinician.
A rural-friendly guide: warning signs, when to see a doctor, related articles, tests to discuss, and OTC safety education.
1 Symptom 2 Severity 3 Safe guidance
First safety question

Is there chest pain, breathing trouble, fainting, confusion, severe bleeding, stroke-like weakness, severe injury, or pregnancy danger sign?

Choose quickly

Browse by body area
Start here: Write or select a symptom. The guide will show warning signs, doctor guidance, diagnostic tests to discuss, OTC safety education, and related RX articles.

Important: This tool is educational only. It cannot diagnose, treat, or replace a doctor. OTC information is not a prescription. In an emergency, contact local emergency services or go to the nearest hospital.

Doctor visit helper

Prepare before seeing a doctor

A simple rural-patient checklist to help you explain symptoms clearly, ask better questions, and avoid unsafe self-treatment.

Safety note: This is not a prescription or diagnosis. For severe symptoms, pregnancy danger signs, children with serious illness, chest pain, breathing difficulty, stroke-like weakness, or major injury, seek urgent care.

Which doctor may help?

Start with a registered doctor or the nearest qualified health center.

What to tell the doctor

  • Write when the problem started and how it changed.
  • Bring old prescriptions, investigation reports, and current medicines.
  • Write allergies, pregnancy status, diabetes, kidney/liver disease, and major past illnesses.
  • Bring one family member if the patient is weak, elderly, confused, or a child.

Questions to ask

  • What is the most likely cause of my symptoms?
  • Which danger signs mean I should go to hospital quickly?
  • Which tests are necessary now, and which can wait?
  • How should I take medicines safely and what side effects should I watch for?
  • When should I come for follow-up?

Tests to discuss

  • Vital signs: temperature, pulse, blood pressure, oxygen saturation
  • Basic physical examination by a clinician
  • CBC, urine test, blood sugar, or imaging only when clinically needed

Avoid these mistakes

  • Do not use antibiotics, steroid tablets/injections, or strong painkillers without proper medical advice.
  • Do not hide pregnancy, kidney disease, ulcer, allergy, or blood thinner use.
  • Do not delay emergency care when danger signs are present.

Medicine safety and first-aid guide

This section is for patient education only. It does not replace a doctor, pharmacist, or emergency care.

Safe first steps

  • Avoid heavy lifting, sudden bending, and prolonged bed rest.
  • Use comfortable posture and gentle movement as tolerated.
  • Discuss physiotherapy, X-ray, or MRI only when clinically needed.

OTC medicine safety

  • For mild back pain, pain-relief medicine may be discussed with a doctor or pharmacist.
  • Avoid repeated painkiller use if you have kidney disease, stomach ulcer, uncontrolled blood pressure, or are taking blood thinners.

Avoid these mistakes

  • Do not start antibiotics without a proper medical decision.
  • Do not use steroid tablets or injections casually for quick relief.
  • Do not delay emergency care because of home remedies.

Get urgent help if

  • Back pain with leg weakness, numbness around private area, loss of urine/stool control, fever, cancer history, or major injury needs urgent care.
Medicine names, dose, and timing must be decided by a qualified clinician or pharmacist after checking age, pregnancy, allergy, other diseases, and current medicines.

For rural patients and family caregivers

Patient health record and symptom diary

Write your symptoms, medicines already taken, test results, and questions before visiting a doctor. This note stays on your device unless you print or copy it.

Doctor to discuss: Doctor / qualified healthcare provider
Tests to discuss with doctor
  • Basic vital signs: temperature, pulse, blood pressure, oxygen level if needed
  • Relevant blood, urine, imaging, or specialist tests only after clinical assessment
Questions to ask
  • What is the most likely cause of my symptoms?
  • Which warning signs mean I should go to emergency care?
  • Which tests are really needed now?
  • Which medicines are safe for my age, pregnancy status, allergy, kidney/liver/stomach condition, and current medicines?

Emergency warning signs such as chest pain, severe breathing difficulty, sudden weakness, confusion, severe dehydration, major injury, or loss of bladder/bowel control need urgent medical care. Do not wait for online information.

Safe pathway to proper treatment

Back pain care roadmap

Use this simple roadmap to understand the next safe steps. It is educational and does not replace examination by a doctor.

Go to emergency care if you notice:
  • New leg weakness, numbness around private area, or loss of bladder/bowel control
  • Back pain after major injury, fever, unexplained weight loss, cancer history, or severe night pain
Doctor / service to discuss: Orthopedic/spine specialist, physical medicine doctor, physiotherapist under guidance, or qualified clinician.
  1. Step 1

    Check danger signs first

    If danger signs are present, seek emergency care and do not wait for online information.

  2. Step 2

    Record the symptom story

    Write when symptoms started, severity, medicines already taken, allergies, pregnancy status, and test results.

  3. Step 3

    Visit a qualified clinician

    A doctor, nurse, or qualified healthcare provider can examine you and decide which tests or treatment are needed.

  4. Step 4

    Do only useful tests

    Discuss neurological examination first. X-ray or MRI may be needed only when red flags, injury, nerve weakness, or persistent severe symptoms are present.

  5. Step 5

    Follow up and return early if worse

    If symptoms worsen, new warning signs appear, or treatment is not helping, return for review quickly.

Rural patient practical tips
  • Take a written symptom diary and all previous prescriptions/test reports.
  • Do not hide medicines already taken, even herbal or over-the-counter medicines.
  • Ask which warning signs mean urgent referral to hospital.
  • Avoid forceful massage or bone-setting when there is weakness, injury, fever, or nerve symptoms.

This roadmap is for education. A real diagnosis and treatment plan requires history, examination, and clinical judgment.

RX Patient Help

Ask a health question safely

Write your symptom story. A health professional or site editor can review it before any answer is prepared. This box is not for emergency care.

Emergency first: Severe chest pain, breathing trouble, unconsciousness, stroke signs, severe injury, heavy bleeding, or rapidly worsening symptoms need urgent local medical care now.

Frequently Asked Questions

Is this article a replacement for a doctor?

No. It is educational content only. Patients should consult a qualified clinician for diagnosis and treatment.

When should I seek urgent care?

Seek urgent care for severe symptoms, rapidly worsening condition, breathing difficulty, severe pain, neurological changes, or any emergency warning sign.

References

Add references, clinical guidelines, textbooks, journal articles, or trusted medical sources here. You can edit this area from the RX Article Professional Blocks panel.