Slide 1

Slide 1 text

University ofGalway.ie Introduction to Planning & Building Digital Projects David Kelly Digital Humanities Manager

Slide 2

Slide 2 text

University ofGalway.ie Digital Project Experiences Managing a project Project development process • What stages are involved? • Tools / tech used at each step Overview The focus here is on my workflows – there are other approaches

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Earlier Latin Manuscripts PI – Dr Mark Stansbury (Classics)

Slide 5

Slide 5 text

University ofGalway.ie Project Management

Slide 6

Slide 6 text

University ofGalway.ie Humanities Researcher Technical Developer Evina Steinová (2023): https://homomodernus.net/2023/04/28/10-and-1-2-lessons-in-manuscript-database-building/ Motivations Goals Working Knowledge Collaborative Practices Collaborative Practices Work Culture Communication Style

Slide 7

Slide 7 text

University ofGalway.ie Humanities Researcher Technical Developer Motivations Goals Working Knowledge Collaborative Practices Collaborative Practices Work Culture Communication Style Project Manager Evina Steinová (2023): https://homomodernus.net/2023/04/28/10-and-1-2-lessons-in-manuscript-database-building/

Slide 8

Slide 8 text

University ofGalway.ie Tools that can help

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

https://www.notion.so/

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

Project title Project title Project title Project title Project title Project title Project title Project title

Slide 13

Slide 13 text

GitHub

Slide 14

Slide 14 text

Asana, Trello, Github (Projects section), Microsoft Project / Planner

Slide 15

Slide 15 text

University ofGalway.ie Project Development Process

Slide 16

Slide 16 text

Requirements Design Development Deployment Evaluation Digital Project Development Process?

Slide 17

Slide 17 text

Requirements Design Development Deployment Evaluation Digital Project Development Process? Coffee & a quick chat Do a mock-up for a homepage in Photoshop Import the data provided into a website builder, add logos, change the colours Press Release & Launch Party Watch the rising page views in Google Analytics It needs to be ready in maybe, 2 – 3 weeks?

Slide 18

Slide 18 text

Requirements Data Formatting / Cleaning / Enhancing Design Development Deployment Evaluation A Digital Project Development Process

Slide 19

Slide 19 text

Requirements Data Formatting / Cleaning / Enhancing Design Development Deployment Evaluation • Initial meeting request: March, 2014 • 1 block of 9 – 10 months on data-related work by researchers • Multiple iterations of wireframes & functional prototyping • Multiple iterations of data validation, cleaning, re-formatting • 1 re-write of (a completed) codebase to use a different language and technical architecture • * Approx: >20 in-person project meetings, > 180 code commits, > 600 emails related to project • PI, DH Manager, 6 Research Assistants, approx. 9 external contributors • Public launch: November, 2016 (v1.0) • Currently v1.4.5

Slide 20

Slide 20 text

University ofGalway.ie Requirements

Slide 21

Slide 21 text

“I’ve done a spreadsheet with information from CLA (Codices Latini Antiquiores), the literary manuscripts written in Latin before the ninth century. I’d like to make this available for consultation online and wondered if you could help out. I’ve attached the spreadsheet just to let you know the kind of thing I’m talking about […] if you’re interested, perhaps we could have a chat.”

Slide 22

Slide 22 text

Requirements • What are we trying to do? • Why do we want to do that, and not something else? • Who’s going to use it, and how? • In-person meeting(s) • Document everything • Assign deliverables / actions • Personas & User Stories • Job Stories • Talk to potential users

Slide 23

Slide 23 text

Requirements • Break the system into individual requirements • Does each part add value? How? • Which can be removed / held for later versions? • Rank them (MoSCoW) – which requirements are: • Must Have • Should Have • Could Have • Won’t Have (this time) • MVP (Minimal Viable Product) approach • Specification documents • “Product Spec” • “App should have a listing of manuscripts” • ”Functional Spec” • ”App will save a manuscript using fields for: Title (120 characters), Latitude (decimal; 6 places), Category (from list)

Slide 24

Slide 24 text

Requirements • What are we trying to do? • Why do we want to do that? • Who’s going to use it, and how? • Break it into individual requirements • Does each part add value? How? • Which can be removed / held for later versions? • Rank them (e.g MoSCoW) – which requirements are: • Must have • Should have • Could have • Won’t have (this time) • MVP approach • Identify deadlines & any other known constraints • Is there a launch date /event already planned? • Technical / financial / external stakeholder constraints?

Slide 25

Slide 25 text

University ofGalway.ie Data

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

Lessons Data cleaning takes a lot of time, particularly if there isn’t any up-front planning Figure out your data management plan before any data collection takes place Define the categories required early Working with different character encodings is difficult. Understanding the data you’re working with, and its structure, is important. Talk to someone comfortable with data modelling before you start collecting your data

Slide 28

Slide 28 text

University ofGalway.ie Design User Experience (UX) Design / User Interface (UI) Design / Visual Design

Slide 29

Slide 29 text

Stages Paper Low fidelity wireframes Functional prototyping Visual design • HTML / CSS / JavaScript • Figma / Balsamiq • Figma / Sketch / Affinity Designer / Adobe Illustrator 1. use real data 2. involve users 3. iterate You should:

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

…test with users

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

…test with users

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

…test with users

Slide 39

Slide 39 text

Extra Small Screen (Phone) Small Screen (Tablet) Large Screen (PC)

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

University ofGalway.ie Development

Slide 43

Slide 43 text

Deciding Technical Architecture Driven by requirements …and skills …and resources …and time …and performance …and infrastructure …and security …and… Web Server Web Browser Externally Hosted Libraries Data API DB

Slide 44

Slide 44 text

https://github.com/kamranahmedse/developer-roadmap

Slide 45

Slide 45 text

https://github.com/kamranahmedse/developer-roadmap UX Designer Roadmap Frontend Developer Roadmap Backend Developer Roadmap

Slide 46

Slide 46 text

University ofGalway.ie Server Side / Back-end • Data Storage • Database: MySQL • File Storage: Server & Amazon Web Services S3 • Web Application: PHP (Laravel Framework) • Includes RESTful API • Testing: PHPUnit • Package Manager: Composer • Web Server Infrastructure • Error Reporting: Sentry (https://sentry.io ) • Email: MailGun (https://mailgun.com ) • Analytics: Google Analytics External Services Front-end • HTML • CSS • CSS Preprocessor: LESS • Framework: Bootstrap (https://getbootstrap.com) • JavaScript • Underscore.js: Utilities for data manipulation • Leaflet.js: Mapping • Handlebars.js: Templating • Bootstrap.js: UI components • Highcharts.js: Charts • Sortable.js: Table sorting • Build & Dependency Management • Grunt.js: Task runner / build tool • NPM / Bower.io: Package manager ELMSS: Technologies Used Management • Code versioning & Issue tracking: BitBucket (Git) • Task Tracking: Asana

Slide 47

Slide 47 text

Storing the Data • Data Modelling • What do we want to store • What data types do we have • How are the Entities related to each other? • In this case, the database schema is created via the web application

Slide 48

Slide 48 text

How else might the data be used?

Slide 49

Slide 49 text

Ajith Sreekumar – MSc Data Analytics Dissertation (2018) Supervisors: Matthias Nickles (IT), David Kelly (Moore Institute)

Slide 50

Slide 50 text

University ofGalway.ie Evaluation

Slide 51

Slide 51 text

Evaluation perspectives • Does this piece of code function as expected? • Does this piece of the system work as expected? • Has requirement number XX been met? • Does the UI work as expected across all required browsers, devices and operating systems? • Can our users accomplish specific tasks with this feature? • How can this feature be improved? Unit testing Functional testing / Integration testing Integration testing / Acceptance testing Acceptance testing / Usability Testing

Slide 52

Slide 52 text

Pre-launch / New features On-going • Usage • Behaviour • Google Analytics • Mixpanel, Kiss Metrics • Pilot group • User testing

Slide 53

Slide 53 text

Where do users come from? • How do you keep them coming back? Who is going to maintain the… • Research content • Software • Hardware Long term preservation? So, you’ve built it…

Slide 54

Slide 54 text

University ofGalway.ie Thank you mooreinstitute.ie/digital-lab [email protected]