0% found this document useful (0 votes)
36 views7 pages

Principles of Software Engineering Assignment 1

The document analyzes various software development models in the context of building a Learning Management System (LMS) and other applications, highlighting their strengths and weaknesses. It concludes that Agile and Spiral models are best suited for projects with evolving requirements and the need for frequent user feedback. The analysis emphasizes the importance of selecting the appropriate development model based on the specific needs of the project.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views7 pages

Principles of Software Engineering Assignment 1

The document analyzes various software development models in the context of building a Learning Management System (LMS) and other applications, highlighting their strengths and weaknesses. It concludes that Agile and Spiral models are best suited for projects with evolving requirements and the need for frequent user feedback. The analysis emphasizes the importance of selecting the appropriate development model based on the specific needs of the project.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

SSN COLLEGE OF ENGINEERING, KALAVAKKAM - 603 110

DEPARTMENT OF INFORMATION TECHNOLOGY


UIT2501 – Principles of Software Engineering and Practices
Academic Year – 2025-2026 Class: B.Tech (V Sem)
Assignment – 1

ROHITH VARSHIGHAN S
3122235002101
IT - B

1. An educational institution has contracted your team to build a Learning Management


System (LMS) to manage online courses, live classes, assignments, forums, grading, and
analytics. The stakeholders include teachers, students, and administrative staff—all with
different needs. The institution is not fully sure about how the final system should look; they
want to start with a core set of features and iteratively expand it based on feedback from
pilot users. The client requests frequent demonstrations, quick turnarounds, and the ability
to prioritize new ideas mid-development.
Analyze how the different kind of software development models would handle this situation:
In your analysis, address:
• How requirements would be gathered and refined over time
• Level and frequency of client and end-user involvement
• Delivery timelines and adaptability to feedback
• How each model would handle evolving stakeholder expectations
• Impact on quality, testing, and long-term system scalability

Here are a few types of models, and they can have different advantages and disadvantages for this
problem statement and over other models,

1. Waterfall Model:
 As the institution is new, the waterfall model can be simple and easy to understand and use,
and can be adopted.

 It has a clear and linear structure and can be easily adopted

 If the requirements are narrow and fixed, then this model can be utilized

 But this model can be rigid and is not flexible; the requirements are going to be changed
continuously

 The testing is late in this process, and as the review is being held in the last step, I can't be
adaptable, it is poor for unclear requirements.

2. V-Model

 It emphasizes review after every stage, and it has a structured approach

 It is easy to manage and is a stable model

 This model is not suitable for projects with changing requirements

 This model requires more time than other models because it is based on a review after every
stage.

3. Incremental Model

 Adopting this model results in the project being delivered in parts.

 This model is easy to test and debug.

 It requires proper planning and pre-defined requirements.

 The final Integration can be complex.

4. Agile Model:

 This model is highly flexible and can be used in a project in case of changing requirements

 It requires high collaboration and team coordination

 As it has a changing requirement, the timeline can be unpredictable

 The scope can be changed continuously and might become unmanageable if not monitored

5. Spiral Model

 Risks can be managed in this model

 It is an iterative approach for evolving requirements

 It might be highly time-consuming and expensive

 This model is complex to manage and plan.

Agile serves as the best fit here because it supports evolving requirements, frequent feedback, quick
deliveries, and high client involvement, and is ideal for iterative development with uncertain or
changing goals.
2. A startup wants to build a social media mobile app targeting teenagers. The app will offer photo
sharing, real-time chat, and video stories. The team plans to explore features like filters, live
streaming, and AI-based content moderation after launch. The primary goals are to launch quickly,
test features based on user feedback, and continuously adapt to fast-changing trends and user
behaviour. How would each of the process models approach the development of this e-commerce
platform? Discuss their ability to handle evolving requirements, speed of delivery, customer
involvement, Development speed, Risk management, Flexibility to change.

Waterfall

Waterfall is not a good option for this project. It calls for all the requirements to be complete before
starting, which does not fit the ever-changing nature of an app targeted at teenagers. There is limited
scope for adjusting to trends, customer feedback, or testing. It has slow delivery, and there is limited
user involvement throughout development, which makes it difficult to develop something that really
speaks to the target market.

V-Model

The V-Model isn't great here, either. Though it has excellent testing and validation, it's a stiff
structure that isn't great at accommodating rapid changes. The development phase is lengthy, and
changing features such as AI moderation or real-time live streaming would be difficult to incorporate
mid-stream. It's better suited to projects where stability and accuracy are paramount over speed and
flexibility.

Incremental Model

Incremental Model is also a good choice. It allows the team to develop core features such as
messaging and photo sharing initially and then introduce new features such as filters or video stories
over time. It is more adaptable than Waterfall but still needs sound initial planning. It can handle
change better, but it might not respond as immediately to user feedback as Agile does.

Agile (Scrum/Kanban)

Agile is the most suitable choice for this startup. It facilitates quick launches, continuous user
feedback, and the ability to pivot and test and improve features quickly on the basis of teen behavior
and trends. Teams can develop MVPs quickly, set priorities in sprints, and pivot quickly if something
fails. It accommodates continuous updates, collaboration, and learning—ideal for today's social
media app.

Spiral Model

The Spiral Model might just work for risky or complicated features such as AI moderation. It focuses
on iterative development and risk analysis. It's heavier and slower than Agile, though, and perhaps
too structured for a rapid-fire startup. It's more suitable for high-risk projects than for trend-driven,
consumer-focused apps where speed and feedback are paramount.

3. An HR tech startup wants to develop an AI-based resume screening platform that automatically
filters resumes based on job descriptions, flags keywords, and ranks candidates. Initial algorithms
are basic, but they want to evolve the system using machine learning based on recruiter feedback.
Discuss how Waterfall, Prototyping, RAD, Spiral, and Agile would suit this project. Focus on:

• Time-to-market with a usable version

• Handling uncertainty in AI model training and feedback loops

• Flexibility and risk management in algorithm design and fairness

Waterfall

Waterfall is not a good choice here. It presumes pristine, static requirements upfront—something
that's not viable for AI-powered systems that grow through feedback. The time-to-market is sluggish,
and one cannot pivot on algorithms or fairness issues half-way. It's inflexible and perilous when
dealing with adaptive machine learning models and data-driven systems.

Prototyping

Prototyping is applicable to this type of AI project. It is possible to quickly produce a basic version of
the screening platform to demonstrate key functionality—such as keyword matching and ranking.
Using recruiter feedback to inform future development, it can be refined. But without discipline, it
can create a patchy end result unless it is moved to another model further down the line.

Rapid Application Development (RAD)

RAD is a likely choice here. It focuses on speed, rapid iteration, and user feedback—ideal for
producing a quick-and-dirty AI resume screener. Recruiters can engage with initial versions and
influence the model through iterative refinement. It might not do well with the intricacies of
algorithm fairness and scalability over the long term unless it is managed carefully.

Spiral Model

The Spiral Model is appropriate for this project when algorithm bias, fairness, or legal risk is a
concern. It integrates iterative development with formal risk evaluation and is applicable to delicate
AI design. It's slower than RAD or Agile but more capable of dealing with uncertainty in training data
and ethical AI.

Agile (Scrum/Kanban)
Agile is a great choice for this startup. It allows for fast delivery of a usable MVP and ongoing tuning
of the AI model based on recruiter input. It manages changing requirements, retraining
requirements, and fairness concerns well through iterative sprints. Flexibility, speed, and intense user
engagement make Agile the perfect choice here.

The one thing that I learn from this assignment was how different software development models
offer different solutions, and each has its own strengths and weaknesses based on the project's
nature. I think that Agile and Spiral models are much better suited for modern, evolving technologies
like AI, where feedback and iteration are essential. It also helped me understand the importance of
choosing the appropriate model required for the solution.

WATERFALL MODEL:

V MODEL:

SPIRAL MODEL:
INCREMENTAL MODEL:

AGILE MODEL:

You might also like