Professional Documents
Culture Documents
Assign3 Review
Assign3 Review
Assign3 Review
Questions:
The plan driven development is a style of development that attempts to plan for and anticipate
up front all of the features a user might want in the end product and to determine how best to
build those features. The work plan is based on execution of a sequential set of work-specific
phases.
In a plan-driven approach, iteration occurs within activities with formal documents used to
communicate between stages of the process. In an agile approach, iteration occurs across
activities. Therefore, the requirements and the design are developed together, rather than
separately.
When it comes to using these developments, software engineers need to use plan-driven
approach when developing large systems, for this kind of development requires a lot of analysis
before implementation. Software engineers should use agile software development when the
team relies on good tools to keep track of an evolving design or to support system development.
The aim of plan driven development is to foresee and prepare for every functionality
that a user could require in the final product and to decide how to effectively implement those
functionalities. The execution of a sequential group of task-specific stages forms the basis of the
work plan. Design and implementation are viewed as the primary tasks in the software process
in agile methods to software development. They combine testing and requirements elicitation
into design and execution, among other things. A plan-driven approach to software engineering,
in comparison, distinguishes distinct stages in the development process and associates results
with each stage. The results of one stage serve as the foundation for the subsequent process
activity's planning. In a plan-driven approach, iteration takes place inside activities and formal
documentation are utilized to communicate between process phases. Iteration happens across
activities when using an agile method. As a result, rather of being developed independently, the
requirements and the design are produced simultaneously. Software engineers should employ a
plan-driven approach when creating big systems in order to utilize these developments, as they
need extensive study prior to implementation. When a team depends on effective tools to
monitor a developing design or to assist system development, software engineers should utilize
agile software development.
B. Suggest four reasons why the productivity rate of programmers working as a pair might be more
than half that of two programmers working individually.
C. Suppose you were the software manager in a company that develops mobile applications and
web-based applications for online shopping. Present a draft on how you will create a new online
shopping app for a newly opened grocery store using the agile software development. (Draft
only, list only the important things your team will do to create the app).
Suppose I’m a software manager in a company that develops mobile applications and web-
based applications for online shopping, when creating a new online shopping app for a newly
opened grocery store using agile software development, I and my team will do the following:
For every iteration, the team should work simultaneously on areas like planning, requirement
analysis, design, coding, unit testing, and acceptance testing.
The app that will be created should have an adaptability, wherein it can adapt to what the
customer wants or needs.
The app should be flexible or adjustable or has flexibility so that the customer can give their own
inputs to fill their satisfaction.
There should have a rapid delivery, meaning fast development
The iterative approach is being done to build the whole system and to deliver it in every
repetition, so there should be results in every multiple iterations.
Then the system that has been built on the process of iteration, should be used on another
incremental phase until it reaches the final build that the customer wants.
Before starting, we should initiate a project, and define requirements whether requires high-
level or low-level requirements. This should be done to have the integration of those
requirements, of those projects and to test the functionality
After those testing, then there should be customer visibility of the system. It can be viewed by
the user and can be viewed by clients and developers on the things that are happening in the
system. Then if the client wants to add something, we can develop and act on it as soon as
possible. This results in the system becoming an adjustable system, and because of the
development, there are improvements.
After the development process, on its release, we can wait for the feedback and review from the
client and from the users that used the system.