Software Development Life Cycle Processes
Overview
A Software Development Life Cycle (SDLC) is the process of planning, creating, testing, and deploying software. Unqork uses a SDLC to ensure updates to the Unqork platform are prompt and reliable. Client teams are included in every step of our platform release and change process, and are an integral part of the SDLC. The following article describes only Unqork's SDLC process, providing you visibility on how Unqork builds, maintains, and deploys in the Unqork Designer Platform.
Why SDLC Is Important to Unqork
Unqork prides itself on being a codeless platform. We enable enterprises to build enterprise-grade applications without coding. But, if Unqork is a codeless platform, why do we need SLDC?
At its core, Unqork is a Software-as-a-Service (SaaS) company. We build and maintain the Unqork Designer Platform so our clients and customers can build applications without using code. Because our delivery model is SaaS, we continually deploy changes and new features to the platform.
Environment Stages
Environments in Unqork support each phase of building and rendering applications. As a work ticket advances through the SDLC, it passes through the following environments:
Environment |
Description |
Code-base |
---|---|---|
Customer Staging |
Where Unqork creators configure applications. This non-production environment hosts test data only. Features and bug fixes are released to Customer Staging at the end of a sprint cycle (every two weeks). After launch, this is where you prepare updates before promoting to UAT for testing. Unqork hosts the Customer Staging environment internally. Staging offers both a Designer and Express View interface. |
Staging |
User Acceptance Testing (UAT) |
Where both Unqork and the client can view the latest build. This non-production environment hosts test data only. Unqork hosts the UAT environment internally. UAT offers both a Designer and Express View interface. |
UAT |
Production |
This is the live application, and the only environment that end-users can access. This is also the only environment to host live client data. |
Production |
NOTE Some customer applications move through up to five environments. The additional environments are Quality Assurance (QA) and Pre-production (Pre-prod). QA environments use the UAT code-base. Pre-prod environments use the Production code-base. The progression order is Customer Staging, QA, UAT, Pre-prod, then Production. Client leads decide the number of environments to use when developing a customer application.
Unqork Platform SDLC Overview
Unqork uses Agile processes like release planning, iterative development sprints, and cross-functional collaboration. We also use project management practices like dependency planning, milestone tracking, and sponsor reporting. These processes are fundamental to Unqork's SDLC.
Planning
The Unqork Platform team receives requests for new features from customers, internal team members, Creators Also known as Unqork users; anyone who is inside the Unqork platform., and solution architects. The Platform team reviews and prioritizes these requests to determine which features the team works on. Other teams work to research, design, and build solutions that address the problems the proposed features look to resolve.
Iterative Development
New features go through alpha, beta, and general access (GA) releases. Alpha releases are released internally, typically to solution architects to test and provide feedback. Beta releases are released to select customers in their Staging environment. Customers provide additional feedback, and teams update the feature based on that feedback. GA releases are released platform-wide. All releases are behind feature flags so Unqork fully understands the impact of a new feature. If an issue occurs, the feature flag is disabled until the team resolves the issue. After a GA release, if no major issues or concerns arise for at least one release, then the feature flag is removed and the release is available for all customers.
Continuous Integration and Testing
The QA team assigns risk levels to features based on the likelihood that the feature causes regressions. Low-risk changes are less likely to cause regressions than high-risk changes. The QA team performs multiple tests through the process. They perform automated and manual regression tests and exploratory tests on new features to ensure no regressions occur. Additionally, automated daily regression tests are run.
Staged Deployment
Unqork uses a staged deployment process. Any changes merged to a particular branch are deployed to internal environments overnight. These environments are used for internal testing, verification, and regular configuration. Unqork uses this process to identify any regressions before the code is ready for staging, UAT, and production environments.
The image below represents the Unqork SDLC:
To begin, Unqork records a ticket for a bug or new feature request. From there, the ticket follows this journey:
1. | Feature Validation: Unqork reviews the ticket to ensure it's valid. |
2. | Sprint Prioritization: Product managers, along with input from the Solutions and Delivery teams, prioritize the ticket. They use a weighted framework, ensuring a blend of ticket types. If prioritized, the team adds the ticket into a sprint. |
3. | Unit and Security Testing: In a two-week sprint cycle, Unqork designs and builds the feature or fixes the bug. Then, the changes progress to the Quality Assurance (QA) team. Unqork releases updates to the Unqork Staging environment nightly. |
4. | App Test Harness: Once in the Unqork Staging environment, Unqork tests the changes using complex applications. |
5. | Staging Deployment: Unqork releases changes to the Customer Staging environment on a two-week cycle. At this stage, there is a cross-functional coordination of the feature release. |
6. | UAT Deployment: Unqork releases changes to the UAT environment on a four-week cycle. Once in the UAT environment, Unqork continues testing the changes. The customer can also test the feature. |
7. | Production Release: If the new feature passes all tests, Unqork deploys the changes to the Production environment. Unqork releases changes to the Production environment on a four-week cycle. |
8. | Rollback: At any point, if the feature breaks, Unqork creates a new intake ticket and the process starts over. |
Security and Development Process
Security is everyone's responsibility at Unqork. Our Security team follows a set of guidelines that encompasses threat modeling, approval process, and requirements for the development process. They also create guidelines for engineers to ensure that the code they write is as secure as possible. There are mandatory code reviews and additional scrutiny is given to tickets related to security topics. Peers and Security team members conduct reviews and test the changes before the code is merged into the repository. Unqork also leverages a combination of scanning software to scan code and validate dependencies. They also perform container, infrastructure-as-code, and log scanning.
Information classification, data-handling policies, and security configuration standards for networks, operating systems, applications, and desktops are all topics covered in one or more of Unqork's security policies. Security policy updates follow a similar process to the software development process. Policies are first developed in a draft stage. Policy drafts navigate through a review and approval stage. Then, policies are published to internal storage locations for consumption by the appropriate user bases.
Release Process
As seen in the SDLC diagram, product changes are released on a set schedule. Each step of the release process includes guidelines and processes.
- Unqork Staging Environment: Changes are released every night.
- Client Staging Environments: Client Staging releases occur every six weeks. The release is tested for two weeks before the UAT release.
- UAT Environments: UAT releases occur two weeks after the Client Staging release. Releases go through UAT testing for two weeks.
- Production Environments: Production releases occur two weeks after the UAT release.
TIP For more information on the release process, see our Unqork Release Notes Process article. To learn more about the release schedule, view our 2025 Release Calendar.
Application Development Process
When you partner with Unqork to build an application, you'll follow a standardized process. An Engagement Delivery team led by an Engagement Manager and Solution Architect, along with two-to-four Technical Specialists, help develop your solution. The first step in the application development process is a kickoff and requirements review meeting. The purpose of this meeting is to ensure your Engagement Delivery team understands your business, integration, and end-to-end API APIs (application programming interfaces) are a set of protocols and definitions developers use to build and integrate application software. APIs act as the connective tissue between products and services. requirements. They also ensure your data dictionary, solution architecture, and any RBAC requirements are understood.
The next step is establishing a joint governance model with your organization. The joint governance model establishes regular status reviews, major milestones, and roadblocks. After the joint governance model is established, the Security and Architecture teams begin reviewing any potential security vulnerabilities and architectural issues before the configuration team begins.
When the process of building the application begins, a detailed best practices guideline is followed. Unqork also uses an automated guardrails review process to ensure configuration best practices are met. Following best practices and using automated guardrails helps technical specialists build secure applications quickly. As the configuration team builds the application, the QA team builds test cases for the application. Doing so lets Unqork identify any future regressions before issues occur.
After the application is built, there's an additional round of testing and security review before the application goes live. Unqork also performs daily static and dynamic application security testing, and runs bug bounty and penetration test programs.
Unqork is continuously enhancing the platform with new features and capabilities throughout the release cycle. All of these enhancements are available to all customers across all environment levels. If you need a custom feature as part of the original scope of work or use case, there's no additional fee to you. If this custom feature is not included in the original scope of work or use case, then there could be a development or build fee.
Product Roadmap
Unqork is committed to accelerating application development by making our codeless platform available to everyone. We have a strong vision and a multi-year roadmap that includes the following pillars:
-
Creator productivity: We want to help enable Creators Also known as Unqork users; anyone who is inside the Unqork platform. to be as productive as possible.
-
Powerful application management: Lets Creators manage their applications themselves in an easy and cohesive manner.
-
Strong ecosystem and community: Provides Creators with guidelines and support as they build applications.
-
Enabling platform extensibility: New features and capabilities are constantly added to the platform.
Support
Unqork has a 24/7 global support team. If you experience an issue, you can file a support ticket at support.unqork.com. As soon as you file the support ticket, a Support team member passes the pertinent information to the correct people to resolve your issue.
If an incident affects the Unqork platform or a specific environment, it displays on the Status page. The status page updates in real-time and you can subscribe to updates. You can find the Status page at status.unqork.com.
Lastly, if you have questions related to building in Unqork, you can find answers at the Community Hub. The Community Hub provides community sourced questions and answers to common issues when building an application in Unqork. You can find the Community Hub at community.unqork.com.