Logo UAB
2020/2021

Software Development

Code: 43852 ECTS Credits: 6
Degree Type Year Semester
4315985 Geoinformation OT 0 2
The proposed teaching and assessment methodology that appear in the guide may be subject to changes as a result of the restrictions to face-to-face class attendance imposed by the health authorities.

Contact

Name:
Wladimir Szczerban
Email:
Desconegut

Use of Languages

Principal working language:
spanish (spa)

Teachers

David Fernández Mota

Prerequisites

This course has no specific requirements. Students should only have a basic knowledge of using general software such as Windows, Excel and Word.

Objectives and Contextualisation

1. Learning to programme customized GIS applications for the main current and future platforms, such as web applications and mobile devices.

2. Provide knowledge on the principal object and function libraries for web geospatial application development (e.g., Google, OpenLayers, Leaflet), and on the techniques needed for integrating components, implementing geospatial servers, using geolocation functions and accessing the various sensors available in mobile devices.

Competences

  • Analyze user needs and the formal and interface requirements to define and design end- user geospatial applications in corporate environments or those open to the public.
  • Apply programming methodologies and procedures, and those for implementation of geospatial applications for different types of platforms (desktop, web, mobile), using different programming paradigms and environments.
  • Communicate and justify conclusions clearly and unambiguously to both specialised and non-specialised audiences.
  • Continue the learning process, to a large extent autonomously.
  • Design and elaborate cartographic documents and, in general, geovisualization of geospatial data products, and implement the corresponding production and publication processes using analogue and digital media.
  • Develop imaginative, creative and innovative ideas in projects for geospatial information systems, services, products or applications.
  • Identify and use navigation and positioning systems and techniques precisely and reliably with the various different assumptions of navigation and data collection in the field.
  • Integrate geospatial information technologies, services and applications with the aim of providing an optimal solution to each application case.
  • Integrate knowledge and use it to make judgements in complex situations, with incomplete information, while keeping in mind social and ethical responsibilities.
  • Solve problems in new or little-known situations within broader (or multidisciplinary) contexts related to the field of study.
  • Use knowledge critically and understand and take on board the ethical responsibility, legislation and social implications of the use and diffusion of geospatial information and its derived products.

Learning Outcomes

  1. Communicate and justify conclusions clearly and unambiguously to both specialised and non-specialised audiences.
  2. Continue the learning process, to a large extent autonomously.
  3. Develop imaginative, creative and innovative ideas in projects for geospatial information systems, services, products or applications.
  4. Implement automatic cartographic document production processes.
  5. Integrate geospatial information technologies, services and applications with the aim of providing an optimal solution to each application case.
  6. Integrate knowledge and use it to make judgements in complex situations, with incomplete information, while keeping in mind social and ethical responsibilities.
  7. Integrate the functioning of sensors installed in mobile devices in applications of localisation-based services.
  8. Know and use function and object libraries to personalise interfaces and add geospatial functionality to applications.
  9. Know the technologies for developing mobile, web and client-server applications.
  10. Programme desktop geospatial information applications for end-users.
  11. Programme mobile, ubiquitous, and smart geospatial information applications for end-users and for automated process management.
  12. Programme web-based geospatial information applications for end-users.
  13. Solve problems in new or little-known situations within broader (or multidisciplinary) contexts related to the field of study.
  14. Use knowledge critically and understand and take on board the ethical responsibility, legislation and social implications of the use and diffusion of geospatial information and its derived products.

Content

Web geoapplications programming

1.  Introduction.

GIS on the Internet.

Historical evolution.

2.  Main JavaScript libraries.

3.  Main map servers.

4.  Web client development with different libraries.

Google API.

OpenLayers.

Leaflet.

ArcGIS API.

 

Mobile geoapps programming

1.  Introduction to the development of mobile applications.

Native and cross-platform development. Summary of technologies.

Development process.

Introduction to the development environment.

2.  Development environment: PhoneGap and JavaScript.

Introduction to JavaScript and PhoneGap.

Installing the environment and first application.

Cloud developments: PhoneGap Build.

3.  Programming environment.

Introduction to jQuery and jQuery Mobile.

Application settings.

Mechanisms of interaction.

4.  Static graphic elements.

View structure.

Text and buttons.

Transitions.

Navigation bars.

5.  Dynamic graphic elements.

Drop-down blocks.

Panels.

6.  Data and forms presentation.

Tables.

Lists.

Forms.

7.  Data management.

Local data.

Remote data and databases. 

8.  Geolocation and maps.

Obtaining the position.

Viewing maps.

9.  The camera of the device.

Using the camera from the application.

Managing captured photos or videos.

Methodology

Learning is achieved by means of three types of activities:

Directed activities: Directed activities are theoretical and practical lectures in a computer lab. They include solving case studies and practical exercises, using as the main method a problem based learning approach. Lectures serve to systematize all the content, to present the state of the art of the different subjects, to provide methods and techniques for specific tasks, and to sum up the knowledge to learn. Lectures organize also the autonomous and complementary work done by the students.

Supervised activities: Supervised activities are focused on the execution of a semester project, consisting of a real case study, carried out through workshop hours, autonomous work and tutorials. This semester project allows to apply together all the knowledge and technical skills learnt in all the courses of the semester. The semester project is a milestone for the students and the actual demonstration that they had achieved the learning goals of all the courses of the semester. It is also the main evidence for evaluation as students should have to submit at the end of the semester a report that summarizes the whole project and do an oral presentation.

Autonomous activities: Autonomous work of the students includes personal readings (papers, manuals, relevant reports, etc.), data and documentation search, complementary exercises and the personal development of the semester project.

The activities that could not be done onsite will be adapted to an online format made available through the UAB’s virtual tools. Exercises, projects and lectures will be carried out using virtual tools such as tutorials, videos, Teams sessions, etc. Lecturers will ensure that students are able to access these virtual tools, or will offer them feasible alternatives.

Activities

Title Hours ECTS Learning Outcomes
Type: Directed      
Theoretical and practical lectures 36 1.44 8, 9, 3, 4, 7, 5, 10, 11, 12, 6, 13, 1
Type: Supervised      
Semester project 15 0.6 8, 9, 3, 4, 7, 5, 10, 11, 12, 6, 13, 1, 2, 14
Type: Autonomous      
Practical exercises 69 2.76 8, 9, 3, 4, 7, 5, 10, 11, 12, 13, 1, 2, 14

Assessment

In the event that assessment activities cannot be taken onsite, they will be adapted to an online format made available through the UAB’s virtual tools (original weighting will be maintained). Homework, activities and class participation will be carried out through forums, wikis and/or discussion on Teams, etc. Lecturers will ensure that students are able to access these virtual tools, or will offer them feasible alternatives.

CONTINUOUS EVALUATION

a) Evaluation procedure and activities:

Evaluation of the course is based mostly on the semester project, that comprises two evaluation activities. The elaboration and submission of a synthesis report and the oral presentation of the project done. Given the technical content of the course, the weight assigned to the project report is 50% of the total course grading, assuming that it is the most appropriate means to explain all the technical details of the project, and a weight of 20% at the oral presentation. The course assessment is completed with the evaluation of the practical exercises done along the course, that account for another 30% of the total course grading.

Except when expressly noticed, all the evaluation activities (report and oral presentation of the semester project, as well as practical exercises) have to carried out individually.

Time assigned to each evaluation activity includes the time spent in making all the material evidences for evaluating each activity (e.g., writing of the report, preparing the presentation slides, etc.).

b) Evaluation schedule:

2nd semester project report: Making during all the semester. Submission at the end of semester, on April 16th 2021.

2nd semester project oral presentation: Making during all the semester. Oral presentation at the end of semester, on April 9th 2021.

Course practical exercises: Making and submission weekly or biweekly along the semester.

c) Grade revision:

Once the grades obtained are published, students will have one week to apply for a grade revision by arranging an appointment with the corresponding teachers.

d) Procedure for reassessment:

2nd semester project report: It could be reassessed in the following two weeks after the submission date scheduled. Reassessment will require the submission of a new whole report in case of negative evaluation of the former report submitted.

2nd semester project oral presentation It could be reassessed in the following week after the date scheduled for the oral presentation. Reassessment will require doing again the oral presentation in case of negative evaluation of the former presentation done.

Course practical exercises: Can not be reassessed.

To have right to a reassessment the student will have to have been previously evaluated in a set of activities that account for at least two thirds of the total course grading. Therefore he or she will have to have been evaluated of the 1st semester project report (50%) and of the 1st semester project oral presentation (20%) in the dates scheduled.

The right to a reassessment will only be granted to students that, having not passed the course (e.g., having a total course grade below 5 over 10), had obtained at least a total course grade above 3,5 over 10.

e) Conditions for a ‘Not assessable’ grade:

Students will receive the grade ‘Not assessable’ instead of ‘Fail’ if they had not submitted neither the 2nd semester project report nordone the 2nd semester project oral presentation. That is, if they only submit all or part of the course practical exercises.

f) UAB regulations on plagiarism and other irregularities in the assessment process:

In the event of a student committing any irregularity that may lead to a significant variation in the grade awarded to an assessment activity, the student will be given a zero for this activity, regardless of any disciplinary process that may take place. In the event of several irregularities in assessment activities of the same subject, the student will be given a zero as the final grade for this subject..

Assessment acitivities with a zero grade because of irregularities can not be reassessed.

Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Oral presentations 20 6 0.24 6, 2, 14
Practical exercises 30 9 0.36 8, 9, 3, 4, 7, 5, 10, 11, 12, 6, 13, 1
Report submissions 50 15 0.6 8, 9, 3, 4, 7, 5, 10, 11, 12, 6, 13, 1, 2, 14

Bibliography

Crickard, Paul (2014) Leaflet.js Essentials. Packt Publishing.

Gratier, Thomas (2015) OpenLayers 3 Beginner's Guide. Packt Publishing.

Purusothaman, Ramanujam (2015) PhoneGap: Beginner's Guide. Third Edition. Packt Publishing.

Dincer, Alper (2013) Google Maps API Cookbook. Packt Publishing.

Shotts, Kerry (2016) Mastering PhoneGap Mobile Application Development. Packt Publishing.