SDLC Assignmentzzzzz
SDLC Assignmentzzzzz
ASSIGNMENT (SDLC)
1
HND-45 Aung Kaung Maw
Design: In this phase, the system's design is created, including the user
interface, data models, and software architecture.
Implementation: This phase involves coding, testing, debugging, and
integration of software components.
Testing: This phase involves testing the software for functionality,
performance, and usability.
Deployment: In this phase, the software is released to end-users and deployed
in the production environment.
Maintenance: This phase involves the ongoing support and maintenance of
the software after deployment to ensure that it continues to function properly
and meets user needs.
2
HND-45 Aung Kaung Maw
4
HND-45 Aung Kaung Maw
Sequential models in software development life cycle are also known as linear
models. These models involve following the software development phases
sequentially from start to finish, with each phase completed before the next
5
HND-45 Aung Kaung Maw
one begins. There are two main sequential models in software development
life cycle, and they are as follows:
Advantages Dis-Advantages
• Before the next phase of development, • Error can be fixed only during the
each phase must be completed phase
6
HND-45 Aung Kaung Maw
Advantages Dis-Advantages
• •
7
HND-45 Aung Kaung Maw
Advantages of V-model:
• Simple and easy to use.
• Testing activities like planning, test designing happens well before
coding. This saves a lot of time. Hence higher chance of success over
the waterfall model.
• Proactive defect tracking – that is defects are found at early stage.
• Avoids the downward flow of the defects.
• Works well for small projects where requirements are easily understood.
Disadvantages of V-model:
• Very rigid and least flexible.
8
HND-45 Aung Kaung Maw
9
HND-45 Aung Kaung Maw
One advantage of using the waterfall model for a dating app web application
is its structured and well-defined nature. The model follows a linear
progression, starting from requirements gathering, followed by design,
implementation, testing, and deployment. This sequential approach allows for
clear planning and documentation, ensuring that each phase is completed
before moving on to the next. For a dating app, where different features and
functionalities need to be implemented and tested, this can help in maintaining
a systematic and organized development process.
Furthermore, the waterfall model allows for better control over project
timelines and budgets. Since each phase is completed before moving on to
the next, it becomes easier to estimate time and resource requirements for
each stage. This can help in setting realistic project schedules and budgets,
10
HND-45 Aung Kaung Maw
making it easier to manage expectations and deliver the final product on time
and within the allocated resources.
Finally, once the app is fully tested and deemed ready for deployment, it is
released to the public. The team monitors its performance, collects user
feedback, and makes necessary updates or improvements based on the
feedback received.
In summary, the waterfall model can be used for developing a dating app web
application due to its structured nature, clear definition of requirements, and
better control over timelines and budgets. However, it's important to note that
the waterfall model may not be suitable for all types of projects, particularly
those with rapidly changing requirements or a need for iterative development.
11
HND-45 Aung Kaung Maw
Large-scale and long-term projects can benefit from the Waterfall model due
to its structured and phased approach. These projects often require
substantial resources, time, and coordination among multiple teams or
stakeholders. Examples include developing complex enterprise software
systems that integrate various modules and functionalities across different
departments of a large organization. The Waterfall model allows for better
planning, resource allocation, and coordination in such cases.
When dealing with client-oriented projects that have fixed budgets and
deadlines, the Waterfall model can be advantageous. The model's sequential
phases facilitate better estimation of costs and timelines, enabling project
teams to manage client expectations effectively. Projects like custom e-
commerce platforms, where clients have specific launch dates and marketing
campaigns in mind, can benefit from the Waterfall model's structured
approach.
Additionally, the Waterfall model can be useful when the software being
developed needs to integrate with external systems or dependencies. The
sequential approach allows for careful planning and implementation of
integration points. For instance, software development projects that involve
integrating with existing legacy systems or third-party APIs, such as large-
scale financial applications, can benefit from the Waterfall model's systematic
approach to integration.
12
HND-45 Aung Kaung Maw
13
HND-45 Aung Kaung Maw
like data protection act, or social media law. For example: let’s say an
organization wants to build a new office in a specific location which isn’t not
suitable for that company. That company has just saved time and cost
by learning whether it is feasible or not from the beginning.
Operational feasibility:
Operation feasibility always deals with the how well the proposed program will
satisfy and analyze all the factors that organization’s needs are met or not. It
also analyzes the plan of requirement which is identified in the requirement
analysis phase of system development.
Scheduling feasibility:
Scheduling feasibility deals with the timeframe of the project. If the
project is completed on time then the project is success else a project will
fail if it is not completed on time. It also estimates how much time the project
will take to complete. And allocates the required time for the project
like deadline of the project completion.
After examining all the aspect of the feasibility, it helps to identify any
constraint the proposed project may face.
Technical Solution:
Technical solution has the main purpose of design, develop and implement
solution in the project. Solution, designs and implementation has its own
products, products components and product-related lifecycle processes.
Technical solution plays a vital role in product and product component and
also in product related lifecycle. On the other hand, feasibility report helps to
know whether the project is feasible or not with its available resources.
Technical solution always helps in decision making which one is suitable
and provides quality decisions. Feasibility report gives clearness about the
product and its feasibility. It also helps to predict future. Technical solution of
the project is given
below:
1. Requirements Gathering This section emphasizes the importance of
gathering user requirements and stakeholder feedback in the early
stages of the project. It discusses the use of collaboration and
communication tools like Jira, Trello, or Confluence to effectively collect
and document requirements.
14
HND-45 Aung Kaung Maw
2. Design and Planning The design and planning phase is critical for
creating a user-friendly interface and an optimal user experience. This
section discusses the use of wireframing and prototyping tools such as
Sketch, Figma, or Adobe XD to visualize the app's UI/UX. It also
highlights the significance of design systems or UI component libraries
for consistent UI development.
3. Development This section focuses on the technical solutions employed
during the development phase. It suggests the selection of an
appropriate technology stack, version control systems like Git, and
coding standards and best practices. The use of development
frameworks and libraries aligned with the chosen technology stack is
also emphasized. Additionally, the section highlights the importance of
automated testing frameworks like Jest, XCTest, or Espresso for
ensuring code quality.
4. Testing and Quality Assurance The testing and quality assurance phase
plays a crucial role in ensuring the reliability and performance of the
dating app. This section discusses the implementation of comprehensive
testing strategies, including functional testing, usability testing,
performance testing, and security testing. It also highlights the use of
automated testing frameworks and the adoption of CI/CD pipelines for
efficient testing and deployment processes.
5. Deployment and Release This section focuses on the technical
considerations for deploying the dating app in a production
environment. It highlights the use of cloud hosting services like AWS,
GCP, or Azure for backend infrastructure and databases. Additionally,
containerization technologies like Docker or Kubernetes are suggested
for streamlined deployment and management.
6. Maintenance and Support The maintenance and support phase is crucial
for the ongoing success of the dating app. This section discusses the
implementation of error tracking and monitoring tools, as well as
customer support systems. It emphasizes the importance of continuous
updates, bug fixes, security enhancements, and user support to ensure
user satisfaction and app stability.
Component of feasibility report:
Feasibility study helps us to determine whether the project is technically
feasible, cost-effective and
15
HND-45 Aung Kaung Maw
feasibility it will clearly tell about the project (linkedin). it can give us
the right answer before investor spend money, time and resources on
an idea that is not viable. The following are the components of the
feasibility report:
Purpose:
Feasibility report establish the intended purpose of the information
environment and it defines all the boundaries of the information system by
identifying the content of interest of the business organization.
Structure:
It defines the shape and boundaries of the information with all the functionality
and helps in making the strategy and scope for the project. It converts
scattered resources into a unified and cohesive arrangement in an
organized system.
Intended audience:
Intended audience is those people who will be actively participate in the
activities of the information environment.
Project scope:
In order to get a better feasibility, report it must be clear in defining all the
business plan, problems and strategies. Scope of the project must be
definite and to the point which shouldn’t make any confusion in the
project and its members. It should include all business parts which is
directly or indirectly affected like end users, developers and even sponsors
etc. a well-define project scope can only give an accurate feasibility report.
Market research:
Before placing the product in the market, a market research is required which
helps in discovering the strength and weakness of the current approach.
Reviewing this strength, weakness, opportunity, and threats faced by the
project helps in decision making. This way we can consider that how much we
can get from the market after launching the product and it helps in making
the accurate feasibility
report.
Requirements:
16
HND-45 Aung Kaung Maw
17
HND-45 Aung Kaung Maw
Market Analysis:
Extensive market research indicates a significant demand for online dating
services, with a steady growth rate in recent years. The target audience
primarily consists of individuals between the ages of 18 and 35, seeking
diverse relationships and connections. The market analysis suggests a
favorable environment for a dating web application, with opportunities for
growth and revenue generation.
Technical Feasibility:
The development of a dating web application requires a robust technical
infrastructure. The following factors contribute to the technical feasibility:
Financial Feasibility:
The financial feasibility analysis examines the projected costs, revenue
streams, and profitability of the dating web application project. Key financial
considerations include:
18
HND-45 Aung Kaung Maw
Risk Analysis:
19
HND-45 Aung Kaung Maw
Identify potential risks and challenges associated with the development and
launch of the dating web application. Mitigation strategies should be devised
for each risk to minimize their impact on the project.
Conclusion:
Based on the comprehensive analysis conducted, it is concluded that the
development of a dating web application is technically feasible, financially
viable, and aligned with market demands. However, careful attention must be
given to legal and regulatory considerations, data privacy, and user security.
20
HND-45 Aung Kaung Maw
the operational feasibility has its own impact on the work and strategy to
extend it services to clients.
Technical impact:
The impacts on the insurance company are determined with the various
criteria such as resource, capacity, the working teams. Here the resources
provided to the working team is sufficient or not is
monitored. Whether the technical team is capable of converting the ideas into
the working system.
Technical feasibility deals with the technical of the system like equipment
needed to build the system, install or operate the system. It also involves
the hardware and software evaluation.
Economic impact:
Impacts of the economic feasibility in the insurance company are
concerned about the cost and benefits of the projects. It helps to know
viability, make decision to determine the positive economic
benefits.
Schedule impact:
Schedule feasibility has impact on the insurance company that to get the
success by completing the project on time. Schedule feasibility will be high is
the project is completed on time before deadline.
It helps to make the project successful.
1.Introduction:
The purpose of this Software Requirement Specification (SRS) is to define the
requirements for the development of a dating web application. This application
aims to facilitate connections between individuals seeking romantic
relationships, providing a user-friendly and secure platform for communication
and interaction.
2.Scope:
21
HND-45 Aung Kaung Maw
The dating web application will allow users to create profiles, search for
potential matches based on various criteria, engage in private messaging, and
access additional features through premium subscriptions. The application will
be accessible through web browsers on desktop and mobile devices.
3.Functional Requirements:
3.1 User Registration
Users can create accounts by providing necessary details.
Users can log in and log out of their accounts.
3.2 User Profiles
Users can create and edit their profiles, including personal information,
photos, and preferences.
Users can view and search for other user profiles.
3.3 Matching and Search
Users can search for potential matches based on criteria such as age, location,
interests, and preferences.
The system will provide matching suggestions based on user profiles and
preferences.
3.4 Communication
Users can send and receive private messages to other users.
Users can like or express interest in other user profiles.
3.5 Notifications
Users will receive notifications for new messages, likes, matches, and other
relevant activities.
3.6 Premium Subscriptions
Users can subscribe to premium plans to access additional features such as
advanced search filters, unlimited messaging, and enhanced privacy settings.
Non-Functional Requirements:
4.1 Performance
22
HND-45 Aung Kaung Maw
The application should handle a large user base and provide fast response
times for searches and messaging.
The system should be scalable to accommodate increasing user traffic.
4.2 Security
User data, including personal information and messages, should be securely
stored and protected.
The application should implement secure authentication and authorization
mechanisms.
4.3 Usability
The user interface should be intuitive, visually appealing, and responsive
across different devices.
The application should provide clear instructions and feedback to users.
5.User Interfaces:
The application will have user-friendly interfaces for account registration,
profile creation, search filters, messaging, and subscription management.
Screens and navigation should be designed to enhance user experience and
ease of use.
6.System Features:
Detailed specifications of each feature, including user registration, profile
management, search functionality, messaging system, and premium
subscription features.
7.External Interfaces:
Integration with third-party services for email notifications, payment
gateways for subscription management, and social media sharing
functionalities.
8.Performance Requirements:
The application should load within a reasonable time frame.
The response time for searches, profile loading, and messaging should be
quick and efficient.
9.Design Constraints:
23
HND-45 Aung Kaung Maw
Sequence Diagram
24
HND-45 Aung Kaung Maw
25
HND-45 Aung Kaung Maw
Requirements Gathering:
26
HND-45 Aung Kaung Maw
Design:
During the design phase, the high-level architecture and system structure are
defined based on the requirements. Traceability can be maintained by:
Mapping requirements to design artifacts: Establish relationships between the
requirements and the design artifacts, such as architectural diagrams, system
models, or component specifications. This ensures that each requirement is
addressed in the design.
Implementation:
The implementation phase involves translating the design into code. To
maintain traceability during this phase:
Map requirements to code modules: Establish traceability between the
requirements and the corresponding code modules or functions. This can be
27
HND-45 Aung Kaung Maw
Conduct code reviews: Perform code reviews to ensure that the implemented
code aligns with the requirements. Traceability can be used to validate that
each requirement has been properly implemented.
Testing:
During the testing phase, the objective is to verify that the software meets
the specified requirements. Traceability in testing involves:
Create test cases: Develop test cases that directly correspond to the
requirements. Each test case should clearly indicate which requirement(s) it
is validating.
Trace test results to requirements: Capture and track the test results,
including any defects or issues discovered during testing. Ensure that the
defects are linked back to the specific requirements they impact.
Software quality
28
HND-45 Aung Kaung Maw
Functionality: The software should fulfill its intended purpose and provide the
required features and capabilities as defined by the functional requirements.
It should meet user needs and expectations, allowing users to perform tasks
effectively and efficiently.
29
HND-45 Aung Kaung Maw
Usability Testing: Evaluating the application's user experience and ease of use
through usability testing. Gathering feedback from target users and
incorporating their suggestions helps identify usability issues and refine the
user interface and navigation.
30
HND-45 Aung Kaung Maw
31
HND-45 Aung Kaung Maw
Requirement Elicitation:
During the systems investigation, thorough requirement elicitation is
conducted to gather and understand the stakeholders' needs and
expectations. This process involves engaging with stakeholders, conducting
interviews, and analyzing existing systems or processes. Effective
requirement elicitation helps in capturing the functional and non-functional
requirements accurately, which serves as the foundation for developing high-
quality software.
Effectiveness: High. The systems investigation process allows for a
comprehensive understanding of the software requirements, reducing the risk
of miscommunication and misunderstandings that can lead to poor software
quality.
Feasibility Assessment:
During the systems investigation, a feasibility assessment is conducted to
evaluate the viability and practicality of developing the software system. This
assessment considers technical feasibility, economic feasibility, and
32
HND-45 Aung Kaung Maw
33
HND-45 Aung Kaung Maw
34
HND-45 Aung Kaung Maw
35
HND-45 Aung Kaung Maw
Sequence Diagrams:
Depicting the interactions and message exchanges between various system
components or objects over time. Sequence diagrams illustrate the flow of
control and communication, showcasing the order of operations and how
different elements collaborate to achieve specific behaviors.
Sequence Diagrams are suitable for a dating app project due to the following
main reasons:
1. Visualizing Interactions and Communication: Dating apps involve
various interactions and communication between different components
or objects within the system. Sequence Diagrams provide a visual
representation of these interactions, showcasing the order of messages
exchanged between objects and the flow of control. This visualization
helps stakeholders, developers, and designers understand the
communication patterns and dependencies between different
components of the app, ensuring effective implementation and
integration.
2. Modeling User Scenarios and Workflows: Sequence Diagrams are ideal
for modeling user scenarios and workflows in a dating app. They allow
36
HND-45 Aung Kaung Maw
for depicting the step-by-step interactions between users and the app,
illustrating how the app responds to user actions and events. For
example, a sequence diagram can show the process of matching two
users based on their preferences, displaying potential matches, and
facilitating communication between them. By capturing these user
workflows, Sequence Diagrams help ensure the app's functionality
aligns with user expectations.
3. Identifying System Behavior and Collaborations: Sequence Diagrams
provide insights into the behavior of the system's components and their
collaborations. They help identify which objects are involved in specific
interactions, what messages are exchanged, and how the system
responds to those messages. This level of detail allows for a deeper
understanding of the app's behavior and aids in identifying potential
bottlenecks, inefficiencies, or errors in the system design. By analyzing
Sequence Diagrams, developers can optimize the app's performance
and enhance its overall quality.
37
HND-45 Aung Kaung Maw
38
HND-45 Aung Kaung Maw
39
HND-45 Aung Kaung Maw
40
HND-45 Aung Kaung Maw
EFSM
An extended FSM (EFSM) refers to an extension of the basic Finite State
Machine (FSM) model that incorporates additional features to enhance its
functionality and expressive power. The EFSM expands on the capabilities of
the traditional FSM by introducing additional elements and concepts.
The key features of an extended FSM may include:
1. Actions and Outputs: EFSMs often include the ability to specify actions
or outputs associated with state transitions. Actions are tasks or
operations performed when transitioning from one state to another,
41
HND-45 Aung Kaung Maw
42
HND-45 Aung Kaung Maw
43
HND-45 Aung Kaung Maw
44
HND-45 Aung Kaung Maw
for the client and can provide services as per the required and unwanted
services can be removed. For example: insurance company is using data
driven software then it can easily know that which services is heavily used
and which one not used. Now company can neglect the services which is
not used frequently and focus on the software which is heavily used by
the users and can add now more schemes to the services and gain more
popularity.
Reference
https://desklib.com/blog/software-development-life-cycle-sdlc-assignment/
https://www.tutorialspoint.com/sdlc/sdlc_waterfall_model.htm
https://www.tutorialspoint.com/sdlc/sdlc_v_model.htm
https://www.interviewbit.com/blog/agile-
model/#:~:text=A%20software%20development%20approach%20based,st
art%20of%20the%20development%20phase.
https://www.geeksforgeeks.org/software-engineering-spiral-model/
https://www.tpsgc-pwgsc.gc.ca/biens-property/sngp-npms/ti-it/etivcarftp-
idsfvfrmd-eng.html
https://faun.pub/risk-management-overview-integration-of-risk-
management-into-sdlc-ae48de24b743
https://www.geeksforgeeks.org/software-requirement-specification-srs-
format/
https://creately.com/guides/use-case-diagram-tutorial/
https://www.geeksforgeeks.org/unified-modeling-language-uml-sequence-
diagrams/
46
HND-45 Aung Kaung Maw
https://www.techtarget.com/searchdatamanagement/definition/data-flow-
diagram-DFD
https://brilliant.org/wiki/finite-state-machines/
https://jserd.springeropen.com/articles/10.1186/s40411-016-0027-4
47