• No se han encontrado resultados

5.3 El trabajo en la forja

5.3.6 Técnicas de forja en caliente

The methodology outlined here involves reflection and refinement, related to, and in step to match research practice to and with the software development cycle for implementation. The methodology needs to meet the modelling/programming objectives outlined in Chapter 1, of Maintenance,

Extensibility, Ease of Use, and Sharing of Information. The intention of the research into User Driven Modelling (UDM), and more widely User Driven Programming (UDP), is to enable non-programmers to create software from a user interface that allows them to model a particular problem or scenario. This involves users entering information visually via a diagram. The research involves developing ways of automatically translating this information into model/program code in a variety of computer languages. To achieve this, visual editors are used to create and edit taxonomies to be translated into code. To make this possible, it is also important to examine visualisation, to create a human computer interface that allows non-experts to create software. This methodology is examined throughout this thesis against the Maintenance, Extensibility, Ease of Use, and Sharing of Information criteria.

There are many computer literate people who do not have the time to learn, or access programming tools, but nevertheless try to accomplish programming type tasks (Scaffidi, 2005); so instead, many of them model problems using spreadsheets (Scanlan et al., 2006). This thesis research examines an aspect of end-user programming - User Driven Modelling/Programming, addressed towards the kind of computer literate end-user programmer/modeller just mentioned. This takes further the end-user programming aspect of spreadsheets and similar tools. To enable easier manipulation of the kind of complex information that is often held and managed in spreadsheets, an approach based on diagrammatic visualisation of the model is employed to enable navigation and communication of models. This allows navigation of the equations that represent a model by following a ‘family tree’ of relationships between equations, and between models. This makes collaboration easier by ensuring people can navigate and interpret models created by others. Gruber (1993b) observes that a further advantage is that the underlying structure on which models are constructed can be represented and stored using open standard representations, to enable its availability for collaboration. In this way equations (formulae) can be stored in an ontology, visualised for ease of understanding, and made available for calculation in models.

The methodology involves visualising connections between individual calculations and allowing results from calculations to connect and link to form an overall model. Therefore, this methodology could be generalised to any situations where calculations connect to form a model. Even where calculations are not represented but information needs to be visualised (e.g. scientific taxonomies, engineering product data structures); the same visualisation techniques can be applied, to ease navigation and therefore collaboration. Complex models can be made more understandable when displayed in diagrammatic

manner. Nurminen et al. emphasize that what successful expert systems have in common is that they put user needs at the centre of a fast and agile development process. The authors explain that users prefer usability over automation, and that users should drive the more difficult tasks where they are needed and leave routine tasks to the system. Ko (2007) explains that end-users’ goals relate to the problem domain not to code production so they should be allowed to focus on their goals; therefore it is important to visualise the whole program execution not just the output.

The intention is to demonstrate a way to construct diagrammatic representations of cost using the example of an aircraft wingbox. The wingbox is the structure or skeleton of the wing. These diagrammatic representations will be achieved by visual representation of items and equations that make up wingbox cost. These items and equations can be represented in standardised categories used in engineering - ‘materials’, ‘processes’, ‘cost rates’ etc. These categories are standard for engineering and the methods for representing items and equations that relate the items can be expressed in standard mathematical form. Therefore using the same methodology and same categories it would be possible to represent other items and equations in the same way. So this methodology is reusable for costing other engineering components including those outside aerospace. The costing method is also recursive because components and sub components can be costed separately or together and top down or from bottom up. This methodology has the potential to be applied to any calculation based modelling problem.

The User Driven Programming approach advocated in this thesis has the advantages that it is using a modelling approach for creating modelling solutions and involves creating systems to create systems. This makes it possible to solve the problem by breaking it down into stages and allowing software developers to concentrate on the most complex software problems and domain experts to be able to concentrate on their domain problem. The standardisation possible in this approach can allow software developers to create modelling systems for generic purposes that can be customised and developed by domain experts to model their domain. This methodology can be facilitated by :-

 Modelling Tools - Building an end-user interface and extending the translation capabilities of UML (Unified Modelling Language) and/or other modelling tools (Johnson, 2004).

 Spreadsheets - Improving the structuring and collaboration capabilities of spreadsheets, and enabling customisation of spreadsheet templates for particular domains and users.

 Ontology Tools - Extending the modelling capabilities and equation calculations in ontology tools and providing an end-user interface.

 Semantic Web/Web 2.0 - Extending the capabilities of Semantic Web and Web 2.0 style web- based development tools to allow collaborative modelling.

link between these alternative ways of advancing current research is translation and User Driven Modelling/Programming.

Figure 13 shows the solutions, and how these could make User Driven Modelling/Programming possible :-

Figure 13. Methodology Diagram - Enabling User Driven Modelling/Programming This methodology is developed from the overlapping research examined for Chapter 2, the literature review, and the theory based on the overlapping theoretical work developed in Chapter 3. The circle in the middle - User Driven Modelling/Programming is the overlap, and therefore is the focus of this thesis, and that which needs to be implemented to enable end-users to create tree/graph/network based models for process modelling.