SDLC2023
SDLC2023
SDLC2023
Assess TWO SDLC (Software Development Life Cycle) models that you think can be used
for the above case study – highlight the different aspects of each model, include their
advantages and disadvantages. Suggest the suitability of each model for the above scenario
(this might be determined by size of Project; technical nature of the Project etc.)
Introduction:
Software developing in today’s world is one of the most significant, influential, and vital fields.
All organizations, industries, firms, institutes cannot work effectively without software. This
also helps to minimize manual labour . The purpose of the SDLC is to ensure quality of the
product with minimum risk and failure. The SDLC was developed to enable development work
in a systematic, step-by-step fashion. Software development life cycle (SDLC) describes the
structure of tasks and activities that should be accomplished. There are several SDLC model
types, each with their own advantages and disadvantages.
Requirement
Analysis
Deployment Design
SDLC
Testing Implementation
Agile is the most suitable SDLC method for the case study “Pass IT driving school. Considering
Pass IT’s driving school software development, an agile could be the suitable approach. With its
flexibility, emphasis on stakeholder collaboration, and change adaptability, it could not have
been a better candidate for this project. However, this approach also has some advantages and
disadvantages, with failures being minimized as a result. This process has made product delivery
fast, customer satisfaction and high quality of product. Essentially, the agile approach was based
on the creation of high quality products, simplicity and knowledge improvement through change
integration.
In the Agile model, the requirements are broken down into several small parts, which are
developed incrementally. Each iteration is short, straightforward, and can be completed with
weeks’ times. At a given time, one iteration is made, created, and delivered to the clients.
by summing up the Agile Model one notes that early risk detection, on going counseling,
iterations, small teams, customer feedback, quality, on time and within budget are the advantages
of Agile approaches.
The weaknesses of Agile methodologies include miscommunication, increase in resources,
increase in overall costs, inappropriateness for large projects, and lack of coordination.
Advantages of Agile:
Dis-Advantage of Agile:
Incremental Model
Every module in this model goes through the phases of requirements, design, implementation,
and counsellinging. Programmer can have functional software early in the software life cycle
because the first module generates a working version of the programme. The module's
functionality is increased with each new release. The procedure keeps going until the entire
system is achieved.
I. This model is more adaptable and less expensive to modify in terms of requirements and
scope.
II. In a smaller iteration, counsellinging and debugging are simpler.
III. Customers can react to each built in this model.
IV. Risk is easier to manage because problematic elements are recognised
Task 2
Powerful inquiry methods assist in determining the actual requirements and expectations of
system users. This keeps things from getting misunderstood and guarantees that the system takes
care of the real issues and pain spots that users have.
The design process is informed by the knowledge gathered from investigation techniques, which
results in a more user-friendly and functional system. This enhances the user experience overall
and lessens the need for expensive rework.
when thorough requirements are gathered up front.. By making sure the system lives up to
expectations, it also raises stakeholder satisfaction.
The owner may mention in an interview that managing Learner registrations, scheduling, and
instructor assignments requires a user-friendly interface. It is also possible to get insight into any
particular business policies or regulatory requirements.
Task 3
Following the initial investigation and approval of your recommendation by the business
managers, you are to produce detailed design documentation. Again, this will depend on
the methodology used and should include:
The Driving School System's primary internal processes and external entities that interact with it
are depicted in the context diagram, which offers a high-level overview of the system.
Driving School System
External Entities:
The Level 1 DFD decomposes the main processes into more detailed sub-processes and
identifies the data flows between them.
Learner Management Process:
· Data Flows:
· Learner application (Learner name, contact information, license type)
· Learner registration (Learner ID, Booking selection, payment details)
· Booking progress updates (lesson attendance, Counselling scores)
· Data Flows:
· Instructor application (instructor name, qualifications, certifications)
· Instructor availability (scheduled lessons, availability times)
· Instructor performance feedback (Learner evaluations, Counselling results)
· Data Flows:
· Booking schedule (Booking type, instructor assignment, lesson timings)
· Learner enrollment in Bookings (Learner ID, Booking selection)
· Attendance records (Learner ID, lesson date, instructor ID)
· Data Flows:
· Driving Counselling requests (Learner ID, Counselling type)
· Counselling results (Learner ID, Counselling type, score, feedback)
· License applications (Learner ID, Counselling results, driving record)
Level 2 Data Flow Diagram (DFD)
The Level 2 DFD further decomposes the sub-processes into more specific tasks and identifies
the data flows between them.
Learner Registration Process:
· Tasks:
· Verify Learner identity and eligibility
· Collect Learner personal information
· Process Booking selection and payment
· Generate Learner ID and registration confirmation
· Tasks:
· Check instructor availability based on Learner needs
Flow chart
· Data dictionaries showing the data required.
o For each item of data show:data name, type, field size, source, input method
and validation checks
Give a clear picture of the inputs, outputs, processes, scope and constraints of the system
requirement, with a recommended solution.
Input Validation
Data Name Data Type Field Size Source
Method Checks
Unique
identifier
System-
Instructor ID Integer 10 Automatic assigned to
generated
each
instructor
Instructor String 50 Instructor Manual input Alphabetical
characters
Name application
only
Valid email
Contact Instructor address and
String 100 Manual input
Information application phone
number
Valid
Qualification Instructor instructor
String 100 Manual input
s application certifications
and licenses
Valid time
Availability Instructor
String 100 Manual input slots and
Times availability
schedule
Records
assigned
Assigned Lesson lessons and
String 255 Automatic
Lessons scheduling learners for
each
instructor
Narrative
Performance Learner
String 100 Manual input feedback and
Feedback evaluations
rating score
Records
Counselling
performance
Counselling Counselling
String 50 Automatic for learners
Results results
assigned to
each
instructor
Input Validation
Data Name Data Type Field Size Source
Method Checks
Booking id Integer 10 System- Automatic Unique
generated identifier
assigned to
each Booking
Booking String 255 Booking Manual input Detailed
Description catalogue description of
Booking
content and
objectives
Valid number
of weeks or
hours for
Booking Booking Booking
Duration Integer 2 catalogue Manual input completion
Valid
Booking
codes for
Prerequisite Booking required
Bookings String 50 catalogue Manual input prerequisites
Records
assigned
Instructor Lesson instructor for
Assignment String 50 scheduling Automatic each Booking
Records
enrolled
Learner Learner Learners for
Enrolments String 50 registration Automatic each Booking
Records
dates, times,
and locations
Lesson Lesson for each
Schedule String 255 scheduling Automatic lesson
Records
presence or
Attendance Lesson absence for
Records String 50 attendance Automatic each lesson
Input Validation
Data Name Data Type Field Size Source
Method Checks
Counselling Integer 10 System- Automatic Unique
ID generated identifier
assigned to
each
Counselling
Counselling String 10 Counselling Manual input Valid
Type request Counselling
type (e.g.,
practical
driving,
theory
counselling)
Learner ID Integer 10 Counselling Automatic Links
request Counselling
to Learner
record
Instructor ID Integer 10 Counselling Automatic Links
results Counselling
to instructor
record
Valid date
Counselling Counselling
Date 10 Automatic and time for
Date scheduling
Counselling
Valid address
Counselling Counselling or location
String 50 Manual input
Location scheduling for
Counselling
Numeric
Counselling Counselling score within
Integer 2 Automatic
Score results a valid range
(e.g., 0-100)
Unique
identifier
Counselling System-
Integer 10 Automatic assigned to
ID generated
each
Counselling
Task 4
Produce detailed design documentation showing the layout of the user interface or screen
layouts. It may include:
data entry forms, including layout and structure, proposed fields, data entry methods
User Interface Design for Pass IT Driving School
Overview:
This document outlines the user interface (UI) for a computerized system managing Pass IT
driving school's operations. It focuses on data entry forms, detailing their layout, structure, fields,
and input methods.
Target Audience:
· Office Staff: Responsible for lesson bookings, Learner records, payments, and report
generation.
· Instructors: View schedules, track Learner progress, and update Learner information.
· Learners: Book/cancel lessons, access progress reports, and update contact details.
1. Learner Registration:
2. Lesson Booking:
· Layout: Table format with clear headings and rows per lesson.
· Structure:
o Learner Info: Name, license number, current lesson stage.
o Lesson History: Date, time, duration, instructor, type, notes on progress.
· Fields: Pre-populated from database. Text area for instructor notes.
· Input Methods: Read-only fields for Learner info and history. Text area for instructor
notes.
Additional Considerations:
Report forms
Introduction:
This document outlines the user interface (UI) and hardware/software specifications for a
computerized system managing Pass IT driving school's operations. It focuses on data entry
forms, report formats, and the core technical backbone.
UI Design:
Reports:
· Weekly/Daily Lesson Timetables: Filterable by instructor, date range, and lesson type for
insightful scheduling analysis.
· Learner Lesson History: Detailed individual reports with progress notes and instructor
comments .
· Instructor Performance: Summarizes lessons taught, Learner pass rates, and feedback,
providing valuable insights into instructor effectiveness.
· Financial Reports: Generate income breakdowns by lesson type and instructor, offering
financial clarity and decision-making support.
· Hardware:
o Secure and reliable servers for data storage and system operations.
o Desktop computers or laptops for office staff and instructors.
o Optional Learner tablets for lesson progress tracking and communication.
· Software:
o Windows or macOS for workstations, Linux for servers.
o MySQL or PostgreSQL for data storage and retrieval (DBMS).
o Python or Java for backend development.
Part B
Task 1
Evaluate the factors affecting the success and failure of the new system in regard to the:
· High: The project is large and complex, with the potential for unforeseen technical challenges,
unclear requirements, and changing priorities.
· Mitigation:
Ø Phased development: Implement core functionalities first (Learner management,
booking) and then add advanced features later.
Ø Clear requirements gathering: Involve stakeholders early and document expectations
thoroughly.
Ø Contingency planning: Allocate budget and timeline buffers for unforeseen issues.
· High: The project needs to balance cost-effectiveness with functionality, manage time pressures
for implementation, and adapt to existing IT infrastructure and policies.
· Mitigation:
Ø Cost-benefit analysis: Prioritize features based on their impact and feasibility within
budget.
Ø Agile development: Break down development into sprints for faster iteration and
adaptation.
Ø Collaboration with IT department: Ensure compatibility with existing systems and
compliance with policies.
· Moderate: The project requires training for office staff and instructors on the new system.
· Mitigation:
Ø User-friendly interface: Design intuitive interfaces with clear instructions and helpful
features.
Ø Comprehensive training: Provide thorough training materials and hands-on sessions for
staff.
Ø Support documentation: Develop clear user guides and FAQs for ongoing reference.
· High: The project needs to overcome resistance to change and ensure user adoption of the new
system.
· Mitigation:
Ø Early communication: Engage stakeholders early on, address concerns, and highlight the
benefits of the new system.
Ø User feedback loops: Regularly gather feedback during development and refine the
system based on user needs.
Ø Incentives and recognition: Reward early adopters and champions of the new system.
Task 2
· An evaluation explaining how your design meets the user requirements identified
and identifying possible improvements and further developments.
The proposed computerized system for Pass IT driving school offers several key strengths and
exciting possibilities for future development, effectively addressing identified user requirements.
Strengths:
Possible Improvements:
· Personalized Learning Paths: Implementing a lesson planning tool for instructors to map
out customized learning journeys for each Learner .
· Gamified Progress Tracking: Introducing points, badges, and leader boards could gamify
Learner progress, boosting motivation and encouraging healthy competition.
· Feedback Loop Mechanism: Implementing a system for Learners to provide feedback on
instructors and lessons would foster continuous improvement and ensure instructor
accountability.
References
Mirza, M. S., & Datta, S. (2019). Strengths and Weakness of Traditional and Agile Processes-A
Systematic Review. J. Softw., 14(5), 209-219..
[ Tarwani, S., & Chug, A. (2016). Agile methodologies in software maintenance: A systematic
review.Informatica; Ljubljana.]
Gurung, G., Shah, R., & Jaiswal, D. P. (2020). Software Development Life Cycle Models-A
Comparative Study. International Journal of Scientific Research in Computer Science,
Engineering and Information Technology, March, 30-37.
Dwivedi, N., Katiyar, D., & Goel, G. (2022). A Comparative Study of Various Software
Development Life Cycle (SDLC) Models. International Journal of Research in Engineering,
Science and Management, 5(3), 141-144.
https://tryqa.com/what-is-agile-model-advantages-disadvantages-and-when-to-use-it/
Hu, M., Cleland, S., & Burt, S. (2019). Build up a Constructivist Learning Environment for
Teaching First-year Students Data Flow Diagrams. 2019 IEEE Frontiers in Education
Conference (FIE). doi:10.1109/fie43999.2019.9028468
https://direct.mit.edu/dint/article/2/4/443/94892/The-Semantic-Data-Dictionary-An-Approach-
for