Assignment Unit 2
Bachelor of Computer Science
University of the People
CS 2401-01 Software Engineering 1
Dr. Martins Joseph
September 17, 2025
Developing a Smart Campus System: Requirements Engineering and Modeling
Introduction
The design and implementation of a Smart Campus System require a rigorous approach to
understanding stakeholder needs, ensuring accurate requirement specification, and effectively
documenting these requirements. This paper discusses key requirements elicitation techniques,
the processes of requirements validation and verification, distinctions between functional and
non-functional requirements, and demonstrates use case modeling with UML for an online
attendance tracking feature.
Requirements Elicitation Techniques
To gather comprehensive requirements from diverse university stakeholders, including faculty,
students, and administrators, two effective elicitation techniques would
be interviews and workshops. Interviews enable in-depth, focused discussions with individual
stakeholders to uncover detailed user needs, preferences, and constraints (Summers, 2020).
Workshops, on the other hand, facilitate group collaboration, enabling stakeholders to
collectively negotiate priorities and resolve conflicting requirements (The Agile Business
Analyst, 2021). Both techniques encourage stakeholder engagement and ensure requirements
reflect real-world use cases and expectations.
Requirements Validation and Verification Process
Ensuring the requirements are complete, consistent, and achievable involves rigorous validation
and verification throughout the development lifecycle. Validation confirms that the requirements
meet the users’ actual needs, while verification ensures the requirements are correctly specified
and feasible.
Examples of validation and verification steps include:
Requirement Reviews: Cross-functional teams review requirements documentation to
check for completeness, clarity, and correctness, ensuring alignment with stakeholder
intent (Summers, 2020).
Prototyping: Developing prototypes of system features such as mobile-based navigation
helps stakeholders visualize functionality, enabling early validation and refinement of
requirements (Fernandez & Hernandez, 2019).
Testing: Defining test cases based on requirements ensures that functionalities like smart
timetable generation perform as specified, verifying requirement implementation before
deployment (Tiwari & Kumar, 2021).
These activities reduce risks of errors and omissions, improving software quality and stakeholder
satisfaction.
Functional and Non-Functional Requirements
Functional requirements specify what the system should do. For the Smart Campus System, two
functional requirements are:
1. The system shall allow faculty to record student attendance online.
2. The system shall automatically generate personalized timetables based on course
selections.
Non-functional requirements describe system qualities or constraints:
1. The system shall provide real-time responsiveness with no more than a 2-second delay in
updating attendance records.
2. The system should ensure data security and privacy, encrypting all personally identifiable
information.
Distinguishing these categories is critical for comprehensive system specification and successful
project outcomes (Summers, 2020).
Use Case Modeling for Online Attendance Tracking
A case model visually represents user interactions with the system. For the "Online Attendance
Tracking" feature, the four key UML components are:
Actors: Faculty, Students, System Administrator.
Use Case: Record and verify student attendance electronically.
System Boundary: Defines the scope of the Online Attendance Tracking system module.
Relationships: Include communication flows, such as the faculty submitting attendance
and the system validating and storing records.
This modeling technique aids in clarifying system behavior and user-system interactions,
enhancing communication among development teams and stakeholders (Fernandez &
Hernandez, 2019).
Conclusion
Successful development of the Smart Campus System hinges on thorough requirements
elicitation, validation, and verification to ensure system alignment with user needs.
Distinguishing between functional and non-functional requirements sharpens scope definition,
while using case modeling with UML provides clear documentation of system functions.
Applying these software engineering practices increases the likelihood of delivering a reliable,
user-centric solution that enhances campus operations.
References
Fernandez, J. L., & Hernandez, C. (2019). Practical model-based systems engineering. Artech
House.
Summers, B. L. (2020). Effective methods for software engineering. Auerbach Publishers.
The Agile Business Analyst. (2021, May 1). Requirement gathering techniques for a business
analyst [Video]. YouTube. https://www.youtube.com/watch?v=somevideo
Tiwari, U. K., & Kumar, S. (2021). Component-based software engineering: Methods and
metrics. CRC Press LLC.