Home Page

  About Blind Linux Access

  Project Time Table

  Project Proposal

  First Report

  Second Report

  Final Report

  BlindPenguin Help

  External Links

  Suggestions/Bug Reports

  Download Source Code

BlindPenguin Project

Project Proposal

penguin.gif


Table of Contents

 

1 Introduction

1.1 Project Scope and Objectives

1.2 Major Functions

1.3 Project Constraints

1.4 Proposed Methodology

1.4.1 Requirement Gathering and Refinement

1.4.2 Quick Design

1.4.3 Build Prototype

1.4.4 Evaluation

1.4.5 Refine Prototype

1.4.6 Engineer Package

1.5 Justifications for Using Prototyping

1.6 Resources

 

1 Introduction

X Windows is a graphical user interface for Unix based systems. It provides all the features of a standard graphical user interface like Windows 95. Several programs have been developed for this system such as Coral WordPerfect and Netscape to mention but a few. However there are still a number of software packages available for Windows 9X which are not available for X Windows. One area in particular where Windows 9X has a more diverse range of packages is in the area of screen magnification.

 It is proposed to write a screen magnification system for X Windows similar to those available to Windows 9X users, the system will be called BP (BlindPenguin). There have been some attempts at this such as puff and xzoom but these are primitive and not very useable.

 

1.1 Project Scope and Objectives

The scope of this project is to build an application which will aid visually impaired users to access the X Windows system through an enlarged environment. The objectives of the project are to write a software package which should be user friendly, able to run on most standard X Windows systems, easy to install and configurable by end users. The user will be able to control the settings through a GUI interface or through the keyboard.

Apart from creating a screen magnification package, which is the teams primary objective, the project is also a way for the team to increase their knowledge of the X Windows system and programming for this environment.

 

1.2 Major Functions

The following is a list of the major functions:

  1. User friendly interface.
  2. Allow the user to easily resize the screen.
  3. Features which enables each user to save their personal settings.
  4. Easily understood help.
  5. Tracking of both mouse movements and keystrokes.
  6. Access to settings through hotkeys or menus.

 

1.3 Project Constraints

There are a number of constraints which will affect the project. Some of these are inability to meet due to other commitments, access to machines during college hours. Access to reading material, slow progress due to inexperience of the new system. The main constraint is limited time.

 

1.4 Proposed Methodology

BlindPenguin will be developed using a prototyping methodology. This methodology is an iterative process involving six stages:

  1. Requirement Gathering and Refinement.
  2. Quick Design.
  3. Build Prototype.
  4. Evaluation.
  5. Refine Prototype.
  6. Engineer Package.

 

1.4.1 Requirement Gathering and Refinement

This stage involves researching user needs and the X Windows system, as well as studying screen magnification software for other operating systems. These requirements will then be modified or refined to meet the needs of X Windows users. The requirements of this project are listed in the major functions.

 

1.4.2 Quick Design

Using the requirements a preliminary design of the system will be drawn up to aid in the building of a prototype.

 

1.4.3 Build Prototype

Using source code that is available from other X Windows screen magnification systems the team intends to use this code to develop an initial prototype. Subsequent prototypes will be developed using the teams own code.

 

1.4.4 Evaluation

In this stage the previous prototype will be tested to see how well it conforms to the requirements.

 

1.4.5 Refine Prototype

Following the evaluation, any modifications or refinements that need to be made to the prototype will be implemented.

 

1.4.6 Engineer Package

When the team is satisfied that all requirements have been met and implemented the final package is developed.

 

1.5 Justifications for Using Prototyping

After researching other methodologies it was decided that prototyping would be the most appropriate because it is a more realistic way of developing software. This process produces a tangible package, which can be used to decide whether the project is developing in the right direction or not. Another reason for choosing prototyping was that it reduces development time, which is the main constraint on the project.

 

1.6 Resources

The system will be developed using the following resources.

  • DIGITAL Pentium 100 Laptop 1.4 GB HD 16MB RAM.
  • SuSE 5.2 Linux.
  • Team members.
  • The Internet.
  • WIT Library.
  • Source Code.