Podcast
Questions and Answers
What is the main purpose of the Software Requirements Specification (SRS)?
What is the main purpose of the Software Requirements Specification (SRS)?
To serve as a guide to the developers and testers responsible for system development.
What does the Software Requirements Specification (SRS) establish between the client and the user?
What does the Software Requirements Specification (SRS) establish between the client and the user?
Water supply companies may work to minimize the environmental impact of their operations.
Water supply companies may work to minimize the environmental impact of their operations.
True
A future scope of the Ashok Water Supply project is the development of applications for ______ and ______.
A future scope of the Ashok Water Supply project is the development of applications for ______ and ______.
Signup and view all the answers
Match the following software tools/languages with their categories:
Match the following software tools/languages with their categories:
Signup and view all the answers
What are the three types of users maintained in the system?
What are the three types of users maintained in the system?
Signup and view all the answers
What is the main objective of Ashok Water Supply?
What is the main objective of Ashok Water Supply?
Signup and view all the answers
The system requires all the mandatory fields to be filled with the proper ________.
The system requires all the mandatory fields to be filled with the proper ________.
Signup and view all the answers
Match the following user actions with their descriptions:
Match the following user actions with their descriptions:
Signup and view all the answers
What is the purpose of the Bill Generation Table in a business or organization?
What is the purpose of the Bill Generation Table in a business or organization?
Signup and view all the answers
Which of the following modules are part of the Admin Module? (Select all that apply)
Which of the following modules are part of the Admin Module? (Select all that apply)
Signup and view all the answers
During detailed design, the internal logic of each module within the system is decided.
During detailed design, the internal logic of each module within the system is decided.
Signup and view all the answers
The Worker Module includes functions such as Login, Add Attendance, View Assigned Work, View Salary, Leave ____, and Logout.
The Worker Module includes functions such as Login, Add Attendance, View Assigned Work, View Salary, Leave ____, and Logout.
Signup and view all the answers
Match the following programming language concepts with their descriptions:
Match the following programming language concepts with their descriptions:
Signup and view all the answers
What is the purpose of a data flow diagram (DFD)?
What is the purpose of a data flow diagram (DFD)?
Signup and view all the answers
What does an entity-relationship diagram (ERD) illustrate?
What does an entity-relationship diagram (ERD) illustrate?
Signup and view all the answers
In a database design, a __________ field is a field that links one table to another.
In a database design, a __________ field is a field that links one table to another.
Signup and view all the answers
Database design is done after the database is built.
Database design is done after the database is built.
Signup and view all the answers
What is one reason why deep nesting in programs should be avoided?
What is one reason why deep nesting in programs should be avoided?
Signup and view all the answers
What should a programmer examine when looking at a routine with very few statements?
What should a programmer examine when looking at a routine with very few statements?
Signup and view all the answers
A module with a complex interface should be carefully examined as it might not be functionally ________.
A module with a complex interface should be carefully examined as it might not be functionally ________.
Signup and view all the answers
Proper indentation, blank spaces, and parentheses should not be used to enhance the readability of programs.
Proper indentation, blank spaces, and parentheses should not be used to enhance the readability of programs.
Signup and view all the answers
Match the following programming concepts with their descriptions:
Match the following programming concepts with their descriptions:
Signup and view all the answers
Study Notes
Ashok Water Supply System
- Purpose: To maintain credit notes of customers, provide 24/7 water supply, display service details, allow bill viewing and contact information access.
Hardware and Software Requirements
-
Hardware:
- Processor: 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz, 2419 MHz, 4 Core(s), 8 Logical Processor(s)
- RAM: 8GB
- Hard Disk: 256GB or above
-
Software:
- Operating System: Windows 11
- Text Editor: Notepad++, Sublime Text, or VS Code
- Server: Campserver
- Browser: Chrome, Mozilla Firefox, or any other
- Language Tools:
- User Interface Design: Html5, CSS, JS, Bootstrap
- Server-side Scripting: PHP
- Backend: MySQL
Module Description
-
Owner Module:
- Features: Add details, assign workers, view workers, view attendance, bill generation, view work, add salary, view bill, add capacity, view payment, view leave application, logout
-
Customer Module:
- Features: Registration, login, view details/services, booking for water supply, feedback, view bill, add payment details, view payment status, logout
-
Worker Module:
- Features: Login, add attendance, view assigned work, view salary, leave note, logout
Future Scope of the Project
-
Future Developments:
- Customers can view service details through website
- Booking through Short Message Service (SMS)
- GPS Tracker development for customers
- Android and iOS app development
Software Requirement Analysis and Specification
-
Introduction:
- Software Requirements Specification (SRS) is a document that describes the software's functionality
- Purpose: to bridge the communication gap between developers, testers, and clients
-
Product Perspective:
- The system can manage water supply, attendance, and worker information efficiently
- Objectives: ensure safe and reliable drinking water, promote sustainability, efficiency, and customer satisfaction
-
User Characteristics:
- Three types of users: Admin, Worker, and User
- Each user has a specific set of features and functionalities
-
General Constraints:
- All mandatory fields must be filled with proper information
-
Assumptions and Dependencies:
- Users should have basic computer knowledge
- The system is dependent on internet connection
- Information provided by users is assumed to be genuine### System Requirements
- The application must have a relational database.
- The application must display error messages to the user when an error is detected.
Safety Requirements
- The system is safe to use.
- Data is stored in a central database to minimize data loss in case of mishaps.
- Forgot password functionality is available to help users reset their passwords.
- Authorization checks the permission level of the user accessing the site.
- The system is protected by CSRF (Cross Site Request Forgery) middleware to defend against malicious attacks.
Security Requirements
- The system is protected by a login system maintained by the admin.
- Admin and staff user passwords are converted to unreadable form using the PBKDF2 encryption algorithm.
Software Quality Attributes
- Efficiency: The system is built using pre-defined guided processes and data is stored in one central database.
- Extensibility: The system supports future modifications without side effects.
- Portability: The system can be run on any operating system with the latest version of a browser installed.
- Flexibility: The system keeps updating data according to changes that take place.
- Reliability: The system's reliability depends on the maintenance of the database.
- Usability: The interface is user-friendly and easy to access and understand.
System Analysis and Design
- System design is the process of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements.
- A system is a set of components with clearly defined behavior that interact with each other in a fixed manner to produce some behavior.
Data Flow Diagram
- A data flow diagram is a graphical representation of the flow of data through an information system.
- It is used to visualize the flow of data through a system and to model the transformations or processes that occur within the system.
Entity-Relationship Diagram
- An entity-relationship diagram is a graphical representation of the interrelationships between entities in a database.
- Entities are represented by boxes, relationships are represented by diamonds, and attributes are represented by ovals.
- An entity is a thing that is recognized as being capable of an independent existence and can be uniquely identified.
Database Design
- A database is a collection of related data that can be of any size and complexity.
- Database design is done before building the database to meet the needs of end users.
- Normalized tables are used to store data in the database.
Normalized Tables
- User Register Table: stores information about registered users.
- Book Table: stores information about bookings done by users.
- Bill Table: stores information related to financial transactions and invoices.
- Feedback Table: stores information related to feedback provided by users.
- Payment Table: stores information related to financial transactions and payments.
- Admin Login Table: stores information related to administrative user accounts.
- Workers Table: stores information about the workers or employees.
- Attendance Table: stores information related to the attendance of employees.
- Assign Table: stores information about assignments or tasks assigned to individuals or teams.
- Bill Generation Table: stores information related to the generation and processing of bills or invoices.
- Add Capacity Table: stores information about the capacity and availability of water resources.
- Add Salary Table: stores information about employee salaries.
- Leave Note Table: stores information related to leave requests and corresponding notes.
- Worker Login Table: stores information related to worker or employee login activities.
Detailed Design
- Detailed design is the second level of the design process.
- It specifies how the modules in the system interact with each other and the internal logic of each module.### Detailed Design
- Detailed design expands system design and database design to contain a more detailed description of processing logic and data structures.
- It provides a complete design for coding.
Applicable Documents
- Synopsis document for "Ashok Water Supply"
- Software Requirement Specification (SRS) for "Ashok Water Supply"
- Database Design document for "Ashok Water Supply"
Structure of the Software Program
- The software program consists of three main components: User Module, Admin Module, and Worker Module.
Admin Module
- The Admin Module has 15 sub-modules:
- Login
- Location
- Add workers
- Add Details
- View Workers
- View Attendance
- Assign Workers
- View Assign
- View Work
- Bill Generation
- View Bill
- View Payment
- Add Salary
- Add Capacity
- View Leave
- Logout
Worker Module
- The Worker Module has 6 sub-modules:
- Login
- Add Attendance
- View Assigned Work
- View Salary
- Leave Note
- Logout
User Module
- The User Module has 9 sub-modules:
- Registration
- Login
- View Details
- Booking Water Supply
- Feedback
- View Bill
- Add Payment details
- View Payment Status
- Logout
Coding
- The goal of coding is to translate the design into code in a given programming language.
- The coding phase affects both testing and maintenance profoundly.
Programming Style
- Selecting module and variable names is important for readability.
- Single-entry, single-exit constructs should be used.
- Information hiding should be supported where possible.
- User-defined types should be exploited where applicable.
- Nesting should be avoided if possible.
- Module size should be carefully examined for cohesion and coupling.
- Module interface should be simple and not have more than five parameters.
- Program layout should be organized and presented clearly.
- Side effects should be avoided where possible.
- Robustness is important to handle exceptional conditions.
Admin Login Code
- Admin Login code is a software component designed to authenticate and authorize administrative users to access an application or system with elevated privileges.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Ashok Water Supply is a software that helps administrators manage daily water supply, customer bills, gallery, credit information, and assign work to workers. Users can also view the system's details.