STELLA (programming language)

{{Infobox programming language

| name = STELLA

| logo = STELLA programming language logo.gif

| paradigm = Visual programming, simulation language

| year = {{Start date and age|1985}}

| developer = isee systems (formerly High Performance Systems)

| designer = Barry Richmond

| latest release version = 2.0.3{{cite web|title=Feature updates|url= https://www.iseesystems.com/store/products/feature-updates.aspx |publisher=isee systems |url-status=live |archive-url= https://web.archive.org/web/20210113235758/https://www.iseesystems.com/store/products/feature-updates.aspx |archive-date=January 13, 2021}}

| latest release date = {{Start date and age|2020|11|25}}

| influenced_by = DYNAMO

| operating_system = macOS, Windows.{{cite web|title=Software FAQs |url= https://www.iseesystems.com/resources/faqs/software.aspx |publisher=isee systems|url-status=live |archive-url= https://web.archive.org/web/20201128014415/https://iseesystems.com/resources/faqs/software.aspx |archive-date=November 28, 2020}}

| license = Proprietary

| website = {{URL|http://www.iseesystems.com/}}

| file_ext = .stm, .stmx, .itm, .itmx

}}

STELLA (short for Systems Thinking, Experimental Learning Laboratory with Animation; also marketed as iThink) is a visual programming language for system dynamics modeling introduced by Barry Richmond in 1985. The program, distributed by isee systems (formerly High Performance Systems) allows users to run models created as graphical representations of a system using four fundamental building blocks. STELLA has been used in academia as a teaching tool and has been utilized in a variety of research and business applications. The program has received positive reviews, being praised in particular for its ease of use.{{cite journal|last1=Costanza |first1=R. |title=Simulation Modeling on the Macintosh Using STELLA |journal=BioScience |date=February 1987 |volume=37 |issue=2 |pages=129–132 |doi=10.2307/1310367|jstor=1310367|s2cid=56217107 |url= https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=1066&context=iss_pub|url-access=subscription }} {{closed access}}{{cite journal|last1=Carter |first1=J. |title=Two Visual Programming Languages for Simulation Modeling: Stella 5.0 and Modelmaker 3.0 |journal=Bulletin of the Ecological Society of America |date=October 1998 |volume=79 |issue=4 |pages=237–239 |doi=10.2307/20168276 |jstor=20168276|s2cid=62582639 }} {{closed access}}{{cite journal|last1=Samzelius |first1=J. E. |last2=Miller |first2=S. E. |title=ithink: Animated Strategic Models on Your Desktop Computer |journal=Planning Review |date=1991 |volume=19 |issue=1 |pages=32–34 |doi=10.1108/eb054316}} {{closed access}}

History

While working at the Massachusetts Institute of Technology in the 1960s, Jay Wright Forrester developed the earliest understanding of system dynamics which he argued could only be understood using models.{{cite journal|last1=Doerr|first1=H. M.|title=Stella ten years later: A review of the literature|journal=International Journal of Computers for Mathematical Learning |date=1996 |volume=1 |issue=2 |pages=201–224 |doi=10.1007/BF00571080 |s2cid=19428296}} {{closed access}} Dartmouth College systems science professor Barry Richmond founded High Performance Systems in 1984.{{cite press release|title=High Performance Systems, Inc. becomes isee systems |url= http://www.iseesystems.com/community/pressreleases/20040304.pdf |location= Lebanon, NH|publisher=isee systems |date=March 4, 2004 |access-date=March 1, 2016 |archive-date=October 22, 2006 |archive-url= https://web.archive.org/web/20061022130939/http://www.iseesystems.com/community/pressreleases/20040304.pdf}} With the financial support of Analog Devices, Inc. and technical support from Apple Computer, he developed STELLA (short for Structural Thinking, Experimental Learning Laboratory with Animation) at his company.{{cite conference|url= http://www.systemdynamics.org/conferences/2003/proceed/PAPERS/417.pdf |title=Barry Richmond, System Dynamics and Public Policy |last1=Peterson|first1=S.|date=July 2003|conference=21st System Dynamics Conference |location=New York City |pages=1–14|access-date=February 29, 2016|archive-date=March 1, 2013 |archive-url= https://web.archive.org/web/20130301012759/http://www.systemdynamics.org/conferences/2003/proceed/PAPERS/417.pdf}}{{sfn|Bossel|1994|p=213}} He presented the prototype for the visual programming language in 1985 at the System Dynamics Society's annual conference in a paper entitled "STELLA: Software for Bringing System Dynamics to the Other 98%".{{sfn|Richmond et al.|1987|p=iv}}

Within that paper, Richmond mused on the study of system dynamics: "If this stuff really is so great, then why hasn't the field 'taken off'?"{{cite conference|url= http://www.systemdynamics.org/conferences/1985/proceed/richm706.pdf |title=STELLA: Software for Bringing System Dynamics to the Other 98%|last1=Richmond|first1=B.|date=1985|conference=The 3rd International Conference of the System Dynamics Society |location=Keystone, CO |pages=706–718|access-date=February 29, 2016 |archive-date=March 1, 2016 |archive-url= https://web.archive.org/web/20160301004829/http://www.systemdynamics.org/conferences/1985/proceed/richm706.pdf}} Steve Peterson, a colleague of Richmond's, reflected after his death in 2002 that Richmond held the belief that modeling was a tool everyone should be using and that that notion was reflected in Richmond's work. He quoted a 1994 paper in which Richmond described STELLA as "quite unique, quite powerful, and quite broadly useful as a way of thinking and or learning. It's also capable of being quite transparent–leveraging the way we learn biology, manage our businesses, or run our personal lives".

Functionality and features

File:Cat population, STELLA model.svg

STELLA's approach to modeling systems shares some similarities with a precursor, the DYNAMO simulation language. DYNAMO explicitly defined "stocks" (reservoirs) and "flows" (inputs and outputs) as key variables in a system, a vocabulary that STELLA shares.{{sfn|Bossel|1994|p=213}} Within STELLA, users are presented with a graphical user interface in which they may create graphical models of a system using four fundamentals: stocks, flows, converters, and connectors.{{cite conference|last1=de Souza |first1=R. |last2=Huynh |first2=R. |last3=Chandrashekar |first3=M. |last4=Thevenard |first4=D. |title=A comparison of modelling paradigms for manufacturing line|date=October 1996 |conference=IEEE International Conference on Systems, Man, and Cybernetics, 1996 |doi=10.1109/ICSMC.1996.571288 |location=Beijing|pages=1253–1258}} {{closed access}} Relationships between converters (which convey transforming variables) and other elements may be drawn with converters. Users are able to input values for stocks, flows, and converters (including a variety of built-in functions).{{sfn|Hannon & Ruth|1997|p=13}} STELLA does not differentiate between external and intermediate variables within a system; all of them are represented with converters.{{sfn|Bossel|1994|p=216}}

The software produces finite difference equations that describe the graphical model and allows users to select a numerical analysis method to apply to the system, either the Euler method or various Runge–Kutta methods (either second or fourth order).{{cite conference |title=Simulation and modelling with Stella: a general education course |conference=22nd SIGCSE Technical Symposium on Computer Science Education|date=March 1991 |location=San Antonio, TX |last1=Taffe |first1=W. J. |pages=87–91 |doi=10.1145/107005.107021}} {{closed access}} Before running a model, users may also specify a time step and runtime for the simulation.{{sfn|Hannon & Ruth|1997|p=14}} STELLA can output data in graphical or tabular forms.{{sfn|Bossel|1994|p=219}}

STELLA runs one window at a time, meaning that only one model can be run at any given moment. The program's native file formats are denoted either by an .stm, .stmx, .itm, or .itmx filename extension. STELLA also uses the emerging XML-based standard for storing models, XMILE.{{cite web|title=XMILE – An open standard for system dynamics models|url= https://blog.iseesystems.com/news-announcements/xmile-faq/|publisher=isee systems |access-date=January 23, 2018 |date=2013}} In 2012, two researchers released StellaR, software which can translate STELLA models into the R programming language.{{cite journal |last1=Naimi |first1=B. |last2=Voinov |first2=A. |title=StellaR: A software to translate Stella models into R open-source environment|journal=Environmental Modelling & Software|date=December 2012 |volume=38 |pages=117–118 |doi=10.1016/j.envsoft.2012.05.012|url=https://ris.utwente.nl/ws/files/7072708/stellaR.pdf }} {{closed access}}

Applications

=Education=

File:Forest biomass carbon model in STELLA.png

Because of its simplicity relative to more complex modeling languages, STELLA has been cited as a useful tool in educational settings. Richmond derisively viewed most education as "assimilating content" and proposed systems thinking as a remedy to this.{{sfn|Richmond|2013|pp=9–11}}

In 1987, High Performance Systems released a guide to STELLA encouraging its use in academic settings{{sfn|Richmond et al.|1987|pp=245–246}} and numerous textbooks have been published that teach modeling and systems thinking using the software.{{sfn|Hannon & Ruth|1997|p=vi}}{{sfn|Bossel|1994|p=xv}} Sample exercises with STELLA include recreating the Daisyworld model,{{sfn|Hannon & Ruth|1997|p=357}} simulating the Easter Island population crash,{{cite web|last1=Menking|first1=K.|date=January 7, 2016|title=Unit 2 Reading: Growth and Dynamics of Populations|url= http://serc.carleton.edu/integrate/teaching_materials/earth_modeling/student_materials/unit2_article1.html |website=InTeGrate |publisher=Carleton College |access-date=March 3, 2016|archive-date=March 4, 2016|archive-url= https://web.archive.org/web/20160304012057/http://serc.carleton.edu/integrate/teaching_materials/earth_modeling/student_materials/unit2_article1.html}} and modeling the protagonist's motivation throughout William Shakespeare's Hamlet.{{cite journal|last1=Hopkins |first1=P. L.|title=Simulating Hamlet in the classroom |journal=System Dynamics Review |date=Winter 1992 |volume=8 |issue=1 |pages=91–98 |doi=10.1002/sdr.4260080109}} {{closed access}}

A 2010 study of the efficacy of project-based learning upon a watershed-modeling project undertaken by 72 middle schoolers found that the addition of a STELLA modeling component in the project improved overall comprehension of the material over traditional methods, especially among female students who outperformed their male counterparts with the addition of STELLA.{{cite journal|last1=Eskrootchi|first1=R.|last2=Oskrochi|first2=G. R.|title=A Study of the Efficacy of Project-based Learning Integrated with Computer-based Simulation – STELLA |journal=Journal of Educational Technology & Society |date=January 2010 |volume=13 |issue=1 |pages=236–245 |jstor=jeductechsoci.13.1.236}} {{closed access}}

=Academia and commerce=

The software is also used in research settings. Among other projects, researchers have used STELLA to apply Hubbert peak theory to the Chinese coal supply,{{cite journal|last1=Tao|first1=Z.|last2=Li|first2=M.|title=What is the limit of Chinese coal supplies—A STELLA model of Hubbert Peak|journal=Energy Policy|date=June 2007|volume=35|issue=6|pages=3145–3154|doi=10.1016/j.enpol.2006.11.011}} {{closed access}} to model atrazine dynamics within agricultural lands,{{cite journal|last1=Ouyang |first1=Y. |last2=Zhang |first2=J. E. |last3=Lin |first3=D. |last4=Liu |first4=G. D. |title=A STELLA model for the estimation of atrazine runoff, leaching, adsorption, and degradation from an agricultural land|journal=Journal of Soils and Sediments |date=March 2010 |volume=10 |issue=2 |pages=263–271 |doi=10.1007/s11368-009-0107-8|bibcode=2010JSoSe..10..263O |s2cid=14407780}} {{closed access}} and to simulate the interactions between marine macroinvertebrates.{{cite journal|last1=Gertseva |first1=V. V. |last2=Schindler |first2=J. E. |last3=Gertsev |first3=V. I. |last4=Ponomarev |first4=N. Y. |last5=English |first5=W. R. |title=A simulation model of the dynamics of aquatic macroinvertebrate communities |journal=Ecological Modelling |date=August 2004 |volume=176 |issue=1–2 |pages=173–186 |doi=10.1016/j.ecolmodel.2003.10.029}} {{closed access}}

isee systems{{efn|High Performance Systems changed its name to isee systems in 2004.}} markets an identical software targeted at business consumers under the name iThink (previously STELLA for Business).{{sfn|Hannon & Ruth|1997|p=6}} iThink models have been applied to a variety of systems including manufacturing lines, hospital waste in developing nations,{{cite journal|last1=Eleyan|first1=D.|last2=Al-Khatib|first2=I. A.|last3=Garfield|first3=J.|title=System dynamics model for hospital waste characterization and generation in developing countries|journal=Waste Management & Research |date=October 2013|volume=31|issue=10|pages=986–995 |doi=10.1177/0734242X13490981 |pmid=23743573 |bibcode=2013WMR....31..986E |s2cid=33919085 |url= http://eprints.worc.ac.uk/3197/1/System%20dynamics%20model%20for%20hospital%20waste%20characterization%20and%20generation%20in%20developing%20countries.pdf}} {{closed access}} coordination between an emergency room and hospital beds,{{cite conference |last1=Spillan |first1=John E. |last2=Ziemnowicz |first2=Christopher |title=Using Systems Dynamics to Improve Coordination Between Hospital Units |url= https://www.researchgate.net/publication/365623311 |conference=Southeast Decision Sciences Institute Annual Conference |date=February 2009 |location=Charlestown, SC |access-date=November 26, 2022}} and competition in the home video market.

Reception

In a 1987 review of the program in BioScience, Robert Costanza wrote that "STELLA is a solid program–well planned and executed–that breaks new ground." He praised its ease of use as beneficial both to beginners interested in learning how to build models and experts who could use it to test components of more complex models. A 1998 review of the program in the Bulletin of the Ecological Society of America concurred that the program was easy to use, especially for beginning modelers, but noted its lack of model optimization tools and the ability to run only one window at a time as drawbacks.

Writing for Complexity in 1997, Benedikt Hallgrímsson found the program's accompanying manual to be overzealous in its promotion of systems theory but cautioned that "the manual need not detract from what is otherwise a very well-thought-out and constructed program."{{cite journal|last1=Hallgrímsson|first1=B.|title=Simulation Made Simple|journal=Complexity|date=July–August 1997 |volume=2 |issue=6 |pages=38–40 |doi=10.1002/(SICI)1099-0526(199707/08)2:6<38::AID-CPLX8>3.0.CO;2-D|doi-access=free}}

A 1991 review of iThink in Planning Review noted that the software's strength was in its low cost (the program retailed at around $450 (US${{formatnum:{{Inflation|US|450|1991}}}} in {{Inflation-year|US}} dollars {{inflation-fn|US}}) and the vast number of possibilities allowed by its open-ended form.

See also

Notes

{{Notelist}}

References

{{reflist|30em}}

=Cited=

  • {{cite book|last1=Bossel|first1=H.|title=Modeling and Simulation|date=1994|publisher=A K Peters |location=Wellesley, MA |isbn=978-1-56881-033-1|doi=10.1007/978-3-663-10822-1}}
  • {{cite book|last1=Hannon|first1=B.|last2=Ruth|first2=M.|title=Modeling Dynamic Systems|date=1997|publisher=Springer-Verlag |location=New York City|isbn=978-0-387-94850-8|ref={{harvid|Hannon & Ruth|1997}}}}
  • {{cite book|last1=Richmond|first1=B.|last2=Peterson|first2=S.|last3=Vescuso|first3=P.|title=An Academic User's Guide to STELLA |date=1987|publisher=High Performance Systems|location=Lyme, NH|ref={{harvid|Richmond et al.|1987}}}}
  • {{cite book|last1=Richmond|first1=B.|title=An Introduction to Systems Thinking, STELLA|date=2013|publisher=isee systems |location=Lebanon, NH|isbn=978-0-9704921-1-1|url-access=registration|url= https://archive.org/details/introductiontosy00slis}}