Docstoc

Reading

Document Sample
Reading Powered By Docstoc
					Design software application
modifications to meet client
requirements



                   Introduction                                         2

                   Table design                                         3
                       Defining the data structures                     3
                       Determine the primary keys                       5

                   Form design                                          6
                       Form design guidelines.                          8
                       Get practice                                     10

                   Report design                                        11
                       Queries                                          11
                       Design guidelines                                12

                   Toolbar design                                       13

                   Navigation design                                    14

                   Summary                                              15
                       Check your progress                              16




Design software application modifications to meet client requirements    1
2005
Introduction



      It is crucial that when you are developing new systems you fully understand
      what it is that your client requires. After reviewing the needs analysis and
      other materials, you can commence your design. With careful design and
      planning you can build a solid foundation for your application, reduce
      development time, and produce an efficient solution for your client. This
      principal is the same for small or larger systems and is known as the systems
      development lifecycle (SDLC).

      Customising existing packaged software involves analysing the chosen
      software package and its features, and building a solution within the scope
      of that program. The program may be spreadsheet, database or another type
      of application.




2                             Design software application modifications to meet client requirements
                                                                                                2005
Table design

                   Planning your database design on paper is a good way to start. This allows
                   you to focus on the main task which is to define the database structure —
                   independent of the software you’ll later use to implement the design.
                   Remember, the way you structure your data now will have a significant
                   impact on the operations your database will be able to perform. Changing
                   the database structure after implementation can require the costly redesign
                   of the queries, forms and reports used in the application. So it’s crucial that
                   you spend time developing and refining your design before you sit down at
                   the computer.


                   Defining the data structures
                   A database is essentially a collection of data tables, so your first task in the
                   design process is to identify and describe those data structures. This includes
                   defining the:
                          tables
                          fields
                          primary and foreign keys
                          relationships.


                   1 Identify the entities
                   Each table in a database should represent a single, distinct subject or
                   item of information, often referred to as an ‘entity’.

                   You’ll need to examine the information you’ve gathered in your analysis,
                   and identify the entities relevant to the requirements of your database.

                   For example, in a design for a library catalogue, the entities would include
                   the:
                          book
                          author
                          publisher
                          category, and so on.

                   The entities that you identify at this early stage will later be mapped to
                   separate tables in the database.



Design software application modifications to meet client requirements                                3
2005
    2 Identify the attributes
    The next step is to identify the attributes of each entity that will form the
    fields in your table design. In the case of a library catalogue, the attributes
    of the entity ‘book’ might include the:
         book title
         author
         price
         date of publication, and so on.

    This level of information should be fairly clear from your analysis, but
    you’ll need to keep in mind some basic relational design principles when
    mapping attributes to table fields.


    Relational design principles
         Each field should contain the smallest useful piece of data, ie it
          shouldn’t be possible to break a field down further into smaller
          constituent parts. For example, a customer’s address should be split
          into separate fields for the street address, suburb, state and postcode.
          Each of these fields contains one single item of information that
          cannot be usefully divided further.
         Each field in a table should represent a specific attribute of the
          entity it describes. In a table about books for example, ‘author’ is an
          attribute of the book, but ‘author’s address’ is an attribute of the
          author and so belongs in a separate author table.
         Each field should store only one type of data. This may be text,
          numeric, date, etc.
         No field in a table should duplicate the purpose of another field in
          the table. For example, if you find a table structure that contains
          repeating fields, such as ‘Product1’, ‘Product2’ and so on, it’s a sure
          sign that you need to rethink your design. In most cases, this problem
          can be resolved by removing the repeating fields from the current
          table, and placing them in a new table designed to store just that type
          of information. You just need to create a relationship between the
          current table and the new table.
         Do not create fields to store the results of calculations. For
          example, while it may be tempting to include a field that stores a
          calculated value such as an invoice total, it’s actually more efficient to
          perform the calculation ‘on the fly’ in a query or calculated form
          control, at the time you need it. By doing so, you also ensure that your
          calculations are based on the most up-to-date data.

    Designing a database according to these principles usually results in
    breaking the information down into more tables than you may have initially



4                            Design software application modifications to meet client requirements
                                                                                               2005
                   expected. You can then use relationships and queries to re-integrate
                   information from the separate tables. This process can initially appear to
                   make the database design more complicated, but from a relational
                   perspective, it ensures the design is efficient, logical and easy to understand.
                   Creating the optimal table structures for a relational database is called
                   normalisation.



                   Determine the primary keys
                   When you have established the data structures, your next task is to
                   determine the primary keys that will be used to create relationships between
                   the tables. Each table should have a primary key field that uniquely
                   identifies each record. Assigning a primary key ensures that:
                          no two records in a table contain the same value in the field defined as
                           the primary key
                          records are ordered (or indexed) by the entries in the primary key field
                          data in the table can be retrieved and processed quickly.

                   In some cases it will be obvious from the data which field is a suitable
                   candidate for the primary key, such as a unique invoice or product number.
                   Where this is not the case, you’ll need to add a primary key field.



                   The process of designing a relational database can be complex and
                   challenging. Creating the best design for a particular application requires a
                   thorough understanding of your client’s needs, strong analytical skills and
                   above all, patience. Remember, a good design is rarely achieved in the first
                   pass. Be prepared to rework and refine your design several times until you
                   get it right. Try also to avoid getting buried in the details too soon-items
                   such as field properties are best left until a bit later.




Design software application modifications to meet client requirements                              5
2005
Form design



     As for the table design, planning your forms on paper is a good way to start.
     The forms or user interfaces are a very important aspect when we design our
     customised application. They provide the users with a way to add, view,
     and edit data, as well as providing ways to navigate the system. Designing
     user interfaces that are easy to use and understand is very important for a
     successful application.

     If you have done your initial planning and research thoroughly
     then designing the forms is simpler because you would have determined
     client requirements such as corporate colours, logos, and style guides that
     can be incorporated into the design. It is also a good idea to collect copies of
     current forms that the client uses. By doing this you are able to keep the new
     design similar, making it easy for the end users to understand and learn. On
     the other hand, a poorly designed user interface will be hard to understand
     and use and can lead to distraction and frustration.

     The look of your database is as important as its structure, because it’s the
     interface that affects how people work with it. Aim for a cleanly structured,
     consistent look with complimentary colours and few distractions, as in the
     sample main menu on the next page.

     Exactly how you design your forms will depend on which database program
     you’re using and the requirements of the end user. Even if you’re designing
     a database purely for your own use it’s still worth carefully planning and
     designing your forms. After all, why make life harder for yourself when a
     little initial effort in the design phase will make using your database easier
     for all time?




6                             Design software application modifications to meet client requirements
                                                                                                2005
                                                     Figure 1: Main Menu form




                  Investigate design features



                   Have a look at some of the software applications, websites and games you
                   have installed on your computer. Make a list of the features you like and
                   dislike — such as such as colours, font styles, layout, alignment of text
                   columns and fields etc, and whether or not the screen looks cluttered. This
                   will help when designing your own forms.


                   Good features
                    _____________________________________________________________

                    _____________________________________________________________

                    _____________________________________________________________

                    _____________________________________________________________

                    _____________________________________________________________




Design software application modifications to meet client requirements                            7
2005
    Poor features

    _____________________________________________________________

    _____________________________________________________________

    _____________________________________________________________

    _____________________________________________________________

    _____________________________________________________________



    Form design guidelines.
    Don’t clutter the screen. Too much information on the screen makes it
    difficult for the end user to find what they are looking for. Group and align
    objects together where possible. If there is too much on your screen,
    consider using a command button to open another form. Another effective
    method is using a tab control to align text and fields.

    Try to avoid making users have to scroll down the screen. Often end
    users won’t notice the scroll bars and tend to get frustrated because they
    can’t find what they are looking for. Using sub forms, tab controls and
    buttons to access other forms, are all great ways to avoid this.

    Use minimal different fonts. Decide on a style guide before you start
    actually creating your screens. Sit down and decide what font style, colours
    and sizes you will use for different parts of your application. By writing
    them down and referring to the style guide as you create the forms, you will
    save a lot of development time. Avoid using too many different font styles
    as it starts to look unprofessional and the document will be difficult to read
    as:
         it looks too busy
         the heading hierarchy becomes unclear.

    Choose standard fonts such as Arial, Verdana and Times New Roman,
    especially if your database will be used on a variety of computers. Make
    sure all text is of a readable size. This could be different on different
    systems. Consideration should be made for different screen resolutions and
    monitors.

    Keep colours simple and effective. Make sure your colour contrasts look
    good. For example use dark and light colours and avoid using very bright
    colours. Keep in mind your end users — some may have vision impairments
    that are affected by different colours. Look at some websites or forms in
    existing applications for more ideas on what colours work best together.
    You can also consult your client for their opinion, or your client may require
    you to use their company colours.


8                             Design software application modifications to meet client requirements
                                                                                                2005
                   Organise fields logically. Organise fields in a logical manner ensuring the
                   flow of data entry is not broken. If you have existing documentation or
                   forms that your client uses, it’s a good idea to order fields in the same way.

                   Check the tab order of the fields. During data entry, many people move
                   from field to field using the Tab key. It’s important you ensure the tab order
                   is consistent, so that the insertion point moves from the first field on the
                   screen to the last without jumping about. Incorrect tab order will not only
                   frustrate your users, but it may cause them to enter data into the wrong field.

                   Be consistent across the entire application — create uniformity. Make
                   sure you keep colours, fonts, positioning of logos and buttons consistent in
                   all areas of the application. For example, don’t have the Close button in
                   different places on each form. If you decide the Close button will be in the
                   upper right hand corner of the screen then make sure it is the same on every
                   form or menu.

                   Include help — descriptive labels, help menus, tool tips and status bar
                   messages. Most applications have built in help menus. You can use these or
                   create your own help files. If a field is a required field in the database, add a
                   label which stipulates that it is a required field so that it is obvious to the
                   users. You can also use features such as tool tips and status bar messages to
                   help the users. Consult the built in help menus to find out how to do this.

                   Provide keyboard shortcuts. Not all end users can use a mouse, and some
                   simply prefer not to! Make sure wherever possible in your application, you
                   include keyboard shortcuts. In many applications, such as Microsoft Access,
                   this can be done by using the ampersand (&) symbol before the letter you
                   wish to use as the short cut.

                   For example:

                   &Close will appear on a button as Close. The user can activate the button
                   by holding down the ALT key and C.

                   Use data validation and default values wherever possible. Use combo
                   boxes and lists wherever possible to reduce the risk of human error during
                   data entry. If you had a field to show a person’s title you could create a drop
                   down list with the values MR, MRS, MISS, MS, DR, so that the end user
                   could simply select from the list rather than typing it in. If you have a form
                   for entering orders you may put the current date in as the default value for a
                   field called OrderDate. Most database applications have sophisticated ways
                   of conducting data validation to ensure integrity of data being entered. You
                   should plan for data validation when designing your forms.




Design software application modifications to meet client requirements                               9
2005
                        Figure 2: Using tabs to minimise clutter




     Get practice
     Each database application has different tools and features available for
     designing forms. It is important to practise and familiarise yourself with
     them. Have a look at the Research section of this Learning Pack for Internet
     sites and forums to help you practice with your own database application.
     As well as doing the practice activities in this Learning Pack, you can use
     the standard form created by your database and then experiment with it.
     Note that all of the database applications have Design View or Properties
     options that allow you to change the way the form appears and behaves.




10                           Design software application modifications to meet client requirements
                                                                                               2005
Report design



                   Most software applications allow you to print data from just about any view.
                   In a database you can print a table or query ‘as is’ in a datasheet view. But
                   usually when we present information we would like it to look professional.
                   Reports do this, and they can organise the data so that it is read in a more
                   meaningful way for the end user. Reports can also include features such as
                   sorting data by category or summarising the information, rather than just
                   presenting all of the data as a list in a ‘table’ format.

                   Most businesses like to see their company logo, name and header and
                   footers included. Reports can present information found in tables or queries
                   in a format that looks great when printed out. Reports let you customise the
                   display of information from the database. You can select the data you want
                   to include and then select the report layout from a variety of design and
                   formatting options, depending on which application you are using. You can
                   insert pictures such as company logos, change the background colours, add
                   headers, footers, group the information, and perform calculations on your
                   data.

                   Reports can contain data from just a single table, or you can join tables and
                   queries to display a wide range of data in your report. During the design
                   phase of your reports it is important to decide upon your layout. As with
                   forms, decide upon a style guide and keep all forms and reports consistent.

                   Remember you can modify the design and layout of the report by going to
                   the Design view, or Properties, depending on the application you are using.



                   Queries
                   Reports can be based on one or more tables or on queries. A query is a
                   request for specific information you present to the database, and the
                   database displays its response to you. The whole purpose of creating a query
                   depends on how you formulate that request.

                   The purpose of a query is to isolate data; this is done for various reasons.
                   For example, when a user is performing data entry such as hiring contractors
                   for various projects, the information is typed into the database as it becomes
                   available. Later on, if they want to get a specific list of contractors based on
                   their job functions, they might ask the database to extract from the database



Design software application modifications to meet client requirements                            11
2005
     a list of contractors who are painters. This is the role of queries. When
     building a query, your must first decide where data will come from because
     a query depends on existing information. This data could come from one
     table, one query, or a combination of various objects.

     It is very important in the design phase of your reports to work out exactly
     what information needs to be displayed in a report. Once you have done that
     you can start working out how to get that information through tables or
     queries.



     Design guidelines
     Follow the same design guidelines as for forms when designing the layout
     of reports.


     Additional guidelines for report design
     Minimise excessive use of blocks of colour (eg background colours).
     Remember that your client may not be using a colour printer and the
     printout still needs to look good, be clear and easy to read, and not waste
     ink.

     Determine what data is required in the report. Do you need to create
     queries or calculated fields?




                             Figure 3: A well-designed report




12                            Design software application modifications to meet client requirements
                                                                                                2005
Toolbar design

                   Depending on which application you are using, you can make changes to the
                   toolbars and create special customised toolbars for particular projects.

                   Most users never make any changes to the toolbars provided. However, it’s
                   very easy to remove toolbar buttons which you never use and replace them
                   with buttons for commands which you do use. Also, if you develop your
                   own macros, you might like to run these from your own personally-designed
                   toolbar buttons. You can even develop your own toolbars — you can have
                   several, if you like, each with a set of buttons for specific tasks. You can
                   also decide which toolbars you want displayed at any time and can change
                   their position on the screen.

                   You can tailor the user environment with customised toolbars by:
                          adding new toolbars to the taskbar
                          adding new buttons to toolbars
                          changing the order in which the buttons appear
                          removing buttons and toolbars that you don’t need.

                   By creating customised toolbars you can remove unnecessary features and
                   add additional features to enhance the application. This has several benefits
                   such as:
                          being easier for the end user to learn
                          end users are less likely to access features of the program that they do
                           not require (and that the developer would rather they didn’t!)
                          better navigation through the system.

                   You will need to understand the way the end users use software programs to
                   best design toolbars to suit their needs. Remember that not all end users can
                   use a mouse, and some simply prefer not to. Make sure wherever possible in
                   your application you include keyboard shortcuts. In many applications such
                   as Microsoft Office applications, this can be done by using the ampersand
                   (&) symbol before the letter you wish to use as the short cut. Below is an
                   example of a customised toolbar containing only buttons and commands
                   necessary to using the customised application.




                                                    Figure 4: Customised toolbar




Design software application modifications to meet client requirements                             13
2005
Navigation design



     Planning your application’s navigation system on paper is a good way to
     start. Deciding on how your client will navigate the new customised
     application is a very important part of the initial design phase. The main
     menu is usually the first screen that your end users see when they open the
     application. It should provide a simple, easy to understand navigation
     structure to provide access to different features and parts of the application.

     Once style guidelines for the customisation are established, develop the
     required menus. When designing a menu system, keep in mind that these
     forms will be used for a long period of time by people with varying
     computer skills. A badly designed form will increase the difficulty for new
     users learning how to navigate the application.

     Designing a user interface involves many issues and should follow our
     established design guidelines (refer to Form Design or the Summary
     section for guidelines). Specifically for navigation/interface design, make
     sure:
          It is simple.
          All fields are clearly identified.
          All information is organised into clearly defined sections — forms,
           report menus.
          Each section is clearly identified.
          Automatic actions (such as command buttons) are clearly identified
          Use only a limited range of colours.
          Use only a limited range of fonts.
          Unnecessary features are removed.

     Particular attention needs to be taken when designing user interface
     components of an application. Consistent use of all features throughout the
     whole application is essential. Rather than having a cluttered main menu, if
     you have many buttons, consider using several menus, such as the example
     in Figure 1 which shows a main menu with a button leading to a separate
     reports menu.




14                            Design software application modifications to meet client requirements
                                                                                                2005
Summary


                   Using the following guidelines will help to ensure your database design is
                   optimal. Your design should:
                          accommodate all expected data
                          avoid redundant (duplicate) storage of data items
                          provide efficient access to data
                          support the maintenance of data integrity (the accuracy and reliability
                           of data)
                          be clean, consistent, and easy to understand.

                   Using the following guidelines will help to ensure your form and report
                   design is effective:
                          Don’t clutter the screen.
                          Try to avoid making users have to scroll down the screen.
                          Use minimal different fonts.
                          Keep colours simple and effective.
                          Organise fields logically.
                          Check the tab order of the fields.
                          Be consistent across the entire application — create uniformity.
                          Include help — descriptive labels, help menus, tool tips and status bar
                           messages.
                          Provide keyboard shortcuts.
                          Use data validation and default values wherever possible.

                   As well, for reports:
                          Minimise excessive use of blocks of colour (eg background colours).
                           Remember that your client may not be using a colour printer and the
                           printout still needs to look good, be clear and easy to read, and not
                           waste ink.
                          Determine what data is required in the report. Do you need to create
                           queries or calculated fields?

                   Using the following guidelines will help to ensure your toolbar design is
                   effective:


Design software application modifications to meet client requirements                             15
2005
          Remove unnecessary features
          Include links to all essential application areas
          Remember to use keyboard shortcuts where possible
          Organise tasks logically

     Using the following guidelines will help to ensure your
     navigation/interface design is effective:
          Navigation and interface is simple.
          All fields are clearly identified.
          All information is organised into clearly defined sections — forms,
           report menus.
          Each section is clearly identified.
          Automatic actions (such as command buttons) are clearly identified
          Use only a limited range of colours.
          Use only a limited range of fonts.
          Unnecessary features are removed.



     Check your progress
     Now you should try and do the Practice activities in this topic. If you’ve
     already tried them, have another go and see if you can improve your
     responses.

     When you feel ready, try the ‘Check your understanding’ activity in the
     Preview section of this topic. This will help you decide if you’re ready for
     assessment.




16                            Design software application modifications to meet client requirements
                                                                                                2005

				
DOCUMENT INFO