VMD is structured so that proper attention can be given to every phase of the development cycle. At each phase, the specialists we interacted with were knowledgeable, professional and enthusiastic.
Rebecca Weider
Director of MIS
Vacation.com
In the delivery of software development services to our clients, VMD relies on the successful execution of the Rational Unified Process (RUP). This is an industry proven software engineering process that provides VMD a disciplined approach to assigning tasks and responsibilities within a development effort. Through RUP, our goal is to ensure the production of high-quality software that meets the needs of our clients' end users within a predictable schedule and budget.
Developing a clear Vision is key to developing a product that will meet the real needs of our clients' stakeholders. In RUP, the Vision artifact captures very high-level requirements and design constraints that provides all project participants with an understanding of the system to be developed. Through a combination of the Vision document and the additional requirements artifacts below, VMD would be able to capture answers to such questions as:
A Software Development Plan gathers all the information required to manage the project. It is used to plan the project schedule and resource needs, and to track progress against the schedule. It addresses such areas as: project organization, schedule, budget, and resources. Depending on the complexity of each VMD engagement, it may include plans for requirements management, configuration management, problem resolution, quality assurance, evaluation and testing, and eventual product acceptance.
In any development effort, it is essential to identify the perceived risks to the success of the project. The Risk List captures these risk items, along with any other related issues. It identifies in decreasing order of priority, those events that could lead to a significant negative outcome and includes a plan to mitigate each identified risk.
In the Rational Unified Process (RUP), the architecture of a software system is the organization and structure of the system's significant components interacting through interfaces, broken down into successively smaller components and interfaces. This description is captured in the Software Architecture Document, which presents the architecture in multiple views. Defining a proposed architecture, refining the architecture, analyzing behavior, and designing components of the system is the core of the Analysis and Design discipline.
VMD adheres to an iterative approach of building, testing, and evaluating deployable versions of the solution in order to flush out problems and resolve risks and issues as early as possible. This iterative process allows VMD project members to verify in early stages of development that the developed solution implements all requirements. Repeatedly working through this process early keeps re-work time to a minimum.
Regular status assessments provide a mechanism for addressing, communicating, and resolving management issues, technical issues, and project risks. After identifying the issues, each will be assigned a due date, and a responsible person who is accountable for the resolution.
Changes to a project will almost always be requested. Controlling those changes and effectively managing the project scope and stakeholder expectations is vital to the success and schedule of the project. Once determined, all changes to any development artifacts are proposed through Change Requests and managed with a consistent process. VMD uses Change Requests to document and track defects, enhancement requests and any other type of request for a change to the product. The benefit of Change Requests is that they provide a record of decisions, and due to their assessment process, ensure that impacts of the potential change are understood by all project team members.
The ultimate goal of any development process is to produce a usable product. All aspects of the process should be tailored with this in mind. At a minimum, VMD recommends that all deployed software include a User's Guide, potentially implemented through online help. Depending on the complexity of the product, multiple channels may also be used to deliver additional training materials. After capturing, documenting, and maintaining requirements through Use Cases, VMD is able to produce end user documentation that is traceable to system features and is easily maintainable as new versions are designed and deployed.
It is essential that a process be chosen which fits the scope and complexity of each individual engagement. RUP is adaptable in that it can be tailored in formality and depth to support a wide range of development efforts. VMD has adapted the process to fit straightforward web site redesign efforts covering a lifecycle of only 3 months, to larger multi-tier, multi-version enterprise software development efforts spanning many years.
![]()
![]()