TJTSE54 Kehittämismenetelmät ja arkkitehtuurit liiketoiminnassa

Samankaltaiset tiedostot
TJTSE54 Kehittämismenetelmät ja arkkitehtuurit liiketoiminnassa

Tasapainoilua strategian, prosessin ja komponenttien välillä (Allen & Frost, 1998)

Summary: long transaction (Software AG, 1999)

Enterprise Architecture TJTSE Yrityksen kokonaisarkkitehtuuri

7. Product-line architectures

7.4 Variability management

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

SOA SIG SOA Tuotetoimittajan näkökulma

Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)

Capacity Utilization

Other approaches to restrict multipliers

Efficiency change over time

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

2 Description of Software Architectures

TIE Ohjelmistojen suunnittelu

Network to Get Work. Tehtäviä opiskelijoille Assignments for students.

ITKE54 Kehittämismenetelmät ja arkkitehtuurit liiketoiminnassa

Teknologia-arkkitehtuurit. Valinta ja mallinnus

WAMS 2010,Ylivieska Monitoring service of energy efficiency in housing Jan Nyman,

Collaborative & Co-Creative Design in the Semogen -projects

WP3 Decision Support Technologies

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Information on preparing Presentation

TietoEnator Pilot. Ari Hirvonen. TietoEnator Oyj. Senior Consultant, Ph. D. (Economics) presentation TietoEnator 2003 Page 1

Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa

TIE Ohjelmistojen suunnittelu

1. SIT. The handler and dog stop with the dog sitting at heel. When the dog is sitting, the handler cues the dog to heel forward.

Green Growth Sessio - Millaisilla kansainvälistymismalleilla kasvumarkkinoille?

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

21~--~--~r--1~~--~--~~r--1~

Rakentamisen 3D-mallit hyötykäyttöön

The CCR Model and Production Correspondence

anna minun kertoa let me tell you

BLOCKCHAINS AND ODR: SMART CONTRACTS AS AN ALTERNATIVE TO ENFORCEMENT

ITKE54 Kehittämismenetelmät ja arkkitehtuurit liiketoiminnassa

CASE POSTI: KEHITYKSEN KÄRJESSÄ TALOUDEN SUUNNITTELUSSA KETTERÄSTI PALA KERRALLAAN

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

16. Allocation Models

Tarua vai totta: sähkön vähittäismarkkina ei toimi? Satu Viljainen Professori, sähkömarkkinat

TÄYTTÖAUTOMAATIT TÄYTTÖAUTOMAATIT COMPUTER INFLATORS

National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007

DIGITAL MARKETING LANDSCAPE. Maatalous-metsätieteellinen tiedekunta

Security server v6 installation requirements

Infrastruktuurin asemoituminen kansalliseen ja kansainväliseen kenttään Outi Ala-Honkola Tiedeasiantuntija

Jussi Klemola 3D- KEITTIÖSUUNNITTELUOHJELMAN KÄYTTÖÖNOTTO

Hankkeen toiminnot työsuunnitelman laatiminen

Security server v6 installation requirements

VBE2 Työpaketit Jiri Hietanen / TTY

MUSEOT KULTTUURIPALVELUINA

Teollinen Internet & Digitalisaatio 2015

Results on the new polydrug use questions in the Finnish TDI data

Smart specialisation for regions and international collaboration Smart Pilots Seminar

Miksi Suomi on Suomi (Finnish Edition)

EUROOPAN PARLAMENTTI

Kilpailukyky, johtaminen ja uusi tietotekniikka. Mika Okkola, liiketoimintajohtaja, Microsoft Oy

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

Returns to Scale II. S ysteemianalyysin. Laboratorio. Esitelmä 8 Timo Salminen. Teknillinen korkeakoulu

Co-Design Yhteissuunnittelu

T Software Architecture

Group 2 - Dentego PTH Korvake. Peer Testing Report

ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto

ECVETin soveltuvuus suomalaisiin tutkinnon perusteisiin. Case:Yrittäjyyskurssi matkailualan opiskelijoille englantilaisen opettajan toteuttamana

Hankkeiden vaikuttavuus: Työkaluja hankesuunnittelun tueksi

Strategiset kyvykkyydet kilpailukyvyn mahdollistajana Autokaupassa Paula Kilpinen, KTT, Tutkija, Aalto Biz Head of Solutions and Impact, Aalto EE

HITSAUKSEN TUOTTAVUUSRATKAISUT

Alternative DEA Models

Olet vastuussa osaamisestasi

Lataa Legislating the blind spot - Nikolas Sellheim. Lataa

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

Gap-filling methods for CH 4 data

Innovative and responsible public procurement Urban Agenda kumppanuusryhmä. public-procurement

Operatioanalyysi 2011, Harjoitus 4, viikko 40

Choose Finland-Helsinki Valitse Finland-Helsinki

Use of spatial data in the new production environment and in a data warehouse

make and make and make ThinkMath 2017

Data Quality Master Data Management

Millainen on viihtyisä kaupunki ja miten sitä mitataan?

KOMPETENSSIT. Koulutus Opiskelija Tuuttori. Business Information Technologies. NQF, Taso 6 - edellyttävä osaaminen

Telecommunication Software

RAIN RAKENTAMISEN INTEGRAATIOKYVYKKYYS

Lapuan myöntämä EU tuki SOLUTION asuinalueille omakoti- tai rivitaloa rakentaville

Oma sininen meresi (Finnish Edition)

.NET 2006 ja sen jälkeen

Toimitusketjun vastuullisuus ja riskien hallinta

SIMULINK S-funktiot. SIMULINK S-funktiot

2017/S Contract notice. Supplies

RANTALA SARI: Sairaanhoitajan eettisten ohjeiden tunnettavuus ja niiden käyttö hoitotyön tukena sisätautien vuodeosastolla

TIETEEN PÄIVÄT OULUSSA

Supplies

ALUEARKKITEHTUURI WEB PALVELUITA KÄYTTÄEN. Niilo Saranummi VTT Tietotekniikka

papinet -sanomastandardit

Integration of Finnish web services in WebLicht Presentation in Freudenstadt by Jussi Piitulainen

ETELÄESPLANADI HELSINKI

Mat Seminar on Optimization. Data Envelopment Analysis. Economies of Scope S ysteemianalyysin. Laboratorio. Teknillinen korkeakoulu

Tarjolla tänään: Sanastoa Koneenohjausjärjestelmien suunnittelumallit. Pattern Architecture Style. GoF. Design pattern

Tietojenkäsittelytieteiden koulutusohjelma. Tietojenkäsittelytieteiden laitos Department of Information Processing Science

Liikenteen hankeaihioita

2_1----~--~r--1.~--~--~--,.~~

Transkriptio:

TJTSE54 Kehittämismenetelmät ja arkkitehtuurit liiketoiminnassa Prof. Jukka Heikkilä Elektroninen liiketoiminta Tietojenkäsittelytieteiden laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto tel:+358 14 260 3240 email: jups@cc.jyu.fi

Components of a webstore (c.f. Porra, 1999) 2

Komponenttityypit (Häkkinen & Peltola, 1998) Räätälöidyn komponentin: tietty toiminta tietyssä ympäristössä räätälöitynä valmistajalta Valmiskomponentti on ohjelmistojen kehittäjille uudelleenkäytettäväksi suunnattu komponenttituote. Standardoitu rajapinta määrää käyttöympäristön. Lisäkekomponentti on täydentävä, loppukäyttäjille suunnattu valmiskomponentti (esim. Plug-init) Sovitekomponenttia käytetään, jos valmiskomponentti ei täytä kaikkia ohjelmistonkehittäjän asettamia vaatimuksia, niin se voidaan sovittaa näihin erityistarpeisiin. Muutokset tekee komponentin valmistaja (esim. Toimialakohtainen adapteri) 3

Komponenttityypit soveltajan näkökulmasta (Häkkinen, 1999) Ongelma Valmiskomponentti Räätälöity komponentti Komponentin Perustuu toimittajan Helppoa, käyttökelpoisuuden tarjoamaan komponentti arviointi dokumentaatioon toimitettu asiakkaan Komponentin käyttöönotto Komponentin laatu Komponentin kustannukset (toteutus, käyttö ja ylläpito) Juridiset seikat ISA-mallin Motivaatio-sarake Perustuu toimittajan tarjoamaan dokumentaatioon Toimittaja takaa, mutta varmistettava itse Kaikki kustannukset edullisia verrattuina perinteiseen ohjelmistoon ja muihin komponenttityyppeihin Toimittajalla avainasema sopimusten määrittämisessä Asiakkaan varmistettava itse dokumentaation avulla, hyvin hankalaa tarpeisiin Helppoa, sillä komponentti toteutettu sopimaan asiakkaan ympäristöön Voidaan määrittää itse laatukriteerit Toteutus valmiskomponenttia ja perinteistä ohjelmistoa monta kertaa kalliimpi, käyttö ja ylläpito edullista Asiakas avainasemassa sopimuksen määrittämisessä Asiakas voi vaikuttaa kehityksen aikana, hankalaa Sovitekomponentti Helppoa, komponentti sovitettu asiakkaan tarpeisiin Helppoa, sillä komponentti toteutettu sopimaan asiakkaan ympäristöön Voidaan määrittää itse laatukriteerit Toteutus suhteellisen edullinen, käyttö ja ylläpito edullista Toimittaja ja asiakas neuvotteluissa tasavahvoja Asiakas voi vaikuttaa kehityksen aikana, hankalaa 4

Komponentit arkkitehtuurissa (adapted from Häkkinen, 2000) There is a gap in here! Tieto Toiminto Verkko Aika Ihmiset Motivaatio Soveltamisala Yritysmalli Patternit? Järjestelmämalli Teknologia -malli Komponentit Toimiva järjestelmä Ohjelmistoarkkitehtuuri Sovelluskehys & k i lli komponenttimalli OHJELMISTO- KOMPONENTTI 5

Design Patterns (adopted from Gamma et al., 1995) Generic descriptions or templates of solutions to context specific problems It is described in: The goal and reason description in the form of intent Motivation, describing scenarios/use cases in which to use the pattern by combining problems and contexts Graphical representation (typically class or interaction diagrams), i.e. structure, participants, collaboration Implementation, Sample Code Known uses and related patterns Algorithms solve computational problems, patterns design problems 6

Design patterns (IBM, 2004) patterns identify the interaction between users, businesses, and data. patterns are used to create simple, end-to-end e-business applications. Integration patterns connect other patterns together to create applications with advanced functionality. Integration patterns are used to combine patterns in advanced e-business applications. Composite patterns are combinations of patterns and Integration patterns that have themselves become commonly used types of e-business applications. Composite patterns are advanced e-business applications. Custom designs are similar to Composite patterns, as they combine patterns and Integration patterns to form an advanced, end-to-end solution. These solutions, however, have not been implemented to the extent of Composite patterns, but are instead developed to solve the e-business problems of one specific company, or perhaps several enterprises with similar problems. Application and Runtime patterns are driven by the customer's requirements and describe the shape of applications and the supporting runtime needed to build the e-business application. Product mappings to populate the solution. The product mappings are based on proven implementations. 7

Patterns process (IBM, 2004) 8

Examples of Composite Patterns: Electronic Commerce (IBM, 2004) 9

Cntd 10

Cntd LOB = Line of 11

Cntd 12

Jups s opinion on patterns Patterns are computer practice, not science However, they seem to fill in the gap between business strategy and actual processes ran on information systems architectures. I.e., they are business model equivalent descriptions of the processes in their relationship with architecture and other parts of the business model The patterns are helpful and proven model conceptualizations of solutions on specific problem domains, Patterns have to be backed up by rigorous and tested components/algorithms and with careful analysis and abstraction of the problem domain. 13

Do we need the intermediate design stage? Why not just XP or RAD in an Agile way? One-of-a-kind project or multiple similar products/projects? Ready made, tested templates and components Multiple interconnections Technical conformity ICT stds etc Functional conformity I/O, sequence of processes, delays/lead times Procedural conformity Quality stds and procedures, information sharing and disclosure Abstraction 14

The Antropomorphic Question? In the context of using components: Should I name the components as used or as part of design? What is the difference, then, between: Architecture? Process? Service? Pattern? Component? Probably, the processes are the ones to be described from different view points Probably, a joint subset of processes can be created as service components Probably, the architecture should be a superset of all potential processes using architecture 15

How did we get into this? Let us start with Yair Wand s design requirement (a series of articles in the 1990 s): The Structure of IS Representational model: Ontological expressiviness Ontological completeness Ontological clarity Construct overload Construct redundancy Construct excess State-tracking model Mapping requirement A one to many mapping must exist from the set of real-world system states into the set of IS states Tracking requirement When the real-world system changes states, the IS must be able to change from a state that corresponds to the initial real-world system state to a state that corresponds to the subsequent realworld system state. Reporting requirement 16

Architecture functions (Youngs et al., 1999) Breaking down the complexity of the IT system so that developers can analyze and design components that are relatively isolated from one another Analyzing the functionality so that required technical components (or infrastructure) can be identified Assisting in the analysis of service-level requirements so that the means of delivering them can be designed Providing a basis for the specification of the physical computer systems on which the IT system will execute and the mapping of components onto these computer systems 17

-, process- & ICTarchitectures (Versteeg & Bouwman, 2004) Architecture Supply Chain Domain Process Outsource Contract (SLA) Function Object Application Architecture Process Architecture Process decomposition Functional Architecture Function decomposition Data decomposition I T - supply domain Service Application Subprocess Function Object Shared Usable IT-Unit 18

-, process- & ICTarchitectures (Versteeg & Bouwman, 2004) Architecture Supply Chain Domain Process Outsource Contract (SLA) Function Object Application Architecture Generic Thin Client (browser) Interfacing Layer (macro flow predefined) Webservices server (Dynamic appl. Builder: SOAP, UDDI, WSDL) Dedicated Application Client (eg Siebel) Dedicated application (requestor control processes) Adapters Process automation Control & Aggregation Layer Service Application Classic Application Client (legacy) Workflow engine Case handler Process Architecture Process Service Event Workflow scripts Actor / Role Event (e.g. message) Process decomposition Procedure Activity (macro flow caseoriented) Use Case Task OPS supply domain I T supply domain Process Architecture Function decomposition Function Data decomposition Object (micro flow) IT-Service System Use Case Service 19

With WSDL/BPEL we are here (adapted using Jonkers et al., 2004 framework on ) The domain of Gordijn, et al., 2000 20

Process description standards OMG (Object Management Group) International, open membership, not-for-profit computer industry consortium Various de facto software analysis (UML), middleware (CORBA), architecture (MDA) and process standards (BMI, BPMN, BPMI) among others 21

Biz Modelling vs Biz Process Modelling (Grodijn et al., 2000) BM = Who is offering what to who and expects what in return? Value adding business actors involved? What offerings of the actors to which actors? Elements of offerings? Producing and consuming activities of offerings? Value-adding activities 22

Biz Modelling vs Biz Process Modelling (Grodijn et al., 2000) BPM = how the activities are carried out? Which operational activities are necessary? Functional vs. non-functional Who are the actors involved in the operations? Which activities are executed by which actors? Inputs and outputs necessary for activities? Sequence of activities Parallel activities Simplification 23

BizModelling generics (Grodijn et al, 2000) 24

BizModelling Generics (cntnd) Actor = toimija Independent economic entity actors End-consumer actors Value activity = toiminta Actor produces value in an activity By adding value to objects of value (inputs) By producing objecs of value (outputs) Value object = tuote Thing, product (good or service), experience of value to actor Value port = kanava Means of providing or requesting value objects. Interconnects actors. Value interface = tarjooma Groups in and out value ports for actor or for activity Has a valuation function (perceived value of the value exchange) Value exchange = liiketoimi Trade of a value object between value ports Value offering = arvolupaus 25

BizModelling (Gordijn, 2007) 26

BizModelling (Gordijn, 2007) 27

BizModelling (Gordijn, 2007) 28