Category: Uncategorized

Hva er “Ny IKT” i forhold til “Lov om forbud mot diskriminering på grunn av nedsatt funksjonsevne (diskriminerings- og tilgjengelighetsloven)”

Skrevet som innspill til dokumentasjonssenteret 12.September 2008

Dette er ett innspill for å påpeke noen avklaringer som må gjøres for å avklare hvem loven skal gjelde for. Basert på de svar som kommer til de forskjellige problemstillinger vi angir her, vil det være mulig å argumentere for at all teknologi og systemer som brukes til å uttrykke, utveksle, mangfoldigjøre og publisere informasjon (nettsteder) må tilfredstille kravene om universell utforming fra 1. Juli 2011, eller det kan argumenteres at ingen nettsteder trenger å tilfredstille kravene om universell utforming før 1. januar 2021.

I loven står det:

Ҥ 11. Plikt til universell utforming av informasjons- og kommunikasjonsteknologi (IKT)

Med informasjons- og kommunikasjonsteknologi (IKT) menes teknologi og systemer av teknologi som anvendes til å uttrykke, skape, omdanne, utveksle, lagre, mangfoldiggjøre og publisere informasjon, eller som på annen måte gjør informasjon anvendbar.

Nye IKT-løsninger som underbygger virksomhetens alminnelige funksjoner, og som er hovedløsninger rettet mot eller stillet til rådighet for allmennheten, skal være universelt utformet fra og med 1. juli 2011, men likevel tidligst tolv måneder etter at det foreligger standarder eller retningslinjer for innholdet i plikten. For eksisterende IKT-løsninger gjelder plikten fra 1. januar 2021. Plikten omfatter ikke IKT-løsninger der utformingen reguleres av annen lovgivning.”

Og i Ot.prop 44.[2] Seksjon 2.3.1.2 står det: “…Eksempler på IKT som omfattes er internettsider, minibanker og billettau­tomater. Kravet om universell utforming skal ifølge høringsforslaget gjelde for neste utgave eller løs­ningsversjon etter denne fristen…”

Diskusjonen står om begrepet “Nye IKT-løsninger” og hva kan betraktes som en ny IKT løsning med tanke på hvordan nettbasert informasjon i dag håndteres.

For å forstå problemstillingen er det viktig å skape en forståelse for hvordan moderne nettbaserte løsninger fungerer. Og at de fleste nettbaserte løsninger i dag er bygget opp etter de samme prinsipper. Det er også en konflikt mellom begrepene “neste utgave eller løsningsversjon” og “Nye IKT-løsninger”.

Men siden det står Nye IKT-løsninger i lovteksten vil vi første omgang ta utangspunkt i de utfordringer begrepet – nye – har i forhold til hvordan en publiseringsløning er bygget opp.

Hvis vi tar utgangspunkt i følgende enkle skisse, vil vi for hver boks gjerne ha en egen komponent, og for hver pil kan det også være en løsning eller kommunikasjon mellom komponenter som tilsammen utgjør løsningen. Eksempler på pil som kan være en løsning er f.eks. en caching tjeneste, en messaging tjeneste el. En moderne løsning består i dag av mange forskjellige komponenter som hver utgjør sin spesielle funksjon, med en god lagdelt arkitektur og bruk av standarder er det også mulig å bytte ut enkelt komponenter uten at dette påvirker hvordan løsninger fremstår.

Hvis det med “Nye IKT-Løsninger” menes hvordan informasjon presenteres, uten tanke for de systemer som produserer og setter sammen informasjonen, kan nye bety at en ny side er publisert dvs. at det er kommet ny informasjon på nettstedet, eller det kan bety at det er ny design på nettstedet, endring av farger, bruk av bilder el.

Det er fullt mulig å ha ny design på ett nettsted uten at det har skjedd endringer i den IKT som brukes for å produsere informasjonen.  Det er derfor viktig at det kommer en avklaring på hva som menes med “Nye IKT-løsninger”.

Det er også mulig å diskutere hva som menes med “underbygger virksomhetens alminnelige funksjoner”. Hvis vi ser på sidene til regjeringen eller stortinget kan det argumenteres for at disse nettsteder ikke underbygger virksomhetens alminnelige funksjon, og derfor ikke gjelder for loven. Det kan argumenteres at få nettsteder underbygger en virksomhets alminnelige funksjon, da det er få om noen virksomheter hvor dennes alminnelige funksjoner er nettbasert. Det er mulig at regjeringen og stortinget har som funksjon å drive informasjonsarbeide, og at en nettjeneste derfor er med på å underbygge den alminnelige funksjonen. Det samme gjelder f.eks. for banker, reisebyråer, flyselskaper, aviser mm.

En mer grundig gjennomgang av hvilke tekniske komponenter som er med på å utgjøre en nettbasert publiseringsløning kan være til hjelp for å forstå hvorfor en avklaring av “Nye IKT-løsninger” er viktig. Hvis vi tar utgangspunkt i [Figur 1] som gir en skjematisk oversikt over hvilke Hardware komponenter som er med på å bygge en nettbasert publiseringsløsning.

I [Figur 2] er det en oversikt over hvilke Programvare komponenter som vanligvis er med på å bygge en nettbasert publiseringsløsning. Dette synliggjør også viktigheten av en avklaring om “Nye IKT-Løsninger” gjelder for Maskiner eller Programvare, eller for egenutviklede programmer som er en del av Programvare rammeverk, som illustrert i [Figur 3].

skjermbilde-2017-01-09-kl-23-35-34

Figur 1

Figur 1: En forklaring av “funksjonene” med nummer

Her er det ikke tatt med nettverkskomponenter som er avgjørende for at systemene skal virke sammen og kunne kommunisere, som routere, brannmurer, og andre komponenter som også naturlig er en del av en IKT-løsning.

1) Dette kan betraktes som en løsning som i sum av alle andre komponenter utgjør den nettbaserte publiseringsløsning. Denne løsning tar ikke hensyn til kommunikasjon som foregår til sentraliserte tjenester som BBS, SSB eller spesielle saksbehandler systemer, slik kommunikasjon kan sees på som en pil ut fra (3).

2) Dette er ofte inngangsporten til en nettjeneste, dette er maskinen som svarer på http://www.xxx.no henvendelsene, og basert på hvilke henvendelse det er sender den til riktig bakenforliggende tjeneste, det kan være slik at bilder og andre statiske objekter sendes ett sted, mens mer dynamiske objekter sendes ett annet sted i det bakenforliggende systemene som er angitt med (3)

3) Dette er det laget som henter og setter sammen informasjon basert på den henvendelse som er gjort. Dette kan bety at det hentes informasjon fra flere forskjellige datakilder og hvor denne settes sammen til en helhet og sendes tilbake til mottaker. Dette er ofte funksjoner som tilbys automatisk gjennom mange forskjellige publiseringsrammeverk.

4) Dette er databasene hvor informasjonen som brukes og presenteres lagres, dette er det fysiske laget hvor informasjon faktisk er lagret. Dette kan være filbaserte systemer, det kan være relasjonsdatabaser, det kan være objektorinterte databaser el.

5) Avhengig av hvordan systemene er designet, og hvordan en nettøkt (session) ivaretas kan det være behov for å synkronisere informasjon mellom løsningene, dette gjøres da av en “caching” løsning som sikrer at alle løsningene og systemene har de samme informasjonsobjektene. Noen løsninger er slik designet at all trafikk fra en bruker går til samme maskin gjennom hele løsningen og gjør derfor en chaching løsning unødvendig.

6) For å sikre at informasjon er tilgjengelig hele tiden er oppetid avgjørende for mange løsninger, det er derfor behov for å sikre at alle løsninger kan erstattes av en annen hvis denne skulle slutte å virke. For å sikre at dette skal være mulig er det nødvendig å lagre samme informasjon i flere databaser. Ofte løses dette ved at løsningene har ett kluster av databaser som samarbeider og synkroniserer data mellom flere instanser. Dette er ofte spesielle løsninger hvor klusteret fremstår som en database.

Spørsmålet i forhold til “Nye IKT-løsninger” er om utskifting, eller oppgradering av en av komponentene nevnt i denne oversikt gjør at det blir en ny IKT-løsning. En oppgradering kan bestå av endringer i maskinvare, endringer i operativsystem som disse maskiner går på.

skjermbilde-2017-01-09-kl-23-35-48

Figur 2

Figur 2: En forklaring av vanlige programmer som er med i en publiseringsløsning.

I følgende illustrasjon er begreper fra Java og OpenSource verden brukt, men andre miljøer som f.eks. Oracle/IBM/HP/Microsoft har tilsvarende løsninger med forskjellige navn.

1) Dette er programvaren som mottar en henvendelse, ser på typen av henvendelse og sender den videre til riktig sted, en veldig populær løsning for dette er Apache. (http://httpd.apache.org/)

2) Dette er et presentasjonslag hvor informasjon settes sammen og riktig koding legges på slik at informasjonen blir forståelig for det verktøy som mottar informasjoen. Vanligvis er dette informasjon som er kodet i HTML, XML eller andre kodeformater. Slike løsninger kan være f.eks. være Tomcat eller Jetty.

3) Dette er logikklaget hvor informasjonsobjekter bygges opp, hvor henvendelsen tolkes og nødvendig informasjon hentes fra f.eks. en database. I dette laget gjøres ofte utregninger og beregninger og sammenligninger av informasjonsobjekter for å sikre at riktig informasjon presenteres. Eksempler på slike løsninger leveres av Jboss, IBM-Websphere, Oracle, EasyWeb og de aller fleste CMS systemer.

4) Dette er datalaget hvor informasjon fysisk lagres. Dette er som oftest en database, populære databaser er PostgreSQL, MySQL, Oracle, Microsoft SQL server mm.

Avklaringer som må taes i forhold til “Nye IKT-Løsninger” er om utbytting av en av disse komponentene eller en oppgradering av de innebærer at det er en ny IKT-Løsning. Det må også gjøres en avgrensning på om en oppgradering av en av komponentene medfører at vi har fått en ny IKT-Løsning, eller om det er tilstrekkelig at en av løsningene er erstattet med en annen. F.eks. at en MySQL database byttes ut med en PostgreSQL database?

skjermbilde-2017-01-09-kl-23-35-55

Figur 3

Figur 3: Programvare rammeverk

Hvis vi legger vekt på (3) under Figur 2, som et eksempel på hvordan et programvare rammeverk virker. Ofte er dette et standard rammeverk som tilbyr et sett av standardfunksjonalitet i tillegg er det et sett med veldefinerte grensesnitt for hvordan egne spesielle løsninger kan utvikles innenfor dette rammeverket. Det å utvikle nettbaserte løsninger innenfor et rammeverk gjør at det i prinsippet kun er nødvendig å utvikle funksjonalitet som er spesielt for nettstedet. Siden mange av komponentene er standardiserte er fullt mulig å bytte ut en enkelt komponent med en annen uten at dette påvirker de komponenter som er egenutviklet. Avklaringer som må gjøres er om oppgradering av rammeverk, eller enkelt komponenter i en slik løsning medfører at det er en ny IKT-løsning. Det samme gjelder også hvis det gjøres oppgraderinger av egenutviklede komponenter, eller hvis det legges til nye komponenter i en allerede eksisterende løsning. Eksempler på slike rammeverk er Jboss, EZ-publish, IBM-Websphere mm.

 

[1] http://www.lovdata.no/all/tl-20080620-042-0.html

[2] http://www.regjeringen.no/nb/dep/bld/dok/regpubl/otprp/2007-2008/otprp-nr-44-2007-2008-.html?id=505404

 

Advertisements

Generations of web and accessibility

PUBLISHED: June 11th, 2009

The web have passed several generations of use and usage during the last 10-15 years. And as the web have evolved so have the expectations to what we use and can do on the web as mainstream. We see that each invention is just adding to what is already there, new services leads to new sites and information domains as the old ones in principal stays the same, or adopts some of the new features. In my view the web is now moving into its third generation, and we see the contours of the fourth generation. With the perspective that the web is a tool for knowledge sharing, and not a glossy brochure for marketing…

First generation:

The web is used for publishing of information, where the majority of users are consumers.

Second generation:

Producing information is much easier, and tools for sharing and producing information is easily available, the users are not only consumers – they are also producers. Producing and sharing information on the web is done with many different tools, all with an on-line awareness, the emerging realisation that not everything have to be done within the web-browser. Examples on tools used for publishing information could be twitter, YouTube, Flickr, MySpace, Wiki’s, blogs etc. All of these provide many different tools for producing content and for viewing the content.

Third generation:

The way we are producing information is changeing, we are collaborating more, and we are using the web as collaborative tool. We collect information from a variety of sources, mash these together, and we collaborate in developing content, not only text but also rich content.

Fourth generation: – this is more guessing –

The fourth generation of web will we see when we start doing things together on the web, not collaborating but sharing experiences, particpating in events. This could be virtual environments where we see new awareness technologies providing similar surroundings and where we could interact and share experiences and knowledge in new ways.

Web generations made simple

  1. Consume
  2. Produce
  3. Collaborate
  4. Participate

And how is this related to accessibility, and what challenges do I see related to accessibility?

First generation web:

This gave us the W3C/WAI/WCAG with a sender perspective on what information to put into the syntax submitted to the browser and tools used for rendering the information, and hoping that the receiver had tools (Assistive technology) to use and facilitate this information.
In this continuum we also find the Individualised adaptability work carried on by IMS-Global as AccLip and AccMd and later ISO/IEC 24751:2008. Where we have changed the perspective into a receivers perspective, with a set of personal preferences for how the information should be presented to meed my accessibility needs.

Second generation web:

As more tools emerged for browsing and producing information, the consumption-only-perspective of WCAG needed to be updated, and we got the WCAG2.0, and to meet the general production of information there is also an increased focus on the W3C/WAI/ATAG2 specification, which ensures that tools used for producing content is accessible, and that the content produced is also accessible. To put it simply ATAG is for input and WCAG is for the output of information.
As the web become more rich on content, and a combination of content, and dynamic update on content on a page – we got the work on W3C/WAI/ARIA

New parts are also being added to the ISO/IEC 24751 series of standards, we are also planning a revision of this standard to better meet a dynamic changing environment.

Third generation web:

When collaborating there is several accessibility challenges and to mention a few:

  • How should a system adopt to collaborators with different preferences and needs, if in a voice chat how to adjust to a user who prefer a text chat? How should the systems adopt, and how should the system inform the other participants about the change of “mode of operandi”.
  • How should more visual collaboration tools be made accessible, such as project management, work flow, story boarding, image processing, vide processing etc.
  • How to ensure a highest possible level of accessibility in a collaborative environment, how to notify usergroups that these specific activities are not accessible, and therefore are you excluded?
  • How describe collaborative processes in such a way that users with different needs could participate as equally as possible?
Fourth generation web:

This could be like providing olfactory information, tactile information embedded in the computer environments.
I’m not sure – I don’t know – your guess is as good as mine…

To summarise:

The current generation of web will always be the sum of all other generations pluss the new things – the same goes for accessibility, to ensure that we have accessibility – we need to provide both syntactical accessibility, as well as adaptations, as well as alternative representations of content, on all the devices we are using to access information. And we need collaborative systems that adapts and change mode to ensure that no one is left behind.

Book on web – need for a new paradigm

PUBLISHED: June 22nd, 2009

The current metaphor is book on web, most national and international projects are about on-line content development as an alternative to the text book. On-line content have several advantages compared to the printed book. But still we have not changed the paradigm and there are few if any discussion on how computers could be used to facilitate learning and knowledge building.

There is a lot of focus on content, reusable content, open educational resources etc. And when looking at “modern” on-line content we find animations, videos we find advanced simulations for better understanding – where you could manipulate different parameters to see what happens.

The book on web have been more advanced more sophisticated, the content delivered provides more possibilities than a printed book. But it is still content delivered to a learner – as if the content was still a book. The computer have to some extent replaces the binding of the content, instead of delivering the content in hard cover, the content is delivered within a “web-browser”. The focus is still on content in any form delivered to the learner.

When will we see a change of this paradigm? When will we deliver a set of tools for learners to use in developing learning? When will we see a shift towards delivering learning processes? When will see that computers in schools are used to facilitate learning and not only as a mechanism for delivery of content and simple collaboration?

Another interesting topic related to this is: how will a change of paradigm (if it happens) influence the use of metadata and description of the information used by learners?

With this in mind I personally think the work we are doing related to ISO/IEC 19788 aka. MLR (Metadata for Learning Resources) is important and that this work is more future proof than the existing IEEE/LOM work.

When learners start to collaborate, and when teachers start to collaborate and share; the organisation of metadata need to mirror this practice. Meatadata must facilitate fragmentation, dynamic updated and a distributed environment.

If this is a change we see happen – how should we pave the way to make this transition as easy as possible?

Position paper to CETIS Future of Interoperability Standards Meeting 2010

PUBLISHED: January 5th, 2010

This is my position paper for the CETIS – Future of Interoperability Standards Meeting 2010

Development of standards

There is a difference in developing a specification for a small community, and to develop a standard/specification with a global community.
In my view there are several challenges that need to be met and addressed.

In this position paper I will only mention the language challenge, and the possibility to participate in vocal discussions and read and write documents.
To ensure a more equal opportunity to participate, the value of a written process should not be underestimated.

However, another observation I have made in participating in internationals standardisation for some time is the understanding of the process, and what is discussed, and the tools that are used to support and foster the discussion.

In my view one of the bigger challenges in standardisation is to achieve a common understanding of what is discussed, and the level of precision in the discussion, and the actual problem addressed. Since people are participating in the process, and these people have different background and different understanding of the domain, and different understanding understanding of the problem that are addressed. Since we are working with ICT standardisation – level of technological understanding is also a challenge.

To achieve a better process – there is a need to harmonise the progression of standardisations development and to better identify the different stages of a standardisation development, and to agree on what the standard should specify, and what need to be left to the application developer. To support this separation of discussions we should also use different tools to describe and express the different stages. Different tools have different strengths in describing different aspects of a standard.

This is also important so that all participants could start at the same level of understanding, or almost at the same level, and to ensure that everyone will have the same opportunity to participate and contribute to the development of the standard or specification.

This is my proposal of stages that the development process could be separated into in the development of a standard, and where different tools could be used. It is also important that the previous stage is visited before one moves to the next, to ensure that the stages are coherent. It is also important to be pragmatic, and realise that as different stages are passed increased understanding of the problem could lead to changes in earlier stages, it is therefore important to update the result of the earlier stages to reflect this increased understanding.

1) Well defined problem

It is important to have a well defined problem, with scope, boundaries, what’s included and what’s excluded. This is a necessity to have as a starting point for the discussion.

To achieve a well defined problem use-cases and practical examples could be used to better understand the problem, and to identify boundary objects.
If the participants in the development of a standard or specification do not achieve common ground in defining the problem it will be harder to achieve agreement at the other stages.

2) Concepts

When the problem is well defined, the concepts involved and related to the problem need to be identified and expressed. When discussing and expressing concepts it is important the focus is on discussing concepts.

3) Properties

When the concepts are defined it is time to start discussing the properties of the concepts. What are the properties, what should be described as a part of the standard, what should be left to application profiles. Depending of the nature of the problem addressed, the types of properties that are needed would differ, and the number of properties that should be a part of the standard.

4) Datatypes

When the properties are defined, then the type and nature of each property need to be specified.

5) Controlled vocabularies

If any of the datatypes are strings or could consist of a set of variables the discussion should be on the need of a controlled vocabulary or the nature of the possible string values.

Tools

Example of tools for the different levels that could be used:

  1. Archimate, text documents
  2. cMap tools
  3. UML
  4. UML / Database Schemas
  5. Tables, text documents

If the discussions are separated on more abstract levels, before we are approaching more detailed levels the process of developing standards and reaching consensus would/could be more effective. It is crucial to spend enough time on the abstract levels before we start discussing how the information is to be represented. In my experience progress will be hard if we at the same time are discussing the problem, the concepts of the problem and the properties of the problem, when the discussion is mixed between the levels it is hard to agree and make progress.

The point is not to start a discussion on the suggested levels, but rather raise a discussion on the importance of separation of discussions going on. And that each level should use the tools best designed for that level. We should also have agreement on the more abstract levels, and the problems we are trying to solve before we start working on the details.
Within a group we need consensus at each level before we move on to the next level.

Since development of a standard usually takes some time, it is important that all stages are well documented so that newcomers to the project could read all documents and be up to speed without the need to restart all discussions and pass through all development stages at once. The documentation about the process, and the agreement reached at each level will also benefit the users of the standards, since they could have a better understanding of choices made in the development of the standard.