Chapter 4: System Design
Describes desired features and operations in detail, including screen layouts, business
rules, process diagrams, pseudocode and other documentation.
rules, process diagrams, pseudocode and other documentation.
Basic Modules: You should follow the divide and conquer theory, so divide the
overall problem into more manageable parts and develop each part or module
separately. When all modules are ready, you should integrate all the modules into one
system. In this phase, you should briefly describe all the modules and the functionality
of these modules.
overall problem into more manageable parts and develop each part or module
separately. When all modules are ready, you should integrate all the modules into one
system. In this phase, you should briefly describe all the modules and the functionality
of these modules.
Data Design: Data design will consist of how you organise, managing and manipulate
the data.
- Schema Design: Define the structure and explanation of schemas used in your project.
- Data Integrity and Constraints: Define and explain all the validity checks and constraints you are providing to maintain data integrity.
Procedural Design: Procedural design is a systematic way for developing algorithms
or procedurals.
- Logic Diagrams:Define the systematical flow of procedure that improves its comprehension and helps the programmer during implementation. e.g., Control Flow Chart, Process Diagrams etc.
- Data Structures:Create and define the data structure used in your procedures.
- Algorithms Design:With proper explanations of input data, output data, logic of processes, design and explain the working of algorithms.
User Interface Design: Define user, task, environment analysis and how you intend
to map those requirements in order to develop a “User Interface”. Describe the
external and internal components and the architecture of your user interface. Show
some rough pictorial views of the user interface and its components.
Security Issues: Discuss Real-time considerations and Security issues related to your
project and explain how you intend avoiding those security problems. What are your
security policy plans and architecture?
Test Cases Design: Define test cases, which will provide easy detection of errors and
mistakes with in a minimum period of time and with the least effort. Explain the
different conditions in which you wish to ensure the correct working of your software.
Chapter 5: Implementation and Testing
Implementation Approaches: Define the plan of implementation, and the standards
you have used in the implementation.
Coding Details and Code Efficiency: Students not need include full source code,
instead, include only the important codes (algorithms, applets code, forms code etc).
The program code should contain comments needed for explaining the work a piece of
code does. Comments may be needed to explain why it does it, or, why it does a
particular way.
You can explain the function of the code with a shot of the output screen of that
program code.
- Code Efficiency:You should explain how your code is efficient and how you have handled code optimization.
Testing Approach: Testing should be according to the scheme presented in the
system design chapter and should follow some suitable model – e.g., category
partition, state machine-based. Both functional testing and user-acceptance testing are
appropriate. Explain your approach of testing.
- Unit Testing:Unit testing deals with testing a unit or module as a whole. This would test the interaction of many functions but, do confine the test within one module.
- Integrated Testing: Brings all the modules together into a special testing environment, then checks for errors, bugs and interoperability. It deals with tests for the entire application. Application limits and features are tested here.
Modifications and Improvements: Once you finish the testing you are bound to be
faced with bugs, errors and you will need to modify your source code to improve the
system. Define what modification you implemented in the system and how it
improved your system.