DIGITAL LIBRARY
MODIFICATIONS OF DEVELOPMENT ENVIRONMENT FOR USE IN THE ARCHITECTURE FIRST METHODOLOGY
University of Economics, Prague (CZECH REPUBLIC)
About this paper:
Appears in: EDULEARN17 Proceedings
Publication year: 2017
Pages: 648-653
ISBN: 978-84-697-3777-4
ISSN: 2340-1117
doi: 10.21125/edulearn.2017.1136
Conference name: 9th International Conference on Education and New Learning Technologies
Dates: 3-5 July, 2017
Location: Barcelona, Spain
Abstract:
A number of big companies and government institutions announced great projects promising that they are able to teach program coding practically everybody. They do not realize that the era, when each programmer had not only to design his/her program, but also to code it in the programming language in use, gradually passes over. Successively the more and more sophisticated programs appear in the Low-Code Development Platforms category and allow to people to design only the basic architecture of the developed system and these programs take care about coding.

The Architecture First methodology tries to meet these trends and promotes programming tuition that does not teach the introductory courses’ students to code, but concentrates on the architecture design – the activity, that will be the most important part of their future. The proper coding of the designed program is then left to the code generator, which is an integral part of the development environment in use. The problem remains that present environments such of Low-Code Development Platforms type are not suitable for tuition of absolute beginners due to the fact that using them usually requires certain non-trivial skills.

At present the introductory courses often use the BlueJ development environment, which has even integrated a simple code generator. However, this generator is too simple and does not comply with the needs of the Architecture First methodology. The paper describes the modified environment named BlueJ++, the code generator of which is significantly enhanced and which, therefore, allows to focus at the explanation of architecture principles of the developed programs for a relatively long time without the necessity to distract the students’ concentration by explaining the syntax of the used programming language and by coding. We come to it only in the moment when the code generator capabilities are exhausted. However, at that time the students have already rooted their basic habits of the proper architecture design.

Besides the basic description of the enhanced functionality of the BlueJ++ environment the paper introduces also certain basic practices, that make the transition of student into the mode, when they have to code themselves those program parts, that are ad interim beyond the abilities of the present code generator. At the conclusion, it indicates further code generator enhancements expected in the near future.
Keywords:
Programming education, architecture First methodology, OOP.