Vývoj koncového uživatele - End-user development
Vývoj koncového uživatele (EUD) nebo programování koncových uživatelů (EUP) odkazuje na činnosti a nástroje, které umožňují koneční uživatelé - lidé, kteří nejsou profesionálními vývojáři softwaru - programové počítače. Lidé, kteří nejsou profesionálními vývojáři, mohou k vytváření nebo úpravám používat nástroje EUD softwarové artefakty (popisy automatizovaného chování) a složité datové objekty bez významné znalosti a programovací jazyk. V roce 2005 to bylo odhadnuto (pomocí statistik z USA Bureau of Labor Statistics ), že do roku 2012 bude ve Spojených státech více než 55 milionů vývojářů koncových uživatelů, ve srovnání s méně než 3 miliony profesionálních programátorů.[1] Existují různé přístupy EUD a je aktivní téma výzkumu v oboru počítačová věda a interakce člověk-počítač. Mezi příklady patří programování v přirozeném jazyce,[2][3] tabulky,[4] skriptovací jazyky (zejména v kancelářské sadě nebo umělecké aplikaci), vizuální programování, programování spouštěcích akcí a programování příkladem.
Nejpopulárnějším nástrojem EUD je tabulkový kalkulátor.[4][5] Tabulky díky své neomezené povaze umožňují relativně nenáročným uživatelům počítačů psát programy, které představují složité datové modely, a zároveň je chránit před nutností učit se programovací jazyky nižší úrovně.[6] Vzhledem k jejich běžnému použití v podnikání patří dovednosti v tabulkovém procesoru mezi nejpřínosnější dovednosti, které má absolvovaný zaměstnanec, a jsou proto nejčastěji vyhledávanými[7] Jen ve Spojených státech amerických existuje odhadem 13 milionů vývojářů koncových uživatelů programujících pomocí tabulek[8]
The programování příkladem (PbE) přístup snižuje potřebu, aby se uživatel naučil abstrakce klasického programovacího jazyka. Uživatel místo toho zavádí několik příkladů požadovaných výsledků nebo operací, které by se s daty měly provádět, a systém PbE odvozuje některé abstrakce odpovídající programu, který produkuje tento výstup, který může uživatel vylepšit. Do automaticky vytvořeného programu lze poté vložit nová data a uživatel může opravit chyby, které program udělal, aby vylepšil jeho definici. Vývojové platformy s nízkým kódem jsou také přístupem k EUD.
Jeden vývoj v této oblasti zvažoval použití mobilních zařízení k podpoře vývojových aktivit koncových uživatelů. V tomto případě nelze předchozí přístupy pro desktopové aplikace jednoduše přepracovat, vzhledem ke specifickým vlastnostem mobilních zařízení. Prostředí desktopových EUD postrádají výhody umožňující koncovým uživatelům vytvářet aplikace příležitostně na cestách.[9]
V poslední době vzrostl zájem o to, jak využívat EUD k podpoře vývoje aplikací internetu věcí. V této oblasti se programování spouštěcích akcí jeví jako slibný přístup.[10]
Poznatky získané z řešení EUD mohou významně ovlivnit životní cykly softwaru pro komerční softwarové produkty interně intranet /extranet vývoj a podniková aplikace nasazení.
Platformy pro vývoj nízkého kódu specifické pro aplikaci
Zhruba 40 prodejců nyní nabízí řešení zaměřená na koncové uživatele, jejichž cílem je snížit programovací úsilí. Tato řešení nevyžadují tradiční programování a mohou být založena na relativně úzké funkčnosti, např. správa smluv, správa vztahů se zákazníky, sledování problémů a chyb. Webové interakce, které se často označují jako platformy pro vývoj nízkého kódu, vedou uživatele k vývoji aplikace za pouhých 40–80 hodin.[11][kruhový odkaz ]
Definice
Lieberman a kol. navrhnout následující definici:[12]
Vývoj koncového uživatele lze definovat jako soubor metod, technik a nástrojů, které umožňují uživatelům softwarových systémů, kteří jednají jako neprofesionální vývojáři softwaru, v určitém okamžiku vytvořit, upravit nebo rozšířit softwarový artefakt.
Ko a kol. navrhnout následující definici:[13]
Programování koncovým uživatelem je programování k dosažení výsledku programu primárně pro osobní, nikoli [veřejné] použití.
Artefakty definované koncovými uživateli mohou být objekty popisující určité automatické chování nebo řídicí sekvenci, jako jsou databázové požadavky nebo pravidla gramatiky,[14] který lze popsat pomocí programovacích paradigmat jako např programování pomocí demonstrace, programování s příklady, vizuální programování nebo makro generace.[15] Mohou to být také parametry, které volí mezi alternativním předdefinovaným chováním aplikace.[16] Jiné artefakty vývoje koncových uživatelů mohou také odkazovat na vytváření obsahu generovaného uživateli, jako jsou anotace, které mohou nebo nemusí být výpočetně interpretovatelné (tj. Mohou být zpracovány přidruženými automatizovanými funkcemi).[17]
Příklady
Mezi příklady vývoje koncových uživatelů patří vytváření a úpravy:
- Animace skripty používané grafiky k popisu postav, prostředí a způsobu, jakým se postavy pohybují, aby vytvořily zamýšlenou animaci
- Konfigurační soubory které stírají hranici mezi programy a daty (např. e-mailové filtry jsou seřazené seznamy kritérií a akcí, které je třeba provést)
- Příkladné programování nástroje[18]
- Úpravy hry představit vlastní postavy, prostředí atd. - mnoho nedávných her je distribuováno s ohledem na úpravy
- Interakční skripty používané v CRM call centra
- Nástroje pro vývoj mobilních aplikací, jako je App Inventor
- Procesní modely používané v aplikace pracovního toku
- Prototypy a programy specifické pro doménu napsané obchodníky, inženýry a vědci za účelem předvedení nebo testování konkrétních teorií
- Chování robota[19]
- Vědecké modely používané v počítačová simulace
- Přidány skripty a makra pro rozšíření nebo automatizaci kancelářské sady a grafické aplikace.
- Simulace vytvořené pomocí software pro definici aplikací
- Simultánní úpravy mnoha souvisejících položek buď prostřednictvím a dávkový proces specifikovaný koncovým uživatelem nebo přímá manipulace, jako jsou k dispozici v Textový editor Lapis a více úprav.
- Tabulka modely, např. používané pro rozpočtování, analýzu rizik, interaktivní strojové učení,[20] nebo design elektronických obvodů[21]
- Vizuální programování ve formě vizuálních jazyků, jako je Listy agentů, LabVIEW, Scratch (programovací jazyk) nebo LEGO Mindstorms.
- webové stránky - prostý HTML nebo HTML a skriptování
- Wikis - proces vývoje koncových uživatelů ve spolupráci[Citace je zapotřebí ]
- Webové mashupy ve formě vizuálních jazyků.[22]
- 3D modely vytvořeno pomocí nástrojů a aplikací orientovaných na koncového uživatele, jako je Skica
Modelování nákladů a přínosů
Podle Sutcliffe,[23] EUD v zásadě zadává vývojové úsilí koncovému uživateli. Protože je vždy snaha naučit se nástroj EUD, motivace uživatelů závisí na jejich důvěře, že jim to posílí práci, ušetří čas na práci nebo zvýší produktivitu. V tomto modelu jsou výhody pro uživatele zpočátku založeny na marketingu, demonstracích a ústním podání. Jakmile je technologie uvedena do provozu, stává se klíčovým motivátorem zkušenost se skutečnými výhodami.
Tato studie definuje náklady jako součet:
- Technické náklady: cena technologie a snaha o její instalaci
- Náklady na učení: čas potřebný k pochopení technologie
- Náklady na vývoj: snaha vyvíjet aplikace pomocí této technologie
- Náklady na testování a ladění: čas potřebný k ověření systému
První a druhý náklad vznikají jednou během akvizice, zatímco třetí a čtvrtý vznikají pokaždé, když je vyvinuta aplikace. Výhody (které mohou být vnímané nebo skutečné) jsou považovány za:
- Funkčnost poskytovaná technologií
- Flexibilita reagovat na nové požadavky
- Použitelnost vytvořených aplikací
- Celková kvalita vytvořených aplikací
Spolupráce při vývoji koncových uživatelů
Mnoho aktivit pro vývoj koncových uživatelů má společnou povahu, včetně spolupráce mezi profesionálními vývojáři a vývojáři koncových uživatelů a spolupráce mezi vývojáři koncových uživatelů.
Vzájemný rozvoj[24] je technika, kde profesionální vývojáři a vývojáři koncových uživatelů spolupracují při vytváření softwarových řešení. Ve vzájemném vývoji profesionální vývojáři často „nedokončují“ systém a poskytují nástroje umožňující „vlastníkům problémů“[25]„vytvořit vhodné řešení v době použití pro jejich potřeby, cíle a situační kontexty.[26] Pak může komunikace mezi profesionálními vývojáři a vývojáři koncových uživatelů často stimulovat formální ad hoc úpravy koncových uživatelů do softwarových artefaktů a transformovat řešení vyvinutá koncovými uživateli na funkce komerčních produktů s dopady mimo místní řešení.
V této spolupráci různé přístupy, jako je Softwarová formace Workshop[27] se navrhuje překlenout komunikační propast mezi profesionálními vývojáři a vývojáři koncových uživatelů. Tyto přístupy často poskytují průsvitnost podle modelu sociální translucence,[28] umožnění všem ve spolupráci, aby si byli vědomi změn provedených ostatními a aby byli odpovědní za své činy z důvodu povědomí.
Kromě programování platforem pro spolupráci, jako je GitHub, které většinou využívají zkušení vývojáři kvůli jejich strmé křivce učení, probíhá spolupráce mezi vývojáři koncových uživatelů často na platformách wiki, kde jsou sdílené vytvořené softwarové artefakty. Vývoj koncových uživatelů se také často používá k vytváření automatizačních skriptů nebo interaktivních výukových programů pro sdílení znalostí „jak na to“. Mezi příklady takové aplikace patří CoScripter[29] a HILC.[30] V takových aplikacích může uživatel vytvářet skripty pro úkoly pomocí pseudo-přirozeného jazyka nebo pomocí programování demonstrací. Uživatelé se mohou rozhodnout nahrát skript do úložiště skriptů ve wiki stylu. Na této wiki mohou uživatelé procházet dostupné skripty a rozšiřovat stávající skripty tak, aby podporovaly další parametry, zpracovávaly další podmínky nebo pracovaly s dalšími objekty.
Rovněž byly vytvořeny online a offline komunity vývojářů koncových uživatelů, kde mohou vývojáři koncových uživatelů společně řešit problémy EUD se společným zájmem nebo pro vzájemný prospěch. V takových komunitách šíří místní odborníci odborné znalosti a rady. Členové komunity také navzájem poskytují sociální podporu, aby podpořili konstrukci softwaru založeného na spolupráci.[31]
Kritika
Komentátoři se obávali, že koncoví uživatelé nerozumí tomu, jak testovat a zabezpečit své aplikace. Warren Harrison, profesor výpočetní techniky na Portland State University, napsal:[32]
Je prostě nepochopitelné, že bychom mohli očekávat bezpečnost ... od drtivé většiny softwarových aplikací tam venku, když jsou psány s malou, pokud vůbec nějakou, znalostí obecně přijímaných dobrých postupů, jako je specifikování před kódováním, systematické testování atd. ... Kolik X knih pro Complete Idiots (kde „X“ je váš oblíbený programovací jazyk) je venku? Tento trend mě zpočátku pobavil, ale v poslední době mě znepokojilo přemýšlení o tom, kde tito dabléři uplatňují své nově nalezené znalosti.
Toto hledisko předpokládá, že všichni koncoví uživatelé jsou stejně naivní, pokud jde o porozumění softwaru, ačkoli Pliskin a Shoval tvrdí, že tomu tak není, že sofistikovaní koncoví uživatelé jsou schopni vývoje koncových uživatelů.[33] Ve srovnání s odbornými programátory však programátoři koncových uživatelů mají zřídka čas nebo zájem o systematické a disciplinované činnosti softwarového inženýrství,[34] což činí zajištění kvality softwarového artefaktu produkovaného vývojem koncových uživatelů obzvláště náročným.
V reakci na to byla studie softwarové inženýrství pro koncové uživatele zjevil se. Zabývá se problémy, které přesahují vývoj koncových uživatelů, čímž jsou koncoví uživatelé motivováni k tomu, aby při vývoji svých řešení uvažovali o problémech, jako je opětovná použitelnost, bezpečnost a ověřitelnost.[35]
Alternativním scénářem je, že zaměstnávají koncoví uživatelé nebo jejich konzultanti deklarativní nástroje, které podporují přísná obchodní a bezpečnostní pravidla na úkor výkonu a škálovatelnosti; nástroje vytvořené pomocí EUD budou mít obvykle horší účinnost než nástroje vytvořené v profesionálních programovacích prostředích. Ačkoli oddělení funkčnosti od efektivity je platné oddělení obav, může to vést k situaci, kdy koncoví uživatelé vyplní a zdokumentují analýza požadavků a prototypování nástroje bez zapojení obchodní analytici. Uživatelé tedy definují požadované funkce, než tito odborníci budou mít možnost zvážit omezení konkrétního aplikace nebo softwarový rámec. Podpora vrcholového vedení pro takové iniciativy koncových uživatelů závisí na jejich přístupu k existujícím nebo potenciálním zámek dodavatele.
Viz také
- Automatické programování
- Výpočet koncového uživatele
- Vývojové platformy s nízkým kódem
- Programování v přirozeném jazyce
- Situační aplikace
- Softwarové inženýrství
Reference
- ^ Scaffidi, C .; Shaw, M .; Myers, B. (01.09.2005). Odhad počtu koncových uživatelů a programátorů koncových uživatelů. 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL / HCC'05). 207–214. doi:10.1109 / VLHCC.2005.34. ISBN 978-0-7695-2443-6.
- ^ Malý, Greg a Robert C. Miller. "Překlad příkazů klíčových slov do spustitelného kódu "Sborník 19. ročníku sympozia ACM o softwaru a technologii uživatelského rozhraní. ACM, 2006."
- ^ Bruckman, Amy a Elizabeth Edwards. "Měli bychom využívat znalosti přirozeného jazyka? Analýza uživatelských chyb v programovacím jazyce v přirozeném jazyce "Sborník z konference SIGCHI o lidských faktorech ve výpočetních systémech. ACM, 1999.APA
- ^ A b Burnett, Margaret M.; Scaffidi, Christopher. Vývoj koncového uživatele. Interaction-Design.org. v „Encyclopedia of Human-Computer Interaction“.
- ^ Hornsby, Peter (03.08.2009). „Posílení oprávnění uživatelů k vytváření vlastního softwaru“. UXmattery. Citováno 2014-01-31.
- ^ Abraham, R .; Burnett, M; Erwig, M (2009). Msgstr "Programování tabulky". Wiley Encyclopedia of Computer Science and Engineering. s. 1–10.
- ^ Kruck, S. & Sheetz, S., 2001. Teorie přesnosti tabulky. Journal of Information Systems Education.
- ^ Scaffidi, C., Shaw, M. & Myers, B., 2005. Odhad počtu koncových uživatelů a programátorů koncových uživatelů. 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL / HCC’05), str. 207–214.
- ^ Paternò F., 2013, Softwarové inženýrství ISRN, Vývoj koncového uživatele: Průzkum rozvíjejícího se pole pro posílení postavení lidí
- ^ Ghiani, G., Manca, M., Paternò, F., Santoro, C .: Personalizace kontextově závislých aplikací pomocí pravidel spouštění. ACM Transactions on Computer-Human Interaction, Vol.24, Issue 2, Article N.14, April 2017.
- ^ Vývojové platformy s nízkým kódem
- ^ Lieberman, H., Paternò, F., Klann, M. a Wulf, V. (2006). Vývoj koncových uživatelů: vznikající paradigma. In: End-User Development, Lieberman, H., Paternò, F., and Wulf, V. (eds.), Springer Netherlands, 2006, ser. Interakce mezi člověkem a počítačem, sv. 9, kapitola 1, s. 1-7, doi:10.1007 / 1-4020-5386-X_1
- ^ Ko, Andrew J .; Abraham, Robin; Beckwith, Laura; Blackwell, Alan; Burnett, Margaret; Erwig, Martin; Scaffidi, Chris; Lawrance, Joseph; Lieberman, Henry (01.04.2011). „Stav techniky v softwarovém inženýrství pro koncové uživatele“. ACM Comput. Surv. 43 (3): 21:1–21:44. CiteSeerX 10.1.1.159.8597. doi:10.1145/1922649.1922658. ISSN 0360-0300.
- ^ H. Lieberman, B. A. Nardi a D. Wright. Grammex: Definování gramatik podle příkladu. Na konferenci ACM o lidských faktorech ve výpočetních systémech (shrnutí, demonstrace) (CHI ’98), Los Angeles, Kalifornie, USA, strany 11–12. ACMPress, duben 1998.
- ^ Maria Francesca Costabile, Daniela Fogli, Piero Mussio, Antonio Piccinno. Vývoj pro koncové uživatele: přístup k workshopu tvarování softwaru. In Lieberman, H., Paternò, F., Wulf, V. (Eds) (2004) Development End User - Empowering People to Flexible Employ Advanced Information and Communication Technology, © 2004 Kluwer Academic Publishers, Dordrecht, Nizozemsko.
- ^ Costabile, M.F., Fogli, D., Letondal, C., Mussio, P., Piccinno, A., Uživatelé s odbornou doménou a jejich potřeby vývoje softwaru “, Konference UAHCI, Kréta, 22. – 27. Června 2003, 232-236.
- ^ Gerhard Fischer Vývoj a metadesign koncových uživatelů: Základy kultur účasti. Poznámky k přednášce o vývoji koncového uživatele v informatice, 2009, ročník 5435/2009, 3–14,
- ^ Scaffidi, Christopher; Brandt, Joel; Burnett, Margaret; Dove, Andrew; Myers, Brad (2012). SIG: programování pro koncové uživatele. CHI '12 Extended Abstracts on Human Factors in Computing Systems. Chi Ea '12. str. 1193–1996. doi:10.1145/2212776.2212421. ISBN 9781450310161.
- ^ Leonardi, Nicola; Manca, Marco; Paternò, Fabio; Santoro, Carmen (2019). Programování spouštěcí akce pro přizpůsobení chování humanoidních robotů. Konference CHM '19 ACM o lidských faktorech ve výpočetních systémech. doi:10.1145/3290605.3300675. ISBN 978-145035970-2.
- ^ Sarkar, Advait; Blackwell, Alan; Jamnik, Mateja; Spott, Martin (červenec 2014). Teach and Try: Jednoduchá technika interakce pro modelování průzkumných dat koncovými uživateli. 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL / HCC 2014). str. 53–56. CiteSeerX 10.1.1.695.2025. doi:10.1109 / VLHCC.2014.6883022. ISBN 978-1-4799-4035-6.
- ^ Haynes, John L. (podzim 1985). „Návrh obvodu s Lotus 1-2-3“. BYTE. 143–156. Citováno 19. března 2016.
- ^ Roy Chowdhury, Soudip; Rodriguez, Carlos; Daniel, Florian; Casati, Fabio (2010). Výpočet s vědomím moudrosti: na interaktivním doporučení znalostí o kompozici. Icsoc'10. str.144–155. ISBN 9783642193934.CS1 maint: ref = harv (odkaz)
- ^ Sutcliffe, Alistair (Červenec 2005). „Hodnocení nákladů a přínosů rozvoje koncových uživatelů“. Poznámky k softwarovému inženýrství ACM SIGSOFT. 30 (4): 1–4. doi:10.1145/1082983.1083241.
- ^ Andersen, Renate; Mørch, Anders I. (02.03.2009). Vzájemný vývoj: Případová studie ve vývoji softwarového produktu iniciovaného zákazníkem. Vývoj koncového uživatele. Přednášky z informatiky. 5435. 31–49. CiteSeerX 10.1.1.598.9066. doi:10.1007/978-3-642-00427-8_3. ISBN 978-3-642-00425-4.
- ^ Fischer, Gerhard (01.01.1994). „Zodpovědnost vlastníků problémů za doménová designová prostředí“. Požadavky zaměřené na uživatele pro prostředí softwarového inženýrství. Springer, Berlín, Heidelberg. 297–306. CiteSeerX 10.1.1.310.8814. doi:10.1007/978-3-662-03035-6_23. ISBN 978-3-642-08189-7.
- ^ Fischer, Gerhard; Giaccardi, Elisa (01.01.2006). Lieberman, Henry; Paternò, Fabio; Wulf, Volker (eds.). Vývoj koncového uživatele. Série interakcí člověk-počítač. Springer Nizozemsko. str.427–457. doi:10.1007 / 1-4020-5386-x_19. ISBN 9781402042201.
- ^ Lieberman, Henry; Paternò, Fabio; Klann, Markus; Wulf, Volker (01.01.2006). Lieberman, Henry; Paternò, Fabio; Wulf, Volker (eds.). Vývoj koncového uživatele. Série interakcí člověk-počítač. Springer Nizozemsko. str.1–8. doi:10.1007 / 1-4020-5386-x_1. ISBN 9781402042201.
- ^ Erickson, Thomas; Kellogg, Wendy A. (2000-03-01). „Sociální translucence: přístup k navrhování systémů podporujících sociální procesy“. ACM Trans. Comput.-Hum. Interakce. 7 (1): 59–83. doi:10.1145/344949.345004. ISSN 1073-0516.
- ^ Leshed, Gilly; Haber, Eben M .; Matthews, Tara; Lau, Tessa (01.01.2008). CoScripter: Automatizace a sdílení znalostí v podniku. Sborník konference SIGCHI o lidských faktorech ve výpočetních systémech. CHI '08. New York, NY, USA: ACM. 1719–1728. doi:10.1145/1357054.1357323. ISBN 9781605580111.
- ^ Intharah, Thanapong; Turmukhambetov, Daniyar; Brostow, Gabriel J. (01.01.2017). Pomoc, vypadá to matoucí: Automatizace úloh grafického uživatelského rozhraní prostřednictvím ukázkových a následných otázek. Sborník z 22. mezinárodní konference o inteligentních uživatelských rozhraních. IUI '17. New York, NY, USA: ACM. 233–243. doi:10.1145/3025171.3025176. ISBN 9781450343480.
- ^ Fischer, G .; Giaccardi, E .; Ye, Y .; Sutcliffe, A. G .; Mehandjiev, N. (01.09.2004). „Meta-design: Manifest pro rozvoj koncových uživatelů“. Commun. ACM. 47 (9): 33–37. doi:10.1145/1015864.1015884. ISSN 0001-0782.
- ^ Harrison, Warren (červenec – srpen 2004). „Nebezpečí programování koncových uživatelů“. Software IEEE. 21 (4): 5. doi:10.1109 / MS.2004.13.
- ^ Pliskin, Nava; Shoval, Peretz (1987). „Prototypování koncových uživatelů: sofistikovaní uživatelé podporující vývoj systému“. Databáze ACM SIGMIS. 18 (4): 7–17. doi:10.1145/1017816.1017817.
- ^ Brandt, Joel; Guo, Philip J .; Lewenstein, Joel; Klemmer, Scott R. (01.01.2008). Oportunistické programování: Jak v praxi dochází k rychlým nápadům a tvorbě prototypů. Sborník ze 4. mezinárodního semináře o softwarovém inženýrství pro koncové uživatele. WEUSE '08. New York, NY, USA: ACM. s. 1–5. doi:10.1145/1370847.1370848. ISBN 9781605580340.
- ^ „Softwarové inženýrství pro koncové uživatele: empirická zjištění“. Koncové uživatelé vytvářející efektivní softwarové konsorcium. Citováno 2008-05-28.
Další čtení
- Cypher, Allen (1993). Sledujte, co dělám: Programování pomocí demonstrace. Přispěvatel Daniel C. Halbert. Vydavatel: MIT Press. ISBN 978-0-262-03213-1.
- Lieberman, Henry (2001). Vaše přání je mé velení: Programování příkladem. Přispěvatel Ben Shneiderman. Vydavatel: Morgan Kaufmann. ISBN 978-1-55860-688-3.
- F. Paternò (2013) Vývoj koncového uživatele: Průzkum rozvíjejícího se pole pro posílení postavení lidí, ISRN Software Engineering, sv. 2013, ID článku 532659, 11 stran, 2013. doi:10.1155/2013/532659, 2013
- B. Guo, D. Zhang, M. Imai. Povolení správy zaměřené na uživatele pro všudypřítomné výpočty: přístup Meta-Design, počítačové sítě, Elsevier, sv. 54, č. 16, 2010.
- Burnett, Margaret M. a Scaffidi, Christopher (2011): Vývoj koncového uživatele. In: Soegaard, Mads and Dam, Rikke Friis (eds.). „Encyclopedia of Human-Computer Interaction“.
- Kierkegaard, Patrick (2011) Kierkegaard, Patrick (2011). Posílení rozvoje koncového uživatele: Právní ochrana a shoda s předpisy. Vývoj koncového uživatele. Přednášky z informatiky. Přednášky z informatiky. 6654/2011. 203–217. doi:10.1007/978-3-642-21530-8_16. ISBN 978-3-642-21529-2.