Escolar Documentos
Profissional Documentos
Cultura Documentos
Requirements
Analysis
Design
Implementation
Testing
Note that the six steps are conducted sequentially. An important and implicit assumption in this kind of project flow is that the results of each stage in the process remain
valid and constant for the remainder of the process. For example:
Once the customer is engaged at the start of the project to determine the project
requirements, those requirements wont change.
The result of each design stage are sound and do not need revising.
In reality, iterations do occur. In particular, more than one prototype is often built
with an alpha build being the first one, a beta build being the second one and so
on. The results of these prototype builds often require changes to the design so some
iterations occur. There are relatively few of these iterations (gamma builds are rare).
Page 1/8
Problem Definition
Conceptual Design
Detailed Design
Prototyping
Test & Verification
Manufacturing
Of course, the customer can always come in and change requirements. However, putting
a contract in place at the end of the conceptual design stage may prevent this from
occuring.
Design Styles that Suit Software Projects
Modern software development and project management is different from hardware
development and project management in several important ways. However, there are
similarities as well.
Software development is commonly divided into the following steps:
Requirements Workflow
This is basically identical to the problem definition or requirements specification stage.
Analysis Workflow
This is translating the output of the requirements workflow into technical
terms that can be accurately translated into software.
Example: A requirements document might say The software will manage
parallel account updates. and the specification will say A maximum of 3
parallel accesses will be made to the account and will all be resolved in less
than 3 seconds.
The output of this workflow is a specification that can be used for the basis
of the software design and can be used as the basis for software testing.
This isnt really a design document yet since we havent yet got into how
were going to implement the specification.
Design Workflow
This is specifying how the software will meet the specification.
For object oriented software, this workflow involves dividing the software into
modules and specifying what each module will do. These modules correspond
more or less to classes.
ENEL 300 Module 3: Detailed Design Techniques
c Geoffrey Messier, 2014
Page 2/8
Features:
Text appears as you type.
Able to save text.
Spell checking.
Formatting.
Printer compatibility.
Increment A
Increment B
Increment C
Requirements
Requirements
Requirements
Analysis
Analysis
Analysis
Design
Design
Design
Implementation
Implementation
Implementation
Testing
Testing
Testing
Printer compatibility.
Page 3/8
The idea is that the first iteration should implement only the most important
feature and ignore all the others for now. Since each iteration contains all 5
workflows, a completely working piece of software should be ready at the end of
an iteration.
Iterations can be extremely short with Extreme Programming (XP) (one realization of an Agile programming process) recommending 1 week at the optimal
duration.
Sometimes, each increment decides to emphasize different workflows to quickly
establish whether a project is feasible and to provide the customer with a rapid
working prototype.
Page 4/8
Page 5/8
techniques.
A saying on one Agile website is Measure twice and cut once saves wood but software
isnt made of wood. This saying really captures the essence of the difference between
software and hardware projects:
Software is fundamentally cheap and easy to change. The only thing involved in
the change is programmer effort and this allows for new techniques to be introduced to manage that effort.
Hardware is often much more difficult and expensive to change. A digital or radio
board prototype from a manufacturer can take weeks or months to deliver. This
reduces the feasibility of having multiple iterations and makes it more important
to fix customer requirements and make extra sure the design is correct the first
time around.
As a result, if you are working on a hardware project that is managed in a more
traditional waterfall style, its not necessarily a bad thing.
At the same time, hardware developers should be open to looking at software processes
and adopting some of their best practices. Utilizing pair development and improving
team dynamics are both obvious examples of things that could be used for hardware
products.
Advances in custom and agile manufacturing techniques may also decrease the cost and
duration of performing hardware iterations. Utilizing software configurable hardware,
such as FPGAs and DSP cores, can also turn traditional hardware design exercises
into a software exercise more amenable to iterations.
Design Styles for Mega-Projects
Mega-projects are defined as projects that are going to cost several 100s of millions to
a few billion dollars. These typically involve the construction of large facilities like oil
sands plants, bridges, etc.
Unlike software, the cost of doing iterations on projects like this is so high that it is
essentially impossible. As a result, there is a tremendous amount of engineering effort
(sometimes spanning several years) producing a preliminary design before funds are
committed to going ahead with the project.
The period before the project is sanctioned is known as the front end loading (FEL) or
sometimes the front end engineering design (FEED). The FEL exercise is divided into
several stages with gates at the end of each stage that are a series of decision points
that must be satisfied before the next stage can begin.
FEL-1
Known as the appraise stage in oil and gas since this is where the team appraises
the opportunity of the business plan.
ENEL 300 Module 3: Detailed Design Techniques
c Geoffrey Messier, 2014
Page 6/8
Focuses mainly on the business case and the feasibility of the capital investment
(ie. do we have the money).
The number of possible projects are narrowed down here somewhat.
Cost estimates at this stage are basically educated guesses since the physical scope
of the project has not yet been defined.
The gate at the end of FEL-1 is mainly intended to scrutinize the health of the
business case for the project. This gate needs to be robust, otherwise too many
projects proceed to FEL-2 which creates a burden on technical staff.
FEL-2
Known as the select phase in oil and gas since this is where the final project is
selected.
The core technical team is formed and the scope is defined for the project.
Translates the project description in the business plan to one with physical attributes (albeit on paper).
Every aspect of the design must be accounted for at this stage (major equipment,
all design efforts, construction details, etc.)
This is the first time a reliable cost estimate can be created but only if the scope
is complete.
The gate at the end of FEL-2 is really where the decision is made whether or not
the project will proceed.
FEL-3
Sometimes also known as the front end engineering design (FEED) stage in oil
and gas and is where the project is actually defined.
The engineering design is advanced to a point where detailed design can begin
and execution planning is advanced to the point where execution can proceed
with very few or no changes.
The execution planning involves the development of a very detailed and high
quality schedule.
The engineering work can proceed well into what may be considered detailed
design. The distinction is somewhat blurry here and is really determined by how
much money is available.
You can consider the end of this stage as being equivalent to the end of the
conceptual design phase for hardware projects.
This is a very expensive and major engineering effort so a company proceeding
to FEL-3 is usually very confident that the project will go ahead.
The gate process at the end of FEL-3 is to determine whether the company is
ready to proceed or if more work is required. The decision on whether or not the
project will ultimately go ahead was really made back at FEL-2.
ENEL 300 Module 3: Detailed Design Techniques
c Geoffrey Messier, 2014
Page 7/8
Once FEL-3 is concluded, the company commits the necessary resources to proceed
and the Execute phase begins. At this point, detailed design exercises are performed
and the construction begins. Within this execute phase, many small design projects
may start and finish. However, the overall facility design will not change in any major
way.
There will literally be 10s to hundreds of different documents generated by the time the
FEL-2 gate is cleared. Many of these will vary with company so its not too meaningful
to try and cover them here.
There are a couple of different ways an electrical engineer could be involved in this
type of mega-project:
As a project manager. Many major oil and gas companies hire engineers from
all disciplines and then move them around inside the company. So, an electrical
engineer could become a mega-project manager by following these tracks.
As a detailed designer. Once the FEL-3 and/or Execute stage begins, most
mega projects will have many different electrical engineering components (controls, communications, electrical machines, power, etc.). You may be working as
a contractor on one of these aspects. However, in this role, the company managing
the mega-project will simply give you the project requirements and you will us a
design process more appropriate for a smaller project.
Page 8/8