12
INF5120 – Spring 2016 Oblig 1 – “Citizense - Business Architecture and Requirements Model, and individual first app” Group project on Citizense Business architecture, Service Design, and Requirements Modelling and individual work on WebRatio IFML App development for iPhone/Android Groups of 1-2-3-4 persons - Group and individual report Submission date: March 14th, 2016 Group presentations (on parts of the Oblig): February 22 nd : Business Model Canvas – Strategyzer and User stories (2 groups) February 29 th : Use case w/template – and Smaply and App implementation (3 groups) March 7th: Oblig 1 Project presentations with Balsamiq Mockups etc. and Apps (3 groups) Monday February 29th (app. 15 minutes per group): Group 1: Strategyzer Business Model Canvas (with Value Proposition Canvas) Group 2: User stories with use case model (Cameo EA/MagicDraw) and one use case w/use case template Group 3: Webratio App implementation (individual - any issues to resolve ?) - and use of Someone.io Monday March 7th (app. 15 minutes per group): Group 4: Smaply w/Personas, Stakeholder Map and Journey Maps Group 5: Mockup designs with Balsamiq Group 6: Webratio App implementation (individual - any further issues(depending on issues resolved on February 29 th ) - and reflections on how to use WebRatio for the implementation of the functionality specified in Oblig 1 through the use of WebRatio) In order for all to benefit from the group presentations we will extend the deadline for the final delivery of Oblig 1 for all groups until March 14th, 2016. Description: Citizense is a new business idea for the virtual SenseIt SME company conceptualised for the classes at the University of Oslo (UiO) and the Florida Atlantic University (FAU) that in 2015 developed an app and web solution that takes advantages of small and inexpensive UV sensors. As an extension of this it has been discussed that this could be developed further towards a framework which can address different kinds of citizens observations (human as a sensor) as well as physical sensor observations. The SenseIt group at FAU and UiIO/SINTEF was approached by the team at www.Biocaching.com which is about to develop their Biocaching idea further in 2016 – to see if the Citizense approach could be helpful for the further specification and realisation of the Biocaching idea. Biocaching is currently a prototype of a specification that has been presented in various Hackaton competitions, and won awards for being a good app idea.

INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

INF5120 – Spring 2016

Oblig 1 – “Citizense - Business Architecture and Requirements Model, and individual first app”

Group project on Citizense Business architecture, Service Design, and Requirements Modelling and individual work on WebRatio IFML App development for iPhone/Android

Groups of 1-2-3-4 persons - Group and individual report Submission date: March 14th, 2016

Group presentations (on parts of the Oblig):

• February 22nd: Business Model Canvas – Strategyzer and User stories (2 groups) • February 29th: Use case w/template – and Smaply and App implementation (3 groups) • March 7th: Oblig 1 Project presentations with Balsamiq Mockups etc. and Apps (3 groups) • • MondayFebruary29th(app.15minutespergroup):• Group1:StrategyzerBusinessModelCanvas(withValueProposition• Canvas)• Group2:Userstorieswithusecasemodel(CameoEA/MagicDraw)andone• usecasew/usecasetemplate• Group3:WebratioAppimplementation(individual-anyissuesto• resolve?)-anduseofSomeone.io• • MondayMarch7th(app.15minutespergroup):• Group4:Smaplyw/Personas,StakeholderMapandJourneyMaps• Group5:MockupdesignswithBalsamiq• Group6:WebratioAppimplementation(individual-anyfurtherissues(dependingonissues

resolvedonFebruary29th)-andreflectionsonhowtouseWebRatiofortheimplementationofthefunctionalityspecifiedinOblig1throughtheuseofWebRatio)

• • Inorderforalltobenefitfromthegrouppresentationswewillextend• thedeadlineforthefinaldeliveryofOblig1forallgroupsuntil• March14th,2016.

Description:

Citizense is a new business idea for the virtual SenseIt SME company conceptualised for the classes at the University of Oslo (UiO) and the Florida Atlantic University (FAU) that in 2015 developed an app and web solution that takes advantages of small and inexpensive UV sensors. As an extension of this it has been discussed that this could be developed further towards a framework which can address different kinds of citizens observations (human as a sensor) as well as physical sensor observations.

The SenseIt group at FAU and UiIO/SINTEF was approached by the team at www.Biocaching.com which is about to develop their Biocaching idea further in 2016 – to see if the Citizense approach could be helpful for the further specification and realisation of the Biocaching idea. Biocaching is currently a prototype of a specification that has been presented in various Hackaton competitions, and won awards for being a good app idea.

Page 2: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

The starting point and focus for Citizense in 2016 is thus the idea of Biocaching from the startup company Biocaching.

http://www.biocaching.com/

Your SenseIt company is to offer a solution, as generic as possible, for meeting the needs for Citizens Observations in general, and for Biocaching in particular.

The aim is to specify the requirements for Citizense for the development of a generic solution/framework that can easily be adapted for different kinds of observations, involving many different data types for the reporting – geographic location, pictures/images, video, audio, numeric values from sensor measurements, text for comments, etc. .

See the reference here to different kinds of citizens science solutions: https://medium.com/@secondmuse/how-citizen-scientists-are-revolutionizing-data-collection-dcd4335a0b6c#.phe47popx

Description for Oblig 1:

Oblig 1 is about creating a business model with corresponding service designs and requirements model. It includes also an individual exercise for the creation of an app using the WebRatio Mobile platform. This project will be continued incrementally in Oblig 2 and 3 with deliveries in April and May.

The groups are advised to create the various models based on the flow given in table 1 which also describes the model requirements for “Citizense” as well as the frameworks and tools that should be used.

Provide your delivery as a PDF document with model pictures/diagrams included.

Further information about tool access, with user names/password and other protected material will be provided through the Ifi INF5120 webpage that the students will have access to through the public part and the protected parts accessible by the students Ifi account/login.

Table 1 – Flow and model requirements for “Citizense”

No Model Requirement

Model Framework / Methodology Model Tool / Template

0 Agile planning and enactment

www.Someone.io

(Lecture 5)

Someone with Essence/Scrum elements. Team planning and execution according to an Agile Scrum-based process, using the tool at

www.someone.io (alternatively the tool at http://www.scrumwise.com/ )

Page 3: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

Describe your teams Scrum Sprint planning and execution.

1 Business Model Canvas

Osterwalder canvas

Lecture. 3

Strategyzer tool

Business Model Canvas – Create a business model with content for the 9 different components of the business model canvas, including the value proposition canvas with customer's gains and pains and value proposition gain providers and pain relievers. Consider that you might address more than one customer segment.

www.strategyzer.com

Use the login info that you get for Strategyzer. Look at the tutorial material in the Academy menu.

(http://businessmodelgeneration.com/canvas)

2 User stories Lecture 5

Simple template for user story

I <in the role of XX> needs functionality <zzz> to achieve the goal of <YYY>

Create a list of user stories (backlog) for the relevant user stories for the TravelAdvisor services.

Make a comment about the relationship between elements in the Service Design and the elements in the User stories.

3 Use cases Lecture 5

Create a use case model (UML diagram) related to the described user stories. As a UML Use case diagramming tool you can use Mat

Describe at least one selected use case with the provided use case template (See end of this document).

Make a comment about the relationship between the user stories and the use cases.

4 Service Design

Smaply tool, Lecture 6 and 7.

Create a service design for SenseIt using smaply.

www.smaply.com

4a Actors – as Personas Personas Create representative Personas for relevant actors

Page 4: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

4b Stakeholder Maps

Stakeholder /Personas relationships

Create stakeholder maps.

4c Journey maps Service Journey

Create service/customer journey maps with identified touchpoints

Make a comment about the relationship between elements in the Business Model Canvas and the elements in the Service Design.

5 UI Mockups Lecture 6 and 7

http://balsamiq.com/

Create user interface mockups for relevant parts of the Citizense app, using Balsamiq.

6 Individual App development

Lecture 4

www.webratio.com

Create an iPhone/Android app based on the instructions given in the individual part below.

Supporting information

0. Essence – Agile Project Model - Symphonical

Create a team support environment for your team using Symphonical at www.someone.io Set up a Someone.io Wall as a Scrum board, and consider also to use "Walls" to monitor the progress of your project according to the Essence alpha elements. You might also monitor the progress with the iPhone/iPad IJI Alpha State Explorer App for Essence, http://www.ivarjacobson.com/Alpha_State_Explorer_App/

An alternative team work support tool to use is www.scrumwise.com

1. Business Model Canvas - Strategyzer

Note that you need to think about the relationship between the elements in the Business model building blocks and the elements of Service Design and also user stories/use cases and user interfaces. The tools are not closely integrated – so you need to take care of the links yourself by

Page 5: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

using appropriate naming of elements. For instance a key partner called “XYZ biz” in the “Key Partnership” building block of the canvas should be the same name as a role in the actors used later, and “Personas” in the service design model should be representative of relevant roles and actors.

2. User stories

Describe some relevant touchpoints as user stories, using the template,

n I <in the role of XX> needs functionality <zzz> to achieve the goal of <YYY>

Consider also if it is relevant to group user stories into features and epics to reflect different levels of aggregation. (Ref. lecture 5 topic on Agile Requirements Engineering – Leffingwell).

3. Use cases

Create a UML use case diagram for all of the user stories.

Expand at least one of the user stories with a (set of) UML use case diagram(s). Use the Cameo Enterprise Architect/Magicdraw for this, and then also expand the description of a use case with the use case template from the end of this document.

Page 6: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

4. Service Design: - Smaply

Smaply is an online tool for the creation of three important service design diagrams, namely (1) Personas, (2) Stakeholder Map, and (3) Customer Journey Map.

The first model, Personas, is used for character profiling and helps a service developer to imagine the type of user that will make use of the service. With Personas, a service can be tailored to the exact needs of the “profiled” customer. An example of a Personas model is shown below.

The second model, Stakeholder Map, presents an overview of the service ecosystem which is comprised of all the service stakeholders and their interpersonal relationships in the form of business as well as personal exchanges. Bad relationships which might affect the service provision need to be examined and solutions must be implemented. An example of a Stakeholder Map is shown below.

Page 7: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

The third model, Customer Journey Map, allows a service developer to analyze the experience (in terms of various models such as storyboard, emotional graph, dramatic arc, channel view, and text boxes) that customers are perceiving throughout the service journey via touchpoints. A touchpoint is a point of physical or virtual interaction between the customer and the service provider and its partner(s) which describes the activity that takes place from a customer’s point of view.

5. Touchpoints – as User Interface Mockups – with Balsamiq

The touchpoints that are modelled and visualized in the earlier Service Journey Maps and the related user stories/use cases, can now be designed as User Interface Mockups – with Balsamiq, http://balsamiq.com/

Page 8: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

Example of Use case template – Table 2

This template is an extended version of the original template defined by Cockburn [1], in particular extended with a possibility to describe Requested Information Resources often found useful when dealing with data oriented systems. [1] Cockburn, A. Writing Effective Use Cases. ISBN-13: 9780201702255. Addison-Wesley (2001).

Table 2 — Description of a Use Case Template

Use Case Template Description Examples

Use Case Name Name of the use case Visualise proposed water height after the tsunami event

Use Case ID Unique identifier of a use case

Revision and Reference

Revision = version number of use case ID Reference = URL of the use case (you get the URL by right-clicking on the entry in the index column)

V02, http://SDI.server.de/servlet/is/4900/

Use Case Diagram Description of the UML use case diagram for the actual use case. The diagram should include extend and include relationships if there is any. The actual UML diagram figure may be added at the bottom of the template by uploading a bitmap generated from a UML editor.

Status Status of the use case development One of the following:

Planned

inprogress

Priority of accomplishment (optional)

The priority of the use case to be considered when assessing its importance for a development cycle.

One of the following:

Must have: The system mustimplement this goal/ assumptiontobeaccepted.

Should have: The system shouldimplementthisgoal/assumption:some deviation from thegoal/assumption as stated maybeacceptable.

Could have: The system shouldimplement this goal/assumption,butmaybeacceptedwithoutit.

Goal Short description (max. 100 characters) of the goal to be achieved by a realization of the use case.

System generates alerts based on user observations

Summary Comprehensive textual description of the use case. The user opens the browser which shows map-window with the water height after the tsunami event in the affected area

Category Categorisation of use cases according to overall reference architecture.

Context dependent

Actor List of users of the use case (actors) Examples may be citizen, administrator or employee of a SDI agency

Page 9: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

Use Case Template Description Examples

Primary Actor (initiates)

Actor that initiates the use case execution.

Stakeholder (optional)

Company, institution or interest group concerned by the execution of the use case

Requested Information Resources (optional)

Information category or object that is required to execute the use case or is being generated during the course of the use case execution. The requested information resource shall be listed together with its requested access mode (create, read, update or delete) or “manage” which encompasses all access modes.

user observation (read)

user-specific effect (read, update)

alert (manage)

Preconditions Description of the system/user status statement) that is required to start the execution of the use case. Note that use cases can be linked to each other via "preconditions“. This means, a precondition for a use case can be either an external event or another use case. In this case the use case ID should be provided in the field „preconditions“.

The user has opened the portal successfully.

Triggers (optional)

(External) event that leads to the execution of the use case. Note that use cases can be linked to each other via "triggers“. This means, a trigger for a use case can be either an external event or another use case. In this case the use case ID should be provided in the field "triggers“.

The user chooses water height forecast.

Main success scenario

Numbered sequence of actions (use case workflow) to be carried out during the execution of the use case.

1. User chooses assessment report. 2. He specifies one or more components (default should be all). 3. He sets a time-frame (last 24 hours, last week, last month) 4. The system shows a report as graphical visualisation.

Extensions Extension of an action of the main success scenario. The action to be extended shall be referred to by its number (e.g. 1) appended by a letter (e.g. 1a).

1a. The user defines the temporal extent b. The user defines an unavailable temporal extent. A new dialogue window opens and requires a new temporal extent.

Alternative paths (optional)

Alternate path through the main success scenario w.r.t. an identified action.

4a. User can select to view report in different formats, e.g. tabular or graphical map

Post conditions Description of the system/user status (statement) that holds true after the successful execution of the use case.

Report is displayed on the screen.

Non-functional requirements

Description of non-functional requirements for this use case with respect to performance, security, quality of service or reliability.

Display of report expected after 20 seconds at the latest.

Validation statement

List of statements that indicate how to validate the successful realization of the use case.

Notes Additional notes or comments (also by other users).

Author and date Author of use case, date of last edition.

Page 10: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

6. Individual App development with WebRatio Mobile Platform

It is necessary for all students to have the necessary knowledge of WebRatio to be able to create their own app. This needs to be done individually, and will then also provide a necessary foundation for further support for the group work. The following is a set of steps to be taken by each individual student.

It is necessary for all students to have the necessary knowledge of WebRatio to be able to create their own app. This needs to be done individually, and will then also provide a necessary foundation for further support for the group work. The following is a set of steps to be taken by each individual student.

TheideaistogetstartedwiththeWebRatiotoolfirst,andthentointroducemoremodelingwithIFMLafterthat(forOblig2and3).1:(30min)IntroductionvideoforWebRatio:

https://www.youtube.com/watch?v=UNG8FK3wEjA2:InstallWebRatioandregisterasuseratwebratio.com(useyourfau.eduoruio.noe.mailaddresswhenyouregisterintheWebRatiocommunity,togettheuniversityassociation):

https://my.webratio.com/learn/pcu1x?pcp1x=setting-up-webratio-mobile-platform-v-80&sp=page24t&link=ln230x&fllbck=.sv23:(10min)IFMLGeneralOverview:

Page 11: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

https://my.webratio.com/learn/learningobject/ifml-general-overview-v-72?link=oln72ae.redirect&nav=14&cbck=wrReq10172"YourfirstMobileApp(s)"

4:(5min)Make“HelloWorld”app:https://my.webratio.com/learn/pcu1x?pcp1x=your-first-mobile-app-v-80&sp=page24t&link=ln230x&fllbck=.sv2#!ajax=true

5:(10min)Makelistapp:https://my.webratio.com/learn/pcu1x?pcp1x=list-details-v-80&sp=page24t&link=ln230x&fllbck=.sv2#!ajax=true

Page 12: INF5120 – Spring 2016 Oblig 1 – “Citizense - Business ... · Touchpoints – as User Interface Mockups – with Balsamiq The touchpoints that are modelled and visualized in

6:(50min)Videowithlivecoding:https://www.youtube.com/watch?v=RGbwT7f6M_8LiveDEMO-end2endappdevelopmentonWebRatioMobilePlatformFinalresult:-AsafinalresultoftheindividualpartofthisOblig1–produceyourownappforiPhoneorAndroidwithaListandDetailviewforyourownchoiceoflistanddetailcontent.Thisshouldenableyoutogetastartforthedevelopmentofsuchtypeofappsonyourown.Documentyourfinalresultwithascreenshotandanassociateddescriptionthateachpersondeliveraspartofthegroupdeliveryfortheirgroup.