conceptual modeling agile information systems development · development process ... to define its...
TRANSCRIPT
![Page 1: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/1.jpg)
Conceptual modeling in
agile information systems development
Antoni OlivéUniversitat Politècnica Catalunya‐BarcelonaTech
1
![Page 2: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/2.jpg)
Questions without definitive answers
Is conceptual modeling a necessary or an optional
activity in information systems development?
agile
2
What is it?
![Page 3: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/3.jpg)
3
“The main purpose of conceptual modeling is to improve communicationbetween the parties involved in the development process”
“Conceptual data modeling is an indispensable part of information system design and development”
Motivation
![Page 4: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/4.jpg)
4
“...might be used to facilitate the design and implementation of an information system”
“Once you have the conceptual design, all the other design and implementation activities can and should be grounded in it...”
Motivation
![Page 5: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/5.jpg)
We are uncovering better ways of developing software by doing it and helping others do it.Through this work we have come to value:
…Working software over comprehensive documentation…
That is, while there is value in the items on the right, we value the items on the left more.
Manifesto for agile software development
5
![Page 6: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/6.jpg)
Motivation
6
To: antoni.oliveFrom: a studentBody:
Dear professor,
I've started to develop my final career project in the company.
Here they use agile development, and they do not generate any kind of documentation, and the requirements engineering and overall design are not very deep (I understand that this is their development method).
My idea of the project is to approach it in this way...
![Page 7: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/7.jpg)
Objective of the talk
Is conceptual modeling a necessary or an optional
activity in information systems development?
agile
7
![Page 8: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/8.jpg)
Implications
PracticeDo we need to perform conceptual modeling?
TeachingDo we have to teach conceptual modeling?
ResearchWhich is the nature and role of conceptual modeling?
In (agile) information systems development
8
![Page 9: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/9.jpg)
Outline
• Back to basics: the need of requirements
• What are the conceptual schemas? Do we really need them?
• The main driving force of formal conceptual schemas
• Conceptual modeling in agile development. Is it needed?
• Conclusions
9
![Page 10: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/10.jpg)
You cannot develop a system unless you know its requirements
Objectives
Wish to achieve
Requirements
Can be achieved with a system that has
System
Are the input for the development of
Is deployed into
makes unhappy
The system’s lifecycle
makes happy
evolves
10
![Page 11: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/11.jpg)
The principle of necessity of requirements
To develop an information system it is necessary
to define its requirements
Before software can be designed, programmed, coded, its requirements must first be reasonably well understood.
Are there exceptions?11
![Page 12: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/12.jpg)
12
Infinite monkey theorem
A monkey • hitting keys at random on a typewriter keyboard• for an infinite amount of time • will almost surely type a given text, • such as the complete works of William
Shakespeare.
![Page 13: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/13.jpg)
13
Infinite programmer theorem
A programmer• hitting keys at random on a typewriter keyboard• for an infinite amount of time • will almost surely type a a program, • that satisfies the stakeholders’ needs
![Page 14: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/14.jpg)
Two types of requirements
• Functional
• Quality
The focus of this talk
14
![Page 15: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/15.jpg)
The functions of an information system
State
change
Informationsystem
Domain
represents changes
action
output
15
![Page 16: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/16.jpg)
• Domain concepts represented in the IS• Definitions• Integrity Constraints • Events/Actions:
– Triggering conditions– Constraints– Effect on the state– Output
Functional requirements
16
![Page 17: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/17.jpg)
The principle of necessity of functional requirements
To develop an information system it is necessary
to define its functional requirements
17
![Page 18: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/18.jpg)
Outline
• Back to basics: the need of requirements
• What are the conceptual schemas? Do we really need them?
• The main driving force of formal conceptual schemas
• Conceptual modelling in agile development. Is it needed?
• Conclusions
18
![Page 19: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/19.jpg)
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
Classification of functional requirements
19
![Page 20: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/20.jpg)
Four key classifications offunctional requirements
• Formality
• Verifiability
• Explicitness
• Persistency
20
![Page 21: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/21.jpg)
Formality
Degree of formality of the language
Informal Formal
Natural language LogicUML/OCL
Structured natural language
Semi‐formal
Userstories
21
![Page 22: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/22.jpg)
Verifiability
Non-verifiable Verifiable
Verifiable: A person or a machine can check that the software meets the requirement
OCLconstraint
Ambiguousrequirement
Partlyambiguousrequirement
22
![Page 23: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/23.jpg)
Explicitness
Implicit Explicit
Explicit: Made public in some form
Assumedrequirements
SRSdocument
23
![Page 24: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/24.jpg)
Persistency
Non-persistent Persistent
Verbal
Paper document
Computer file
24
![Page 25: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/25.jpg)
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
Classification of functional requirements
25
![Page 26: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/26.jpg)
Functional requirements to be implemented must be made verifiable
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
26
![Page 27: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/27.jpg)
Functional requirements to be implemented must be made explicit
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
27
![Page 28: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/28.jpg)
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
Conceptual schema =Explicit, verifiable functional reqs.
28
![Page 29: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/29.jpg)
29
To develop an information system it is necessary
to define its functional requirements
The principle of necessity of conceptual schemas
To develop an information system it is necessary
to define its conceptual schema
![Page 30: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/30.jpg)
…conceptual modelers:
(1) describe structure models in terms of entities, relationships, and constraints;
(2) describe behavior or functional models in terms of states, transitions among states, and actions performed in states and transitions; and
(3) describe interactions and user interfaces in terms of messages sent and received and information exchanged.
http://www.conceptualmodeling.org/ConceptualModeling.html
“Official” definitions
30
![Page 31: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/31.jpg)
… conceptual-model diagrams:
• …
• in some cases automatically generate (parts of) the software application.
“Official” definitions
http://www.conceptualmodeling.org/ConceptualModeling.html
31
![Page 32: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/32.jpg)
Outline
• Back to basics: the need of requirements
• What are the conceptual schemas? Do we really need them?
• The main driving force of formal conceptual schemas
• Conceptual modeling in agile development. Is it needed?
• Conclusions
32
![Page 33: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/33.jpg)
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
Conceptual schemas:Formal or informal?
33
![Page 34: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/34.jpg)
Formalization? A cost/benefit analysis
Cost Benefit
34
![Page 35: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/35.jpg)
Userinterface Domain and database layer
Execution platform
Verifiable
From requirements to implementation
Manuallyobtained
Design and construction
Automaticallyobtained
Modeltransformation
Formal
35
![Page 36: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/36.jpg)
Outline
• Back to basics: the need of requirements
• What are the conceptual schemas? Do we really need them?
• The main driving force of formal conceptual schemas
• Conceptual modeling in agile development. Is it needed?
• Conclusions
36
![Page 37: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/37.jpg)
We are uncovering better ways of developing software by doing it and helping others do it.Through this work we have come to value:
Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
Manifesto for agile software development
37
![Page 38: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/38.jpg)
Conceptual modeling in agile software development
Two views
Working software over comprehensive documentation
The focus of this talk
38
![Page 39: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/39.jpg)
In consultation with the customer or product owner, the team divides up the work to be done into functional incrementscalled “user stories”.
Functional requirements in agile development:
User stories
39
![Page 40: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/40.jpg)
User stories
As a role I want feature so that reason
As a bank account holderI want to be informed if my monthly balance
is projected to go to zero or belowso that I can arrange for an overdraft
40
![Page 41: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/41.jpg)
One thing the customer wants the system to do.…Should be verifiable.
User stories
41
![Page 42: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/42.jpg)
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
User stories
Conceptual schema42
![Page 43: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/43.jpg)
The principle of necessity of conceptual schemas
To develop an information system it is necessary
to define its conceptual schema
in an agile way
43
![Page 44: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/44.jpg)
Alistair Cockburn’s Cooperative game principle
Software development is a cooperative game…The primary goal of the game is to deliver useful,
working software.The secondary goal is to set up for the next game. The next game may be:‐ to alter or replace the system or ‐ to create a neighboring system.
Documentation44
![Page 45: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/45.jpg)
ImplicitExplicit
Informal
Formal
Verifiable
Non‐verifiable
(Verifiable)
(Individual)
(Shared)
Non‐persistent Persistent
Conceptual schemas:Persistent or non-persistent?
45
![Page 46: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/46.jpg)
Persistent or non-persistent?A life-cycle cost analysis
CP = Cost of initial documentation +N * Average cost of updating documentation N : Number of system’s functional updates
Cost
Time
CP
46
![Page 47: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/47.jpg)
CP = Cost of initial documentation +N * Average cost of updating documentation
Persistent or non-persistent?A life-cycle cost analysis
CNP = M * Average cost of recovering requirements
N : Number of system’s functional updates
M : Number of times functional requirements are needed and not available
47
![Page 48: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/48.jpg)
Persistent or non-persistent?A life-cycle cost analysis
Cost
Time
CP
CNP
Technicaldebt
?
48
![Page 49: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/49.jpg)
… A metaphor referring to the eventual consequences of poor … software development. The debt can be thought of as work that needs to be done before a particular job can be considered complete. If the debt is not repaid, then it will keep on accumulating interest, making it hard to implement changes later on.
Common causes of technical debt :
Lack of documentation, where code is created without necessary supporting documentation. That work to create the supporting documentation represents a debt that must be paid.
Technical debt
49
![Page 50: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/50.jpg)
Non-persistent may be better when…
CNP = M * Average cost of recovering requirements
M : Number of times functional requirements are needed and not available
• Low cost
• Short life cycle• Few people• Stable team• Team remembers everything always
50
![Page 51: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/51.jpg)
How to decrease the initial cost
May remain non-persistent requirements that:
• Can be easily observed in the system• Can be easily recovered• Are common-sense• Are obvious (dependent)
51
![Page 52: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/52.jpg)
Sometimes requirementsare easily observed in the system
But not always
52
![Page 53: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/53.jpg)
Agile conceptual schemas?
53
![Page 54: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/54.jpg)
• Domain concepts represented in the IS• Definitions• Integrity Constraints• Events/Actions:
– Triggering conditions– Constraints– Effect on the state– Output
Agile persistent conceptual schemas?
(*): When may not be known/accessible(**): When not externally visible(***): When not externally visible and independent
(*)
(**)
(***)
54
![Page 55: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/55.jpg)
Outline
• Back to basics: the need of requirements
• What are the conceptual schemas? Do we really need them?
• The main driving force of formal conceptual schemas
• Conceptual modeling in agile development. Is it needed?
• Conclusions
55
![Page 56: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/56.jpg)
Conclusions (I)
To develop an information system it is necessary
to define its conceptual schema
The principle of necessity applies also to agile methods:
Conceptual modeling is a necessary activity
in information systems development
56
![Page 57: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/57.jpg)
Key distinctions in conceptual schemas:
• Informal/formal– Formalization enables automatic processing
• Non‐persistent/persistent– Has non‐obvious cost implications– Agile conceptual schemas may be an appropriate persistence degree.
Conclusions (II)
57
![Page 58: Conceptual modeling agile information systems development · development process ... to define its requirements ... • hitting keys at random on a typewriter keyboard • for an](https://reader031.vdocuments.net/reader031/viewer/2022011800/5acee1127f8b9a71028bef83/html5/thumbnails/58.jpg)
58
Thanks for your attention