Methodological Basics of Localization During Business Software Development

Size: px
Start display at page:

Download "Methodological Basics of Localization During Business Software Development"

Transcription

1 Andrej Danko METHODOLOGICAL BASICS OF LOCALIZATION DURING BUSINESS SOFTWARE DEVELOPMENT 1 Introduction Enterprise application software supporting the everyday operations of a company s functions and providing tactical and strategic reporting for relevant management structures is nowadays a standard foundation of firms. The influence of globalization on the dependency of individual countries and regions as well as changes in legislation and the pressure to harmonize accounting standards (accounting rules, reporting) with international norms has resulted in new requirements for business software vendors. In the first place, it is necessary to take into consideration the local needs of a target country (or a set of countries) for which the software is intended and at the same time have a sufficiently flexible design that provides the ability to adopt the software to changing needs. In this article we aim to describe selected methodological basics of localization that are suitable for adoption during development of standardized enterprise applications. We focus primarily on the analysis phase, which is critical from the software lifecycle perspective and determines the correctness of the following phases; however, we also suggest several design aspects from which the analytical phase can source. In this article we have synthesized a basic understanding about the aspects that need to be considered during localization it is not our aim to answer the question of how to obtain the necessary inputs. These basics are a result of a multi-year analysis and synthesis during the development of standardized enterprise software for 40 countries world-wide during which such requirements were an inseparable part of the development process. In the context of methodological basics we build on the defined globalization components during software development, described in (3). 1 BASIC PRINCIPLES AND PROCEDURES During the development of enterprise software we build on basic principles, which are structured and object oriented (OO) approaches for software analysis and design (9, 11). In the context of this article, we define enterprise software applications, such as ERP, CRM, SCM, etc., applications that are intrinsically localization relevant. The modules that are most influenced by localization are accounting (e.g., general ledger) and reporting (e.g., sales reports in the context of movement of items in the EU region), logistical processes of sales and purchasing, payments and banking, stock accounting, production, etc. In general we will refer to these modules as applications. DANKO, Andrej: Metodologické základy lokalizácie pri vývoji podnikového softvéru. () In Ekonomika a Informatika (Economics and Informatics) : Scientific Journal FHI EU in Bratislava and SSHI. - Bratislava : Faculty of Business Informatics : Slovak Association for Business Informatics, ISSN , 2009, volume 7, no. 1, pp Originally published in Slovak language. 8

2 During software development, many approaches, techniques and methodologies are used. We define methodology as a set of methods and techniques elaborated into a set of concrete work steps resulting in a full solution of the given problem. It is a description (guide) for a solution of a more complex task involving organization of work steps and assignment of methods and techniques to these steps. We define method as a knowledgeable set of steps during an activity or execution, through which we derive from known facts and knowledge new facts and knowledge. A technique is a specific form of a method s application to solve a specific set of problems that can be solved by applying that method. A methodology represents a union of methods and techniques and supporting instruments applied to solve a specific class of tasks (12). 1.1 Terms and Definitions Used to Define Methodological Basics of We define Globalization as the process of applications development in such a way that ultimately enables the supply of these applications to more countries. Standard components of globalization are internationalization, localization and translation. We define Internationalization as an architectural concept of application that creates a suitable environment and enables application localization i.e., an application designed with a concrete layer of internationalization enables application localization without further architectural changes. We define as a process of application modification in such a way that it reflects differences resulting from various legal, business parameters as well as the customs of individual countries (3). From the perspective of application analysis and relevancy for localization we define the following set of data elements (derived from 11): Data Entity representing a certain type of data the system operates with. Examples are an account of a chart of accounts, address, invoice, etc. Data Relationship representing the binding between data entities. Examples are the relationship between the invoice and the billing address or an invoice and its accounting posting. Attribute is part of a data entity and represents an atomic data element. Examples are a phone number, the sum of value added tax on a document, etc. An instance of a data entity, relationship or attribute is a concrete value relevant to the described object. Data entity Data relationship Attribute Relationship between data entity, relationship and attribute From the functional perspective, we define the following set of functional elements that are relevant from the localization point of view: We define Business Function as an atomic operation with a defined set of inputs and outputs in the form of attribute instances whose purpose is a transformation of 9

3 these values based on a defined algorithm. Examples are a function that validates the correctness of the tax identification number input on a screen. We define Business Transaction as a defined set of processing by creation, modification or transformation of one or more data entity instances (composed of a set of business functions as well) using a set of inputs (whether from a user or using other data entity instances triggered by a concrete event). An important aspect of a Business Transaction is its time consistency, i.e., the inability to divide execution of a transaction to a set of individual operations in time. The outputs (of Business Transitions) are new or modified instances of defined data entities. Examples are the issuance of a concrete invoice (on the basis of an order or delivery or based on a user s inputs) and the related posting entry in the general ledger. We define Business Process as an ordered set of two or more Business Transactions, the execution of which results in a realization of a specific business goal (in addition to the result of individual Business Transactions). Examples are the Order-to-cash Business Process or the Down Payment Business Process. Business Process Transactions [*]: Business Transaction Business Transaction Input [*] : Data entity Output [*] : Data entity Define set of processing () Business function Input [*] : Attribute Output [*] : Attribute Algorithm () The relationship between business function, transaction and business process The analysis phase is critical in the context of requirements definition for software implementation (design and coding) and is influenced by the fact that its inputs are defined either by incomplete requirements of future users or the inability of the complete understanding of all relevant facts during the analysis phase itself. This factor plays an important role predominantly during enterprise software development, which has to cover various legal requirements and fulfill international standards as well, some of which are complex; and it is fairly complex to determine its influence on individual business functions, transactions and business processes. From the functional perspective, localization influences its two elementary components: data structure and function. Whereas within a data structure the elaboration of methodological procedures is inadequate, within the functional view there exists at least a limited set of theoretical basics. 10

4 1.2 Impact of on Data Modelling The data modelling component of the analysis is nowadays being derived from analytical patterns, which help to describe the nature of the described domain. They are an inseparable part of the software analysis and therefore we consider them appropriately. We demonstrate localization on a simple analytical pattern, where it is our intention to show how localization influences various aspects of data modelling for example, abstraction. The foundation is a sample of class entities Person, Man and Woman, and their relationships (11, page 14), which are defined as follows: Person Civil Union Man Army Service { or } Woman Marriage The shown analytical pattern defines class Person and its specialized classes Man and Woman. Between a Man and Woman, there is either a Civil Union or Marriage association, and in the context of their multiplicity, Man or Woman can be only one partner (Civil Union) or husband/wife (Marriage). We also defined a mandatory attribute Army Service for the class Man, which defines the duration of army service. This analytical pattern is correct and comprehensive from a certain local (country) perspective at a certain time, whereas in looking at other countries and legislation as well as its time validity, it becomes inaccurate. Doing a global analysis we identify that Civil Union or Marriage can be in certain countries between Persons of the same sex, so the defined associations must be transferred to the generalized class Person (recursion). Its multiplicity can be also questioned, because in some Middle Eastern countries it is possible that one Man has multiple Civil Union or Marriage associations. Finally, the attribute Army Service evolves in time (i.e., class Man had this attribute but today is not valid any more) and in some countries (for example, Israel) Army Service is mandatory also for women, so the attribute should be transferred in the context of generalization into the class Person. Applying the described facts, we generate a modified globalized analytical pattern, which encompasses localization influence of the different data diagram elements: 11

5 Marriage Civil Union 0..* { or } Person Army Service * Man Woman Giving this simple example we demonstrated that regionalism or globalism increase data modelling complexity. To manage them, however, it is necessary to give them appropriate attention. Enterprise applications and their modules, which must be compatible with different countries and their laws, best business practices and customs, cannot ignore the importance of related changes during the analytical phase. 1.3 Theoretical Definition of from the Functional Perspective Analytical View Let the term Business Algorithm Category (T) define one or more algorithms implementing a certain business rule (4). Such a category can be algorithms to calculate row value added tax (sales tax VAT), VAT in rows with the same tax group or calculation of VAT for the whole document. Another category can be methods to handle rounding of cents, in one instance for tenths of cents rounded up, in another instance rounded arithmetically, or for fiftieth of cents rounded arithmetically. The result is that each algorithm from its category of business algorithms has the same characteristics, but each category of algorithms is disjunctive. (T1, T2,..., Tn) : T We can also assume that particular localization for a certain Localized Unit 2 or simply localization (where we consider a Localized Unit/localization as atomic and non-dividable) is defined by a set of algorithms from different Business Algorithm Categories. For simplicity, let us have two Business Algorithm Categories, T and T, for which the following will be true: (a, b) : T (α, β) : T 2 Typically, a Localized Unit is one country, but for certain jurisdictions (e.g. USA), the given unit can be broken down to smaller units (e.g. states). 12

6 Next, let us have three Localized Units, for which we will define particular localizations: Category Localized Unit T T L1 a α L2 b α L3 b β The definitions above implicate that, e.g., when Localized Unit L2 activates algorithm T, it uses its localization b and for T its localization α. This basic definition is on an elementary level for an algorithm, which does not cover even remotely the complexity of the analyzed domain. Algorithms are only one part of the complete functional (and data) framework, which we defined, and therefore it is necessary to extend the given methodological foundations for additional elements (Business Transactions and Business Processes, as well as elements of data modelling) Design and Implementation Views One possible solution to implement the defined localizations is to use the traditional structured programming approach (4): if ( legalunit == L2 legalunit == L3 ) { b } else { a } // default if ( legalunit == L3 ) { β } else { α } // default This approach has many deficiencies. The above-mentioned code fragment implies that implementation of a wider business logic and its localizations for different countries can become very complex and in the end unclear and hard to maintain. We have to remark, however, that in a professional context it is still the most used one (because of its initial ease of use and implementation), but causes severe issues during source code maintenance and further development (in terms of extension or change). Using the above-mentioned implementation approach, the differentiation between the generic (globally) valid business algorithms and the locally valid ones dissolves; information about which set of individual algorithms from which categories define a Localized Unit for each legislation is lost. Another possible approach to implementing the given Localized Unit is to use OO approaches leveraging polymorphism. This can be designed by defining a class hierarchy and distributing implementation of algorithms a, b, α, β between the defined classes, which invoke the particular algorithms: 13

7 L1 a() α() L2 b() L3 β() This results in a model, which for particular class L1, L2, or L3, representing in this case individual Localized Units, invokes the appropriate algorithm, relevant for the particular localization. Analyzing the model in detail, we realize that for a more complex case, a model of this particular class implementation design would become very complicated and even illogical, because we would need many classes with different and duplicate generalization and specification associations. Another possible way is to integrate an aspect oriented programming paradigm and the concept of aspects, which would enable implementing additional code fragments at the end of which the program flow would return to the originating place. This method is difficult to realize, however, because it is impossible to know beforehand all the places in the code where the code needs to be modified or extended. Another possible approach is based on algorithm externalization from within the programming code or classes into separate parts and connecting (or polymorphing) them into a class instance according to their need in the context of localization requirements during the compile or execution time of a program (depending on static or dynamic definition of their connection). Particular Object a c b One of the possible ways to implement the aforementioned approach (using the C language) is to use a structure containing a set of function pointers with its declarations, the value of which is implicitly set to zero and a set of functions with the same defined declaration and definition (implementation). This example in the C languages solves the particular issue; however, it is data type instable. 14

8 A more sophisticated solution is to use design patterns, which we demonstrate using an example (adapted from 4). The purpose of such implementation technique is to make the given business algorithm category peripheral (and therefore easily modifiable). The decision regarding which algorithm will be executed with the related data is left to another (tertiary) subject, which can be the relevant object or control/application software layer (client). Furthermore, an additional advantage resulting from such an approach is the decoupling of data classes representing business entities from the knowledge of how to execute certain business algorithms for a set of Localized Units. As an example, we demonstrate the above-mentioned using a simplified model of invoice (containing elementary business definition) and calculation of VAT for that invoice in three different ways. Attribute VAT Group of Invoice, Invoice Item, and Customer classes contain a percentage value of VAT based on the method used to calculate VAT using: VAT of individual items of the invoice, the total value of invoice multiplied by the percentage value for a certain country, the total value of invoice multiplied by a percentage value for a given customer (who is from a state where VAT is different). Invoice Item Amount Price VAT Group Invoice Vat Group VAT : VAT SetVAT ( in VAT : VAT ) Name Item Customer VAT Group Simplified Invoice Class Diagram To implement the above-mentioned technique of peripheral business algorithms, combined design patterns Strategy (8, page 315) and Factory (8, page 107) are used. They are described in depth in the cited literature (8, pages 316, 108); therefore, we describe hereinafter only the reason for its usage and structure relevant for this example: Strategy large set of related classes differentiated by behavior only. Design pattern Strategy offers a proposition for how to configure a class with one of the many behaviors: 15

9 Factory certain class cannot predict the class of objects it has to instantiate: Continuing the example of invoice VAT calculation, the base of the design is the VAT Calculation Strategy, which serves as a standard interface for VAT calculation. Invoice VAT Group VAT : VAT SetVAT ( in VAT : VAT ) Client request «Strategy» VAT Calculation Strategy Calculate (in Invoice):VAT «Factory» Choose Strategy Choose (): VAT Calculation Strategy Fixed VAT Customer Based VAT Row VAT Calculate (in Invoice):VAT Calculate (in Invoice):VAT Calculate (in Invoice):VAT VAT Tax = Choose Strategy :: Choose (). Calculate ( Invoice ); Invoice. Set VAT ( Tax ); Classes Fixed VAT, Customer Based VAT, and Row VAT are specifications of the abstract class VAT Calculation Strategy and implement relevant algorithms of VAT calculation contained in the Calculate() method (which belongs to the Business Algorithm Category). Next, public class Choose Strategy is defined, implementing a static method Choose(), which gives the Client a memory pointer to the method implementing VAT calculation relevant to the context. In this example the context (and strategy) is given according to the client runtime setting of the country, defined by the class Request. It is important to recognize the following with respect to the described implementation of VAT calculation using the mentioned design patterns: Class Invoice does not know the existence of more ways to calculate VAT. It provides only data that are input for VAT calculation as well as the means to set the VAT from an outside method SetVAT; Abstract class Choose Strategy is the interface for any code of the client. The decision regarding which VAT strategy implementation class is going to be used depends on this class, depending on the environment or the object s attributes; 16

10 The client has three choices: implementation of the default algorithm for the current environment, implementation of the algorithm for a specific environment or invoking a specific algorithm. Studying closely the above-mentioned approach, there are several challenges related to the described technique to implement localization, such as: divergence from OO approach in the sense of decoupling data (in this case VAT) from its methods (VAT calculation), higher design complexity (though compared to the described structural approach more transparent and maintainable), the need to duplicate programming code in case there is larger or smaller amount of source code within the individual algorithms within a set of business algorithms. 1.4 Language Aspects of of each product (i.e., including software) requires the ability to understand each of its parts interacting with end-users in the language of the given Localized Unit. In many countries, the availability of language mutation is legally binding. Therefore, it is an inseparable part of product localization. We can categorize language localization of software products based on whether it has extensive, minimal or no influence on its architecture. Components with extensive influence are: language mutation of user interface, the ability to store name of items (most common are attributes of different classes) in different languages (see more in detail in 10, page 11), the ability to print reports and documents in the language of a Localized Unit, printing of documents (for example, an invoice) in the language of a business partner (in the case of a foreign business partner), the availability of default values in the language of a Localized Unit (i.e., the initial configuration of the system, for example, the names of accounts in the chart of accounts). Components with minimal influence are: process and functional product documentation, procedures and methods (for example, installation manuals), methodological artifacts (for example, chosen best business practices). During the analysis phase of a software s lifecycle, it is important to define which of the components with extensive influence it is necessary to incorporate into the holistic data and functional models. Whereas some of the components influence only the design part of the software lifecycle (or the development environment and supporting tools), others influence the analysis phase as well. Examples from data modelling are string attributes that store values describing, for example, names of warehouse items, names of payment terms, etc. An example from functional modelling is a Business Function implementing printing of any monetary value in its textual string representation in a concrete language. Lastly, the tools and means to ensure translation of elements (created by the developer of the software product) are important, as well as their integration into the lifecycle of development. Individual components are usually consistently created in a selected language 17

11 (usually in English), and then, following a defined process, exported from the development environment (of the software or documentation) to tools enabling their translation and subsequent import into the development environment. An important factor of this process is the translation context, which needs to be preserved during the translation cycle, especially during the translation process itself (i.e., the influence of the context of a translated element on its meaning and the related correctness of the translation of the element, which has to be semantically identical with the original meaning of the element). 2 DESIGN OF FUNDAMENTS OF LOCALIZATION METHODOLOGY As it is evident from the above-mentioned analysis of the state-of-the-art of the software localization domain, the localization methodology must consider data and functional views as well as different levels of aggregation within them. Therefore, in the fundaments of the methodology we are going to focus on the following selected aspects: data attribute, association (relation) and class, and factors that must be considered during localization as well as possible solutions, Business Function, Transaction and Process, where we are going to build on top of the definitions of business algorithms and show particular differences in the context of localization. In the context of modelling steps, in the first step it is possible to create a data model, which reflects the needs of localization as well as directs the definition of a functional model. An example is the need to maintain compatibility with a certain attribute structure (see below), validation of which must be ensured by a business algorithm. This example indicates (as well as real-world experiences, as stated in example in 11, page 5), that the key part of the architecture is its data component. Nevertheless, the functional elements are also important during localization, because they represent the core of business logic, which must be executed in the context of different localizations, based on data structures. Therefore, it is possible to follow the top down approach, where relevant Business Processes, Transactions and Functions are identified, which are relevant for a particular localization, and subsequently one continues with the design of the data model. From an organizational perspective, the composition of team, individuals of which are modelling data and functional parts of the system, is important. Depending on the object being modelled (particular system component), it is important to choose subjects participating in the modelling. Firstly, experts from the domain part of the system being modelled are needed. An example is accounting and auditing, where the general knowledge of accounting is necessary as well as knowledge of specific aspects of Localized Units, for which the localization is being implemented. Next, experts from the data and functional (process) modelling parts (Product Managers) are needed, who are able to transform requirements from the domain experts into related analytical models, which serve as the foundation for a system design and its subsequent implementation. Product Managers are the target audience of the proposed methodological basics of localization, for whom these serve as guidelines for the design of particular models. Lastly, software architects should also be part of the team, who are able to assess the feasibility of the designed analytical models in the context of a concrete development environment or its interoperability with existing software systems or other related systems. In 18

12 the proposed methodological basics of localization, we will exclude the influence of language localization (described in section 1.4) on particular analytical models, in order to focus on the core basics of localization, which is central from our point of view. 2.1 Basic Concepts of Data Modelling When identifying differences in data modelling, it is necessary to consider several aspects related to localization. In this context, we will enumerate the elementary aspects, describe them succinctly, provide an example, and emphasize what is important to consider from the localization perspective as well as provide a set of solution steps methods that can be applied Data Entities and Data Associations (Relations) Existence in the context of a Localized Unit Description Example Set of possible solutions Identifies whether a given data entity is needed in the Localized Unit. Correction Invoice (for example, required in Poland; in other countries Credit Memo is sufficient), Tax Invoice (special type required, for example, in Russian Federation). Certain Localized Units require specific, new, or derived entities, which represent certain concrete requirements resulting from legislation. 1. Create new data entity with parameters and relevant associations with other data entities. 2. Create new data entity using means of specialization from existing data entities (applying parametric polymorphism, etc.). 3. Create new data entity through generalization of an existing data entity with separate generic (valid for a set of Localized Units) attributes; subsequently create specialized data entities, from which the first fulfills the original scope and the second the scope of a given Localized Unit. Modelling of data entities in relation to localization is the most important aspect of the whole design of an application s data model. In generic terms, one needs to apply principles of abstraction, aggregation and flexibility; however, the issue of unknown differences at the time of modelling still persists, as well as the issue of change in time (for example, because of legal changes). Multiplicity Description Example Set of possible solutions Identifies multiplicity between the analyzed data entities. Exchange rate differences related to open documents (for example, invoice). In certain Localized Units, 1..n relation exists (for more open documents there is one aggregated exchange rate difference), in others n..n (for more open documents there are more exchange rate differences). 1. Define the maximum multiplicity taking into account the whole set of Localized Units. Ensure validation control of relationship creation by a business algorithm. 19

13 2. Create a specialized data entity and transfer the relationship from the abstract class to the specialized data entity Attribute Existence in the context of a Localized Unit Description Example Set of possible solutions Identifies whether a particular attribute in a given Localized Unit is required, not required or does not exist (is not defined). Tax Date is in some countries different from the Document Date, or Posting Date. Existence of the attribute for a (set of) Localized Unit(s). 1. Define exactly all relevant attributes of a Localized Unit even though other Localized Units do not require them (i.e., it is semantically incorrect to use the same attribute to store different values). Data Type Description Example Set of possible solutions Identifies what the value of an attribute can be, based on required occurrences in the real world (numeric, alpha-numeric, enumerations, etc.). Tax Identification Number for VAT (VAT ID), which is from a specific Localized Unit s view alpha-numeric. The difference in type (for example numeric vs. alpha-numeric) for different Localized Units, given by legislation, standards, etc. 1. Use data type that is a union of required possibilities (for example, alphanumeric in case of the need for both numeric and alpha-numeric). 2. Use overriding in case the list of types changes, or use attribute abstraction (see more in 11, pages 20-28). 3. For finite sets of values (for example, list of countries), use ISO standards or other standards, which are generally acceptable and exhaustive in their domain context. 4. De-normalize one attribute to two (indicating which Localized Unit is relevant for which), where the semantic meaning of the attributes is the same, but syntactically (data type related) different. This technique, however, creates room for error in the context of attribute usage, and therefore it is important to inspect its impact on the concrete case. Length / Size Description Defines minimum and maximum values for numeric data types, maximum length for alpha-numeric, or their combination. Example Variable symbol in payment transactions, which is in our conditions [translator s note: Slovak Republic] numeric, with a maximum length 10 digits. Difference in length (for example, 10 vs. 12). Set of possible 1. Use the maximum value from the set of acceptable values (for example, 20

14 solutions maximum 12) and ensure through value validation for given Localized Units (using business function). 2. De-normalize one attribute to two (indicating which Localized Unit is relevant for which), where the semantic meaning of the attributes is the same but syntactically (data type related) different (see attribute Data Type and its set of possible solutions). Value Structure Description Example Set of possible solutions Defines valid structure for attribute s values based on required occurrences in the real world. Bank account number is composed from a prefix number and an account number. VAT ID has a prefix containing a country code (for example, SK) and the identification number itself. Different Localized Units have different attribute value structures. 1. Ensure correct value structure on input using valid values verification that is correct for the given Localized Unit (using business function). 2. Split attribute to a set of attributes, from which each part will represent atomic value given by the defined structure. Relation to Data Entity Description Example Set of possible solutions Analysis of the association of a given attribute to a set of data entities and their model in the context of abstraction. Value Added Tax (VAT) for document item rows. In some Localized Units, VAT on a document (for example, invoice) level is sufficient; in other ones, VAT must be present on document item rows as well. In each design, maximize abstraction in order to create a sufficiently generic model that can be applied in different Localized Units. On the other hand, if needed, it is useful to specialize to a level a Localized Unit requires. 1. Create generalized data entity, which contains set of attributes related to all Localized Units. 2. Create specialized data entities, which contains set of attributes related to a specific Localized Unit. The influence of localization on attribute changes is multiple in many cases; i.e., it influences more than one at the same time. In such cases, it is important to consider the intersection of individual areas and choose a solution path that enables their realization in the context of optimal conditions (for example, singularity of existence of an attribute or multiplicity of an association). 2.2 Basic Concepts of Functional Modelling As we stated, functional modelling follows data modelling and creates the primary elements of business logic localization. In the context of OO approaches, behavior of data entities (i.e. classes) is encapsulated with its content (using methods). For simplification, 21

15 however, we will separate data layer (whose definition is primary), followed by analysis of the functional layer, which in many cases connects to the data modelling Business Process Existence in the context of a Localized Unit Description Example Identifies existence of the analyzed business process as a whole in the given Localized Unit (and process requirement within the application in relation to market segment, focus, etc.). Management of checks and bills of exchange. Some Localized Units do not require support of certain business processes; for others it is required by their respective legislations. Solution steps 1. Identify requirements of a Business Process presence in a Localized Unit, and its influence on creation or change (in the context of its domain 3 ) of: data entities, sets of Business Transactions, Business Functions and related business algorithms. 2. Ensure availability of the Business Process in the Localized Unit (in design or runtime). 3. Enable its ad hoc activation for other Localized Units in the case that, in the future, there is a need to support the Business Process. In this case it is important to consider all other aspects of this methodology, because the given Business Process required in a new Localized Unit can require alterations in the different identified areas (data and functional). Sequences Description Example Individual Business Transactions a Business Process consists of can be executed (invoked) in different sequences, and their execution is mandatory or not mandatory, based on the Business Process Definition, according to the given Localized Unit. Issue Down Payment Invoice in the Down Payment Business process. In some Localized Units all steps (Business Transactions) are mandatory; in some they can be omitted or have a different sequence of execution. Solution steps 1. Identify all Business Transactions required to fulfill the goal of a Business Process for related Localized Units. 2. Identify a generic sequence of the related Business Transactions, which is the most suitable one for all Localized Units. 3. Identify differences in execution sequences for different Localized Units, and mapping the different sequences to the context of input and output data entities and their instances, based on whether they: exist (are available when a particular Business Transaction requires them), have required state (whether required values are set for their attributes), 3 In this context domain relates to the respective Business Process. 22

16 2.2.2 Business Transaction create related associations (relations) if relevant instances exist, defined by associations between their data entities). Examined instances are the output (whether created or transformed by another Business Transaction) within the Business Process (for example, that the change of order does not cause non-existence of relevant inputs or incorrect, incomplete, or unprepared values). Existence in the context of a Localized Unit Description Example Existence of the analyzed Business Transaction in the given localized Unit given the requirements of identified Business Processes. Correction Invoice or Credit/Debit Memo. Some Business Transactions are required only for certain sets of Localized Units and some can be substituted by others. For example, a Correction Invoice is related to Central Europe, whereas Credit and Debit Memos are required in many Localized Units (and substitute a Correction Invoice for some). Solution steps 1. Identify the need of a Business Transaction in the context of a given Localized Unit and defined Business Processes. 2. Ensure availability of the Business Transaction in the Localized Unit (in design or runtime). 3. Enable its ad hoc activation for other Localized Units in the case that, in the future, there is a need to support the Business Transaction (see in section Business Process Existence in the context of a Localized Unit Solution steps). Input and Output Parameters Description Execution of a Business Transaction is based on input processing and creation of relevant outputs (data entity instances). Example On input, instances of automated posting entries, items, business partners, etc., during Invoice creation. On output, Posting Entry, Stock Movement Entry (at stock movement), etc. Requirements of Localized Units change the structures on input and output (for example, in some cases the output of a Business Transaction is one instance of a Posting Entry; however, due to reporting requirements of other norms, two Posting Entries must be created in parallel). Solution steps 1. Identify sets of input and output data entities and changes related to different Localized Units. 2. Evaluate differences in processing an expanded or condensed number of input-output instances of data entities in the context of execution steps of a Business Transaction. 23

17 2.2.3 Business Function Algorithm Description The means of execution step by step with a certain set of inputs (attributes values) and outputs (values of output attributes). Example VAT calculation, withholding tax calculation, VAT ID format validation, etc. Different calculation methods; verifications required by legislation. Solution steps 1. Identify differentiation of algorithms in relation to defined set of Business Algorithm Categories. 2. Define relationships to data structures (entities and their attributes) and consider influence of different processing on them (for example, for a certain calculation, it is necessary to store an extended structure of inputs in relation to a Localized Unit). 3. Create an optimal level of abstraction and specialization in relation to the difference of algorithms in relation to a certain business algorithm category. It is important to consider the existence of Business Functions in relation to the requirements of Localized Units as well, in addition to the aspects of input and output parameters (attribute instances). For this, we follow similar steps as for the Business Transactions, keeping in mind the difference given by the level of processing (for example, instead of working with data entities we work with attributes, etc.). 2.3 Open Topics in Data and Functional Modelling From a Perspective In the process of data and functional modelling and analysis of localization impact, many changes occur in the individual models, and disorder becomes an issue in the context of the relation of individual artifacts to Localized Units or set of Localized Units (for example, validity of particular changes in European Union). More elaborate diagrams of data modelling become complex and localization layer is not directly identifiable (for example, if there is a question asking which concrete differences exist between localized units L1 and L2 or what are their specifics). When describing functional models, the complexity of defined algorithms executing certain business logic increases, because a lot of differences are created due to divergence in Localized Units. The result is that, in the context of the proposed methodology, it is necessary to include modelling techniques and create supporting and formalization techniques that would enable covering needs resulting from localization differences, and from management and maintenance of these models within the application development lifecycle. Though existing techniques provide some formalization means (especially in the data modelling domain), with increasing system complexity, however, they cease to be comprehensible, without transparently providing differentiation between Localized Units. 24

18 Conclusion Introduced article summarizes existing state-of-the-art knowledge of localization in application analysis (and partially design). We designate methodological basics in which we propose possible procedures and techniques to apply when developing software solutions requiring functioning in different Localized Units (most commonly a country). We describe steps related to existing application reengineering as well related to their usage or the configuration of applications in a certain country, for which they were not originally intended. In the discussion of data modelling, we have defined fundamental procedures for data entities, associations (relations), and attributes, which must be integrated into the software lifecycle in the case of a localization need. In the context of functional modelling, we derived from existing methods and described fundamental changes that occur during localization of individual functional elements. The designated methodological basics are fundamental for software localization needs; however, they do not cover comprehensively other important software system architectonic aspects, such as more detailed elaboration of the design phase of the lifecycle, influence of translation and language on localization, as well as implementation aspects or the earlier mentioned formalization of supportive techniques and means, the definition of which is our further interest in this area. Key Words Enterprise Software,, ERP, Software Methodology, Analytical Design Patterns, Design Patterns JEL Classification C88, L86, M15, M16 REFERENCES [1] Callaway, E.: Enterprise Resource Planning: Integrating Applications and Business Processes Across the Enterprise. Computer Technology Research Corp., South Carolina, [2] Čarnický, Š.: Manažérske informačné systémy podnikov. Ekonóm, Bratislava, April [3] Danko, A.: Globalizácia vývoja ERP aplikácií pre segment malých a stredných podnikov vybrané aspekty. In: AIESA participácia doktorandov na budovaní spoločnosti založenej na vedomostiach: International scientific conference. Bratislava: FHI, [4] Datsichin, P.: Pluggable business algorithms. [Interné materials.] SAP AG Germany, November [5] Fowler, M.: Analysis Patterns 2 Work In Progress: Accounting Patterns. [online] [cit ]. Available at: < fowler.com>. 25

19 [6] Fowler, M.: Analysis patterns: reusable object models. Addison Wesley, Reading, MA, 1997, ISBN [7] Fry, D. Lommel, A.: The Industry Primer. Second Edition, Industry Standards Association (LISA), Available at: < [8] Gamma, E. et al.: Design Patterns: elements of reusable object-oriented software. Addison Wesley, Reading, MA, [9] Russev, S. a kol.: Metódy vývoja informačných systémov. Ekonóm, Bratislava, 2002, ISBN [10] Globalization: meeting local and global requirements. [online]. SAP White Paper, version 1.2, SAP, Available at: < [11] Šešera, Ľ. Mičovský, A. Červeň, J.: Architektúra softvérových systémov Analytické dátové vzory. STU, Bratislava, 2000, ISBN [12] Závodný, P.: Riadenie projektov informačných systémov. Ekonóm, Bratislava, SUMMARY In this article we describe the fundamentals of software localization, looking at it from the data as well functional aspects. Main focus within the software lifecycle is given to the analysis phase, where we build on the analytical patterns and entity modelling and their fundamental concepts. We describe design and implementation aspects of functional modeling and provide a more broad view on software localization. The main purpose of this article is an introduction to the basics of software localization methodology, describing the different elements of data and functional modelling. It provides initial guidance during design, which is influenced by requirements resulting from legislation of different countries, business practices and other customs. Contact Andrej Danko, Ing. SAP Slovensko s.r.o. Plynárenská 7/A Bratislava 2 Tel: +421 (2) Fax: +421 (2) andrej (dot) danko (at) sap.com 26

Globalizing Development of ERP Applications for SMB Selected Topics Andrej DANKO i

Globalizing Development of ERP Applications for SMB Selected Topics Andrej DANKO i Globalizing Development of ERP Applications for SMB Selected Topics Andrej DANKO i Summary Enterprise resource planning (ERP) applications have become an integral part of companies' information systems

More information

LEADing Practice: Artifact Description: Business, Information & Data Object Modelling. Relating Objects

LEADing Practice: Artifact Description: Business, Information & Data Object Modelling. Relating Objects LEADing Practice: Artifact Description: Business, Information & Data Object Modelling Relating Objects 1 Table of Contents 1.1 The Way of Thinking with Objects... 3 1.2 The Way of Working with Objects...

More information

SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture

SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q Number: S90-03A Passing Score: 800 Time Limit: 120 min File Version: 14.5 http://www.gratisexam.com/ Exam Code: S90-03A Exam Name:

More information

RS MDM. Integration Guide. Riversand

RS MDM. Integration Guide. Riversand RS MDM 2009 Integration Guide This document provides the details about RS MDMCenter integration module and provides details about the overall architecture and principles of integration with the system.

More information

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 1 Mälardalen University, Västerås, Sweden, ivica.crnkovic@mdh.se 2 ABB Corporate Research,

More information

Distribution Training Guide. D110 Sales Order Management: Basic

Distribution Training Guide. D110 Sales Order Management: Basic Distribution Training Guide D110 Sales Order Management: Basic Certification Course Prerequisites The combined D110 Sales Order Management certification course consists of a hands- on guide that will walk

More information

NCOE whitepaper Master Data Deployment and Management in a Global ERP Implementation

NCOE whitepaper Master Data Deployment and Management in a Global ERP Implementation NCOE whitepaper Master Data Deployment and Management in a Global ERP Implementation Market Offering: Package(s): Oracle Authors: Rick Olson, Luke Tay Date: January 13, 2012 Contents Executive summary

More information

DATA QUALITY DATA BASE QUALITY INFORMATION SYSTEM QUALITY

DATA QUALITY DATA BASE QUALITY INFORMATION SYSTEM QUALITY DATA QUALITY DATA BASE QUALITY INFORMATION SYSTEM QUALITY The content of those documents are the exclusive property of REVER. The aim of those documents is to provide information and should, in no case,

More information

Knowledge-based Approach in Information Systems Life Cycle and Information Systems Architecture

Knowledge-based Approach in Information Systems Life Cycle and Information Systems Architecture 5 th Slovakian-Hungarian Joint Symposium on Applied Machine Intelligence and Informatics January 25-26, 2007 Poprad, Slovakia Knowledge-based Approach in Information Systems Life Cycle and Information

More information

Name of pattern types 1 Process control patterns 2 Logic architectural patterns 3 Organizational patterns 4 Analytic patterns 5 Design patterns 6

Name of pattern types 1 Process control patterns 2 Logic architectural patterns 3 Organizational patterns 4 Analytic patterns 5 Design patterns 6 The Researches on Unified Pattern of Information System Deng Zhonghua,Guo Liang,Xia Yanping School of Information Management, Wuhan University Wuhan, Hubei, China 430072 Abstract: This paper discusses

More information

Enable Tax to Calculate on Invoices Originating in Oracle R12 Projects

Enable Tax to Calculate on Invoices Originating in Oracle R12 Projects Specialized. Recognized. Preferred. The right partner makes all the difference. Enable Tax to Calculate on Invoices Originating in Oracle R12 Projects By: Jeanne Cooper Senior Oracle Financials Consultant

More information

Algorithms, Flowcharts & Program Design. ComPro

Algorithms, Flowcharts & Program Design. ComPro Algorithms, Flowcharts & Program Design ComPro Definition Algorithm: o sequence of steps to be performed in order to solve a problem by the computer. Flowchart: o graphical or symbolic representation of

More information

Carnegie Mellon University Master of Science in Information Technology Software Engineering (MSIT-SE) MSIT Project (17-677) Approval Form

Carnegie Mellon University Master of Science in Information Technology Software Engineering (MSIT-SE) MSIT Project (17-677) Approval Form Carnegie Mellon University Master of Science in Information Technology Software Engineering (MSIT-SE) MSIT Project (17-677) Approval Form Student Name: Jane Doe Date: 9/19/2002 Project Title: Re-Engineer

More information

Declaration of Conformity 21 CFR Part 11 SIMATIC WinCC flexible 2007

Declaration of Conformity 21 CFR Part 11 SIMATIC WinCC flexible 2007 Declaration of Conformity 21 CFR Part 11 SIMATIC WinCC flexible 2007 SIEMENS AG Industry Sector Industry Automation D-76181 Karlsruhe, Federal Republic of Germany E-mail: pharma.aud@siemens.com Fax: +49

More information

How To Develop Software

How To Develop Software Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which

More information

Software testing. Objectives

Software testing. Objectives Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating

More information

Service Oriented Architecture (SOA) An Introduction

Service Oriented Architecture (SOA) An Introduction Oriented Architecture (SOA) An Introduction Application Evolution Time Oriented Applications Monolithic Applications Mainframe Client / Server Distributed Applications DCE/RPC CORBA DCOM EJB s Messages

More information

Innovative Analysis of a CRM Database using Online Analytical Processing (OLAP) Technique in Value Chain Management Approach

Innovative Analysis of a CRM Database using Online Analytical Processing (OLAP) Technique in Value Chain Management Approach Innovative Analysis of a CRM Database using Online Analytical Processing (OLAP) Technique in Value Chain Management Approach ADRIAN MICU, ANGELA-ELIZA MICU, ALEXANDRU CAPATINA Faculty of Economics, Dunărea

More information

2. Which transaction in the order-to-cash business process creates a financial accounting document?

2. Which transaction in the order-to-cash business process creates a financial accounting document? SAP EDUCATION SAMPLE QUESTIONS: C_TERP10_65 Disclaimer: These sample questions are for self-evaluation purposes only and do not appear on the actual certification exams. Answering the sample questions

More information

Automated Virtual Cloud Management: The need of future

Automated Virtual Cloud Management: The need of future Automated Virtual Cloud Management: The need of future Prof. (Ms) Manisha Shinde-Pawar Faculty of Management (Information Technology), Bharati Vidyapeeth Univerisity, Pune, IMRDA, SANGLI Abstract: With

More information

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Text book of CPET 545 Service-Oriented Architecture and Enterprise Application: SOA Principles of Service Design, by Thomas Erl, ISBN

More information

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework

More information

A terminology model approach for defining and managing statistical metadata

A terminology model approach for defining and managing statistical metadata A terminology model approach for defining and managing statistical metadata Comments to : R. Karge (49) 30-6576 2791 mail reinhard.karge@run-software.com Content 1 Introduction... 4 2 Knowledge presentation...

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

More information

Data Modeling Basics

Data Modeling Basics Information Technology Standard Commonwealth of Pennsylvania Governor's Office of Administration/Office for Information Technology STD Number: STD-INF003B STD Title: Data Modeling Basics Issued by: Deputy

More information

Database Schema Management

Database Schema Management Whitemarsh Information Systems Corporation 2008 Althea Lane Bowie, Maryland 20716 Tele: 301-249-1142 Email: Whitemarsh@wiscorp.com Web: www.wiscorp.com Table of Contents 1. Objective...1 2. Topics Covered...2

More information

Semantic Business Process Management Lectuer 1 - Introduction

Semantic Business Process Management Lectuer 1 - Introduction Arbeitsgruppe Semantic Business Process Management Lectuer 1 - Introduction Prof. Dr. Adrian Paschke Corporate Semantic Web (AG-CSW) Institute for Computer Science, Freie Universitaet Berlin paschke@inf.fu-berlin.de

More information

Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures

Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures Carsten Hentrich IBM Business Consulting Services, SerCon GmbH c/o IBM Deutschland GmbH Hechtsheimer

More information

Formal Engineering for Industrial Software Development

Formal Engineering for Industrial Software Development Shaoying Liu Formal Engineering for Industrial Software Development Using the SOFL Method With 90 Figures and 30 Tables Springer Contents Introduction 1 1.1 Software Life Cycle... 2 1.2 The Problem 4 1.3

More information

Logical Modeling for an Enterprise MDM Initiative

Logical Modeling for an Enterprise MDM Initiative Logical Modeling for an Enterprise MDM Initiative Session Code TP01 Presented by: Ian Ahern CEO, Profisee Group Copyright Speaker Bio Started career in the City of London: Management accountant Finance,

More information

A Case Study of the Systems Engineering Process in Healthcare Informatics Quality Improvement. Systems Engineering. Ali M. Hodroj

A Case Study of the Systems Engineering Process in Healthcare Informatics Quality Improvement. Systems Engineering. Ali M. Hodroj A Case Study of the Systems Engineering Process in Healthcare Informatics Quality Improvement By Ali M. Hodroj Project Report submitted to the Faculty of the Maseeh School of Engineering and Computer Science

More information

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering.

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering. Service Oriented Architecture Definition (1) Definitions Services Organizational Impact SOA principles Web services A service-oriented architecture is essentially a collection of services. These services

More information

Modeling Guidelines Manual

Modeling Guidelines Manual Modeling Guidelines Manual [Insert company name here] July 2014 Author: John Doe john.doe@johnydoe.com Page 1 of 22 Table of Contents 1. Introduction... 3 2. Business Process Management (BPM)... 4 2.1.

More information

Verification and Validation of Software Components and Component Based Software Systems

Verification and Validation of Software Components and Component Based Software Systems Chapter 5 29 Verification and Validation of Software Components and Component Based Christina Wallin Industrial Information Technology Software Engineering Processes ABB Corporate Research christina.wallin@mdh.se

More information

ARIS Education Package Process Design & Analysis

ARIS Education Package Process Design & Analysis ARIS Education Package Process Design & Analysis ARIS Architect Beginner Modeling Exercises Version 2.1 3, August, 2015 8/3/2015 2015 Software AG. All rights reserved. Table of Contents Introduction...

More information

SOFTWARE. CONSULTING. SOLUTIONS. Smart IT Solutions

SOFTWARE. CONSULTING. SOLUTIONS. Smart IT Solutions SOFTWARE. CONSULTING. SOLUTIONS Smart IT Solutions 2 Content 3 4 6 8 10 11 12 14 15 dbh Logistics IT AG Key Competences and Overview Customs & Foreign Trade Solutions for Customs Clearance in Europe Compliance

More information

A Design Technique: Data Integration Modeling

A Design Technique: Data Integration Modeling C H A P T E R 3 A Design Technique: Integration ing This chapter focuses on a new design technique for the analysis and design of data integration processes. This technique uses a graphical process modeling

More information

A Framework for Virtual Enterprise Support Services

A Framework for Virtual Enterprise Support Services A Framework for Virtual Enterprise Support Services Vaggelis Ouzounis, Volker Tschammer ECCO Electronic Commerce Center of Competence, GMD-Fokus, Kaiserin-Augusta-Allee 31, D-10589, Berlin, Germany Tel:

More information

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1 The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions

More information

The Current Role of Accounting Information Systems

The Current Role of Accounting Information Systems 'Club of Economics in Miskolc' TMP Vol. 8., Nr. 1., pp. 91-95. 2012. The Current Role of Accounting Information Systems ZSUZSANNA TÓTH PH.D. STUDENT e-mail: sttoth@uni-miskolc.hu SUMMARY The primary purpose

More information

UPDATES OF LOGIC PROGRAMS

UPDATES OF LOGIC PROGRAMS Computing and Informatics, Vol. 20, 2001,????, V 2006-Nov-6 UPDATES OF LOGIC PROGRAMS Ján Šefránek Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics, Comenius University,

More information

Patterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering

Patterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering Patterns in Software Engineering Lecturer: Raman Ramsin Lecture 2 GoF Design Patterns Creational 1 GoF Design Patterns Principles Emphasis on flexibility and reuse through decoupling of classes. The underlying

More information

Chapter 7 Application Protocol Reference Architecture

Chapter 7 Application Protocol Reference Architecture Application Protocol Reference Architecture Chapter 7 Application Protocol Reference Architecture This chapter proposes an alternative reference architecture for application protocols. The proposed reference

More information

CUSTOMER Presentation of SAP Predictive Analytics

CUSTOMER Presentation of SAP Predictive Analytics SAP Predictive Analytics 2.0 2015-02-09 CUSTOMER Presentation of SAP Predictive Analytics Content 1 SAP Predictive Analytics Overview....3 2 Deployment Configurations....4 3 SAP Predictive Analytics Desktop

More information

Data Consistency Management Overview January 2014. Customer

Data Consistency Management Overview January 2014. Customer Data Consistency Management Overview January 2014 Customer Agenda Motivation SAP Solution Manager as Tool for Data Consistency Management Transactional Correctness (TC) Guided Self Service Data Consistency

More information

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL This chapter is to introduce the client-server model and its role in the development of distributed network systems. The chapter

More information

SIMATIC IT Production Suite Answers for industry.

SIMATIC IT Production Suite Answers for industry. Driving Manufacturing Performance SIMATIC IT Production Suite Answers for industry. SIMATIC IT at the intersection of value creation processes With SIMATIC IT, Siemens is broadening the scope of MES. Plant

More information

Chapter 8 Software Testing

Chapter 8 Software Testing Chapter 8 Software Testing Summary 1 Topics covered Development testing Test-driven development Release testing User testing 2 Program testing Testing is intended to show that a program does what it is

More information

THE SIMULATION OF SOFTWARE PROCESSES IN THE INTEGRATED COMPUTER ENVIRONMENT IN THE CASE OF TELCO SECTOR

THE SIMULATION OF SOFTWARE PROCESSES IN THE INTEGRATED COMPUTER ENVIRONMENT IN THE CASE OF TELCO SECTOR THE SIMULATION OF SOFTWARE PROCESSES IN THE INTEGRATED COMPUTER ENVIRONMENT IN THE CASE OF TELCO SECTOR Jerzy Roszkowski, Andrzej Kobylinski 2 Management Systems Consulting, Poznanska 28/, 93-34 Lodz,

More information

PERFORMANCE EVALUATION OF ORDER CYCLE OF A MANUFACTURING INDUSTRY

PERFORMANCE EVALUATION OF ORDER CYCLE OF A MANUFACTURING INDUSTRY Chapter 6 PERFORMANCE EVALUATION OF ORDER CYCLE OF A MANUFACTURING INDUSTRY This chapter focuses on design and development of order cycle software for manufacturing industry. To be competitive and responsive,

More information

A Service Modeling Approach with Business-Level Reusability and Extensibility

A Service Modeling Approach with Business-Level Reusability and Extensibility A Service Modeling Approach with Business-Level Reusability and Extensibility Jianwu Wang 1,2, Jian Yu 1, Yanbo Han 1 1 Institute of Computing Technology, Chinese Academy of Sciences, 100080, Beijing,

More information

Engineering Process Software Qualities Software Architectural Design

Engineering Process Software Qualities Software Architectural Design Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical

More information

How To Write A Diagram

How To Write A Diagram Data Model ing Essentials Third Edition Graeme C. Simsion and Graham C. Witt MORGAN KAUFMANN PUBLISHERS AN IMPRINT OF ELSEVIER AMSTERDAM BOSTON LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE

More information

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY COURSE MODULE (C, C++, DS) KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php info@kitestechnology.com technologykites@gmail.com Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

More information

II. TYPES OF LEVEL A.

II. TYPES OF LEVEL A. Study and Evaluation for Quality Improvement of Object Oriented System at Various Layers of Object Oriented Matrices N. A. Nemade 1, D. D. Patil 2, N. V. Ingale 3 Assist. Prof. SSGBCOET Bhusawal 1, H.O.D.

More information

The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision of resources to support service requirements.

The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision of resources to support service requirements. CAPACITY AND AVAILABILITY MANAGEMENT A Project Management Process Area at Maturity Level 3 Purpose The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision

More information

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies)

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Duration of Course: 6 Months Fees: Rs. 25,000/- (including Service Tax) Eligibility: B.E./B.Tech., M.Sc.(IT/ computer

More information

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery Dimitrios Kourtesis, Iraklis Paraskakis SEERC South East European Research Centre, Greece Research centre of the University

More information

Compliance Response Edition 07/2009. SIMATIC WinCC V7.0 Compliance Response Electronic Records / Electronic Signatures. simatic wincc DOKUMENTATION

Compliance Response Edition 07/2009. SIMATIC WinCC V7.0 Compliance Response Electronic Records / Electronic Signatures. simatic wincc DOKUMENTATION Compliance Response Edition 07/2009 SIMATIC WinCC V7.0 Compliance Response Electronic Records / Electronic Signatures simatic wincc DOKUMENTATION Compliance Response Electronic Records / Electronic Signatures

More information

BUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4

BUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4 International Conference 20th EURO Mini Conference Continuous Optimization and Knowledge-Based Technologies (EurOPT-2008) May 20 23, 2008, Neringa, LITHUANIA ISBN 978-9955-28-283-9 L. Sakalauskas, G.W.

More information

Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15

Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15 Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group Tuesday June 12 1:00-2:15 Service Oriented Architecture and the DBA What is Service Oriented Architecture (SOA)

More information

Design Patterns for Complex Event Processing

Design Patterns for Complex Event Processing Design Patterns for Complex Event Processing Adrian Paschke BioTec Center, Technical University Dresden, 01307 Dresden, Germany adrian.paschke AT biotec.tu-dresden.de ABSTRACT Currently engineering efficient

More information

SOFTWARE. CONSULTING. SOLUTIONS. Smart IT Solutions

SOFTWARE. CONSULTING. SOLUTIONS. Smart IT Solutions SOFTWARE. CONSULTING. SOLUTIONS. Smart IT Solutions 2 Content 3 4 6 8 10 11 12 14 dbh Logistics IT AG Key Competences and Overview Customs & Foreign Trade Solutions for Customs Clearance in Europe Compliance

More information

Operational Risk Management in Business Processes

Operational Risk Management in Business Processes Operational Risk Management in Business Processes Alexander Gromoff 1, Julia Stavenko 2, Kristina Evina 3 and Nikolay Kazantsev 4 1,2,3,4 National Research University Higher School of Economics, Faculty

More information

SAP HANA In-Memory Database Sizing Guideline

SAP HANA In-Memory Database Sizing Guideline SAP HANA In-Memory Database Sizing Guideline Version 1.4 August 2013 2 DISCLAIMER Sizing recommendations apply for certified hardware only. Please contact hardware vendor for suitable hardware configuration.

More information

Development, Acquisition, Implementation, and Maintenance of Application Systems

Development, Acquisition, Implementation, and Maintenance of Application Systems Development, Acquisition, Implementation, and Maintenance of Application Systems Part of a series of notes to help Centers review their own Center internal management processes from the point of view of

More information

Introduction to Service Oriented Architectures (SOA)

Introduction to Service Oriented Architectures (SOA) Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction

More information

MULTICRITERIA MAKING DECISION MODEL FOR OUTSOURCING CONTRACTOR SELECTION

MULTICRITERIA MAKING DECISION MODEL FOR OUTSOURCING CONTRACTOR SELECTION 2008/2 PAGES 8 16 RECEIVED 22 12 2007 ACCEPTED 4 3 2008 V SOMOROVÁ MULTICRITERIA MAKING DECISION MODEL FOR OUTSOURCING CONTRACTOR SELECTION ABSTRACT Ing Viera SOMOROVÁ, PhD Department of Economics and

More information

Requirements engineering

Requirements engineering Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and

More information

Object Oriented Databases. OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar

Object Oriented Databases. OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar Object Oriented Databases OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar Executive Summary The presentation on Object Oriented Databases gives a basic introduction to the concepts governing OODBs

More information

TOGAF usage in outsourcing of software development

TOGAF usage in outsourcing of software development Acta Informatica Pragensia 2(2), 2013, 68 76, DOI: 10.18267/j.aip.25 Section: Online: aip.vse.cz Peer-reviewed papers TOGAF usage in outsourcing of software development Aziz Ahmad Rais 1, Rudolf Pecinovsky

More information

KNOWLEDGE FACTORING USING NORMALIZATION THEORY

KNOWLEDGE FACTORING USING NORMALIZATION THEORY KNOWLEDGE FACTORING USING NORMALIZATION THEORY J. VANTHIENEN M. SNOECK Katholieke Universiteit Leuven Department of Applied Economic Sciences Dekenstraat 2, 3000 Leuven (Belgium) tel. (+32) 16 28 58 09

More information

Axiomatic design of software systems

Axiomatic design of software systems Axiomatic design of software systems N.P. Suh (1), S.H. Do Abstract Software is playing an increasingly important role in manufacturing. Many manufacturing firms have problems with software development.

More information

WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT

WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT CONTENTS 1. THE NEED FOR DATA GOVERNANCE... 2 2. DATA GOVERNANCE... 2 2.1. Definition... 2 2.2. Responsibilities... 3 3. ACTIVITIES... 6 4. THE

More information

A Business Process Driven Approach for Generating Software Modules

A Business Process Driven Approach for Generating Software Modules A Business Process Driven Approach for Generating Software Modules Xulin Zhao, Ying Zou Dept. of Electrical and Computer Engineering, Queen s University, Kingston, ON, Canada SUMMARY Business processes

More information

Run-time Variability Issues in Software Product Lines

Run-time Variability Issues in Software Product Lines Run-time Variability Issues in Software Product Lines Alexandre Bragança 1 and Ricardo J. Machado 2 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal, alexandre.braganca@i2s.pt 2 Dep.

More information

Simple Use Case Evaluation Method Determining an EHR Integration Platform Design

Simple Use Case Evaluation Method Determining an EHR Integration Platform Design Original Article en17 Simple Use Case Evaluation Method Determining an EHR Integration Platform Design Daniel Krsička 1, Milan Šárek 2 1 First Faculty of Medicine, Charles University in Prague, Czech Republic

More information

Structural Design Patterns Used in Data Structures Implementation

Structural Design Patterns Used in Data Structures Implementation Structural Design Patterns Used in Data Structures Implementation Niculescu Virginia Department of Computer Science Babeş-Bolyai University, Cluj-Napoca email address: vniculescu@cs.ubbcluj.ro November,

More information

Introduction to Networks

Introduction to Networks www.eazynotes.com Maninder Kaur [Page No. 1] Introduction to Networks Short Answer Type Questions Q-1. Which Technologies of this age had led to the emergence of computer network? Ans: The technologies

More information

Software Development for Multiple OEMs Using Tool Configured Middleware for CAN Communication

Software Development for Multiple OEMs Using Tool Configured Middleware for CAN Communication 01PC-422 Software Development for Multiple OEMs Using Tool Configured Middleware for CAN Communication Pascal Jost IAS, University of Stuttgart, Germany Stephan Hoffmann Vector CANtech Inc., USA Copyright

More information

Fundamentals of Java Programming

Fundamentals of Java Programming Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors

More information

SAP Business ByDesign Improving operations and resource utilization for professional services providers

SAP Business ByDesign Improving operations and resource utilization for professional services providers SAP Business ByDesign Improving operations and resource utilization for professional services providers 2013 SAP AG or an SAP affiliate company. All rights reserved. : Marketing Trends and Challenges Professional

More information

BENEFITS AND ADVANTAGES OF BUSINESS INTELLIGENCE IN CORPORATE MANAGEMENT

BENEFITS AND ADVANTAGES OF BUSINESS INTELLIGENCE IN CORPORATE MANAGEMENT International Journal of Latest Research In Engineering and Computing (IJLREC) Volume 3, Issue 1, Page No. 1-7 January-February 2015 www.ijlrec.com ISSN: 2347-6540 BENEFITS AND ADVANTAGES OF BUSINESS INTELLIGENCE

More information

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,

More information

Information systems modelling UML and service description languages

Information systems modelling UML and service description languages Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Student Contact Hours: 25.02.2015- Location: 325 C3 room 25.03.2015:

More information

A Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development

A Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development A Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development (Position paper) Lothar Hotz and Andreas Günter HITeC c/o Fachbereich Informatik Universität Hamburg Hamburg,

More information

Integration of Application Business Logic and Business Rules with DSL and AOP

Integration of Application Business Logic and Business Rules with DSL and AOP Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl

More information

Quality Management. Lecture 12 Software quality management

Quality Management. Lecture 12 Software quality management Quality Management Lecture 12 Software quality management doc.dr.sc. Marko Jurčević prof.dr.sc. Roman Malarić University of Zagreb Faculty of Electrical Engineering and Computing Department of Fundamentals

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:

More information

Moving from CS 61A Scheme to CS 61B Java

Moving from CS 61A Scheme to CS 61B Java Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you

More information

Towards an Integration of Business Process Modeling and Object-Oriented Software Development

Towards an Integration of Business Process Modeling and Object-Oriented Software Development Towards an Integration of Business Process Modeling and Object-Oriented Software Development Peter Loos, Peter Fettke Chemnitz Univeristy of Technology, Chemnitz, Germany {loos peter.fettke}@isym.tu-chemnitz.de

More information

Defining a generic information model for addressing new service offers in a competitiv scenario

Defining a generic information model for addressing new service offers in a competitiv scenario Defining a generic information model for addressing new service offers in a competitiv scenario Authors: Jean-Daniel Guedj Telecom Argentina Alicia Moreau de Justo 50, 1107 Buenos Aires Argentina Email:

More information

2015-09-24. SAP Operational Process Intelligence Security Guide

2015-09-24. SAP Operational Process Intelligence Security Guide 2015-09-24 SAP Operational Process Intelligence Security Guide Content 1 Introduction.... 3 2 Before You Start....5 3 Architectural Overview.... 7 4 Authorizations and Roles.... 8 4.1 Assigning Roles to

More information

MDM and Data Warehousing Complement Each Other

MDM and Data Warehousing Complement Each Other Master Management MDM and Warehousing Complement Each Other Greater business value from both 2011 IBM Corporation Executive Summary Master Management (MDM) and Warehousing (DW) complement each other There

More information

CHAPTER THREE, Network Services Management Framework

CHAPTER THREE, Network Services Management Framework CHAPTER THREE, Acronyms and Terms 3-3 List of Figures 3-4 1 Introduction 3-5 2 Architecture 3-6 2.1 Entity Identification & Addressing 3-7 2.2 Management Domain Registration and Information Service 3-7

More information

Lightweight Data Integration using the WebComposition Data Grid Service

Lightweight Data Integration using the WebComposition Data Grid Service Lightweight Data Integration using the WebComposition Data Grid Service Ralph Sommermeier 1, Andreas Heil 2, Martin Gaedke 1 1 Chemnitz University of Technology, Faculty of Computer Science, Distributed

More information

How To Use Spera S/4Hana Cloud Project Services Edition

How To Use Spera S/4Hana Cloud Project Services Edition Feature Scope Description Document version: 1.03 2015-07-30 SAP S/4HANA, cloud edition - Feature Scope Description Document History The following table provides an overview of the most important document

More information

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements

More information

How To Use Hansaworld Enterprise

How To Use Hansaworld Enterprise HansaWorld Enterprise Integrated Accounting, CRM and ERP System for Macintosh, Windows, Linux, PocketPC 2003 and AIX Stock Module Program version: 5.1 2006-10-20 2006 HansaWorld Ireland Limited, Dublin,

More information

Description of the program

Description of the program Study program Faculty Cycle Business Informatics Contemporary Sciences and Technologies Undergraduate ECTS 180 Offered in Tetovo and Skopje Description of the program The three-year curricula (Bachelor

More information