Application Development
USF Health • Information Systems

Development Process

An application development project goes through the following stages:
  1. Concept Definition
  2. Business Requirements Definition
  3. Technical Specifications
  4. Prototype Coding and Revision
  5. Production testing
Concept Definition

First, one of our team members will meet with the customer to discuss the project. From this discussion, the team member will determine the scope, goals, and priorities the customer has in mind. A project proposal results from these discussions, and is presented to the Chief Information Officer (CIO) for his/her approval and prioritization of further work on the project. The proposal will include the following data:

  • Key stakeholders
  • Target audience
  • Purpose of project
  • Description of project vision
  • Overview of security needs and limitations
  • Overview of technological needs and limitations
Business Requirements Definition

With the approval of the CIO, the project proceeds to Business Requirements Definition. During this process, team members attempt to define what the current business needs and processes are, and how the proposed automated/computerized solution will affect the business. The data gathered will include:

  • Data the system will hold
  • Data the system will interact with
  • Data the system will report
  • Processing the system must perform on data
  • Integration with existing data sources
  • Special aspects of the user interface
  • User/User Group roles
  • Output types and formats
  • Any additional special requirements regarding security, availability, etc.
No special computer knowledge is required for participation in the Business Requirements Definition, as only the behavior of the system (not its implementation) is to be defined. Our team will guide the customer through these definitions, from both a business and technical standpoint. From these discussions, the formal description of the system will be produced, and the Business Requirements Document will be created for customer approval.

Technical Specifications

Once d the Business Requirements Document has been approved by the customer, the system is designed and documented during the Technical Specifications phase. At this time, the details of system construction are decided. These are detailed as needed in one or more of the following:

  • Entity-Relationship diagram, illustrating the data model used to represent solution
  • Data dictionary, specifying the attributes to be captured, their data types (integer, character, width, etc.), and legal values
  • Data flow diagram, illustrating where information originates, how it is stored and processed, and where it is used
  • Process definitions, providing concise notation regarding the details of system processes
  • Interface/layout sketch, to demonstrate the general aesthetics and usability of the system

This phase allows us to ensure that the technical systems involved will be able to work the way the Business Requirements have outlined. At the end of this phase, the team will provide a timeline with an estimated end-date.. Prototype Coding and Revision

This is the stage where the actual coding of the application begins. In our coding method, we divide the project into manageable deliverables, and code them one at a time. When a deliverable is completed, we invite the stakeholder to see the unfinished product in order to give constructive feedback about it. Revision of the layout, organization, refinement of the program logic, and minor changes to the application can all be performed based on this feedback. Added functionality or changes to essentials from the Business Requirements Document may result in an extention of the end-date or require a separate project plan. At the end of each piece's revision, a test version will be released to the customer so that he/she may further familiarize him/herself with and test the system while the next component is built.

Production Testing

With data in the system, beta testing is performed along with the customer. During this portion the user interface is refined and problems are identified and corrected. With the final approval of the customer, the system goes live.