CS1 PDLCDiamondSevilla
CS1 PDLCDiamondSevilla
1. Identify and describe each phase of the Programming Development Life Cycle. (6 points)
1. Problem Definition
- The problem is defined by identifying why the problem software is developed,
what the program needs to do or solve, defining inputs and outputs, and setting
goals for a clear solution. Then, a plan is established to achieve these goals.
2. Problem Analysis
- This phase includes identifying the program’s requirements and what it should
and should not do. Then, we determine the necessary inputs, expected outputs,
and constraints. Next, we break the problem into different components so that we
can organize the solution in different steps. Lastly, we consider the risks and
limitations by addressing performance and security.
3. Algorithm Development
- This phase involves creating a structured plan for how the program will work. It
includes step-by-step instructions for the problem, and using flowcharts
pseudocodes or decision trees. It also involves creating a detailed design of the
program’s components and interface, as well as how the different parts of the
system will interact with each other.
6. Maintenance
- This phase involves making updates and fixing issues after the program has been
deployed. This phase is longer than the others since the program is modified over
time to ensure it continues to satisfy the user’s needs and remains functional.
II. Use a search engine to research and read about Agile Software Development. Discuss the
similarities and differences between the typical Programming Development Life Cycle and Agile
Software Development. (4 points)
-Each phase must be -Both cycles aim to develop a -It is an iterative and
completed before moving on program or software that the incremental model, where
to the next, which is basically user can efficiently and delivering software is divided
a linear sequential model. properly use. into smaller increments called
sprints. It is continuous, like a
-Changes or bug fixes are
-Both follow a structured loop.
difficult to accommodate
step-by-step plan for software
during the process, where
development. -Changes are easily
changes are only easily
welcomed anytime during the
accommodated after the cycle
-Both cycles require problem development process, as it
has been finished.
definition and planning focuses on flexibility.
before implementation of the
-It requires more
code, as well as the program. -Although this process still
documentation in every
requires documentation to
phase, such as requirements
-Both cycles consider support development, it
and algorithm design
maintenance and updates requires less documentation
documentation.
after deployment to ensure as it focuses on working
long-term efficiency and software.
-The software is typically
performance.
deployed as a whole after
-It involves frequent releases,
completing all the stages of
-Both cycles allow developers allowing users to see the
the process. The users can
to go back to earlier phases different versions of the
only see the final product at
and modify or fix the program early and provide
the end of the cycle.
software based on findings or feedback for future updates.
user feedback.
-User feedback is usually
-User feedback is
gathered at the beginning of
continuously gathered
the cycle (problem definition)
throughout the cycle. Users
and at the end of the cycle
are involved in every sprint
(maintenance or testing).
review, allowing the program
to change based on their
feedback.