Enterprise Web Application Development

Integrated Systems Services

BASIS develops custom enterprise-wide web-based application systems for government and commercial clients. To ensure client satisfaction is achieved with the final system we develop on their behalf, BASIS utilizes modern tools to gather key system requirements and uses a design methodology to plan manage, control and evaluate database development projects. The design methodology process is divided into three main phases: conceptual, logical and physical database design. We adhere to core concepts contained in the Information Engineering and the Iterative Development Methodologies.

IBM Rational Unified Process

Rational Unified Process

BASIS uses the Rational Unified Process to either design new distributed web-based applications or to re-engineer existing applications to be deployed in an enterprise-wide environment. The four phases of the Rational Unified Process include:

  • Information Strategy Planning. Concerned with how technology can be used to create new opportunities or competitive advantages for our customers. A high-level overview is created of the enterprise, its functions, data and information needs.
  • Business Area Analysis. Concerned with what processes are needed to run a selected business area, how these processes interrelate and what data is needed.
  • System Design. Concerned with how selected processes in the business area are implemented in procedures and how these procedures work. Direct end-user involvement is needed in the design of the procedures.
  • Construction. Implementation of the procedures using, where practical, code generators, fourth-generation languages and end-user tools. Design is linked to construction by means of prototyping.

Industry Best Practices

Industry Best Practices are an organized and documented set of six principles, methods, and processes that increase quality and productivity of software and system development. Best Practices address the root causes of problems faced by software developers.

Iterative Development

BASIS uses the Iterative methodology, where instead of developing the whole system in lock step, increments are selected and developed one at a time. The selection of the first increment to be developed is based on risk, the highest priority risks first. You apply the waterfall (SDLC) within each iteration and the system evolves incrementally. Each iteration includes integration and test. Iterations help:

  • resolve major risks before making large investments;
  • enable early user feedback;
  • make testing and integration continuous;
  • focus project short-term objective milestones; and
  • make possible deployment of partial implementations.

Requirements Management

Requirements management is a systematic approach to eliciting, organizing, documenting, and managing the changing requirements of a system. It allows us to analyze the problem, understand user needs, define the system, manage scope, and refine the system definition. In order to manage requirements we translate stakeholder requests into a set of key stakeholder needs and system features. This is done by producing a user requirements document and a system requirements document.

Component Architectures

Components make system development easier because they can be reused in several different applications. This reduces costs and saves you from building the same thing repeatedly. Components can be switched in and out easily because of their standard interfaces, so no matter which application they’re in, they can communicate with other components. Because of this reuse, your system will be less complex, more robust, and more resilient.

Modeling Visually

Providing data models of a system during development is essential because it helps to envision and think through the concepts. Having models gives us better view of how all the system elements fit together. Models also help us to compare the design alternatives at a low cost.

More reasons we use models throughout development:

  • To hide or expose details as appropriate. High-level models should be made at the beginning of development to set the scope, while low-level models help plan and visualize all the details later on.
  • To promote unambiguous communication. Explaining concepts in words can be tricky as people sometimes comprehend things differently.

Continuous Quality Verification

BASIS defines measures for assessing a system's quality throughout the development process. We create and execute test cases for all requirements so we know as soon as possible which requirements can or cannot be implemented.

Quality verification is one reason BASIS develops iteratively. Because we work on a small piece of the project at a time, and test throughout each iteration, we can produce a bug-free application.

Change Management

Managing change ensures that change requests and problem reports are documented and addressed. Regarding the requirements, it means there is a way to prevent the simultaneous update of your project artifacts and to have project team members alerted to changes.

A traceability matrix is needed for all project artifacts. Traceability allows us to assess the impact of a change in a requirement. In addition it can be used to prove the capabilities of the system.

©2008 Business & Scientific Information Systems, Incorporated. All rights reserved.

Privacy Policy