Home Page   We Generate Your Software.
Products Services Company Technology Demo Contact Site Map Search
Please note: this document is currently under revision.
The information herein contained, while still valid, does not reflect the latest state of the described technology.
The Somusar/SoProTech[tm] Booklet Series
Volume I

"somusar/SoProTech: An Introduction"

Printer friendly


Contents
1. Introduction
2. Overview of SoProTech[tm]
3. Software Production Using SoProTech[tm]
3.1 Benefits of Somusar/Software Entities[tm]
3.2 Benefits of Somusar/Software Molds[tm]
4. Software System Layers and Pillars
5. Multifacet Software Entities
6. Software Molds
7. Generatable Files
8. The Somusar/File Generation Scheme[tm]
9. The Somusar Languages and Language Processors
10. Structure of a SoProTech Project
11. Further Reading

Chapter 3 - Software Production Using SoProTech[tm]

Generally speaking, the SoProTech is a software development tool, as it produces software in a broad sense, as explained below. However, it should be noted that SoProTech does not fully overlap with currently available software development tools: in fact, in most cases it can be easily used as an additional tool within running projects without conflicting with the tools already in use.

More specifically, SoProTech can be applied as both a process or a subprocess, and the distinction mainly depends on the size of the software development project involving SoProTech:

  • Large projects or large development teams may apply SoProTech as a subprocess, that is, as one of several software design and development tools, integrating SoProTech production results (that is, generated files) in the same manner as if they had been produced by other means;

  • Small projects or small development teams may apply SoProTech as a process, that is, as the main software development tool, along with traditional tools like text or visual editors, compilers, debuggers, revision control systems, and so on.

Beyond the high speed of its SoProMach, a remarkable key feature of the SoProTech is its language-neutrality: Software Entities can be used to generate software in practically any computer language, both general-purpose and special-purpose, ranging from procedural languages like C, COBOL, or Fortran, to object-oriented languages like Java[tm], C++ and C#, and to a great variety of specialized languages, like SQL, HTML, or XML.

The high speed and language neutrality of SoProTech open up new ways to the large scale production of software. Software within SoProTech's broad perspective is any computer file, according to two categories:

  1. Human-readable files, also called generatable files: this group contains all the files that can be written or read using a standard text file editor, such as "vi" or "notepad";

  2. Data files.

More exactly, in the current implementation of SoProTech a generatable file is any single-byte (typically, ASCII or ISO8859) characters file containing computer programs, or parts thereof, in any language, from Cobol to Java[tm], to C++ and C#, to HTML, to PostScript®, as well as plain text, such as emails, technical specification, reports, and so on.

A data file is any other type of file: images, sounds, and any document in any binary format.

The main advantages obtained by applying the Somusar/Software Production Technique[tm] within a software development project derive from Software Entities and Software Molds.

3.1 - Benefits of Somusar/Software Entities[tm]        top

The Software Entities, described later in chapter 5 , introduce a new format for software entities. The concept of software entity (or component, or object) is by no means new in the software industry and in computer science: nonetheless the new format introduced by the Somusar/Software Entities[tm] offers several new advantages to software development teams and professionals, in terms of flexibility, generality, productivity, reusability, and maintainability. Software Entity files are plain text files written in Somusar/Sisendel[tm], a new simple software entity design language, described in chapter 9 .

In short, a Somusar/Software Entity[tm] allows to centralize all definitions related to the software representation of a real-world entity, thus greatly improving entity-related consistency within the target software system or application dealing with that entity.

Database tables and keys, logic processing objects, data structures, usage interfaces - for both human users and automatic systems -, all these different facets of a Software Entity can be concisely and uniformly designed within one Software Entity file. The experienced software designer and developer may rapidly grasp this concept by looking at the examples of chapter 5 .

The multifacet design contained in a Software Entity file is automatically translated by the high-speed SoProMach of the SoProTech into actual software files that implement those facets - database tables and keys, logic processing objects and data structures, and usage interfaces.

3.2 - Benefits of Somusar/Software Molds[tm]        top

Based on long-established and well-known development techniques, such as macro-processing, templating, and code patterns, Somusar/Software Molds[tm] - described in chapter 6 -, implement a new software concept that allows one or more software development teams to:

  • Effectively record and reproduce software development guidelines and best practices, and apply them to produce, or impress, all generatable files related to the Software Entities defined within one or more software projects;

  • Identify, insulate and automatize a large part of the repetitive development work within one or more software development projects.

Key to Software Molds is Somusar/Tefigel[tm], a new text file generation language, which can be shortly described as a generalized file-oriented text and macro language. Software Molds are written in Tefigel, which in fact has been purposely defined as the back-end language for Sisendel, although it can also be used as a stand-alone tool.

Due to the fact that Tefigel is a purely textual computer language, Software Molds are human-readable by definition, and can thus easily be written, exchanged, and customized by any development team. More information about Tefigel is provided in chapter 9 .

[Previous chapter]    [Next chapter]    [Back to top]

http:// www.somusar.com  / doc  / booklets  / intro  - Powered by SoProMach
Copyright © 2003-2012 Somusar - Trademarks - Legal - Privacy - Webmaster