Skip to content
1. Introduction to System Design
- Objective: Transform analysis models into blueprints for building the system.
- Focus Areas:
- Database design
- Forms and reports design
- Interface and dialogue design
- Goal: Ensure the system is efficient, usable, and meets requirements.
2. Designing Databases
- Relational Database Model: Data stored in tables (relations); each table has rows (tuples) and columns (attributes).
- Normalization: Process to eliminate redundancy and improve data integrity.
- 1NF – Remove repeating groups
- 2NF – Remove partial dependency
- 3NF – Remove transitive dependency
- Transforming E-R Diagrams into Relations:
- Each entity → Table
- Attributes → Columns
- Relationships → Foreign keys or separate tables for many-to-many relationships
- Merging Relations: Combine related tables where appropriate to optimize queries.
- Physical Database Design:
- Design physical tables and fields
- Define data types, sizes, indexes
- Consider performance, storage, and access methods
3. Designing Forms and Reports
- Forms: User interface for data entry and retrieval.
- Reports: Structured presentation of processed information.
- Design Guidelines:
- Logical layout of fields
- Consistency in formatting
- Minimize user errors
- Use visual aids (colors, fonts) for readability
- Usability Assessment: Ensure forms and reports are intuitive and easy to use.
4. Designing Interfaces and Dialogues
- Interface Design: Focus on interaction between user and system.
- Dialogue Design: How inputs and outputs are structured for tasks.
- Interaction Methods and Devices:
- Keyboard, mouse, touchscreens
- Menus, buttons, checkboxes, radio buttons
- Graphical Environment Design:
- Use GUI components (forms, windows, menus)
- Consistency in navigation and feedback
- Minimize cognitive load on users
- Design Principles:
- Clarity – Users must understand easily
- Feedback – System responds to user actions
- Flexibility – Support different user preferences
- Error Handling – Provide helpful messages
5. Key Points
- Design bridges analysis models and actual implementation.
- Database design ensures data integrity and efficiency.
- Forms and reports design enhance usability and productivity.
- Interface and dialogue design improves user satisfaction and reduces errors.
- Effective design reduces development cost, maintenance effort, and rework.