Software Engineering Assignment-1
Software Engineering Assignment-1
Draw a context diagram and level 1 DFD of the above requirements of the system.
Elements:
● External Entities:
○ Students: Submit assignments.
○ Teachers: Evaluate assignments and review results.
○ Admin: Generate results, manage users.
● System (Assignment Submission & Evaluation System): The central system that
processes the submission of assignments, allows teachers to evaluate them, and
generates results.
The context diagram provides a high-level overview of the system, showing how external
entities (like students and teachers) interact with the system. The system is represented as a
single process, and external entities are connected to it via data flows.
Data Flow:
The Level 1 DFD breaks down the main system into subprocesses that represent the main
functionalities of the system.
Subprocesses:
Submit Assignment:
● Students upload or submit their assignments through a user interface. These
assignments are stored in the Assignments Database for future access and evaluation.
Evaluate Assignment:
● Teachers access the assignments stored in the Assignments Database. They evaluate
the assignments by grading them or providing feedback. These evaluations are then
stored in the Evaluations Database.
Generate Result:
● The system automatically generates results using the evaluations provided by the
teachers. It compiles the grades and feedback and provides a summary, which can be
viewed by the students.
Data Stores:
1. Assignments Database:
○ Stores all the assignments submitted by the students. This is where assignments
are fetched when teachers want to evaluate them.
2. Evaluations Database:
○ Stores the feedback and grades provided by the teachers after evaluating
assignments. The system accesses this database to generate the final results.
q)-2 Assume that you have to build a web-based order processing system. Draw a
context diagram and level-1 DFD of the system. Also develop a data dictionary for the
same.
Data Flows:
● The arrows in the diagram represent the data flow between the system and the external
entities. These arrows are labeled to specify the type of information being exchanged,
such as "Places Order," "Sends Order Status," "Processes Payment," etc.
For example:
○ Customer → System: The customer sends order details to the system.
○ System → Customer: The system sends back order status updates.
○ System → Payment Gateway: The system forwards payment details to the
payment gateway.
○ Payment Gateway → System: The payment gateway informs the system
whether the payment has been processed successfully.
Data Interactions:
Sub-processes:
1. Customer:
○ The customer places an order.
○ The customer receives an order status update after placing the order.
2. Order Processing System (Main Process):
○ Receives the order from the customer.
○ Communicates with the payment gateway to process payments.
○ Sends the order status to the customer.
○ Interacts with the admin for managing orders and inventory.
3. Payment Gateway:
○ Processes the payment for the order made by the customer.
○ Sends a payment status update to the order processing system.
4. Admin:
○ Manages customer orders (e.g., updating status, managing inventory).
○ Keeps track of the supplier's interactions and updates the inventory accordingly.
5. Supplier:
○ Supplies products when inventory is low.
○ Receives inventory orders from the order processing system.
Relations:
● Customer ↔ Order Processing System: The customer sends an order to the system,
and the system updates the customer about the order status.
● Order Processing System ↔ Payment Gateway: The system sends payment
requests, and the gateway processes them and sends responses back.
● Order Processing System ↔ Admin: Admin manages orders, updates statuses, and
handles supplier-related inventory actions.
● Order Processing System ↔ Supplier: The system sends inventory orders to suppliers
when required.
Data Dictionary for Web-Based Order Processing System
Customer Full name of the customer String Not Null, Length: 1-100
Name (varchar)
Email Email address of the customer String Not Null, Unique, Length:
(varchar) 5-255, Valid email format
Order Date Date when the order was Date Not Null
placed
Order Status Current status of the order String Not Null, Length: 1-50
(e.g., Pending, Shipped) (varchar)
Total Total cost of the order Decimal Not Null, Positive value
Amount
Payment Status of the payment (e.g., String Not Null, Length: 1-50
Status Successful, Failed) (varchar)
Payment Method used for payment String Not Null, Length: 1-50
Method (e.g., Credit Card, PayPal) (varchar)
Price per Price of the product per unit Decimal Not Null, Positive value
Unit
Order Details Description of the items in the String (text) Not Null
order