Créalie's main objective is to be a strong technical partner for industrial companies integrating software in their products, by a good technical control on this technology and by a strong collaboration with customers team. Here is a synthesis of the major technical aspects of the activity, as they are perceived by Créalie

Development Methods, Software Engineering
Many projects show that the application of methods, wathever they are, require a difficult choice between "too much methods" and "not enough method", both leading to overcosts, planning overrun and unsatisfactory results. A method must be a guide making it possible to lead to a better effectiveness of the projects. By the experience gained on many projects, mainly in the embedded software field, Créalie uses efficiently and reinforces methods recommanded by customers.
Importance of Design
Software design is often badly controlled, by lack of methodological references adapted to embedded software and real-time systems. Créalie, by the care taken to this aspect, contributes to largely improve quality, evolutionarity and reusability of developed software. This work is based on structured design (SD/RT) or object oriented (UML, ROOM) methods, according to the context of the project. It uses available tools, if the customer wishes it (Teamwork, Select, Rose, Object Time, Geode, ...).
Software Prototype, Progessive integration
The development process recommanded by Créalie rely on the developement of a prototype of the software, in the form of a voluntarily reduced subset. It is the "skeleton" of the software, implementation of its architecture, in a version where most of the modules are empty or empirically simulated. All the tasks and modules are present, but only higher level modules are really coded in order to make "alive" this minimal structure. Other modules are implemeted in a very partial way. Their body only includes call to lower modules and the assignment of arbitrary values to returned parameters. Low level modules are replaced by "stubs", simulating coarsely inputs / outputs. This subset will be then enriched gradually to approach the complete software. This approach strongly contributes to make reliable the software integration process, which make it possible to better respect the planning. It also gives a good visibility on the project progress report
Processors, Networks
Microprocessor or microcontrollers used for embedded software have an astonishing diversity. Confined a long time with the 4 or 8 bits "small processors", embedded software must face a rise to very strong power. 32 or 64 bits RISC architectures are not so rare anymore. Networks also spread with CAN and LonWorks for example. Créalie does not privilege one of these architectures or one of these networks. Thanks to a good control of underlying technologies and with synergy between its engineers, Créalie benefits the best from the customer's choice or guide him in its orientations.
Tools
Embedded software suffered a long time from the lack of development tools. This situation tends to improve under the very competing push of this market whose diversity slices with other fields of data processing... Créalie knows well the principal types of tools and can effectively use those which the customer choosed or allows him to discover new ones. That relates to the environments (for example : Tornado from WindRiver, OSE from ENEA, ...), as well as to development tools (cross-compilers, emulators, debuggers, configuration control, ...)
Tests, Validation

These aspects are often neglected during projects. Few people are really interested in it. However, many possibilities exist to improve projects effectiveness and productivity by looking after test, integration and validation. Créalie proposes :

  • the definition of a rigourous unitary test policy, key of integration,
  • the setting of test means available in the company and the recommandations on complementary tools existing on the market or to develop,
  • the definition of a validation plan having for goal to check in detail that the software answers customer requirements in all circumstances,
  • the acceptance tests definition.