Metodologie per la raccolta dei requisiti

L’analisi dei requisiti
gianluigi visco Marigliano
La progettazione dovrà fare
riferimento ad una serie di requisiti
Requisiti di architettura (skill-based, rule-based e knowledgebased)!
!
Requisiti di comunicazione!
!
Requisiti funzionali!
!
Requisiti di contenuto!
!
Requisiti di gestione!
!
Requisiti di usabilità!
!
Requisiti di accessibilità
Requisiti di architettura
!
Skill based. Skill è l'abilità nell'eseguire un compito. Le azioni skill based si riferiscono
a compiti svolti in modo automatico e semplice per chi abbia acquisito una particolare
abilità.!
!
!
Rule based. Si tratta di azioni basate sul seguire una regola conseguente o a una
precedente esperienza o a una istruzione specifica. !
I processi rule based entrano in azione quando fallisce lo skill based ed il soggetto ha
bisogno di fare riferimento ad un set di istr-uzioni esplicite o regole che ha a disposizione.
L'attore esamina ed interpreta la corrente situazione e sceglie la regola che meglio
risolve il problema.!
!
!
Knowledge based. Si tratta di azioni basate sul ragionamento, inferenza, giudizio e
valutazione. !
Se il processo rule based non risolve il problema si deve fare riferimento al sistema
knowledge based (in generale si tende a preferire le soluzioni rule based poiché
richiedono minor sforzo cognitivo), ciò avviene quando si affrontano situazioni nuove o
poco conosciute o quando le regole di cui si dispone non sono sufficienti ed adeguate
La progettazione dovrà fare
riferimento ad una serie di requisiti
Requisiti di architettura (skill-based, rule-based e knowledgebased)!
!
Requisiti di comunicazione!
!
Requisiti funzionali!
!
Requisiti di contenuto!
!
Requisiti di gestione!
!
Requisiti di usabilità!
!
Requisiti di accessibilità
strumenti
intervista semi-strutturata
obiettivi
documentarsi
semantica
confini
griglia
consenso
deontologia
fasi intervista
* spiegazioni preliminari
* domande primarie
* domande-sonda
* ripetizione della domanda
* ripetizione della risposta
* incoraggiamento, espressioni di interesse
* richiesta di approfondimento
fasi intervista
spiegazioni preliminari
fasi intervista
domande primarie
?
fasi intervista
domande-sonda
fasi intervista
ripetizione della domanda
fasi intervista
ripetizione della risposta
fasi intervista
incoraggiamento
fasi intervista
richiesta di approfondimento
migliorare la fruizione dei contenuti del sito di facolta!
!
focus group con attori privilegiati
!
dividiamo l'intervista in più fasi per ogni stakeholder
(in ingresso, frequentante, laureando, stagista, erasmus, professore)
es.
### domande primarie
riconoscete questi portatori di interesse o ne aggiungereste altri?
le richieste più frequenti che affrontate oggi nel quotidiano da studenti in ingresso? ... etc.
quali sono le dinamiche di aggiornamento dei contenuti durante l'anno?
!
### domande-sonda
racconta una tipica esperienza di richiesta pervenuta negli ultimi giorni?
chi altri detiene un patrimonio informativo utilizzabile? (nomi e tipo)
quali delle richiesteche arrivano potrebbero trovare già risposta sul sito attuale?
!
### espressioni di interesse
knowledge base
standardizzazione dei format
formazione
redirect verso sito docenti
social exchange of support
altre modalità di progettazione
B.P.R.
Specifica dei requisiti
Struttura di un documento
SRS
Software Requirements specification
•
•
•
introduzione
• scopo
• definizioni
• panoramica del sistema
• Riferimenti
descrizione generale
• prospettiva del prodotto
• funzioni del prodotto
• caratteristiche utente
• vincoli, ipotesi e dipendenze
requisiti specifici
• External interface requirements
• Functional requirements
• Performance requirements
• Design constraints
• Logical database requirement
• Software System attributes
mappe cognitive
Label
Label
Label
Label
Thought
Label
Label
Label
Label
Label
Label
Label
Label
Label
Label
Label
Note
Label
Label
Label
Label
Label
Point
Mind Map
Label
Label
Label
Label
mappe cognitive
sit
repository
i.ter campania
backup
rapresentazione
Label
info e social
progetti
Opendata!
Sit
BEWARE!
cloud
ufficio stama
regole e documenti
web tv
dati
suap
informazioni
organizzazione
gis
eprocurement
Reference
cooperazione
replicazione
Label
Egov
rete
rete
help desk
on thejob
supporto
nodo agenzia
Label
Warning!
Cittadini e
imprese
formazione
in aula
Point
online
albo pretorio
conservazione sostituiva
Product Based Planning
3
External Product
1.1
Simple Product
1
Integration
Product
1.2
Simple Product
2
Final Product
2.1
Simple Product
Collective Group
2
Collective Group
2.2
Simple Product
3
External
Product
1.1
Simple Product
Name
Name
1.1
porte di dominio
Specialista'DBMS
2.1
Info
Servizi di supporto
Sistemistico su Enti
Web'Writer'Mul,lingue
1
cooperazione
applicativa
2.2
Community
2
portale
1.2
management
Name
2.3
Ufficio stampa
1.3
porte
dominio
Web'Writer
2.4
Export
Name
Specialis,'IT
3.1
Simple Product
3
e-procurement
Comunicazione
Name
Supporto'Specialis,co'Proge;uale
Anagrafica degli Operatori
Albo Fornitori
Modulo Gare
Modulo Aste
Centrale di Committenza
Convenzioni
Osservatorio Prezzi
11
SSO
Name
Name
3.2
Simple Product
Name
3.3
Export
4.1
Product
Servizi'(inst,'conf,'assist'2y)
Name
4.2
Export
4
SUAP
Specialista'Senior'SGQ
9.1
Simple Product
4.3
Product
9
formazione
Name
5.1
Install config
cloud E-Gov
Name
Specialista'junior'Urbanista
9.2
Simple Product
Esperto'db'Cartografico
5
SIT
9.3
Simple Product
5.2
collect
5.2.1
config
Name
Name
Esperto'CAD'per'lavorazione'da,'
Cartografici
9.4
Simple Product
Specialista'Legale'Amministra,vo
Name
Specialista'junior'Ufficio'Tecnico
9.5
Simple Product
6
monitoraggio
9.6
Simple Product
Name
Tecnico'informa,co
Analista
7.1
CED
7.1.1
SYS config
Name
Servizi di supporto
Sistemistico su Enti
7
nodo agenzia
8.1
tiketing
7.2
NET
Name
Tecnico'Sistemi
10
albo pretorio
8
help desk
11
sevizio fax
8.2
help desk II livello
BPM
Business process management
KEY
Process
Used to show a process that contains subprocesses and / or activities to achieve its goal.
Contains a numeric ID and name. Sub-processes
and / or activities use the given numeric ID as a
prefix to their identifier.
Starting Point
Scheduled Starting Point
Used if a process is initiated in
some timed manner
[...]
?
[...]
[...]
Normal Completion
...
Exception Completion
...
...
Activity
Shows discrete logical processing within a process.
An activity cannot be further broken down.
Contains a numeric ID derived from the parent
process and a name.
Input / Output Data
The information the process
expects to receive and deliver
[...]
[...]
Decision
Processing will split based on a decision. The given
condition met will be shown on the outgoing flow line.
Decisions yield two results only. For greater than two
result flows, a Switch should be used.
Switch
Processing will split based on conditions. The given
condition met will be shown on the outgoing flow line.
Only one flow will be continued along and needs to be
paired with a corresponding Merge.
Merge
Brings multiple process flows back into a single
flow. Processing will only have occurred on
one of the incoming flows.
Annotation
Split
Processing continues in parallel within the same
flow. Needs to be paired with a corresponding
Join
Join
Brings multiple process flows back into a single
flow. Processing will only have occurred on all
of the incoming flow lines and will not continue
passed the Join until all have completed.
BPM
Business process management
x.y
<process
name>
x.y
<activity name>
x.y
<process
name>
x.y
<activity name>
x.y
<activity name>
?
x.y
<activity name>
UML
System
Use Case
Item
Actor
<uses>
<extends>
Object Name
Object Name
Async Message
Simple Message
Synchronous with Immediate Return
Synchronous
Object Name
oper ()
[condition1]
Message1
[condition2]
Message2
UML
Unified Modeling Language
Class
Class
Object
Node
a:Class
Package
UML 2.1 General
Version 1.5
by Jens v. Pilgrim
Component
attr = ""
«stereotype»
Class
Component
Interface
Artifact
Class
Attributes
Use Case
Use Case
Class
Interface
Some UC
Operations
Attributes
«extends»
Flows
{basic} some bf
{alt} some alt
*
Class
Actor Time
«includes»
«identifying»
0..1
1
Operations
1
roleB
*
roleA
«enumeration»
Enum
Extension Points
some ep
= basic flow step i
Use Case
Extension Point
some extension point
Robustness
General
*
1
red
black
roleB
Note
*
roleA
Boundary
Boundary
«bind» ‹T→type›
Package
«use»
Qualifier
Entity
TemplatePar
pattern
Class
Entity
TemplatePar
Simplified
role
Control
Control
«bind» ‹T→Type›
Activity/State
System
Version 1 «precondition»
«postcondition»
pre
post
Sequence
sd Interaction
role:Class
loop (min, max)
sub
alt
[condition]
State
«AE»
init
[condition]
[condition]
«parallel»
Elemente
Acitivity
Elemente
send signal
«AA»
activity
receive
signal
async()
sync()
return
[else]
UML
diagramma a blocchi
Start/Stop
Input/
Output
Process
Disk
Predefined
Process
Decision
Data
Manual
Operation
Document
Manual
Input
Display
functional diagram
Functional Description
1.2
1.1
REF
1.1.2
Function 1.1
Name
AND
1.4
Function 1.2
Name
Function 1.4
Name
Data Item
Trigger
1.3
Function 1.3
Name
1.7
G
G
1.5
OR
REF
2.3
Function 1.7
Name
Function 1.5
Name
1.7
Function 1.6
Name
1.8
OR
Tentative
Function
diagrammi causa effetto
fish bone
Cause
Effect
Effect
Primary
Se
co
a
nd
Effect
Effect
Primary
Primary
ry
co
Se
a
nd
Primary
ry
d
on
ary
c
Se
Primary
Primary
Effect
Primary
Primary
Se
con
Sec
ond
dar
y
Primary
Effect
Primary
Sec
ond
ary
Primary
Effect
ary
Primary
Effect
swat
valutare !
punti di forza (Strengths), !
debolezza (Weaknesses), !
opportunità (Opportunities) !
minacce (Threats)
swat
S W
O T
project management
GANTT
PRINCE2
PRojects IN Controlled Environments
WBS
work breakdown structure
WBS 1.0
1
6d
08/22/12
08/27/12
WBS 1.1
WBS 1.2
2
2d
3
4d
08/22/12
08/23/12
08/24/12
08/27/12
Gantt
L’analisi dei requisiti
gianluigi visco Marigliano