Sei sulla pagina 1di 58

Requirements Engineering

Views and Product Vision

What Are Requirements?*


A condition or capability needed by a user
or customer to solve a problem or achieve
an objective.
A condition or capability that must be met
or possessed by a system or system
component to satisfy a contract, standard,
specification, or other formally imposed
document.
A document representation of a condition
or capability.
* Based on IEEE Standard Terminology
RED SUN Inc.

Where Do Requirements Come From?

Business
Requirements

User Requirements

System Requirements

BIM Requirements

RED SUN Inc.

Why the project is


being undertaken

What users will


be able to do

What systems need


to be built

What BIM needs to


be developed

Business Requirements
Statements of the business rationale for
authorizing the project. They include a vision for
the BIM product to be built that is driven by
business goals, objectives, and strategy.
Business requirements describe the high level
purposes and needs that the BIM product will
satisfy, the view of its accomplishments for the
users, its features, functions, and capabilities
from the Business point of view.
Business requirements are documented in the
Project Charter, Vision or Scope of the project.
Sometimes it can be found in the Statement of
Work, Memo of Understanding (MoU) or Request
for Proposal (RFP).
RED SUN Inc.

User Requirements
The definition of the entire system (hardware and
BIM ) from the Users point of view. They
describe the task that users need to do with the
system to accomplish a business function.
User requirements are the bridge between the
business goals (Business language) and the
system requirements (Technical language). BIM
engineers must understand how users will use the
system and derive their requirements from the
user requirements document.
User requirements can be found in User
Requirements Document (URD), Concept of
Operations (Con OP), User Scenarios / Use-cases
or Product features document.
RED SUN Inc.

System Requirements
Detailed descriptions of all functional as well as
non-functional requirements that the systems
(Hardware and BIM ) must do to
meet
business and user needs.
System requirements define the top level
requirements for allocation to hardware, BIM or
subsystems from the System Engineers point of
view. (Manager, Architect, Designer)
System requirements serve as a communications
channel to users, procurement organizations, as
well as to system architects who are concerned
with the development of system elements or
components.
RED SUN Inc.

BIM Requirements
Detailed descriptions of all functional as well as
non-functional requirements that the BIM must
do to meet system requirements and user
needs from the Developers point of view.
BIM requirements establish an agreement
between technical people and business people on
what the product or application must do while
staying within the constraints of system
architecture and hardware limits.
BIM Requirements are documented in the BIM
Requirements Document (BRS), Detailed
Requirements Specification or Functional
Specification.
RED SUN Inc.

Relationships Of Requirements
Requirements

Business
Requirements

Document

Users view

Vision & Scope


Users
Requirements

System
Requirements

Use-case
Developers view
BIM
Requirements

Hardware
Requirements

BIM Requirements
Specification
RED SUN Inc.

System View
Business Needs

System

Subsystem A

Hardware

BIM

Subsystem B

Hardware

BIM

RED SUN Inc.

Subsystem C

Hardware

BIM

System & BIM


System requirements describe the behavior of the
system as seen from the users perspective.
System requirements serve as a communications
channel to customers, users, and system architects
who are concerned with the development of system
components.
BIM requirements specify how the system will be
built, as seen from the developers perspective.
BIM requirements serve to communicate with
developers, who need to know what is expected of the
system components for which they are responsible, as
well as information about those elements with which
they must interface.
RED SUN Inc.

10

Key Concepts
Requirements are WHAT the BIM must
do (externally observable behavior).
Design is HOW the solution will work
(underlying mechanism).
Example
Customer need: keep track of time passing.
Possible solutions: sundial, hourglass, clock.

Note: Clock implementation (e.g. springs, batteries) is NOT part of the specification.

RED SUN Inc.

11

Why Requirements Are Important?


To deliver a successful BIM product, BIM
engineers need to develop, document,
and validate BIM requirements.
Properly understood requirements are the
basis for determining the success of the
BIM implementation because the purpose
of BIM development is to satisfy users
needs.

RED SUN Inc.

12

Quality Of Requirements
The success or failure of a project depends
heavily on the quality of the requirements.
The quality of the requirements is
influenced by techniques used during
requirements elicitation because elicitation
is all about learning the needs of
stakeholders, and communicating those
needs to system builders.

K THU T LY
C
REQUIREMENT

Requirements elicitation is influenced by


how much BIM engineers understand
customers business processes and needs.
RED SUN Inc.

13

Requirements Must Be
Correct: They must represent the real need of
customers and users.
Complete: They include all the needed elements.
Functionality, external interfaces, quality attributes and
design constraints.

Clear: They can be understood in the same way


by all stakeholders with minimum supplementary
explanation.
Concise: They are stated simply, in the most
minimal way possible to be understandable.
Consistent: They do not conflict with other
requirements.
RED SUN Inc.

14

Requirements Must Be
Relevant: They are necessary to meet a
business need, goal, or objective.
Feasible: They are possible to implement.
Verifiable: There is a finite, cost effective
technique for determining whether the
requirement is satisfied.

RED SUN Inc.

15

Internal Issue
Business Process & Issues
Management

System Engineering

Hardware Engineering

BIM Engineering
Requirements

Design

Code

RED SUN Inc.

Test

16

Organization Structures
System Engineer focuses on the total system

which consists of both hardware and BIM .


System Engineers have ultimate decision making
on the system and interfaces with stakeholders to
obtain requirements and also have a big role in
the integration of all components to ensure
systems will function as expected.

Hardware Engineer focuses on the physical

aspect of the system, they design and build th e


hardware system which is very well structured
and understood.

Software Engineer focuses on the design and

implementation of the system and en sures tha t


the newly built system will satisfy the needs of
the stakeholders.
RED SUN Inc.

17

Why Requirements Are Difficult?


Customers and users often do not
understand how BIM design and
development works, and can not explain
their needs and how the final BIM works
for developers.
Developers often do not understand the
problems and the needs of customers and
users to specify the requirements.
Lack of communication between users and
developers is the main issue that makes
requirements difficult to define.
RED SUN Inc.

18

Many Levels Between


In some BIM companies, developers are kept
away from the customers or users with many
levels of managers and sales and marketing
people in between. The key reason is a concern
about management losing control and the need to
keep programmers focused on writing code.
Many BIM companies believe that customers do
not know much about technology or understand
product requirements. By allowing programmers
to meet with them could create problems and
possibly lose a sale. These are reasons to
maintain distance between programmers and
customers or users.
RED SUN Inc.

19

Issues With Requirements -1


Many Sales & Marketing people with limited
BIM knowledge are responsible for
developing BIM requirements.
Lack of BIM skills to specify what functions and
performance a BIM product can be expected to
meet, often leads to serious integration
problems.
Unfamiliarity with BIM also leads to
disproportionate allocation of requirements,
resulting in starting of BIM projects with
unrealistic and unfeasible requirements.
Many BIM developers are reluctant to get
involved in requirements engineering due to a
lack of business knowledge and skills.
RED SUN Inc.

20

Issues With Requirements -2


Many BIM companies have rigid structures with clear
lines of authority and control in order to ensure no one is
working on things other than what is currently assigned.
Managers will focus on planning, scheduling, budgeting, and
directing people.
Programmers will focus on coding, testing and documenting.
Unfortunately, many managers are not trained in the
managing aspect of BIM projects. Some are good
programmers that get promoted into management. Some
come from business and finance schools with no knowledge
of BIM .
Without additional training, they will struggle with the
burden of estimating, monitoring and meeting customers
demands and these pressures will drive many projects to
failure.

RED SUN Inc.

21

Issues With Requirements -3


Many stakeholders do not understand why
it is important to spend more time defining
requirements.
Developers do not like to spend time with
stakeholders in defining requirements
because they like to write code and
assume that they know what stakeholders
need.
Both sides do not like to work on
requirements.
RED SUN Inc.

22

Requirements Engineering
Business Process & Issues
Management

Requirements
Engineering

System Engineering

Hardware Engineering

BIM Engineering
Requirements

Design

Code

RED SUN Inc.

Test

23

Is It Possible?

Requirements
Specification
? ? ?

? ? ?
? ? ?
? ? ?

? ? ?

Requirements
Engineering

? ? ?
? ? ?

Collection Of Stakeholder Needs

RED SUN Inc.

Clear, unambiguous
requirements specification

24

Requirements Engineer
Requirements engineer: a BIM
engineer who has the responsibility to
gather, analyze, document and validate
the needs of the project stakeholders.
Requirements engineer: the principal focal
through which requirements flow between
stakeholders and the BIM development
team.
This role in collecting and disseminating
project information is critical and requires
a lot of experience and training.
RED SUN Inc.

25

Requirements Engineer
Management

Business
Requirements

Expectations
& Constraints
Stakeholders
Users
Requirements

Project Manager
Project Scope

Requirements
Engineer

Developers
Functional Requirements &
Quality Attributes

Sales & Marketing


Product Requirements

Functional Requirements &


Quality Attributes

Testers

Do Not assume that any experienced developer could be an effective


requirements engineer without training and coaching.
This role requires different skills, knowledge and strong personality traits.
RED SUN Inc.

26

Requirements Engineers Skills


Listening skills
Interviewing & questioning skills
Analytical skills
Facilitating skills
Observation skills
Writing skills
Organizational skills
Modeling skills
Interpersonal skills
Communication skills
RED SUN Inc.

27

Requirements Engineers Tasks


1. Define business requirements
2. Identify stakeholders & user classes
3. Elicit requirements
4. Analyze requirements
5. Write requirements specifications
6. Model the requirements
7. Lead requirements validation
8. Facilitate requirements prioritization
9. Manage requirements
RED SUN Inc.

28

Understand Business Problems


Understanding business problems is the first step to
capture better requirements.
If you do not know the business problems that you are
going to solve, you will never succeed.
You must review all the requirements that you
captured from stakeholders and align them with
business goals and objectives.
You must analyze all requirements and document
them, then review with stakeholders to make sure that
you have captured their needs correctly.
You must resolve conflicts among requirements
between different stakeholders as early as possible.

RED SUN Inc.

29

Understand The Business


You must be able to describe the proposed
system or situation and define the problem that
you are going to solve.
What is the proposed system used for?
The purpose of improving (in case of maintenance
or adding more functions) or replacing the current
system?
The business case justifying it.
You must be able to identify all Stakeholders of
the system:

Are they in agreement?


What are their expectations?
What is the schedule?
How much are they willing to spend?
RED SUN Inc.

30

Understand The Business


By understanding the "business requirements"
Software Engineers can build a "vision and scope"
document that describes the background, leading
to the decision to develop a new or modified
system and a description of the system to be
developed.
An understanding of the capability of the new or
modified system is critical to a successful project.
BIM Engineers must consider having iterative
scoping meetings with stakeholders to generate
more detailed and creative thinking about the
problem that in turn can affect the scope. As the
possibilities for a solution emerge, there are
numerous decision points concerning what should
and should not be included within the scope of the
system.

RED SUN Inc.

31

To start
Write a project vision and scope document.
Initiate a project glossary that provides definitions
of words that are acceptable to and used by
customers/users and the developers, and a list of
acronyms to facilitate effective communication.
Create the real requirements via a "joint"
customer/user and developer effort. Focus on
product benefits (necessary requirements), not
features. Address the minimum and highest
priority requirements needed to meet real
customer and user needs.
Document the rationale for each requirement
(why it is needed).
RED SUN Inc.

32

Business Needs to Product Vision


The business requirements determine both the set
of business tasks (Use cases) that the BIM
product enables and the level to which each use
case is implemented.
The business requirements influence the priority
for product releases (Functional requirements)
and the way requirements are implemented.
The vision & scope collects business requirements
into a single document that sets the stage for
subsequent development work. This also helps
create the project charter, business case, market
needs and business risks.
RED SUN Inc.

33

From Vision To Project Scope


The product vision aligns all stakeholders in a
common direction. The vision describes what the
product is about and what it eventually could
become.
The project scope identifies what portion of the
long-term product vision the current project will
address.
The statement of scope draws the boundaries
between what is in and what is out (the project
limitation) as the details of a projects scope are
represented by the requirements baseline.
The project scope is the sum of all the projects
deliverables and services to be provided to
customers & users.
RED SUN Inc.

34

Vision & Scope

Product Vision

Project Scope
For release 1

Project Scope
For release 2

Project Scope
For release 3

RED SUN Inc.

Project Scope
For release n

35

Key Concepts - 1
Develop a clear vision of the product.
Develop a well-defined, shared understanding of
the project scope.
Involve stakeholders throughout the requirements
process.
Represent and discover requirements using
multiple techniques & models.
Document requirements clearly and consistently.
Continual validation that requirements are the
right ones to focus on.
Verify the quality of the requirements early and
frequently.
RED SUN Inc.

36

Key Concepts - 2
Prioritize the requirements and remove
unnecessary ones.
Establish a baseline for requirements, using the
reviewed and agreed-upon requirements to serve
as a basis for further development.
Trace the requirements origin and how they link
to other requirements and system elements.
Anticipate and manage any requirements changes.
Ensure all changes are reviewed, analyzed and
controlled.

RED SUN Inc.

37

Requirements Preparation

Preliminary & Set the Stage:


Define
Product Vision

Define
Common Terms

RED SUN Inc.

Identify
Requirements
Risks

38

A Product Vision Statement


A vision statement is a concise statement that defines the
what, why, and who will buy or use the final product from
the business point of view.
The vision statement will help you to:
Ensure that the product definition aligns with the
business goals and objectives.
Identify stakeholders Who will buy or use the product?
What the product will do for its stakeholders?
What are the reasons to buy or use this product?
How can this product be distinguished from others?
Describe the state of the business its strengths,
weaknesses.
Describe the opportunities and risks to the business.

RED SUN Inc.

39

How To Write Vision Statement - 1


Define the following terms:
1. Target customers: Describe the people who
will use or buy the BIM .
2. Statement of need: Describe what the target
customer does or what the BIM will help them
with.
3. Product name: Provide the name of the
product that you will create.
4. Product category: Describe the type of product
that you are building. Product categories might
include internal application, COTS BIM ,
embedded BIM , business and finance BIM ,
game BIM , complex BIM , etc.
RED SUN Inc.

40

How To Write Vision Statement - 2


5. Benefit Statement: Describe what the product
will do for the target customers or the
justification for buying the product.
6. Competitive analysis: Describe the key
competing product available or the system or
process that the product will replace.
7. Product differentiation: Explain the differences
between the product you are building and the
competition.
Review all writings to ensure that they define the
what, why, and who from the business point of
view.
RED SUN Inc.

41

Follow This Template


Insert statement to <>
For <target customer> Who <statement
of need> the <product name> is a
<product category> that <benefit
statement> unlike <competitive
analysis>, our product or service
<product differentiation>.
Review and check if the vision aligns with
the business goals and objectives.

RED SUN Inc.

42

Example - 1
For a BIM company who provides
outsourcing services to global customers,
the ABC company is the most advanced
outsourcing company that has successfully
provided services to hundreds of global
clients. Unlike others who do not provide
total solutions, our services have helped
many clients achieve significant cost
savings by integrating all applications into
a cohesive total business solution that
brings quality and efficiency for the entire
operation.
RED SUN Inc.

43

Example - 2
For BIM users who need to request
information from databases, the ABC Data
Management is an information system that
provided a single point of access to all data
and information stored anywhere in
companys multiple databases. Unlike
other systems, our system not only
locates, selects and provides information,
but also generates required reports when
needed, for use for further investigation
and documentation.
RED SUN Inc.

44

Define Common Terms


Since stakeholders and BIM teams may not
understand each other because each is using
different terms, or use the same term with
different meanings; it is important to build a
dictionary of common terms relevant to the
product being built to improve communication
during requirements gathering.
Improve a shared understanding of the problem
space.
Enable business people to inform technical people
about important business concepts.
Provide a foundation for defining requirements.
Improve commun ication by eliminating
misunderstanding in what business concepts
mean.

RED SUN Inc.

45

Terms & Acronyms


In BIM development, each stakeholder uses
certain terms expressed in acronyms which may
create confusion and prevent effective
communication in a mixed group.
There are terms unique to the domain that may
seem obvious to stakeholders but could be
interpreted differently by the developer.
For example, SLOC, POP, FTE, MNS, and ETC are
all valid terms but could be interpreted differently
by project teams. Often, the same term has a
different meaning for different people, and it is
not easy to tell when this is happening.
RED SUN Inc.

46

Acronyms
SLOC Source Lines of Code, a way of
quantifying the size of a BIM effort in terms
of the number of lines of source code generated.
POP Period of Performance, usually relating to a
contract.
FTE Full Time Equivalent, a term used to assess
the quantity of staff resources needed without
regard for their actual schedule, and based on an
assumption of working 40 hours per week.
MNS Mission Needs Statement, a document that
expresses high-level requirements.
ETC Estimate To Complete, a term used in the
context of Earned Value Management, to denote a
calculated value that represents the cost of work
required to complete remaining project tasks.

RED SUN Inc.

47

Shared Terms
Thus, the vocabulary of the team needs to be
explored and shared throughout the effort.
Terms such as reliability, scalability and usability
may have the general meaning, but will need to
be defined into specific statements for
clarification.
For example, if the customer indicates that the
system must be reliable, perhaps they are really
thinking about the integrity of the data flow, but
the developer may think that reliability means
that the system will not crash.

RED SUN Inc.

48

Create A Common Glossary


Designate a subject matter expert to define
business terms.
Review important terms relevant to the business
area including terms related to business, locations,
agreements, products, services, markets,
prospects and resources.
Draft the definition of terms, include common
used acronyms and alternatives (aliases).
Review with stakeholders and revise the
definitions as needed.
These terms will be used in process diagrams,
context diagrams, state diagrams, use-case
names and business rules.
RED SUN Inc.

49

Requirements Risks
Every requirement has risk which is a condition
that could endanger the project or the product
development.
Requirements risk mitigation is a process to assess
requirements-related risks and identifies actions to
avoid or minimize those risks.
Requirements risk mitigation also helps strengthen
project team and stakeholder communication and
helps the team prepare for or prevent obstacles to
successful requirements development.
Because requirements are critical to the project,
identifying and solving these risks can have high
impact on the project success.
RED SUN Inc.

50

Mitigate Requirements Risks


Assemble stakeholders to review a list of potential
requirements risks.
Ask stakeholders to rank each requirements risk
according to its likelihood of occurring and
potential impact.
Allow the team to communicate openly and
honestly about potential obstacles.
Identify actions for the team to actively manage
and mitigate risks.
Brainstorm additional risks based on previous
experience of the team. Make sure to include risks
associated by culture and environment.
RED SUN Inc.

51

Possible Risks
Lack of user involvement
Unclear, ambiguous requirements
Conflicting requirements
Missing requirements
Unrealistic expectations
Constantly changing requirements
New technology, techniques and tools
New business model, new market
RED SUN Inc.

52

Summary
BIM
requirements operate on three
levels: Business, Users and BIM .
Requirements engineering is influenced by
how much BIM Engineers understand
customers business processes and needs.
A Requirements Engineer is a BIM
Engineer who has the responsibility to
gather, analyze, document and validate
the needs of the project stakeholders.
Before gathering requirements, BIM
Engineers must define the product vision,
common terms and mitigate risks.
RED SUN Inc.

53

Class Exercise
Identify a BIM product.
Ask several teams to write a vision statement for
that product using the key word template.
See how many of the visions are similar.
Rectify any disconnect and come up with a unified
vision statement that all teams agree to.
Discussion: Imagine each team is a stakeholder
and see how difficult it is to combine several
perspectives into a single product vision.

RED SUN Inc.

54

Questions & Answers

RED SUN Inc.

55

Potrebbero piacerti anche