Skip to Content

Software Development Lifecycle

Software Development Lifecycle

As an IT solutions provider, Visionware depends on the ability to develop and deploy software which is critical for the success of our customer’s projects.


This current described methodology as well as the synchronization with related commercial and internal methodologies are enforced within Visionware Organization through the Governance Framework which:

Describe the Visionware organization model, roles and responsibilities

Provide the Executive Management and Middle Management Framework for People, Projects and Organizational Management and Leadership

Assure the Organization durability and the Strategy rollout on medium and long term

Describe the internal regulations, code of collaboration as well as the approval flows

 

Integrated Commercial Methodologies

The Commercial Framework is unitary as some processes outcomes or steps are interconnected. For example, the transition processes within SDLC is described within SOM methodology.

The commercial processes are synchronized and tied combined in terms of planning and control.


Each commercial methodology was tailored regarding the project complexity, as follow:

VW-SALES  describes the sales organization

VW-PSM details the organization of the Project and Service Management team

The Solution Portfolio Structure and vitality is described in VW-SSPM  methodology

The project implementation is described within VW-SDLC

Service operation methodology VW-SOM and VW-SRAM  describe the service operation and security assessment frameworks.

 

SDLC Generic Phases

The following describes the essential phases of an effective software development process:

Inception phase

Concept elaboration

Construction phase covering the planning, requirements capturing, analyze, design, development, quality assurance, transition and optimization

SDLC according with project type

SDLC methodology was defined based on each project specific, as follow:

Waterfall (with agile approach). This methodology is used for projects with clear scope and budget since the contract sign in. The Agile approach means that during the Requirements gathering and Analysis phase Visionware will provide Proof of Concept (PoC) sessions in order to offer a coherent and clear “touch and feel” to the customer.

Water-Agile-Fall is based on the Scrum\Agile methodology involving iterative software development phases

Sure Step is based on the Microsoft Sure Step methodology and will be used for COTS products implementation projects (external products like Dynamics CRM, etc, or Visionware own products like One Vision, Loyalty Suite, etc). The Sure Step approach is similar with Waterfall (with agile approach), the only differences consists in the fact that in this case the platform is based on existing, mature product and only customizations will be made based on the fit-gap analyze outcome. Visionware adapted this methodology in order to best fit with own organizational model.

  • More details regarding this methodology are available within Methodology Description section

SDLC Generic Phases (Principles)

The key to achieving the delicate balance between delivering quality software and delivering it quickly (the software paradox!) is to understand the essential elements of the Process and to follow certain guidelines for tailoring the Process to best fit Visionware project's specific needs. This should be done while adhering to the best practices that have been proven throughout the industry to help software development projects be successful.  

 

The following describes the essential phases of an effective software development process:

Inception phase

Concept elaboration

Construction phase covering the planning, requirements capturing, analyze, design, development, quality assurance, transition and optimization

Inception and Concept

In particular, developing a clear Vision is the key to developing a product that meets your stakeholders’ real needs.

The Vision artifact captures very high-level requirements and design constraints, to give the reader an understanding of the system to be developed. It provides input to the project-approval Process, and is therefore intimately related to the Business Case. It communicates the fundamental "why's and what's" related to the project and is a gauge against which all future decisions should be validated.

The contents of the Vision-along with any other related requirements artifacts-should answer the following questions, which might be broken out to separate, more detailed, artifacts, as needed:

What are the key terms? (Glossary)

What problem are we trying to solve? (Problem Statement)

Who are the stakeholders? Who are the users? What are their needs?

What are the product features?

What are the high level functional requirements? (Use Cases\Epic\Stories list)

What are the non-functional requirements?

What are the design constraints?

During this phase, the general concept is created, addressing:

High level functional domain

Functional architecture

Data flows 

 

 

Construction 

The primary objective is to gather the customers’ Business Requirements, to translate these requirements into Functional Requirements, to analyze them and build the software system. This phase produces the first external release of the software.

The difference between the Waterfall / SureStep Process and Water-Agile-Fall is in the construction phase.

Agile principles:

Customer satisfaction by rapid delivery of useful software

Welcome changing requirements, even late in development

Working software is delivered frequently (weeks rather than months)

Close, daily cooperation between business people and developers

Projects are built around motivated individuals, who should be trusted

Face-to-face conversation is the best form of communication (co-location)

Working software is the principal measure of progress

Sustainable development, able to maintain a constant pace

Continuous attention to technical excellence and good design

Simplicity—the art of maximizing the amount of work not done—is essential

Self-organizing teams

Regular adaptation to changing circumstance

Planning

According with the selected methodology the planning may differ as follow:

Waterfall

A clear plan for the subsequent phases will be initiated covering the business requirements gathering, the Functional Requirements creation, the Design with respective Proof of Concept sessions, the development, quality assurance and transition.

Once a stage is completed in the Waterfall method, there is no going back, since most software designed and implemented under the waterfall method is hard to change according to time and user needs.

In order to enhance this methodology with an agile approach, during all the Business and Functional Requirements, as well as during the design and construction phase PoC Sessions will be planned.

 

Water-Agile-Fall

The project team first analyses, then determining and prioritizing business requirements / needs.

Next, in the design phase business requirements are translated into IT solutions, and a decision taken about which underlying technology is to be used.

Once processes are defined and online layouts built, code implementation takes place.

The next stage of data conversion evolves into a fully tested solution for implementation and testing for evaluation by the end-user.

The last and final stage involves evaluation and maintenance, with the latter ensuring everything runs smoothly.

 

Sure Step

Project planning sessions are conducted as joint exercises with the customer. The session agendas include an overview of the project, timeframes, deliverables, the establishment of the project structure, and risk and stakeholder analysis.

In many instances, the customer may be viewing the above agenda items for the first time; therefore these sessions are scheduled during the Executive Kick-Off meeting to allow the customer to allocate the proper resources.

Project planning involves two key activities; finalizing the project charter and finalizing the project plan which includes the work breakdown structure.

Once the Project Charter is finalized and approved, the program manager must finalize the detailed project plan which includes the work breakdown structure.

The project plan is an important document and is a key in relaying status and progress throughout the lifecycle of the project. It must be updated daily and accurately reflect the status at any given point in time. The project plan also serves as the basis for tracking the budget across the project.

The project plan must be organized by phase and list out the detailed activities, dependencies, milestones, deliverables with accurate resource and effort loading. 

Capture Business Requirements

The Business Requirements is the major output produced by business analysts when employing a "waterfall" System Development Life Cycle (SDLC). Professional technical writers cite the three qualities for documents: clear, complete, and concise. To achieve the three Cs, business analysts utilized quality assurance techniques in the form of desk checking, walk-through, peer review, and inspections on the BRD, depending on the risk associated with the requirements.

The Bubble Principle

The business domains can be shown as bubbles. We conduct interviews and meetings using this condensed form of communication. In writing and validating requirements, we interface with stakeholders in our bubble. We can apply the elaborate language in our struggle to ensure quality in a business requirements document. Unfortunately, we have a natural and unconscious tendency to use our restrictive language - "you know what I mean".

 

 

 

Entities overview

 

Use cases

 

Traceability Matrix

 

Methodology details

Waterfall

Waterfall (with agile approach) is used for projects with clear scope and budget. During the Requirements gathering and Analysis phase Visionware will provide Proof of Concept (PoC) sessions in order to offer a coherent and clear “touch and feel” to the customer.

 

Waterfall Construction Interaction Details

 

Water-Agile-Fall

Water – Defines the upfront project planning process that typically happens between IT and the business.

Scrum – An iterative and adaptive approach to achieving the overall plan that was first laid out in the 'Water' stage.

Fall – A controlled, infrequent production release cycle that is governed by organizational policy and infrastructure limitations

According with each phase, the interaction between Visionware internal teams / divisions and Customer Project Team is a well-defined sequence of events, discussions and interactions which occurs as described in below diagram.

 

SDLC Water-Agile-Fall Iterations

 

Sure Step 

According with each phase, the interaction between Visionware internal teams / divisions and Customer Project Team is a well-defined sequence of events, discussions and interactions which occurs as described in below diagram.

 

Phases description

 

Integrated RRAA Matrix

The described Role, Responsibility, Accountability and Authority (RRAA) matrix is related to the roles and responsibility regarding the interaction between Customer, Sales, Project and Services Management, Strategy and Solution Portfolio, Delivery supporting the SDLC Process;

Microsoft expertize

Java, Oracle and Open Source Expertize

Testing and Documentation Expertize

Other Expertize:

Open Source Technologies:

PHP

mySQL

Angular

CSS

Web Development

 

Oracle:

Database

Web Center

Web Logic

SOA

OIM