EDBT 2026 Demo / reviewers in the wild / expert
Alexander Ran
dblp:93/2105
· DBLP profile ↗
13ranked-venue papers
3as first author
0since 2021 · last 2020
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 10 · 3 first-authorArtificial intelligence and machine learning · 2Graphics, computer vision, multimedia, augmented reality and games · 2Applied, interdisciplinary, general and emerging computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Interdisciplinary, comprehensive, and emerging computing
2 papers |
Computational finance and economics · 100% | |
| Software engineering, system software, and programming languages
8 papers |
Requirements engineering and software design · 55% Program analysis · 23% Software testing · 22% | |
| Artificial intelligence
1 paper |
Trustworthy machine learning · 100% | |
| Databases, data mining, and information retrieval
2 papers |
Data mining · 100% | |
| Computer architecture, parallel and distributed computing, and storage systems
3 papers |
Embedded and real-time systems · 90% Electronic design automation · 10% |
Topics — the 17 heaviest of 21, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Machine learning › Trustworthy machine learning
interpretability |
0.4 | 1 | 2020 | Using Small Business Banking Data for Explainable Credit Risk Scoring · AAAI 2020 |
Computational finance and economics › credit risk
credit scoring |
0.4 | 1 | 2020 | Using Small Business Banking Data for Explainable Credit Risk Scoring · AAAI 2020 |
Requirements engineering and software design
software architecture |
0.1 | 4 | 2003 | Making sense of runtime architecture for mobile phone software · ESEC / SIGSOFT FSE 2003 Workshop on methods and techniques for softwaer architecture review and assessment (SARA) · ICSE 2002 Fundamental concepts for practical software architecture · ESEC / SIGSOFT FSE 2001 |
Embedded and real-time systems › real-time scheduling
fixed-priority scheduling |
0.0 | 1 | 2003 | Can Fixed Priority Scheduling Work in Practice? · RTSS 2003 |
Embedded and real-time systems
real-time scheduling |
0.0 | 1 | 2003 | Can Fixed Priority Scheduling Work in Practice? · RTSS 2003 |
Program analysis
dynamic analysis |
0.0 | 2 | 2001 | Third eye - specification-based analysis of software execution traces (poster) · ICSE 2000 Tracing Execution of Software for Design Coverage · ASE 2001 |
Program analysis › dynamic analysis
program tracing |
0.0 | 2 | 2001 | Third eye - specification-based analysis of software execution traces (poster) · ICSE 2000 Tracing Execution of Software for Design Coverage · ASE 2001 |
Software testing
software validation |
0.0 | 1 | 2002 | Software validation using power profiles · ICSE 2002 |
Requirements engineering and software design › software architecture › architecture documentation
architecture views |
0.0 | 1 | 2001 | Fundamental concepts for practical software architecture · ESEC / SIGSOFT FSE 2001 |
Requirements engineering and software design › software architecture › reusable architecture
product line architecture |
0.0 | 1 | 2001 | Fundamental concepts for practical software architecture · ESEC / SIGSOFT FSE 2001 |
Software testing
test coverage |
0.0 | 1 | 2001 | Tracing Execution of Software for Design Coverage · ASE 2001 |
Software testing › test process › test design
test suite design |
0.0 | 1 | 2001 | Tracing Execution of Software for Design Coverage · ASE 2001 |
Program analysis › dynamic analysis › trace analysis
execution trace analysis |
0.0 | 1 | 2000 | Third eye - specification-based analysis of software execution traces (poster) · ICSE 2000 |
Requirements engineering and software design › software design
design reuse |
0.0 | 1 | 1997 | Configuring Designs for Reuse · ICSE 1997 |
Requirements engineering and software design
software product lines |
0.0 | 1 | 1997 | Configuring Designs for Reuse · ICSE 1997 |
Electronic design automation › power analysis
power profiling |
0.0 | 1 | 2002 | Software validation using power profiles · ICSE 2002 |
Requirements engineering and software design › requirements validation
specification validation |
0.0 | 1 | 2000 | Third eye - specification-based analysis of software execution traces (poster) · ICSE 2000 |
Methods — techniques the papers use, named apart from their topics
weight of evidence · 1.3monotonic constraints · 1.3XGBoost · 1.3SHAP · 1.3machine learning · 0.8runtime architecture design · 0.0tutorial · 0.0trace analysis · 0.0statechart and structure diagram abstraction · 0.0prolog · 0.0event tracing · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2020 | Using Small Business Banking Data for Explainable Credit Risk ScoringabstractMachine learning applied to financial transaction records can predict how likely a small business is to repay a loan. For this purpose we compared a traditional scorecard credit risk model against various machine learning models and found that XGBoost with monotonic constraints outperformed scorecard model by 7% in K-S statistic. To deploy such a machine learning model in production for loan application risk scoring it must comply with lending industry regulations that require lenders to provide understandable and specific reasons for credit decisions. Thus we also developed a loan decision explanation technique based on the ideas of WoE and SHAP. Our research was carried out using a historical dataset of tens of thousands of loans and millions of associated financial transactions. The credit risk scoring model based on XGBoost with monotonic constraints and SHAP explanations described in this paper have been deployed by QuickBooks Capital to assess incoming loan applications since July 2019. Wei Wang 0237, Christopher Lesner, Alexander Ran, Marko Rukonic, Jason Xue 0003, Eric Shiu |
AAAI | 3 |
| 2019 | Large Scale Personalized Categorization of Financial TransactionsabstractA major part of financial accounting involves tracking and organizing business transactions over and over each month and hence automation of this task is of significant value to the users of accounting software. In this paper we present a large-scale recommendation system that successfully recommends company specific categories for several million small businesses in US, UK, Australia, Canada, India and France and handles billions of financial transactions each year. Our system uses machine learning to combine fragments of information from millions of users in a manner that allows us to accurately recommend user-specific Chart of Accounts categories. Accounts are handled even if named using abbreviations or in a foreign language. Transactions are handled even if a given user has never categorized a transaction like that before. The development of such a system and testing it at scale over billions of transactions is a first in the financial industry. Christopher Lesner, Alexander Ran, Marko Rukonic, Wei Wang 0237 |
AAAI | 2 |
| 2007 | A general model of software architecture design derived from five industrial approaches
Christine Hofmeister, Philippe Kruchten, Robert L. Nord, J. Henk Obbink, Alexander Ran, Pierre America |
J. Syst. Softw. | 5 |
| 2005 | Generalizing a Model of Software Architecture Design from Five Industrial ApproachesabstractWe compare five industrial software architecture design methods and we extract from their commonalities a general software architecture design approach. Using this general approach, we compare across the five methods the artifacts and activities they use or recommend, and we pinpoint similarities and differences. Once we get beyond the great variance in terminology and description, we find that the 5 approaches have a lot in common and match more or less the "ideal" pattern we introduced. Christine Hofmeister, Philippe Kruchten, Robert L. Nord, J. Henk Obbink, Alexander Ran, Pierre America |
WICSA | 5 |
| 2003 | Can Fixed Priority Scheduling Work in Practice?abstractMobile phones serve as platforms for a variety of mobile applications including text and picture messaging as well as personal information management, including data synchronization with remote servers and desktop computers. They also host a range of communication-centered applications most of which have real-time constraints. To improve the performance of the mobile phone software, we focused on the runtime software architecture - a partition of all software functions into concurrent units and a scheduling policy that delivers the best possible service to the user with available resources. The units of concurrency in most products are operating system tasks. Thus, partition of software into tasks and allocation of functionality to tasks in the form of objects or functions are the most important decisions in the design of the runtime architecture (Ran et al., 2003). In this paper, we focus on the scheduling policy and its parameters. Some problems encountered in our project can be solved by a different task design. However, task redesign often is not feasible in industrial setting since it takes a long time and has high costs. Raimondas Lencevicius, Alexander Ran |
RTSS | 2 |
| 2003 | Making sense of runtime architecture for mobile phone softwareabstractMaking sense of runtime architecture for mobile phone software. Alexander Ran, Raimondas Lencevicius |
ESEC / SIGSOFT FSE | 1 |
| 2002 | Workshop on methods and techniques for softwaer architecture review and assessment (SARA)abstractNo abstract available. Philippe Kruchten, Rich Hilliard, Rick Kazman, Wojtek Kozaczynski, J. Henk Obbink, Alexander Ran |
ICSE | 6 |
| 2002 | Software validation using power profilesabstractNo abstract available. Raimondas Lencevicius, Edu Metz, Alexander Ran |
ICSE | 3 |
| 2001 | Tutorial on Fundamental Concepts for Practical Software Architecture
Alexander Ran |
ICSE | 1 |
| 2001 | Tracing Execution of Software for Design CoverageabstractTest suites are designed to validate the operation of a system against requirements. One important aspect of a test suite design is to ensure that system operation logic is tested completely. This is a difficult task. Code coverage tools support test suite designers by providing the information about which parts of source code are covered during system execution. Unfortunately, code coverage tools produce only source code coverage information. For a test engineer it is often hard to understand what the noncovered parts of the source code do and how they relate to requirements. We propose a generic approach that provides design coverage of the executed software, simplifying the development of new test suites. We demonstrate our approach on common design abstractions such as statecharts and structure diagrams. We implement the design coverage using tracing and a trace analysis framework. Using design coverage, test suites could be created faster by focussing on untested design elements. Raimondas Lencevicius, Edu Metz, Alexander Ran |
ASE | 3 |
| 2001 | Fundamental concepts for practical software architectureabstractArchitecture of software is a collection of design decisions that are expensive to change. How to identify which design decisions are expensive to change? What are architecture views and which views are needed to adequately describe the architecture of a specific system? How to create and manage software architecture for a product family? This tutorial offers answers to these and other questions that arise in the context of complex software development. We introduce a system of concepts useful in order to understand, design, and evaluate architecture of software intensive systems and system families. Our approach utilizes different software structures in order to control important system qualities related to its development, performance, and evolution. We draw our experience primarily from software embedded in voice and data communication systems. However the same principles can be applied to software architecture in other domains. This tutorial should be useful to engineers and technical managers involved in construction or evaluation of complex software. Alexander Ran |
ESEC / SIGSOFT FSE | 1 |
| 2000 | Third eye - specification-based analysis of software execution traces (poster)abstractAnother concept of Third Eye is the tracing state. Tracing state is a set of event types generated in that state, other event types are filtered out and not reported. The system is always in a specific tracing state. Tracing states correspond to specifications. A program specification describes a set of constraints on events. The event types used in a specification have to be monitored to validate a trace against this specification. All event types contained in a specification and monitored for this specification form a tracing state. Tracing states also control the overhead of tracing on the executing system.The Third Eye framework includes modules for event type definition, event generation and reporting, tracing state definition and management, trace logging, query and browsing interfaces. Modules of event type definition, event reporting facility and tracing state controler are integrated with the software of the system under trace (SUT). The rest of the modules are independent from the SUT and can be deployed on a different execution platform to minimize the influence on system performance. Trace delivery for logging and analysis uses alternative interfaces to accommodate devices with different data storage and connectivity capabilities. We have implemented Third Eye framework prototype currently used by the Third Eye project team in collaboration with product development teams in Nokia's business units. We used Third Eye to test a number of software systems: the memory subsystem of one of Nokia's handsets, Apache Web Server, and WAP (Wireless Application Protocol) client. WAP is an industrial standard for applications and services that operate over wireless communication networks. We validated message sequences in this protocol by adding events in the functions that correspond to the protocol primitives and then checking whether the event sequence corresponds to the protocol message sequence. Events are mapped to Prolog facts and constraints are expressed as Prolog rules. Third Eye can be used for debugging, monitoring, specification validation, and performance measurements. These scenarios use typed events—a concept simple and yet expressive enough to be shared by product designers and developers. The Third Eye has an open architecture allowing easy replacement of third-party tools, including databases, analysis and validation tools. Third Eye is a practical framework for specification-based analysis and adaptive execution tracing of software systems. Raimondas Lencevicius, Alexander Ran, Rahav Yairi |
ICSE | 2 |
| 1997 | Configuring Designs for ReuseabstractThe main problem in developing software product families is how to share effort and reuse parts of design and implementation while providing variation of features and capabilities in the products.We discuss the mechanisms that are commonly used to achieve reuse and sharing in product families, and the kind of variance each is best suited for.Our analysis motivates a need for a new mechanism to deal with ad hoc variation of features found in different members of a family.We argue that higher level abstraction and parametrization techniques are not well suited for this task.We propose an alternative approach that enables sufficiently detailed designs for every variant and at the same time achieves a level of design reuse without making designs unnecessarily complex or implementations inefficient. Anssi Karhinen, Alexander Ran, Tapio Tallgren |
ICSE | 2 |