320 likes | 422 Views
MOWAHS: Mobile Work Across Heterogeneous Systems Jan. 25, 2000 (rev. 26. Jan.) Reidar Conradi, Mads Nygård Dept. Computer and Information Science (IDI) NTN U www.idi.ntnu.no/grupper/su/mowahs.html www.idi.ntnu.no/grupper/db Tel +47 73.593444 (rc), +47 73.593470 (mn), Fax +47 73.594466.
E N D
MOWAHS:Mobile Work Across Heterogeneous Systems Jan. 25, 2000 (rev. 26. Jan.)Reidar Conradi, Mads NygårdDept. Computer and Information Science (IDI)NTNU www.idi.ntnu.no/grupper/su/mowahs.html www.idi.ntnu.no/grupper/db Tel +47 73.593444 (rc), +47 73.593470 (mn), Fax +47 73.594466
MOWAHS motivation (1) -- virtual organizations with mobile and distributed actors:
MOWAHS motivation (2) • Applications: nomadism, virtual organizations • 300 mill. mobile phones in Jan. 2000, 3 bill. in 2005 and 10% with powerful PCs/PDAs? • Entry ticket to become a global (virtual?) company: reduced by factor 100 in recent years. • Enormous dynamics: 3C convergence, liberalization. • New work modes: RAD, nomadic, 100% on-line. • Technology: mobility, agents, ... • “Deluge”: www, IP, Java, CORBA, XML, applets / servlets / displets, agents = active html pages?, BSCW tool, … • E.g. XML used for sending electricity bills to bank, XML/Java tools to make graphical editors.
MOWAHS motivation (3) • The new network economy: international companies, managers, developers, products, markets. • The industry: uses the new IT (or else it dies), but also reinforces the same technology. • UMTS: • ”UMTS is a set of services which we cannot imagine today, with a technology that does not yet exist, for user needs which we don’t yet know”.--- Juha Rupeli of Nokia, chairman.
MOWAHS motivation (4) • Some challenges: • How to support both fixed and portable PCs / PDAs? • How to support different and varying connectivity? • How to federate heterogeneous devices, tools, data? • How to effectively support work on mobile platforms? • How to fast and reliably build / evolve such support? • How to asses the impact on humans / virt. organizations? • Piggy-back on existing technologies and solutions: • CAGIS: Multiagent architecture for prosesses / transactions. • CAGIS: Cooperating workspaces and meeting places. • Other: groupware, agents, XML, multimedia, UMTS, WfM process interaction standard, ...
MOWAHS: Mobile Work Across Heterogeneous Systems (1) • Newly accepted NFR basic R&D project, 2001-04. • Sw.eng. and database groups at IDI: • 2 IDI teachers: Reidar Conradi, Mads Nygård. • 2 PhD students: Carl Erik Sørensen, NN? • 2 postdocs: Alf Inge Wang, Heri Ramampiaro (?). • Budget: 5 mill. kr totally. • Outspring from CAGIS project in 1997-2001. • Support nomadic computing over heterogeneous platforms: process and transaction support. • Internationalization, coop. with Telenor(?), ...
MOWAHS goals (2) • G1) Helping to understand and to continuously assess and improve workprocesses in virtual organizations. • G2) Providing a flexible, common workenvironment to execute and share real workprocesses and their artifacts, applicable on a variety of electronic devices (from big servers to small PDAs). • G3)Disseminating results to colleagues, students, companies, and community at large.
MOWAHS approach, iterative (3) • Design a flexible work environment for virtual organizations using heterogeneous devices, with support for processes and their artifacts and transactions. • Implement a testbed for process/transaction support for virtual organizations, using XML-based and mobile agents. • Use real rqmts/scenarios to evaluate the above, e.g. on software development and net-based education. 25% on empirical work.
MOWAHS results (4) • R1) A XML-formalism to describe/execute federated and heterogeneous processes and coop. Workspaces/transactions (G2). • R2) A simple set of tools to support the above, based on agent technology (G2). • R3) A set of scenarios with defined work models, using above formalisms/tools (G1). • R4) A body of experiences from empirical studies of such technologies (G1). • R5) Presentation material, courses (G3).
MOWAHS: Problem context (5) • Distributed and heterogeneous environments • Manage people working: • Different places • Different times • Different tools • Different processes and data • Organisations divided into autonomous sub-organisations • Plus the new IT opportunities ...
MOWAHS Technical Motivation (6) • Problems with traditional process / workflow / groupware architectures: • Too centralized • Too homogenous models • Hard to change tools and models • Need open-ended spectrum of cooperative process tools • No integration of data access and process support • Traditional transaction models / data accessing too stiff • Solution 1: Agent-based architectures. • Solution 2: Novel transaction models. • Solution 3: Use XML, Java, ...
Ex. CAGIS Multi-Agent Architecture for Cooperative Software Engineering
Agent • Piece of autonomous software • System agents • Local agents • Interaction agents • Communication agents • Negotiation agents • Coordination agents • Mediation agents, ...
Ex. Multi-Agent Architecture • Network of problem solvers (agents) • Advantages: • Decentralisation • Reuse of previous components • Cooperative work support • Flexibility • Agents coupled to cooperation spaces: • Workspaces: for artifacts (files, documents) • Agent meeting places: for negotiation / coop.
Workspace • Human and software agents access shared data and tools • Private and shared workspaces • Shared workspaces used for grouping people
Agent Meeting Place • Place for software agent interaction • Trading of information and services • Facilities for: • Inter-agent communication • Provide a predefined set of conversation types • Specify a common syntax • Specify a common semantics • Specify pragmatics for agents • Inter-agent negotiation
Process activity in a process fragment, i.e. in a local workflow system • Process: sum of process fragments • Process fragment: in a local workspace, coupled to role/person and tools -- in a PDA/PC. • Simple activities in fragments, with links • Ex.Activities in fragments / workspaces: Workspace 2 Workspace 1 Activity 3 Activity 1 Activity 2 Activity 5 Activity 4
Ex. Process model schema, in DTD/XML <!XML encoding=“UTF-9”?> <!ELEMENT process (name, (processfragment)+> <!ELEMENT processfragment(name, (workspace), (activity)+)> <!ELEMENT activity (name, (workspace), (prelink)*, (postlink)*, (state), (due)?, (feedback)?, (description), (code)*)>
Workspace: Elaine code Workspace: George Workspace: Kramer build compile read document Ex. Process (activity) model in XML <Activity> <Name>compile</Name> <Workspace>Kramer</Workspace> <Prelink>Elaine/code</Prelink> <Prelink>Elaine/read document</Prelink> <Postlink>George/build</Postlink> … </Activity>
Interconnection of components • Agents: created by people • Agents: grouped mainly as people • Agent interaction: via agent meeting places • Agent interaction: also via workspaces, taking data from/to traditional repositories • Within a process fragment / workspace: simple, local process models -- in any format • Between process fragments: also GlueServer to “federate” local fragments and support coop.
Ex. GlueServer, to connect local process fragments that need to cooperate
Process Support Tools • Process Server • Process engine (local) • GlueServer (central) • Registration and un-registration of activities • Moving process fragments • Process Modeller (simple text editor) • Agenda Manager • Agenda browser • Activity browser • Process Monitor • Monitor progress and state of process • Change process state information
Need flexible transaction support • Serializable (“ACID”) transactions insufficient for creative, cooperative work: • Need structured, not flat transactions: hierarchy, networks • Data sharing levels: private, group, project, global • Long-lived activities: days, not seconds • Flexible locking schemes, may break locks • Precommit (“sneak preview”) of temporary data versions • User-defined consistency rules • No forced aborts -- partial recovery schemes • Coupling to versioning and merging • Awareness: triggers / notifiers • Part of flexible workspace support, incl. process
CAGISTrans • Offer flexible transaction models, user-tailorable • Nested transactions • Can relax all of ACID properties in a controlled way • Sophisticated locking and awareness schemes • Specification in XML of: • Transaction characteristics (static) • Execution rules (dynamic) • Associated editors and interpreters • Integrated in workspace support, p.t. using simple files
MOWAHS challenges • Move to mobile, not just distributed setting. • Allow different process / groupware formalisms/tools locally, i.e. federation. • Couple transaction support to e.g. UML data model. • Try out on realistic scenarios: • Network-based education, the mobile student • Virtual teams in sw.eng. (ourselves, students, industry?) • => Cooperate with others on solutions and applications!!
Possibilities for joint activities • MUNIN: • Offer method support for developing multimedia / mobile applications wrt. process / transaction support. • Test out on students / developers. • PATT/Parlay: similar, both for applications and platforms. • HiA’s “The mobile student”: similar + applying such technologies/applications on own students. • INCO: Use MOWAHS as testbed.