Sdlc-2 PPT Source
Sdlc-2 PPT Source
Sdlc-2 PPT Source
Research Background
Methodology
Title: The main advantages of agile based software development (based on values and
principal):
• Enhanced communication and coordination among team members.
• Rapid release cycles.
• Design flexibility.
• Streamlined processes.
The author pointed out that traditional software development processes experience a nonlinear
increase in cost as the project advances and changes occur. In contrast, the agile process's
incremental delivery approach reduces this cost and keeps it steady, enabling changes in later
stages without significant cost and time losses.
The comparison between agile and traditional software development methods shows that agile is
better at adapting to changes, leading to direct collaboration between developers and customers.
Agile is more suitable for small and medium projects due to its efficiency. Agile methods
involve short-term planning for specific functionalities, which is easier compared to the long-
term planning required in traditional methods. Traditional methods necessitate high-level,
detailed documentation, resulting in extensive work and large documents. Additionally,
traditional methods often involve more teams and employees, requiring a higher budget.
Perbandingan antara metode pengembangan perangkat lunak agile dan tradisional menunjukkan
bahwa agile lebih baik dalam beradaptasi terhadap perubahan, sehingga mengarah pada
kolaborasi langsung antara pengembang dan pelanggan. Agile lebih cocok untuk proyek kecil
dan menengah karena efisiensinya. Metode tangkas melibatkan perencanaan jangka pendek
untuk fungsi tertentu, yang lebih mudah dibandingkan dengan perencanaan jangka panjang yang
diperlukan dalam metode tradisional. Metode tradisional memerlukan dokumentasi tingkat tinggi
dan terperinci, sehingga menghasilkan pekerjaan ekstensif dan dokumen besar. Selain itu,
metode tradisional sering kali melibatkan lebih banyak tim dan karyawan, sehingga
membutuhkan anggaran yang lebih tinggi.
Title: Agile methods
Each Agile method involves unique sets of practices that describe how software developers carry
out their day-to-day work. These methods vary from one another by selecting specific
terminologies and practices that suit their needs// Setiap metode Agile melibatkan serangkaian
praktik unik yang menggambarkan bagaimana pengembang perangkat lunak melaksanakan
pekerjaan mereka sehari-hari. Metode-metode ini berbeda satu sama lain dengan memilih
terminologi dan praktik tertentu yang sesuai dengan kebutuhan mereka.
SubTitle:
1. Feature driven development (FDD)
Feature Driven Development (FDD) is an agile development method focused on
managing short, incremental iterations to deliver functional software.
a. Role:
Project Manager: Leads the project and makes administrative
decisions while ensuring a productive working environment.
Chief Architect: Designs the software and gives final approval for
the design.
Development Manager: Supervises the development team,
possesses technical skills to solve complex problems, and resolves
conflicts between teams.
Chief Programmer: Leads small teams through analysis, design,
and implementation, selects features for each iteration, and
addresses implementation issues.
Class Owner: Designs, codes, and tests features.
Domain Expert: Provides business expertise, understands business
operations and needs, and enriches the feature list with valuable
insights.
b. Advantage
FDD is highly adaptive and can accommodate late changes from
the customer.
It emphasizes delivering high-quality results after each phase.
Results from each iteration can be delivered within one to four
weeks, enabling quick feedback from customers.
c. Disadvantage
FDD lacks guidance on requirement gathering, analysis, and risk
management.
It necessitates an expert team with strong skills in designing and
modeling.
FDD does not address criticality issues in projects.
a. Steps:
b. Advantage
allows for early defect handling and direct identification of bugs
Iterative testing improves code quality as all code undergoes
testing during development.
development process more manageable.
improves design and facilitates integration with other
functionalities.
Developing small functionalities in each iteration reduces the
complexity of the overall software
c. Disadvantage
Programmers need some extra skill
Using TDD in projects with complex synchronization between
functionalities and parts can be challenging.
leads to poor documentation
consumes time when the repeated failures happened.
not guided by management principles in software development,
only focuses on the development activities.
3. Dynamic System Development Method (DSDM)
The main idea about the DSDM is to set and define the resources of the project
and the time for the project and then adjust the amount of functionality that can be
done in these time and resources
a. DSDM Cycle:
c. Disadvantage
Complexity due to a large number of roles, leading to challenges in
project administration.
Does not consider project criticality.
Lacks specific guidelines for issues related to team size and
iteration length.
4. Scrum
focuses on delivering the highest value in the shortest time. It is a team oriented
agile methodology that specifies a certain role, establishes a short time boxed
iteration called sprints in which the system is incrementally developed and
produces a different artifact that coordinates its work. Ga bahas lebih lanjut
karena sudah dijelaskan pada slide sebelumnya
b. Advantage
Incremental development is supported
Improve the productivity
simplicity Maintaining
c. Disadvantage
lacks the capability to support the distributed teams
requires additional technical training
depends on the informal documentation.
effective but stressful
Title: Cloud Computing, Big Data, And Coordination Challenges Faced To Agile Benefit
Title: Conclusion
1. Different agile methodologies have distinct advantages and disadvantages, making it crucial to
carefully select the most suitable one based on project specifications and needs.
2. Traditional methods may be optimal for projects with large teams, critical budgets, while agile
methodologies are more suitable for smaller teams and lower budget projects.
3. XP was initially popular in the agile revolution but has declined in interest since 2004,
although its practices like pair programming and TDD remain valuable.
4. Scrum, focusing on project management, is currently leading agile development trends and has
a significant impact.
6. The research also explored agile implementation in big data systems and cloud computing
environments.