Application Development Application Development For us, projects and services, the implementation of which is associated with the development of software products, are more than just creating code according to the technical specifications of the customer. This is an excellent opportunity to participate in the creation of solutions that satisfy the changing and growing expectations of end users of services. Work on such solutions is based on continuous innovation, because the product must be ahead of the market and quickly adapt to changing conditions. Our company constantly helps customers solve various business problems by creating or modifying software products based on the experience and competencies of our close-knit team of specialists. By creating advanced products, we open new sources of revenue for customers or help reduce existing costs, including by increasing productivity and increasing the efficiency of business processes. In the development process, we always take into account the factor of the possible expansion of the company. Therefore, the solution will be built in such a way that it can be easily scaled in the process of growth or transformation of your business. If you are looking for a long-term reliable partner to implement new innovative ideas that will distinguish your business in a tough competitive environment, Green Light Corporate Solutions will provide an excellent result within the specified budget and time. DEVELOPMENT, IMPLEMENTATION AND MAINTENANCE OF CUSTOM APPLICATION SOFTWARE Solutions and their types A solution is a complex of works and resources (software and hardware, personnel, etc.) aimed at eliminating a problem. Customization is tailoring of an existing product to particular consumer’s needs. The solution can be: out-of-the-box (no customization) – MS Word, MS Excel; replicated (customization needed) – EDMS, CRM, ERP; custom, i.e. developed by defined requirements. Benefits of Custom Software Development An individual approach to the Customer, development and implementation of software solutions in accordance with the company’s IT strategy, complementation of existing solutions. An individual information system is guaranteed to include only the functions necessary for the Customer without overloading or complicating the infrastructure. Ability to constantly change functionality of information systems in accordance with new business requirements and legislation. Integration and synchronization of Customer’s applied information systems, including the cases with multi-branch organizational structure; single reporting with multiple data sources. A tailor-made information system is a unique product that meets all the special needs and requirements of the Customer and takes into account working conditions, prospects and pace of company’s development. Besides, custom software development often becomes a necessary complementation of an already implemented box or replicated solution, which allows to increase the functionality of an existing system. Custom software development perfectly suits the companies where management prefers to rely on their own resources and independently control the processes. Stages of development of custom software Technical and commercial offer. Inspection and development of technical and functional specifications. Design, including the development of system architecture, user interface layouts, report design. Development and testing of the system, its documenting. Operation testing, including staff training and migration of accumulated data. Putting into commercial operation, technical support and maintenance of the system. DEVELOPMENT MANAGEMENT TOOLS Efficient coordination of software products development is run using Redmine – the leading-edge system for task management and time tracking To store program code, we use Git version control system designed for effective project handling. Continuous Integration and continuous delivery (CI/CD): Teamcity technology is used to automate build and deploy software products. TECHNOLOGIES The team uses advanced technology to develop industrial software solutions. Such as Java Enterprise Edition, Wildfly, Oracle GlassFish Server 4.x-5.x, Oracle MySQL, MS SQL, Mondrian. PLATFORMS The architecture of software and hardware solutions is selected according to the subject area and tasks of the customer. Our development team uses the following platforms for rapid software development: PHOENIX PHOENIX PLATFORM The Phoenix platform is a rapid application development tool for building multi-level solutions with multi-level architecture. The platform is a product of team’s own development Areas of application: Utilities Ecology Infrastructure As the core part of very different OLTP systems. THE ARCHITECTURE AND TECHNOLOGIES USED The basic level of architecture is the implementation of application system interfaces and services through which the developed components interact with the resources of the technical and software environment. This is a universal software architecture (de facto, an internal corporate standard), which can significantly reduce the development time of applied logic of custom software by generating source codes, unifying software interfaces and reusing service components. The current implementation of the underlying architecture can be represented in three levels: Presentation Level. Unification of access to the server part of the software (through a limited set of commands) allows you to implement the client interface in any programming language. The current implementation includes a universal WEB interface with components generated based on the implementation of server-side business components. The level of business logic. An application running on an application server is a collection of utilities and services performing operations that are specific to a given application. A client of the service can be either a local server business component that implements applied business logic, or external service services or applications hosted in the corporate network or global Internet.Data level. Introduction of an additional abstraction level into the base architecture enabled to achieve relative independence of the application from a particular manufacturer of the database management system (DBMS). The main advantages of using corporate standards and technologies: Unification of software development process. Manageability of development processes. Reducing the time and costs of development. Improving the quality of developed software. Reducing the complexity of programming. Rapid prototyping. Minimization of the following main risks: requirements risks – when a client receives a system that does not meet their needs; technological risks – a wrongly chosen technology may lead to a schedule and budget overrun; architectural risks – a wrongly chosen architecture may lead to a schedule and budget overrun; risks associated with staff qualifications; planning risks; political risks – risks related to corporate policy which go beyond the process of software production. Indirectly, when having equal positions with competitors, a unified software infrastructure and unified development support gives additional distinguishing advantages. Reducing of support cost for information systems developed based on out-of-the-box architectural solution. CASE 1 SYSTEM NAME The pilot census of the population of Ukraine in 2019. CUSTOMER State Statistic Service of Ukraine SYSTEM PURPOSE AND SOLVING TASKS This project is an integral part of the All-Ukrainian census of 2020. The current project solves the following tasks: Definition of methods and basic organizational activities. Approval of innovative technologies. Determination of optimal dates and duration. Defining the concept of data processing technology. Definition of mechanisms of interaction of national statistics bodies with local ones. Technological stages census The data is collected in different ways: self-completion of the respondent via the Internet, field enumeration (at home or at stationary collection points) and control check-up. Next step: the information is consolidated and sent to demographic economists for analysis and removal of duplicates, if the same address was provided in different ways. The next steps of data processing are aggregation, conducting validation rules for data consistency, and building standard reports (output tables). The architecture of the system is designed to provide maximum reliability, fault tolerance and data security because the data collected have the highest value. While being collected, the data gets encrypted immediately, transmitted over encrypted channels and decrypted only in an isolated secure environment. The regional distribution of servers is constructed in such a way that in the event of one or more servers failing ― the system continues to operate using backup channels and capacity of neighboring regional servers to transmit data from the local to the central level. FEATURES OF THE IMPLEMENTED SOLUTION Internet round. The respondent’s self-completion on the Internet occurs during a specially designated period of time (Internet round). The respondent goes to the special web-site and is authorized by electronic signature. Field enumeration. During field enumeration, the enumerators use the tablets to bypass the appropriate list of addresses and interview respondents ― enter data on tablets using specialized software developed by our company. A family tree. A graphical family tree is our know-how in the methodology of data collection on household. This method was used for the first time ever in the world when conducting a census, and it showed great results: reduced the number of errors in determining the family relations between household members for further processing. Census monitoring at the local level During the census it is necessary to monitor the progress of data collection. At the local level, this control is executed by the heads and instructors of the census districts, using a special interface on tablets. Census monitoring at the central level At the central level, the control of data entry is summarized by statuses. Census results According to the results of the census, 9040 respondents of the Obolon district in Kyiv and 2892 respondents of Borodyansky district in Kyiv region were enumerated by the e-census (CAWI) and computer-aided face-to-face interviews (CAPI). The chosen methodology and technology have shown excellent results of reliability and convenience of work with user interfaces ArcGIS PLATFORM CASE 2 SYSTEM NAME Software and Hardware Complex of Block List Forming and Census Zoning for planned Ukrainian Census 2020. CUSTOMER State Statistic Service of Ukraine SYSTEM PURPOSE AND SOLVING TASKS Project goals were: Partition of the whole territory into registration zones Preparing data for updating address base in field Address data collection via tablets Census zoning based on actualized geodata Preparing of enumerator’s individual tasks Forming report data THE ARCHITECTURE AND TECHNOLOGIES USED System data are stored and processed in versioned geodata bases. The system also includes Archive Store, Central Database, Regional Databases, GIS Servers and Geoportal. These parts are served by Central and Regional Administrators. Enumerators use individual tablets to collect the data and transfer it to the regional level, the Database and tablets are synchronized via a closed network. FEATURES OF THE IMPLEMENTED SOLUTION Census zoning technology. Data migration tree begins with Initial Geodatabase which produces division into Registration Zones using prepared tools. Enumerators’ mission is to verify Address Database using Mobile Data Collection Software. Verified geospatial data forms updated Geodatabase. This is the first stage of the data migration cycle. Next, Tool set is prepared for Census Zoning. At that stage territory is divided into smaller units grouped by regions. Each minimal unit is an Individual Task for an enumerator who runs a Survey. Reports are formed after each stage is finished. Eccentex PLATFORM CASE 3 SYSTEM NAME Unified State Transplant Information System. CUSTOMER Ministry of Health of Ukraine. SYSTEM PURPOSE AND SOLVING TASKS The system covers all key logistical processes of the registry’s day-to-day operations: several solutions have been developed on the basis of the Eccentex platform: naging donor and patient records, managing requests, transplant records, and more. THE ARCHITECTURE AND TECHNOLOGIES USED COTS platform Multi tenant Common development technologies – JS, C#, SQL Open ecosystem – the customer can change the configuration of the solution independently Open source code CASE 4 SYSTEM NAME Emergency Response Service Solution 103 CUSTOMER Ministry of Health of Ukraine. National project “Timely Assistance”. SYSTEM PURPOSE AND SOLVING TASKS Emergency Response Service Solution 103 is a complex solution intended for use by operational and dispatching services of emergency medical care and disaster medicine centers. The system is designed for: a new quality level of trouble-free reception and processing of emergency calls on the telephone number “103”: secured by the system when each emergency call is received and not lost or interrupted, even in case of hardware / software failure; technological optimization of provision of medical care, starting from receiving the call, taking into account the driving direction of the ambulance crew, up to hospitalization, including support of the ambulance crew in terms of prompt receipt of advisory and reference information at the hospital stage of patient care, therapeutic and preventive activities to ensure his hospitalization and organization of medical care; optimization of communications between all links from the stage of receiving a subscriber’s request, the actions of the ambulance crew, including the transfer of information in electronic form; ensuring a single transparent system to monitor the use of resources and the final results of ambulance services with a single reporting at the regional and national levels, based on a single information repository; reduction of unreasonable load on ambulance crews in cities due to the introduction of a multi-level system of call processing as well as classification and filtering of calls online based on the analysis of accumulated statistics on subscribers appeals; centralized information support for emergency services in providing assistance to the population. FEATURES OF THE IMPLEMENTED SOLUTION Unified system, single work standards and response resource management Call Handling Reliability 99% fault tolerance Compliance with EENA NG 112, TIA 942, TIA 1179 (Healthcare infrastructure standard) Using SIP Digital Communication Protocols Getting location information based on ANI / ALI (Automatic Number Identification – Automatic location identification) The ability to determine the caller’s location coordinates (provided that such information streamed by the telecom operator) Using GPS to locate response forces Service for hearing and speech impaired subscribers.