What Is A System?
What Is A System?
Characteristics of phases:
All phases have similar characteristics, irrespective of their number comprising a project:
To achieve the primary objective or deliverable of the phase, one requires unique processes to
the phase or its activities. The repetition of processes across all five Process Groups offers an
additional degree of control and defines the boundaries of the phase.
In the end, some form of transfer or hand-off of the work product is expected to be produced
as the phase deliverable. This phase end gives time to re-evaluate the activities underway and
to modify or dismiss the project, whatever is the situation. This stage is also called as a stage
gate, milestone, phase gate, phase review, or kill point. The closure of a phase has to be
approved in any form before it can officially be considered closed.
There is no single standard structure for all projects. Even the projects in the same industry or
same organization may have significant variation in the number and nature of their phases.
Some will have only one phase; others may have two or more phases.
Phase-to-Phase Relationships
In cases where projects have two or more phases, the phases are considered part of a sequential
process. However, in some situations, the project might benefit from overlapping or concurrent phases.
Sequential relationship: In a sequential relationship, a new phase starts only when the preceding phase
is complete. In the figure given below, you can see an example of a project with three entirely
sequential phases. The step by- step nature of this approach decreases uncertainty, but may also
remove options for reducing the overall schedule.
Overlapping relationship: In an overlapping relationship, as the name suggests, next phase starts
before the completion of the previous one. Overlapping phases sometimes need additional resources
because work has to be done in parallel. It may increase risk or could lead to rework if a succeeding
phase progresses before correct information is gathered from the previous phase.
The System Development Life Cycle, "SDLC" for short, is a multistep, iterative process, structured in a
methodical way. This process is used to model or provide a framework for technical and non-technical
activities to deliver a quality system which meets or exceeds a business"s expectations or manage
decision-making progression.
Traditionally, the systems-development life cycle consisted of five stages. That has now increased to
seven phases. Increasing the number of steps helped systems analysts to define clearer actions to
achieve specific goals.
Similar to a project life cycle (PLC), the SDLC uses a systems approach to describe a process. It is often
used and followed when there is an IT or IS project under development.
The SDLC highlights different stages (phrases or steps) of the development process. The life cycle
approach is used so users can see and understand what activities are involved within a given step. It is
also used to let them know that at any time, steps can be repeated or a previous step can be reworked
when needing to modify or improve the system.
1. Planning
This is the first phase in the systems development process. It identifies whether or not there is the need
for a new system to achieve a business"s strategic objectives. This is a preliminary plan (or a feasibility
study) for a company"s business initiative to acquire the resources to build on an infrastructure to
modify or improve a service. The company might be trying to meet or exceed expectations for their
employees, customers and stakeholders too. The purpose of this step is to find out the scope of the
problem and determine solutions. Resources, costs, time, benefits and other items should be considered
at this stage.
3. Systems Design
The third phase describes, in detail, the necessary specifications, features and operations that will satisfy
the functional requirements of the proposed system which will be in place. This is the step for end users
to discuss and determine their specific business information needs for the proposed system. It"s during
this phase that they will consider the essential components (hardware and/or software) structure
(networking capabilities), processing and procedures for the system to accomplish its objectives.
4. Development
The fourth phase is when the real work begins—in particular, when a programmer, network engineer
and/or database developer are brought on to do the major work on the project. This work includes using
a flow chart to ensure that the process of the system is properly organized. The development phase
marks the end of the initial section of the process. Additionally, this phase signifies the start of
production. The development stage is also characterized by instillation and change. Focusing on training
can be a huge benefit during this phase.
5. Integration and Testing
The fifth phase involves systems integration and system testing (of programs and procedures)—
normally carried out by a Quality Assurance (QA) professional—to determine if the proposed design
meets the initial set of business goals. Testing may be repeated, specifically to check for errors, bugs and
interoperability. This testing will be performed until the end user finds it acceptable. Another part of this
phase is verification and validation, both of which will help ensure the program"s successful completion.
6. Implementation
The sixth phase is when the majority of the code for the program is written. Additionally, this phase
involves the actual installation of the newly-developed system. This step puts the project into
production by moving the data and components from the old system and placing them in the new
system via a direct cutover. While this can be a risky (and complicated) move, the cutover typically
happens during off-peak hours, thus minimizing the risk. Both system analysts and end-users should
now see the realization of the project that has implemented changes.
The waterfall method is considered the traditional software development method. It’s a rigid linear
model that consists of sequential phases (requirements, design, implementation, verification,
maintenance) in which distinct goals are accomplished. Each phase must be 100% complete before the
next phase can start, and traditionally there is no process for going back to modify the project or
direction.
Pros: The linear nature of this method makes it easy to understand and manage. Projects with clear
objectives and stable requirements can best use the waterfall method. Less experienced project
managers, project teams, and teams whose composition changes frequently may benefit the most from
using the waterfall development methodology.
Cons: It is often slow and costly due to the rigid structure and tight controls. These drawbacks led
waterfall method users to the explore other software development methodologies.
⦁ Rapid application development methodology
Rapid application development (RAD) is a condensed development process that produces a high-quality
system with low investment costs. In a recent Forbes article, Scott Stiner, CEO and president of UM
Technologies, said, “This RAD process allows our developers to quickly adjust to shifting requirements in
a fast-paced and constantly changing market.” The ability to quickly adjust is what allows such a low
investment cost. The rapid application development method contains four phases: requirements
planning, user design, construction, and cutover. The user design and construction phases repeat until
the user confirms that the product meets all requirements.
Pros: RAD is most effective for projects with a well-defined business objective and a clearly defined user
group, but which are not computationally complex. It is especially useful if the project is of small to
medium size and time sensitive.
Cons: It requires a stable team composition with highly skilled developers and users who are deeply
knowledgeable about the application area. Deep knowledge is essential when working on a condensed
development timeline that requires approval after each construction phase. If you don’t have these
requirements, RAD may not work well for your organization.
⦁ Agile development methodology
There are many different forms of the agile development method, including scrum, crystal, extreme
programming (XP), and feature-driven development (FDD).
Pros: Agile methods attempt to minimize risk (such as bugs, cost overruns, and changing requirements)
when adding new functionality by developing the software in iterations that are mini-increments of the
new functionality. The benefit of multiple iterations is that it improves efficiency by finding and fixing
defects and expectation mismatches early on.
⦁ DevOps deployment methodology
DevOps deployment is centered on organizational change that enhances the collaboration between the
departments responsible for different segments of the development life cycle, such as development,
quality assurance, and operations.
Pros: DevOps is focused on improving time to market, lowering the failure rate of new releases,
shortening the lead time between fixes, and prioritizing minimal disruption and maximum reliability. To
achieve this, DevOps aims to automate continuous deployment to ensure everything happens smoothly
and reliably. Companies that use DevOps have benefited by significantly reducing the time to market
and improving customer satisfaction, product quality, and employee productivity and efficiency.