Design
Stages of Design i.Nature of the solution 1.Agreed set of objectives 2.Output design 3.Input design 4.Data structures design 5.Process model design 6.Test plan ii.Intended benefits iii.Limits of the scope of the solution
i. Nature of the Solution How will you proceed with the designing of the new system? This will be a small introduction specifying the sub-stages that follows below. That is: 1.Agreed set of objectives 2.Output design 3.Input design 4.Data structures design 5.Process model design 6.Test plan
1. Agree a set of objectives with the Client It is important that the user requirements are broken down into specific and measurable objectives. Here you are looking at the scope of the project. This list would contain points that can be considered at the end of the work as having been achieved or not.
Note The agreed Design objectives and the input and output design makes up the: DESIGN SPECIFICATION
Objectives must be SMART – Specific—What exactly are we going to do for whom? – Measurable—Is it quantifiable and can WE measure it? – Attainable/Achievable—Can we get it done in the proposed time frame with the resources and support we have available? – Relevant—Will this objective have an effect on the desired goal or strategy? – Timely –When will this objective be accomplished?
The table below uses an example objective from a fictional software company, to illustrate how to apply the SMART objective principle.
Examples of objectives whose success would be difficult to measure: “The solution must be easy to use” “The solution must be presented in pleasant colours”
Objectives where success could be readily identified: “Mr. Clerk must able to access all customer and sales staff records”. “A form teacher must be able to print a student performance report for each student at the end of every term.” Important: Read Section 4.3 a, Page 310 This document must be signed of by both student and client
2. Output Design Show detailed models of the proposed interface. Discuss these with the client before implementation. Show any changes made. Use this as an opportunity to involve the client again in modifying the design specification. Document all such occurrences and how they were resolved. Include: – report layouts – screen displays – other forms of output (for example, charts, sound, animation) – screen layout Important: Read Section 4.3 b, c Page Must be drawn up via the computer using Microsoft Visio or any other software you can use to produce diagrams. Ensure that you have uncluttered screens and clear annotations of each control / field on the form This document must be signed of by both student and client. (Identify Purpose, Link to table(s), Fields used, Criteria, Sorting, Grouping, Annotation of elements)
3. Input Design This section deals with designing and documenting data capture forms and/or screen layouts. The data capture forms might be paper-based but might also be on- line forms. The form designs should reflect the medium used (no dropdown boxes on a paper-based form). Important: Read Section 4.3 b, c Page 310 – 311 Must be drawn up via the computer using Microsoft Visio or any other software you can use to produce diagrams. Ensure that you have uncluttered screens and clear annotations of each control / field on the form. (Identify Purpose, Link to table(s), Fields, Annotation of elements) This document must be signed of by both student and client.
Main Menu Design
Tips on Screen Designs Ensure that the design pattern is consistent across the software. For example if you double click to open an item on one list ensure that you can do the same on another form. Use colour sparingly. Stick to the gray/blue backgrounds and limit the extensive use of colour. If there are items such as required fields on a form, use one background colour for all of these fields, e.g. yellow Ensure a consistent easy navigation between screens/modules. You should have a consistent top toolbar wherever the user is in the software (except the main screen, this may be different) Keep screens as uncluttered as possible and ALIGN the controls on the form. Ensure that data in fields is justified appropriately. Right for numbers (integers) and Left for strings.
Tips on Screen Designs _designs.html _designs.html You can use the above link for information.
Tips on Screen Designs You must go through the following link on Form Design: practices-for-form-design practices-for-form-design
Project Approval Form This should be used after every stage. However, you must list ALL the deliverables you created. Failure to list all may result in obtaining a lower mark. Also put in a Project Approval Form immediately after the deliverable where it is absolutely necessary to have client approval (such as the Design Objectives, Output Design and Input Design.
4. Data Structure Design The aim of this stage is to determine what data will be processed by the system and what data will be stored within it. The simplest way to do this is to draw it. Your underlying aim is to convey to the reader that there is a clear idea of how the different parts of the system are related and how the various data flows. Your ability to draw pretty boxes is not tested here, simply your understanding of the logic of the intended solution and of how the various processes and data work together. This pertains to the data structures that solve the inefficiencies identified in the requirements specification.
This section must contain: a)Normalization b)Entity Relationship Diagram showing the relationships between the different files or tables should be created. c)Data Storage: Files 1.If the data are to be organized as files we must decide: 1.The file organization that is, serial, sequential or direct access. 2.The methods of file access 3.Each file’s structure, e.g. user – defined “record” data types. 2.Identify the data fields for each file or tables, Primary Keys, Foreign Keys, data types 3.Data Validation - Validation must be performed on data inputted into the system. These proposed validated checks must be documented in detail. Can summarise this information in the form of a table with a row for every field. (You can use a table similar to the following: 4.Calculate the file size
You can use tables such as these. Ensure you have included all aspects. 4.Calculate the file size File Size Estimation Estimation of data files generated by the system. example: Total number of bytes for 1 record = % slack = 25 Estimated number of records per year = 500 Total number of bytes for 500 records = X 500 = 1250 (Read Section 2.3d Page 148) Important: Read Section 4.3 b,c Page 311 – 312 Field NameTypeSizeDescriptionValidationExample e.g CustomerID e.g. Autonumber (Text currency number etc) e.g. 5 e.g. The key identifier of each customer This is a unique number e.g. Presence check e.g
5. Process Model Design Dataflow diagram showing the data flow in the new system (Read chapter 1.6 Page 60) System Flowchart showing the processes and their data (Read chapter 1.6 Page ) Jackson Diagram showing how the problem has been modularized. A complete set of algorithms in appropriate form (pseudocode or system flowchart or a written description) which describe the method of solution and the original coding which is intended. Important: Detailed textual descriptions of each diagram in this section are needed. Read Section 4.3 e Page 312
6. Test Plan You are required to design and document a test plan that includes test data and expected outcomes. The intention of this stage is to provide evidence to the end user that the solution works. Assessment of the Test Plan is based on completeness and clear presentation. Encourage or a test plan to ensure all elements are fully tested and students to fully justify the choice of data. Relate your discussion to normal, erroneous and extreme data. Test plans are often best set out on tabular form clearly cross referenced to annotated output. The following headings might be appropriate for the test plan table: – Test No – Purpose – Data – Expected Results – Actual results – Remedial Action Important: Read Section 2.6 b Page 172 – 173
6. Test Plan Test Strategy Document the following: What is the aim of testing the new system? What particular features of the new system do you intend to test? What kind of testing will you be performing yourself? (dry run, variable dumps, black box). Important: Read Section 2.6 b Page 172 – 173
6. Test Plan
Test no. Test Objective Test Method Test Data Used Expected Outcome Actual Outcome Evidence on page… 1CustomerID should be automatically generated Click on Add Button n/aNext ID should be generated Test Successful95
ii. Intended benefits This must be a comparison of merits of the new system in relation to the old system You must comprehensively describe the benefits of the new system. What benefits will the new system bear for the user? TIP: Cost benefit, time saving, increase in productivity, increase in efficiency, customer satisfaction etc.
iii Limits of the scope of the solution You must present a detailed description of the system limitations, including, the estimate of the size of the files required for the implemented system, time, budget, available hardware, computer literacy etc. System Limitations Things/processes that the new system will not do. (example: system will not handle accounts, system will not be able to handle more than 100,000 records etc.) Important: Estimation of file size required for the implemented system must be a limitation