from software models to social models
DESCRIPTION
From Software Models To Social Models. John Mylopoulos University of Trento. NTUA, Athens April 11, 2011. Abstract. - PowerPoint PPT PresentationTRANSCRIPT
2011 John Mylopoulos NTUA -- 1
From Software Models To Social Models
John MylopoulosJohn MylopoulosUniversity of TrentoUniversity of Trento
NTUA, AthensApril 11, 2011
2011 John Mylopoulos NTUA -- 2
Abstract Conceptual Modeling (CM) was a marginal research area at
the very fringes of Computer Science (CS) in the 60s and 70s, when the discipline was dominated by topics focusing on programs, systems and hardware architectures. This has changed over the past three decades, with CM now playing a central role in CS research and practice in diverse areas, such as Software Engineering (SE), Databases (DB), Information Systems (IS), the Semantic Web (SW), Business Process Management (BPM), Service-Oriented Computing, Knowledge Management (KM), and more. The transformation was greatly aided by the adoption of standards for modeling languages (e.g., UML), and model-based methodologies (e.g., Model-Driven Architectures) by the Object Management Group (OMG), W3C, and other standards organizations.
We briefly review the history of the field over the past 40 years, focusing on the evolution of key ideas. We then focus on the evolution of modelling concepts in SE, specifically requirements engineering.
2011 John Mylopoulos NTUA -- 3
Acknowledgements I am grateful to my colleagues and students
whose ideas are represented (… modelled!) in these slides.
I’m particularly grateful to three long-time collaborators and friends: Alex Borgida who showed me the way on a formal grounding for conceptual modelling languages; Nicola Guarino who taught me the basics of ontological analysis; and Joachim Schmidt, who pointed me to a future for Conceptual Modelling.
2011 John Mylopoulos NTUA -- 4
Consider studying in
2011 John Mylopoulos NTUA -- 5
Conceptual Models
Use domain-oriented concepts (e.g., entity, relationship, goal, actor, …) and are structured according to cognitive principles (e.g., generalization, aggregation, classification, …).
Adopt an associationist viewpoint: models consist of nodes that represent concepts and associations/links that represent semantic/episodic/other relationships between concepts.
Associationism has a long (and illustrious!) history in Philosophy and Psychology that goes back to Plato and Aristotle.
2011 John Mylopoulos NTUA -- 6
Origins in Computer Science
➥Ross Quillian proposed semantic networkssemantic networks as a model of the structure of human memory (1966).
➥Ole-Johan Dahl proposed in 1967 SimulaSimula, an extension of the programming language ALGOL 60, for simulation applications which require some “world modelling”
➥Jean-Raymond Abrial proposed a semantic modelsemantic model in 1974, shortly followed by Peter Chen’s Entity-Entity-Relationship modelRelationship model (1975) as advances over logical data models, such as Codd’s Relational Model.
➥Doug Ross proposed in the mid-70s the Structured Structured Analysis and Design TechniqueAnalysis and Design Technique (SADTSADT) as a “language for communicating ideas”. The technique was used to specify requirements for software systems.
2011 John Mylopoulos NTUA -- 7
Conceptual
Models
AnimalAnimal
Bird Bird - can fly- can fly Fish Fish - can swim- can swimMammalMammal
Penguin Penguin - can’t fly- can’t fly SharkShark
HumanHuman
eats
FeatherFeather
has
isa
isa
isa
isa
isa
CustomerCustomerCustomerCustomerMM11
Places/Places/PlacedByPlacedByPlaces/Places/PlacedByPlacedBy
MM
MMContains/Contains/isContainedisContainedContains/Contains/isContainedisContained
BookBookBookBook
OrderOrderOrderOrder
BuySupplies
Cultivate
ExtractSeeds
Seed & Vegie Prices
Plan & Budget Weather
PlanBudget
Fertilizer
Seeds
Plants
Vegetables
PickProduce
Vegetables
Grow Vegetables
Money
2011 John Mylopoulos NTUA -- 8
Defining Moment for Conceptual Modelling (CM)
"...The entity-relationship model adopts ... the natural view that the real world
consists of entities and relationships... (The entity-relationship model)
incorporates some of the important semantic information about the real
world...” [Chen75],
VLDB’75
2011 John Mylopoulos NTUA -- 9
1975-1997 – Exploring the Frontier
➥Many applicationsDesign models for databases and
software (DB, IS, SE)Knowledge-based systems (AI, IS)Knowledge management (AI, IS)
➥Many modelling languagesDozens of proposals for semantic
network- and frame-based languages, description logics, …
More dozens for semantic data models …
Box-and-arrow notations in SE
2011 John Mylopoulos NTUA -- 10
Basic Ontologies
➥StaticStatic -- encompass static aspects of an application, described in terms of concepts such as EntityEntity, AttributeAttribute, RelationshipRelationship, ResourceResource,...
➥DynamicDynamic -- encompass dynamic aspects within an application, described in terms of concepts such as ProcessProcess, ActivityActivity, ActionAction, PlanPlan, ProcedureProcedure, EventEvent, ... or StateState, TransitionTransition,...
➥IntentionalIntentional -- encompass the world of things agents (human or otherwise) believe in, want, prove, argue about; covered by concepts such as IssueIssue, GoalGoal, SoftgoalSoftgoal, SupportsSupports, DeniesDenies, SubgoalOfSubgoalOf, ...
➥SocialSocial -- encompass social settings described in terms of social activities and dependencies among actors, e.g., ActorActor, PositionPosition, RoleRole, Commitment of A to Β for φ, ...
[Mylopoulos97]
2011 John Mylopoulos NTUA -- 11
Research Methodology I … The meaning triangle
Sign
Concept
ReferentTulips
1,2,3,4,5,6
Flower
2011 John Mylopoulos NTUA -- 12
Research Methodology II New concepts for modelling applications;
e.g., the use of the concept of goal to model software requirements in SE.
Formal semantics for modelling languages, and automated reasoning support for models.
Note: Throughout the ‘70s and ‘80s CM was a fringe research area in Computer Science.
Freedom Foreverlives?
2011 John Mylopoulos NTUA -- 13
Pitfalls of Informal Models
““Far Side” by Far Side” by Gary LarsonGary Larson
2011 John Mylopoulos NTUA -- 14
What Happened Next? The Semantic Web (Tim Berners-Lee et al) – web
data need to be encapsulated with their semantics, so that they can be processed automatically.
Model-Driven Software Engineering (OMG) – Software development consists of processes that create and manipulate chains of models ranging from problem-oriented, platform-independent ones to machine-oriented, platform-dependent ones.
Model Management (Phil Bernstein et al) – to cope with data complexity we need models (schemas, ontologies, …)
Ontological Analysis (Nicola Guarino et al) – “… content must be analyzed independently of the way it is represented …”
2011 John Mylopoulos NTUA -- 15
The Semantic Web Use semantically rich ontologies to capture the
semantics of concepts and roles/relationships. This is accomplished by adopting Description Logics as
ontology modelling languages. Annotate web data with the concepts they instantiate,
eg,
Some concerns: Capturing semantics through more expressive languages vs capturing semantics through a richer collection of primitive concepts [Borgida04].
More concerns: There is a lot more to making web data “machine processable” than semantic annotations, see data integration frameworks (DBs).
Even more concerns: Usability, scalability, …
<person> Paolo Buono <residence> lives in Trento </residence> and works at the <work> University of Trento </work> </person>
2011 John Mylopoulos NTUA -- 16
“Far Side” take on the Semantic
Web
2011 John Mylopoulos NTUA -- 17
Ontological Analysis (OA)
Consider 2000 US presidential election: Was there a
hole? 2001 World Trade Centre catastrophe: How
many events?Ontological analysis can answer these questions
Book by Roberto Casati and Achille C. Varzi (MIT Press):
• Holes and other superficialities
• Parts and places
[Guarino09]
2011 John Mylopoulos NTUA -- 18
The Formal Tools of OA Theory of Essence and Identity Theory of Parts (Mereology) Theory of Unity and Plurality Theory of Dependence Theory of Composition and Constitution Theory of Properties and Qualities …
OA is to CM what Sub-atomic Physics is to Physics
2011 John Mylopoulos NTUA -- 19
The State-of-the-Art in CM A large collection of modelling languages,
ranging from Description Logics, to the EER model and UML class diagrams (cum OCL).
Specialized languages for requirements, software architectures, various domains, …
Ontological Analysis. A growing number of relevant communities:
ER, KRR, FOIS, SemWeb, Models, CAiSE, RE, AAMAS, …
No longer a fringe research area within CS!
2011 John Mylopoulos NTUA -- 20
Requirements EngineeringRequirements Engineering (RE) consists of activities intended to identify and communicate the purpose of a software-intensive system, and the contexts in which it will be used. Hence, RE acts as the bridge between real world needs of stakeholders (e.g., users, customers, …) affected by a software system, and the capabilities and opportunities afforded by software-intensive technologies
Application Domain Machine Domain
2011 John Mylopoulos NTUA -- 21
Criticality of RECauses of project success/failure: Survey of US
software projects (1999, Standish Group): Top 3 success factors:
User involvement Executive management support Clear statement of requirements
Top 3 factors leading to failure: Lack of user input Incomplete requirements and specs Changing requirements and specs
Application Domain Machine Domain
2011 John Mylopoulos NTUA -- 22
2011 John Mylopoulos NTUA -- 23
Origins of RE -- SADT (~1975)
Novel Ideas Modeling
the operating environment of a software system.
Models represented in terms of box-and-arrow notation.
BuySupplies
Cultivate
ExtractSeeds
Seed & Vegie Prices
Plan & Budget Weather
PlanBudget
Fertilizer
Seeds
Plants
Vegetables
PickProduce
Vegetables
Grow Vegetables
Money
2011 John Mylopoulos NTUA -- 24
Requirements as GoalsRequirements define what stakeholders want
(e.g., “schedule meetings”), not what functions the system ought to support (e.g., “request timetables”).
Goals are refined through AND/OR decompositions until they can be operationalized through a function/task.
Goals may be synergistic or contradictory.
A solution (specification) to a given set of goals consists of a bunch of tasks which, if carried out in some order fulfill the goals.
A goal model defines a space of alternative designs for fulfilling a goal.
2011 John Mylopoulos NTUA -- 25
A Goal modelSchedulemeeting
Chooseschedule
By Person
Collecttimetables
AutomaticallyManuallyCollect from
usersCollect from agents
Receiveresponse
Send request
AND AND
AND AND
OR OR
OR ORBy
System
OR OR
Collect Schedule
Tasks
--
Rooms available
Domainassumption
AND
2011 John Mylopoulos NTUA -- 26
Softgoals(Functional) Goals, such as “Schedule meeting” are
well defined; non-functional goals, such “higher profits”, “higher customer satisfaction” or “easily maintainable system” specify qualities the system-to-be should adhere to and are not definable.
Such qualities are represented as softgoalssoftgoals; they can be thought as “fuzzy goals” with no clear-cut criteria for satisfaction; hence softgoals are satisficedsatisficed, rather than satisfied.
Softgoals can be used as criteria for selecting among alternative designs.
2011 John Mylopoulos NTUA -- 27
A softgoal model
Programmability
+
+
++SupportChange of
Colours Support Change of
State
SupportChange ofLanguage
ErrorAvoidance
InformationSharing
Ease of Learning
User Tailorability
Usability
Allow User-Defined Writing Tool
Modularity
UseComponents
UserFlexibility
Allow Change ofSettings
++
+
ANDAND ANDAND
ANDAND
Change colour Change
stateChange language
2011 John Mylopoulos NTUA -- 28
Evaluating alternatives
with softgoals
2011 John Mylopoulos NTUA -- 29
What are we Designing? (70s) … Software systems (90s) … Socio-technical systems: Systems
consisting of software and hardware components, but also people and organizations
Consistently with this shift, software models are increasingly adopting ideas from multi-agent systems
2011 John Mylopoulos NTUA -- 30
Stakeholders and their goals
ContributeToMtg
AttendMtg
UsefulMtg
CalendarInfo
SuitableTime
SchedulerParticipant
ScheduleMtg
resourcetask
actor
Initiator
2011 John Mylopoulos NTUA -- 31
(Social) Commitments[Bratman87] and [Cohen90] formalized the
notion of an agent’s (psychological) commitment to her intentions. [Singh91] stressed instead the notion of
social commitment C(a,b,φ,ψ) whereby “agent a commits to fulfill ψ for agent b, on condition that φ holds”.Think of social commitment as the basic
molecule for modelling social structures and norms, including obligations to others, allegiance to one’s country, to one’s employer, to family and friends, …
2011 John Mylopoulos NTUA -- 32
Looking Forward We understand very well static and
dynamic ontologies, pretty well intentional and social ones.
There are many applications out there that aren’t being served well with what we have so far …Business worldsCultural worldsLegal worlds
2011 John Mylopoulos NTUA -- 33
Summary
Conceptual models are useful artifacts for understanding, communication, design, management, and more.
There has been much progress in spelling out the principles that underlie models and modelling …
… but much remains to be done …
2011 John Mylopoulos NTUA -- 34
“Move away from any narrow interpretation
of databases and expand its focus to the hard problems faced by broad visions of data,
information, and knowledge
management”
Motto 12th International Joint
Conference on Extending Database
Technology and Database Theory,
Saint-Petersburg, 2009
2011 John Mylopoulos NTUA -- 35
[Borgida04] Borgida, A., Mylopoulos, J., “Data Semantics Revisited”, VLDB Workshop on the Semantic Web and Databases (SWDB’04), August 2004, Springer LNCS, 9-26.[Bratman87] Bratman M., Intention, Plans, and Practical Reason, Harvard University Press, Cambridge, MA., 1987.[Chen76] Chen, P., “The Entity-Relationship Model – Towards a Unified View of Data”, ACM Transactions on Database Systems 1(1), 1976.
[Chopra10] Chopra, A., Mylopoulos, J., Dalpiaz, F., Giorgini, P., Singh, M., “Requirements as Goals and Commitments too”, in Salinesi, C., Souveyet, C., Ralyte, J. (eds.) Intentional Perspectives on Information Systems Engineering, Studies in Computational Intelligence book series, Springer-Verlag, June 2010.
[Cohen90] Cohen P., Levesque H., “Intention is choice with commitment”, Artificial Intelligence 42, 1990, 213–261.
[Guarino09] Guarino, N. “Introduction to Ontological Analysis”, Lecture notes for a PhD course given at the University of Trento, May 2009.
[iStar97] Yu E., “Towards Modeling and Reasoning Support for Early-Phase Requirements Engineering”, 3rd IEEE Int. Conference on Requirements, Engineering, 1997, 226-235.
References
2011 John Mylopoulos NTUA -- 36
[KAOS93] Dardenne A., van Lamsweerde A., Fickas S., “Goal-directed Requirements Acquisition”, Science of Computer Programming 20, 1993, 3-50.
[Mumford83] Mumford, E. “Designing human systems for new technology - The ETHICS method”, retrieved from http://www.enid.eu-net.com/C1book1.htm
[Mylopoulos97] Mylopoulos, J., “Information Modeling in the Time of the Revolution”, Information Systems 23(3-4), June 1998, 127-156.
[NFR92] Mylopoulos, J., Chung, L. and Nixon, B., "Representing and Using Non-Functional Requirements: A Process-Oriented Approach," IEEE Transactions on Software Engineering 18(6), June 1992, 483-497.
[Singh91] Singh, M., “Social and psychological commitments in multi-agent systems”, AAAI Fall Symposium on Knowledge and Action at Social and Organizational Levels, 1991,104–106.
[Taylor82] Taylor, J., “Designing an Organization and an Information-System for Central Stores – a Study in Participative Socio-Technical Analysis and Design”, Systems Objectives Solutions 2(2), 1982, 67-76.
[Trist51] Trist, E., Bamforth, K., “Some social and psychological consequences of the long-wall method of coal-getting”, Human Relations 4, 1951, 3-38.
References (cont’d)