Presentation on theme: "Dept of Information and Communication Technology Tropos'06 -- 1 Tropos at the Age of 6: Status and Research Directions John Mylopoulos University of Trento."— Presentation transcript:
Dept of Information and Communication Technology Tropos' Tropos at the Age of 6: Status and Research Directions John Mylopoulos University of Trento March 2, 2006 DIT, UniTN, Trento
Dept of Information and Communication Technology Tropos' Research Baseline Ü Modeling social settings with i* [Yu93]. Proposed as a modeling framework for early requirements, business process reengineering,… Ü Design of modeling languages Taxis -- design language for information systems ( ) Telos -- metamodeling language for integrated software development environments ( )
Dept of Information and Communication Technology Tropos' … Namur, Belgium,1995 … Tropos* Ontology Structuring Processes, actors, dependencies, resources,... Applicationarea Business re-engineering, virtual corporations, enterprise integration, software processes,... Contexts, denotation, representation (+ gene- ralization, aggregation, classification and attri- bution) Tools Process re-engineering, analysis, enactment support TroposmannerTropos (Greek) means manner (as in “manner of doing things”) [Odyssey, line 1: "… "]
Dept of Information and Communication Technology Tropos' … An Idea … Ü Software Engineering methodologies have come about in a “late-to-early” (or, “downstream-to-upstream”) fashion. Ü In particular, Structured Programming preceded (and influenced!) Structured Analysis and Design; likewise, Object- Oriented Programming preceded Object-Oriented Design and Analysis. Ü In both cases, programming concepts were projected upstream to dictate how designs and requirements are to be conceived. What would happen if we projected requirements concepts downstream to define software designs and even implementations?
Dept of Information and Communication Technology Tropos' A Research Project Ü Develop a software development methodology founded on the notions of actor,, goal/softgoal, and strategic actor dependency. Ü These concepts are to be used in all phases of software development (as with UML). Ü If these are the concepts we use to conceive software, we are obviously developing agent-oriented software systems. Ü There are implementation environments for such systems; accordingly we focus on earlier phases.
Dept of Information and Communication Technology Tropos' What is Software? An engineering artifact, designed, tested and deployed using engineering methods; rely heavily on testing and inspection for validation (Engineering perspective) A mathematical abstraction, a theory, which can be analyzed for consistency and can be refined into a more specialized theory (Mathematical perspective) A non-human agent, with its own personality and behavior, defined by its past history and structural makeup (CogSci perspective) Ü A social structure of software agents, who communicate, negotiate, collaborate and cooperate to fulfill their goals (Social perspective)
Dept of Information and Communication Technology Tropos' Research Tasks Ü Develop a methodology, illustrated through case studies ([Castro01], [Bresciani01]), supported by a prototype environment [->]. Ü Develop formal analysis techniques for Tropos models: Simulation through model checking, to explore temporal properties of models [Fuxman01]; Goal analysis that determine the fulfillment of a goal, given information about related goals [Giorgini02]; Social analysis that looks at configurations of actor dependencies [Bryl06].
Dept of Information and Communication Technology Tropos' Probabilistic Goals Ü A generated design for a given (generic) goal is supposed to fulfill (all!) its instances …, but in general it won't! Ü Can we make precise claims about a design, e.g., "If D is true X% of the time, then an ambulance can be in the place of accident anywhere in London within 15' 85% of the time" Ü Modeling and reasoning with probabilistic actions (e.g., "submit paper to conference") also an issue. Ü Use DT-Golog, PhD thesis by Mikhail Soutchanski.
Dept of Information and Communication Technology Tropos' Goal models Schedule meeting By all means By Collect timetables By person By system Have updated timetables Collect them Choose schedule Manually Automatically Matching effort Collection effort Minimal conflicts Degree of participation Quality of schedule Minimal effort
Dept of Information and Communication Technology Tropos' Designing for High Variability … software! Ü A goal model defines a space of alternatives for fulfilling a goal. Design a system that supports all alternatives rather than one. Ü Generate generic design views from a goal model (Yijun Yu, Alexei Lapouchnian, Sotiris Liaskos), [Yu06]. Ü Characterise goal variability [Liaskos06]. Ü Application of these ideas to the design of domotic software systems (helps an elderly person live at home [Hui03]).
Dept of Information and Communication Technology Tropos' From a Goal Model to a Statechart
Dept of Information and Communication Technology Tropos' Modeling Preferences Ü Our language for modeling preferences (softgoals, controbutions) is rather coarse-grained. Ü Use recent results from Knowledge Representation on representing and reasoning with preferences to offer a more expressive language for modeling preference, with suitable tool support. Ü When a planner looks for a plan to satisfy a goal, it prefers plans that satisfy preferences. Ü Based on work by Sheila McIlraith and her students (Liaskos).
Dept of Information and Communication Technology Tropos' From Goals to Database Designs Ü Requirements Engineering (RE) has changed dramatically in the past 15 years: early requirements, goal-oriented RE,… Ü … but not database design! Ü Develop a systematic, tool-supported process for going from goal models, to information models, to conceptual (e.g., ER) schemas. Ü Lei Jiang, Thodoros Topaloglou, Alex Borgida [Jiang06].
Dept of Information and Communication Technology Tropos' Designing Business Processes Ü Instead of generating software designs, let's generate business process designs. Ü Work with IBM's WebSphere Business Modeler group. Ü We have a tool-supported design process that can even generate BPEL. Ü Alexei Lapouchnian, Yijun Yu.
Dept of Information and Communication Technology Tropos' Designing Autonomic Software Ü Autonomic software: can self-configure, self-repair, self- optimize, (self-protect). Ü For us, autonomic = high-variability + monitoring + diagnosis + reconfiguring Ü We start from AI theories of diagnosis, develop design techniques for monitoring and diagnosis (Yiqiao Wang). Ü Computer Associates Inc. wants techniques for reengineering their logging and diagnostic facilities.
Dept of Information and Communication Technology Tropos' Designing Virtual Organizations Ü Consider a technology park where several SMEs form vistual organizations to carry out large projects (that they can't conduct individually). Ü How do we design them? How do we analyze the designs? Ü Thesis work by Enzo Colombo at the Politecnico di Milano Ü Proposes a 3-view design process: social, intentional and process. Offers analysis techniues for each. i*/Tropos used for the social+intentional views. Patterns are proposed.
Dept of Information and Communication Technology Tropos' The Longer Term Ü This is on-going work that is part of someone's PhD thesis. Ü There is some interest from industry (IBM, CA). Ü But what might be the longer term objective of all this research (including the work we do in Trento)? A Science of Software Design!