Knowledge for the future

Published: Last Edited:

Knowledge can be defined from narrow scope, as simple as organized information for future use, to broader ones. Van der Spek and Speijkervet, in article quoted by Leibowitz (1999 p. 6), defined knowledge as the whole set of insights, experiences, and procedures that are considered correct and true and that therefore guide the thoughts, behaviours, and communication of people. Knowledge can reside in several media like human mind, organization, document, and computer. Without doubt, knowledge in the human mind is often difficult to access; document knowledge can be e.g. simple free text, charts, well-structured tables; computer knowledge is formalized, often very well-structured, well-organized, and most importantly, thank to the non-stopping technology evolution easy to share and manageable.

Organizational knowledge as the collective sum of human-centred, intellectual property, infrastructure and market assets (Brooking 1996), covers how well one knows the workings of the company, to knowing how well competitors are performing, to knowing the market in general, and in regards to knowing the wishes of your target audience depending on the location that you are performing business in.

Modern technology brought together with knowledge (or organizational knowledge) creates an Information System that has been defined as an organized collection, storage, and presentation system of data and other knowledge for decision making, progress reporting, and for planning and evaluation. It can be either manual, computerized, or a combination of both (Bureau of justice assistance 2009).

Knowledge makes up the most valuable active of any organization of the information society. It is essential to discuss differences between data, information and knowledge. Data can be described as a text that does not answer questions to a particular problem, information as a text that answers the questions who, when, what, or where and knowledge as a text that answers the questions why and how (Quigley & Debons 1999). As notion of knowledge is complex, Polanyi (1958, 1998) goes into different detail and distinguishes tacit knowledge which is based in individual's mind, respectively a skill that one might have however it is hard to share or capture. Another type he defines is explicit knowledge which can be defined as tacit knowledge that has been decoded and recorded. Cocktail recipe works as a perfect example. Cocktail mixing is a skill, lies in an individual's mind. However recipe is a set of instructions extracted from tacit knowledge that has been decoded and passed to one another on purpose to share information. When it comes to analysing the relationship between data, information and knowledge, it is more than obvious that computers are very good at handling and processing data. Computers as a part of information system made smooth transformation of data management into information management; however transformation to knowledge management is much more complicated, corresponding to commodity view of knowledge claiming knowledge can never be separated from individuals and exist outside humans, thus never stored digitally(Galliers and Newell 2001).

Speaking about knowledge economy and knowledge society, competitiveness on the market, its survival, depends on this knowledge could be preserved and used in an efficient way. Furthermore, information and knowledge are the essential aspects; they are often seen as the major keys to success; De Geus, quoted in article by Senge (1992), claims that the most successful companies will be those which are best at learning. There are three sides to managing knowledge: acquiring it, using it, and sharing it. Often, once acquired, knowledge has to be stored for later retrieval; for an organisation, simply committing it totally to human memory is a very dangerous and unreliable approach, as extensive knowledge is easily forgotten or misinterpreted, and when passed on, the process can repeat until the result is vastly different from the original source (Senge 1992). now we will concentrate on how the use of Information technology can greatly enhance a company's capability in the management of knowledge in those three fields. Information technology includes matters concerned with the furtherance of computer science and technology, design, development, installation and implementation of information systems and applications (San Diego state University 2009). In first era (so called computer), information technology was understood as a compensation or like a support for human activities. However in second era (so called informative) it is important to see information technology in its transformative and innovative role above all in which it inspires the changes in organization and company management. Well-ran organizations comprehended that it is necessary to change the organizational structure and the way how organization works; that way to reach higher flexibility in response on market requirements, higher level of coordination and better communication amongst individual employees and also the whole working team (Chew and Gottschalk 2009).

BROOKING, A., 1996. “Introduction to Intellectual Capital”. Cambridge: The Knowledge Broker Ltd.

BUREAU OF JUSTICE ASSISTANCE, 2009. Center For Program Evaluation And Performance Meassurement.[online]. Washington DC: Bureau of justice assistance. Available from: [Accessed 25 November 2009]

GALLIERS, R. D. and NEWEL, S., 2001. Back to the Future: From Knowledge Management to Data Management, in Proceedings of ECIS 2001. Bled,Slovenia, pp. 609-615

LEIBOWITZ, J., ed., 1999. Knowledge Management. Florida: CRC Press LLC

POLANYI, M., 1958, 1998. Personal Knowledge: Towards a Post-Critical Philosophy. London: Rouledge

QUIGLEY, E. J. and DEBONS, A., 1999 . “Interrogative Theory of Information and Knowledge”, in Proceedings of SIGCPR '99. New Orleans, LA: ACM Press pp. 4-10

SAN DIEGO STATE UNIVERSITY, 2009. Glossary of Academic Information Technology Terms.[online]. San Diego:San Diego State University. Available from: [Accessed 26 November 2009]

CHEV, E. K. and GOTTSCHALK, P., 2009. Information Technology Strategy and Management: Best Practices. New York: Idea Group Inc

SENGE, P., 1992. The Fifth Discipline: the art and practice of the learning organisation. London: Century Business


Astrophysics Data at Mt. Hopkins Observatory

In this course, students pick a topic in astrophysics, collect data at an observatory, and then reduce and interpret the data in teams.

This course is a data reduction and research course that allows the students to travel to Mt. Hopkins Observatory in Arizona on a spring break field trip. In the couple of weeks before the field trip, the students learn (on real data, and using software used in professional astrophysics) how to reduce photometric and spectroscopic data in optical light.

The students spend the rest of the semester reducing the data (via techniques learned in-class prior), interpreting the data, and answering some research question that they devise. It's entirely team-based, so they are constantly interacting with each other as they are reducing the data, interpreting the result, and looking through previous research on the object.

The students wrote a research paper in the same style as papers in normal astrophysical scientific journals and gave a 15 minute presentation on the last day of class

This is a very specialized course and this sort of project is only applicable in certain situations. However, it lets the students conduct research, and is a very good immersion into actual research work.


دانلود مقاله ISI انگلیسی شماره 9661
عنوان فارسی مقاله

حاکمیت، سرمایه گذاری خصوصی و سرمایه گذاری مستقیم خارجی در کشورهای در حال توسعه

کد مقاله سال انتشار مقاله انگلیسی ترجمه فارسی تعداد کلمات
9661 2012 9 صفحه PDF سفارش دهید محاسبه نشده
خرید مقاله
پس از پرداخت، فوراً می توانید مقاله را دانلود فرمایید.
عنوان انگلیسی
Governance, Private Investment and Foreign Direct Investment in Developing Countries

Publisher : Elsevier - Science Direct (الزویر - ساینس دایرکت)

Journal : World Development , Volume 40, Issue 3, March 2012, Pages 437–445

کلمات کلیدی
سرمایه گذاری مستقیم خارجی - سرمایه گذاری خصوصی - منابع سرمایه گذاری - حاکمیت -
پیش نمایش مقاله
پیش نمایش مقاله حاکمیت، سرمایه گذاری خصوصی و سرمایه گذاری مستقیم خارجی در کشورهای در حال توسعه

چکیده انگلیسی

This paper uses annual aggregate data for 46 developing countries covering the period 1996–2009 to investigate if FDI crowds out domestic private investment and if alternative elements of governance have differing effects on the relationship between FDI and private investment. Results suggest that total investment (FDI and private) is greater in countries with good governance, there is evidence of crowding out (FDI displaces domestic private investment), and the extent of crowding out is related to governance. Corruption and political instability are the governance indicators that appear to have the greatest impact on investment. Political stability is found to be the most important aspect of governance in terms of the relationship between FDI and domestic private investment: an increase in FDI has the greatest effect on reducing private investment (but increasing total investment) in politically stable regimes.

مقدمه انگلیسی

It is generally recognized that investment is important for growth and that governance affects investment; good governance is associated with higher investment (both FDI and private domestic). Less attention has been paid to whether particular aspects of governance have different effects on specific types of investment, and on the relationship between sources of investment. This paper investigates the relationship between foreign direct investment (FDI) and private investment in a sample of 46 developing countries for 1996–2009, and in particular how this relationship may be affected by governance (distinguishing alternative measures of governance). Alternative sources of investment finance can have different effects on total investment depending on how they relate to each other and how each responds to country characteristics, governance in our case. Using the Kaufmann, Kraay, and Mastruzzi (2010) data allows us to distinguish different elements or indicators of governance, but restricts the coverage to the period since 1996. The recent period is appropriate as there was a global increase in FDI from the mid-1990s and many countries implemented economic liberalization in the early 1990s that attracted FDI; Agosin and Machado (2007) report that the major increase in their ‘‘openness to FDI” index was during 1990–96, with only small changes after 1996. These global and policy influences on FDI are unlikely to confound inferences from a sample for the period 1996–2009. A specific concern is whether FDI crowds in (adds to) or displaces (crowds out) domestic private investment. Although this is an important issue, there are surprisingly few empirical studies of the impact of FDI on domestic investment in developing countries (Nunnenkamp, 2004). If FDI crowds out domestic investment, total private investment rises by less than the FDI and the benefits for the country are reduced; Mišun and Tomšík (2002) find evidence for crowding-out in Poland in the 1990s. If FDI crowds in (stimulates) private investment, total investment increases by more than the FDI and the benefits are enhanced; Mišun and Tomšík (2002) for Hungary and the Czech Republic in the 1990s, and Kim and Seo (2003) for South Korea in 1985–99 find evidence of crowding in. Agosin and Machado (2005) find that FDI has no significant effect on domestic private investment for countries in Africa, Asia, and Latin America over 1971–2000, although there seems to be crowding out in Latin America in some sub-periods. The evidence on the relationship between FDI and domestic investment is mixed. However, none of these studies consider if governance is relevant to the relationship. There is a large literature on determinants of FDI that does include governance indicators but their significance is contested. Blonigen and Piger (2011) conduct a meta analysis of studies of determinants of FDI and find that a number of variables commonly included in the literature are not robust, including host country institutions. However, for particular (groups of) countries host factors may be important (Gastanaga, Nugent, & Pashamova, 1998). Lipsey and Sjöholm (2010) argue that the weak business environment and inefficient institutions relative to other destinations in East Asia account in part for low inflows of FDI to Indonesia. It may also be the case that host country factors matter more for certain types of FDI; Lederman, Mengistae, and Xu (2010) find that foreign manufacturing firms are more likely to locate in better governed Southern African countries. Asiedu and Lien (2011), for 112 developing countries over 1982–2007, find that in countries with a relatively low share of minerals and oil in total exports democracy enhances FDI whereas democracy reduces FDI in countries with high natural resource shares in exports. Specific aspects of the political regime may be important. Busse and Hefeker (2007) find that government stability attracts FDI while Guerin and Manzocchi (2009) find that parliamentary democracies are more likely to attract FDI than presidential ones. However, this literature does not address the link between FDI and domestic investment, hence the impact on total investment. We consider a specific hypothesis that the relative importance of alternative sources of financing for private investment, and how they interact, may be influenced by the quality of governance as an indicator of how capital (investment) friendly the political regime is (the notion is clarified further in the next section, but our primary concern is with the stability of the regime). Existing studies of FDI and private investment interactions either do not include governance variables or do not consider that governance may affect the relationship. Political uncertainty and poor governance (such as weak property rights, high corruption, or excessive regulation) have been found to discourage domestic private investment and FDI (Campos et al., 1999 and Mauro, 1995). This paper considers whether, in addition, the relationship between FDI and private investment is affected by the nature of the political regime. We characterize regimes with high (good) values of governance indicators as capital-friendly or favorable to investment, while regimes with low values of governance are capital-unfriendly or unfavorable to investment. The paper is structured as follows. Section 2 outlines a theoretical link between political regime and the source of private investment that motivates our empirical analysis. Section 3 sets out our empirical specification and choice of variables. Section 4 presents the results of the analysis of the relationship between private investment and FDI under different governance indicators using dynamic panel methods with annual data for 46 low or middle income countries over 1996–2009. Section 5 provides conclusions and discusses implications for financing private investment.

نتیجه گیری انگلیسی

The paper investigates the effect of FDI on domestic private investment allowing for different governance indicators over the period 1995–2009 for 46 developing countries. Some consistent findings emerge. First, total private investment (PV and FDI) is higher under favorable regimes (those with governance scores above the percentile mean), supporting our first hypothesis. This confirms a result often found in the literature and need not be discussed further. Although Blonigen and Piger (2011) argue that the evidence that democracy or good governance attracts FDI may not be robust, it is likely that for particular countries governance factors may be important, at least at the margin, i.e., as other countries are alternative locations, depending on the type of FDI, certain features of governance may affect investment decisions. Our results support this even if the difference is not significant for some governance indicators, which may be because we make a simple comparison of PV and FDI in high (above the mean) and low (below the mean) countries (and low governance countries tend to be under-represented in the sample). Second, FDI appears to crowd out domestic private investment, implying that total investment increases by less than the FDI as other private investment is reduced, and this effect is related to governance. The crowding out effect is greater in countries with better governance, except where governance is measured by political stability. An interpretation is that poor governance discourages FDI hence domestic private investment must be higher to compensate (this may be through foreign borrowing). As governance improves, FDI is attracted and displaces some private investment opportunities so total investment does not increase by the amount of FDI and the effect on growth is constrained; this may be one reason why Alguacil, Cuadros, and Orts (2011) find that policies designed to attract FDI are not sufficient to ensure economic growth. A plausible explanation for why this effect is more pronounced in high governance countries is because levels of investment (private and FDI) are greater under high governance, competition for profitable opportunities is greater and, at the margin, foreign investors command the better opportunities. Foreign firms have easier access to finance and a productivity advantage over domestic firms so may be willing to pay higher prices for capital goods (and labor), which discourages investment by domestic firms (Driffield & Hughes, 2003). This poses a dilemma for governments who strive to improve governance to attract FDI to promote growth (Nunnenkamp, 2004) as crowding out reduces the growth effect. The results suggest that governments could target certain aspects of governance; increased FDI under political stability and low corruption has the greatest impact on increasing total private investment. Third, political stability affects the FDI-private investment relationship in a different way than other governance indicators. Specifically, political stability seems to attract the highest levels of FDI with the greatest impact on total investment, although also the greatest crowding out effect. In unstable regimes the crowding-out effect of FDI is large and the impact on total investment is small compared to regimes with low values of other governance indicators. This offers limited support to the second hypothesis that FDI is a relatively more important source of investment finance in unstable as compared to stable regimes. Private investors are deterred by instability as they fear losing control over (or profits from) their investment if the regime changes; comparable opportunities in more stable countries would be more attractive. Private investment in unstable regimes is likely to be concentrated in specific assets not available elsewhere, such as natural resources, and FDI may be relatively important in these sectors. Furthermore, foreign investors in extractive industries are often required to share ownership with the government (Asiedu & Esfahani, 2001) or in joint ventures. In this sense it is the stability of the regime that may be most important to the relationship between FDI and domestic investment. As the regime becomes more stable other investment opportunities become attractive and although FDI may crowd out domestic investors total investment increases significantly. This would be an issue worth exploring in future research based on case studies of countries with a history of regime change and populist regimes to identify effects on sources of investment finance. The finding that FDI crowds out domestic private investment does not imply that FDI is not beneficial (but may help explain why finding aggregate benefits is often elusive); it may simply reflect the fact that profitable investment opportunities are limited. It may be unreasonable to expect FDI and private investment to increase together. Foreign investors, especially multinational firms, have advantages over domestic investors; typically, they have greater access to investment finance, technology and global markets. In any country, foreign investors will be in a stronger position to capture the best investment opportunities. In low income countries with poor governance, domestic investors have an incentive to seek foreign partners; joint ventures may be a good option but equity shares would provide financing (and note that a share above 10% is treated as FDI). As an economy grows and the quality of governance and institutions improves, it will be more attractive to foreign investors, and the need or incentive for domestic investors to seek foreign partners is lessened. In such an environment, to minimize adverse effects of crowding out the most important policy is to ensure opportunities for domestic investors to enable them to compete effectively for the best investment opportunities. This implies that investment incentives should not discriminate against domestic investors, and that providing access to domestic financing is more important for domestic investors.

خرید مقاله
پس از پرداخت، فوراً می توانید مقاله را دانلود فرمایید.


Author perspectives on the academic publishing process

You are here

Misconception about APCs deters an author from publishing open access: A case study

Kakoli Majumder | Oct 31, 2016 | 615 views
Anticipation of high APCs deters author from publishing OA

Case: A Chinese author in collaboration with a US-based author wrote an article on a new treatment method for diabetes. The US-based author was keen on publishing the paper open access as she felt it would benefit many patients suffering from the condition. The Chinese author, who was the lead author, however, did not agree. He wanted to submit it to a traditional subscription journal. This led to a disagreement between the authors. The Chinese author approached Editage Insights for advice.

Action:  On questioning the author, we found that he was unwilling to publish in an open access journal was based on the misconception that open access journals always charge very high article processing charges or APCs. He felt he would not be able to afford the APCs. However, he had not communicated this clearly to his co-author, which had resulted in a misunderstanding.

We explained to the author that not all open access journals charge high APCs. In fact, some OA journals are funded by academic institutions or learned societies and do not charge APCs at all. We also explained that many journals that normally charge APCs often waive off the charges totally or partially if the author is in financial difficulty. Additionally, APCs are sometimes covered by the funding bodies or authors’ institutions. Eventually, the author decided that he would publish the article open access if the APCs were not too high or could be waived off. We helped him draft an email to his co-author, explaining his apprehensions and stating his decision. A few weeks later, the author informed us that the co-author has accepted this condition and the dispute was amicably resolved.

Summary: Authors often avoid publishing in open access journals as they are often under the misconception that all open access journals charge high APCs. However, this is not true; the charges vary across journals and can be anywhere between $100 to over $3,000. Additionally, not all open access journals charge APCs, and there are some not-for-profit journals that publish open access without charging the authors. Additionally, authors do not always have to pay the APCs from their own pockets. Often, the author’s institution or funding body bears the APCs.

Also, most open access journals that charge APCs consider fee waiver requests from authors who are under financial constraints. For example, many large publishing houses such as Nature Publishing Group, Elsevier, Springer, and BMJ have a fee waiver policy according to which fee waiver requests are considered on a case-by-case basis, and a total or partial waiver is granted if the problem is genuine. Additionally, most journals waive off APCs for authors from low income countries.

You might also be insterested in reading the following posts:

Like this article? Republish it!

Free e-book on how to avoid journal rejection

Related Categories


Health Technology Assessment: Choosing Which Treatments Get Funded - The University of Sheffield

Información importante

  • Curso
  • Online
  • Cuándo:

Before new drugs or treatments are adopted, their effectiveness and cost must be assessed. Find out how in this online course.

Información importante

Dónde se imparte y en qué fechas

Inicio Ubicación
15 febrero 2017

¿Qué aprendes en este curso?

Programa académico

Have you ever wondered why some drugs are made available to patients via healthcare services such as the NHS, while others are not?

In this free online course, we’ll look at how healthcare organisations make decisions about whether we should have access to certain treatments, focussing on a key part of the information used to make these decisions - Health Technology Assessment (HTA).

Explore the processes behind Health Technology Assessment

Over five weeks, we’ll take you through some of the key processes that go into creating a Health Technology Assessment.

We’ll investigate how HTA can help aid decision making, by finding and bringing together a wide variety of evidence about both the effects of treatments and what they cost. We’ll discover how HTA uses sophisticated research methods and techniques, to bring this evidence together in a format that can be used in a variety of health systems around the world.

    • How do we know if the treatment is of benefit?

    • How can we make sense of all the evidence?

Learn with HTA experts from The University of Sheffield

The educators for this course are based in the School of Health and Related Research at The University of Sheffield and are experts in this kind of research, so you will be learning from people who are actively involved in HTA and in developing the methods used.

We’ll show you the process using animated videos and interactive exercises, and by looking at an actual completed Health Technology Assessment that went on to inform healthcare decisions in the real world.

Understand why new health technologies are funded

Whether you’re in the medical or pharmaceutical profession, studying or thinking of studying a subject such as medicine, nursing, healthcare or health economics, or simply an interested member of the public or a patient yourself, this course will give you the story behind the headlines. And you’ll be able to answer the question: how do healthcare systems make decisions about funding new treatments?

You can find out more about some of the themes covered in this course in Claire Beecroft’s post for the FutureLearn blog: “Penny pinchers or NICE people? Why someone’s got to choose which treatments get funded.”


PIA01478 Interior of Callisto

This photo was liked 0 times

Please login in order to see the source link
  • Interior of Callisto
  • original description: This artist's concept, a cutaway view of Jupiter's moon Callisto, is based on recent data from NASA's Galileo spacecraft which indicates a salty ocean may lie beneath Callisto's icy crust. These findings come as a surprise, since scientists previously believed that Callisto was relatively inactive. If Callisto has an ocean, that would make it more like another Jovian moon, Europa, which has yielded numerous hints of a subsurface ocean. Despite the tantalizing suggestion that there is an ocean layer on Callisto, the possibility that there is life in the ocean remains remote. Callisto's cratered surface lies at the top of an ice layer, (depicted here as a whitish band), which is estimated to be about 200 kilometers (124 miles) thick. Immediately beneath the ice, the thinner blue band represents the possible ocean, whose depth must exceed 10 kilometers (6 miles), according to scientists studying data from Galileo's magnetometer. The mottled interior is composed of rock and ice. Galileo's magnetometer, which studies magnetic fields around Jupiter and its moons, revealed that Callisto's magnetic field is variable. This may be caused by varying electrical currents flowing near Callisto's surface, in response to changes in the background magnetic field as Jupiter rotates. By studying the data, scientists have determined that the most likely place for the currents to flow would be a layer of melted ice with a high salt content. These findings were based on information gathered during Galileo's flybys of Callisto in November 1996, and June and September of 1997. JPL manages the Galileo mission for NASA's Office of Space Science, Washington, DC. This artist's concept and other images and data received from Galileo are posted on the World Wide Web on the Galileo mission home page at http://galileo.jpl.nasa.gov . Background information and educational context for the images can be found at http://www.jpl.nasa.gov/galileo/sepo

Public Domain

Only registered users can post comments. Please login

EXIF data:
File name pia01478_interior_of_callisto.jpg
Size, bytes 490887
Mime type image/jpeg

christianity portal


Julbo Eclipse Goggle - Zebra Photochromic - Women's - $111.97

If you're tired of wearing oversized men's goggles and wrestling with interchangeable lenses, then the Julbo Women's Eclipse Goggle with a Zebra Photochromic lens was made for you. The sleek feminine frame shape is designed to provide women with a comfortable fit, and the photochromic lens adapts to changing light conditions so your vision is always at its best. - $111.97


Atom and Its Components

Compile at least 5 profiles of individual that contribute strongly to the finding of atom and its components. Describe their backgrounds and contribution to science.

There are many scientists had gave their contributions to the finding of atom and its components. In this assignment, the 5 brilliant scientists that I would like to talk about are Neils Bohr, Joseph John Thomson, Ernest Rutherford, James Chadwick and John Dalton.

Niels Henrik David Bohr

Niels Henrik David Bohr was born on October 7, 1885, at Copenhagen, Denmark and died on November 18, 1962. His father, Christian Bohr, a devout Lutheran, was professor of physiology at the University of Copenhagen, while his mother, Ellen Adler Bohr, came from a wealthy Jewish family prominent in Danish banking and parliamentary circles.

When Bohr was young, his scientific talent was obvious. His family encouraged him to reach his full potential in this area. After his matriculation at the Gammelholm Grammar School in 1903, he entered University of Copenhagen and awarded the Gold Medal in 1905 which sponsored by the Royal Danish Academy of Sciences and Letters for his work on the measurement of surface tension using the vibrations of water jets. He also took his Master's degree in Physics in 1909 and his received his Doctor's degree in 1911 for his study of the electron theory of metals. In 1916, Bohr returned to the University of Copenhagen to assume the Chair of Theoretical Physics, which had been created for him. After a few years, Bohr devoted himself to the development of the University Institute for Theoretical Physics, which soon became an international center for research and study.

Bohr wished to find out more about the properties of matter and atoms so he moved to Manchester, England, and do research with Ernest Rutherford. Around 1912, he began work on some of his most important contributions to quantum physics. Bohr also published his own research, including a 1918 paper titled "On the Quantum Theory of Line Spectra". This paper elaborated on the correspondence principle, a concept first introduced by Bohr in 1913 that applied to the structure of spectra. Bohr's proposal that the atom existed only in a discrete set of energy states still remains relevant, known as the Bohr atomic model. Bohr's model of the atom proved essentially correct, and he won the Nobel Prize for his quantum theory studies in 1922. In 1955, Bohr organized the Atoms for Peace Conference in Geneva. He helped begin CERN, the European Council for Nuclear Research, and he received the first ever Atoms for Peace Award. His work highlighted the limitations of classical physics in dealing with the atomic level and anticipated his future explorations. He was the first to recognize the significance of encircling electrons and their relationship to the atomic nucleus.

Niels Bohr proposed the theory of the nucleus as a liquid drop. He realized the importance of the atomic number and saw that the physical and chemical properties of elements depend on the electrons in individual atoms. He stated that atoms don't radiate light while in a stable state, they only do when in between stable states after studied the series of lines in the spectrum of light produced by hydrogen. Then, he came up with “complementarity”, which is also called wave-particle duality. It states that certain waves, like light, exhibit characteristics of waves and particles.

Joseph John Thomson

Joseph John Thomson was a British physicist. He was born in Cheetham Hill, Manchester, England, on December 18, 1856 and died when he aged 83 on August 30, 1940, then was buried in Westminster Abbey. His father is a bookseller and so a publisher. He planned a career in engineering for Joseph, but since no apprenticeship could be found for him in any engineering firm, he was sent "temporarily" to college in Manchester at the age of 14. But then his father died when he was only 16. His mother came from a local textile family.

In 1870, Thomson studied engineering at University of Manchester which known as Owens College at that time. As a result of his ability and determination, he won a scholarship in 1876 and entered Trinity College, Cambridge. He engaged himself in developing mathematical models that would reveal the nature of atoms and electromagnetic process. In 1880, he obtained his BA in mathematics (Second Wrangler and 2nd Smith's prize) and MA (with Adams Prize) in 1883. After graduation, Thomson began working in the Cavendish Laboratory (1884 - 1918), as a Cavendish Professor of Physics, working on electricity and gases. At that time, he developed into a world-renowned institution. Thomson's brilliance brought him membership in the Royal Society at 27 and his appointment as Rayleigh's successor at 28. For the first quarter of the 20th century the Cavendish Laboratory, where Thomson insisted that theory should be considered "a policy, not a creed," was the world center for particle research. One of his students was Ernest Rutherford, who would later succeed him in the post. From 1918, Thomson was master of Trinity College, Cambridge, until his death on 1940.

J. J. Thomson was one of the founders of modern physics. He was awarded a Nobel Prize in 1906, "in recognition of the great merits of his theoretical and experimental investigations on the conduction of electricity by gases." He is known also for his discovery (1897) of the electron and his investigation of its charge and mass, his development of the mathematical theory of electricity and magnetism, and his work with "positive rays" (positive ion beams), which led to a means of separating atoms and molecules according to their atomic weights. His work with F. W. Aston gave evidence of the existence of isotopes of neon. In addition to his own research, Thomson made a significant contribution during his long tenure as director of the Cavendish Laboratory in making it a leading center for atomic research where many important developments in modern physics occurred. He was knighted in 1908 and appointed to the Order of Merit in 1912. Thomson was elected a Fellow of the Royal Society on 12 June 1884 and was subsequently President of the Royal Society from 1915 to 1920. In 1914 he gave the Romanes Lecture in Oxford on "The atomic theory".

Thomson conducts an experiment in which the rays were deflected by a magnetic field, and then deflected back again by an electric field. In the paper published in Philosophical Magazine 100 years ago in October 1997, he proved they were negatively charged particles, or corpuscles. Thomson imagined the atom as being made up of these corpuscles swarming in a sea of positive charge; this was his plum pudding model. This model was later proved incorrect when Ernest Rutherford showed that the positive charge is concentrated in the nucleus of the atom. Thomson had written numerous works include Elements of the Mathematical Theory of Electricity and Magnetism (1895, 5th ed. 1921), Conduction of Electricity through Gases (1903; 3d ed., with George Paget Thomson, 2 vol., 1928-33), and an autobiography, Recollections and Reflections (1936).

Ernest Rutherford

Ernest Rutherford, the father of nuclear physics, was a student of J.J. Thomson. He was born at Bridgewater, a small town close to Nelson, New Zealand, on August 30, 1871. Rutherford died on October 19, 1937, due to the complications of surgery. His father James Rutherford is a Scottish wheelwright, which makes and repairs wheels and wheeled vehicles while his mother, Martha Thompson Rutherford was an English schoolteacher.

Rutherford family moved to Foxhill, Nelson Province in 1877. Then Rutherford attended Foxhill School, Nelson Province from 1877 until 1883. In his early years, Rutherford did not show any special inclination towards science. By the age of ten he had read a scientific textbook, but otherwise there was not yet any sign of special interest in science and he was expecting to become a farmer when he grew up. In 1883, the family moved again to Havelock, Marlborough Sounds, which also near Nelson. At there, Rutherford attended Havelock School until 1886 and then entered Nelson Collegiate School. In 1889 he was awarded a University scholarship and further study at University of New Zealand, Wellington, where he entered Canterbury College. In 1893, he graduated M.A. with a double first in Mathematics and Physical Science and he continued with research work at the College for a short time, receiving the B.Sc. degree the following year. In 1894, he was awarded an 1851 Exhibition Science Scholarship, enabling him to go to Trinity College, Cambridge, as a research student at the Cavendish Laboratory under J.J. Thomson. In 1897, he was awarded the B.A. Research Degree and the Coutts-Trotter Studentship of Trinity College. Rutherford returned to England in 1907 to become Langworthy Professor of Physics in the University of Manchester, succeeding Sir Arthur Schuster. In 1919, he accepted an invitation to succeed Sir Joseph Thomson as Cavendish Professor of Physics at Cambridge.

In New Zealand, Rutherford conducted his first researches were concerned with the magnetic properties of iron exposed to high-frequency oscillations, and his thesis was entitled Magnetization of Iron by High-Frequency Discharges. In 1896, he designed what was then the world's most sensitive electromagnetic wave detector, capable of identifying waves at a distance of several hundred meters. His second paper, Magnetic Viscosity, was published in the Transactions of the New Zealand Institute (1896) and contains a description of a time-apparatus capable of measuring time intervals of a hundred-thousandth of a second. He also showed that x-rays cause air molecules to split into equal numbers of positively and negatively charged particles (ions). In 1899, he discovered 2 distinct radiations, which he termed alpha rays and beta rays (high speed electrons), and so noted the radioactive gas radon.

Rutherford won the Nobel Prize in Chemistry in 1908, and in the same year, working with his student Hans Geiger, he developed the Rutherford-Geiger detector, capable of detecting single particles emitted by radioactive atoms. In 1911 he described in detail the nuclear model of the atom. In 1913, working with Henry Gwyn Jeffreys Moseley, he used cathode ray bombardment to show that the inner structures of atoms can be used to assign an atomic number to each element. In 1914, he described the proton, and in 1917 he effectively created the field of nuclear physics by beginning a series of experiments showing that the nuclei of some light elements could be disintegrated by radioactivity, and that fast protons were emitted during this process. He was the first to establish the theory of the nuclear atom and to carry out a transmutation reaction in 1919, which the formation of hydrogen and oxygen isotope by bombardment of nitrogen with alpha particles. He also found out the half-life of radioactive elements and applied it to the studies of age determination of rocks by measuring the decay period of radium to lead-206.

Rutherford had published several books included Radioactivity (1904), Radioactive Transformations (1906), Radiation from Radioactive Substances, with James Chadwick and C.D. Ellis (1919, 1930), The Electrical Structure of Matter (1926), The Artificial Transmutation of the Elements (1933) and The Newer Alchemy (1937).

James Chadwick

James Chadwick was was an English Nobel laureate in physics awarded for his discovery of the neutron. He was born on October 20, 1891 at Bollington, Cheshire, England. He died on July 24, 1974 at Cambridge, England. Chadwick is the eldest son of John Joseph and Anne Mary Knowles Chadwick.

Priory, Chadwick entered Manchester High School and attending Victoria University in Manchester in 1908. He was admitted to the physics programs and was too shy to correct the error, although his intention was to study mathematics. In 1911, he graduated from the Honours School of Physics. During the next 2 years, his education was continued in Ernest Rutherford's laboratory at the same university, where he worked on the transmutation of other light elements by bombardment with alpha particles, and in making studies of the properties and structure of atomic nuclei, gaining his master's degree in 1913. In the same year, he was awarded the 1851 Exhibition Scholarship and used it proceeded his studies in the foremost German research institute, Physikalisch Technische Reichsanstalt at Charlottenburg under Professor H. Geiger at Berlin. This happened at the beginning of World War I. After Chadwick was detained as a civilian prisoner of war, he returned to England in 1919 to carry out research at Cambridge University.

In 1923, he became the assistant director of research at the Cavendish Laboratory. Rutherford thinks that there could be a particle with mass but no charge. He named it as neutron, and imagined it as a paired proton and electron, but here was no evidence for any of these ideas. So, Chadwick kept the problem in the back of his mind while working on other things. Experiments in Europe caught his eye, especially those of Frederic and Irene Joliot-Curie. They used a different method for tracking particle radiation. Chadwick repeated their experiments but with the goal of looking for a neutral particle, one with the same mass as a proton, but with zero charge. His experiments were successful. He was able to determine that the neutron did exist and that its mass was about 0.1 percent more than the proton's. He published his findings with characteristic modesty in a first paper entitled "Possible Existence of Neutron." In 1932, he awarded the 1935 Nobel Prize in Physics for his discovery of the neutron. From 1935 until 1948, Chadwick held the Lyon Jones chair of physics at the University of Liverpool. He also served as head of the British mission to the Manhattan Project and was present at the first atomic test in the New Mexico desert from 1943 until 1946. He was knighted in 1945. In 1948, he was elected master of Gonville and Caius College, a post from which he retired in 1959.

Chadwick had published many papers on the topic of radioactivity and connected problems and, with Lord Rutherford and C. D. Ellis, he is co-author of the book Radiations from Radioactive substances (1930).

John Dalton

John Dalton was born into a modest Quaker family on September 6, 1766, at Eaglesfield, Cumberland, England, and died on July 27, 1844, at Manchester, England, due to stoke, when he was aged 77. His father, Joseph Dalton, was a weaver in poor circumstances and his mother, Deborah Greenup, belonged to the Society of Friends.

Most of Dalton's life works as a teacher and public lecturer, beginning in his village school at the age of 12. He taught at a Quaker boarding school in Kendal for 10 years, and then, he moved on to a teaching position in the burgeoning city of Manchester. There he joined the Manchester Literary and Philosophical Society, which provided him with a stimulating intellectual environment and laboratory facilities.

Those concerned with the atomic theory in chemistry are the most important of all Dalton's investigations. To determine the likely atomic structure of each compound, he calculated atomic weights from percentage compositions of compounds, using an arbitrary system. The combinations of 2 elements will occur in a set sequence, if they can combine. Dalton also came to believe that the particles in different gases had different volumes and surrounds of caloric, thus explaining why a mixture of gases—as in the atmosphere—would not simply layer out but was kept in constant motion. Dalton consolidated his theories in his New System of Chemical Philosophy (1808-1827), which included various atoms and molecules. He used his own symbols to visually represent the atomic structure of compounds. Dalton proceeded to print his first published table of relative atomic weights. 6 elements appear in this table, namely hydrogen, oxygen, nitrogen, carbon, sulfur, and phosphorus, with the atom of hydrogen conventionally assumed to weigh 1. Dalton provided no indication in this first paper how he had arrived at these numbers.

There are 5 main points in Dalton's atomic theory. First, the atoms of a given element are different from those of any other element, which they can be distinguished from one another by their respective relative atomic weights. Second, all atoms of a given element are identical. Third, atoms of one element can combine with atoms of other elements to form chemical compounds, which the given compound always has the same relative numbers of types of atoms. Fourth, atoms cannot be created, divided into smaller particles, nor destroyed in the chemical process. Fifth, elements are made of tiny particles, which called atoms. Dalton proposed an additional "rule of greatest simplicity" that created controversy, since it could not be independently confirmed.

In 1793, Dalton published Meteorological Observations and Essays. His studies led him to develop theories about water vapor and mixed gases, and in 1801 he came up with Dalton's law of partial pressures which that each component exerts the same pressure as it would if it alone made up the whole volume of the mixture in a mixture of gases. From there Dalton decided that all matter, not only gases, must consist of small particles.


Real-Time Systems

A real-time application (RTA) is an application program that functions within a time frame that the user senses as immediate or current. The latency must be less than a defined value, usually measured in seconds. Whether or not a given application qualifies as an RTA depends on the worst-case execution time (WCET), the maximum length of time a defined task or set of tasks requires on a given hardware platform [1]. The use of RTAs is called real-time computing (RTC) [2]. Real-time software systems contain computations that depend not only on how they are done but also when they are done. Increasing software systems' complexity makes it difficult to ensure the application will complete tasks correctly and on-time. This proves to be an added responsibility.

A metric is a measure of some property of an entity. You cannot control anything unless you measure it. The objective of this thesis is to discuss the design metrics for the software phase of real time applications.

A real-time system is one in which the correctness of the computations not only depends on their logical correctness, but also on the time at which the result is produced. In other words, a late answer is a wrong answer.

As an example of a real-time system, consider a computer-controlled machine on the production line at a bottling plant. The machine's function is simply to cap each bottle as it passes within the machine's field of motion on a continuously moving conveyor belt. If the machine operates too quickly, the bottle won't be there yet. If the machine operates too slowly, the bottle will be too far along for the machine to reach it. Stopping the conveyor belt is a costly operation, because the entire production line must correspondingly be stopped. Therefore, the range of motion of the machine coupled with the speed of the conveyor belt establishes a window of opportunity for the machine to put the cap on the bottle.

2.1 Specific Features of Real-Time Systems

The major characteristics of real-time systems include the following [6] :

Timeliness is important. The system performs its functions within the specified time-limit.

It ought to be reactive. The system continuously responds to events from the external environment that drives the “execution” of the system.

The concurrent execution of threads of control is vital, where different parts of the software run in parallel.

It usually has very high requirements on most of the non functional requirements, such as reliability, fault tolerance and performance.

It ought to be non deterministic.

It also ought to be deadline-driven.

2.2 Period VS Deadline

A window of opportunity imposes timing constraints on the operation of the machine. Applications with these kinds of timing constraints are considered real time. In this case, the timing constraints are in the form of a period and deadline.

The period is the amount of time between each iteration of a regularly repeated task. Such repeated tasks are called periodic tasks.

Suppose bottles pass under the machine at a rate of five per second. This means a new bottle shows up every 200ms. Thus, the period of the task is 200ms. Note that whether bottles pass once per second or 100 times per second, it doesn't change the fact that this is a real-time system. Real time does not mean fast; it means that a system has timing constraints that must be met to avoid failure.

The deadline is a constraint on the latest time at which the operation must complete. Suppose the window of opportunity is 150ms. The deadline is then 150ms after the start time of the operation. In our example, the start time is defined as the moment the bottle enters the range of the machine. This bottle example has physical constraints, namely the speed of the conveyor belt and the machine's range of motion, that dictate the period and deadline of the task.

In many real-time systems, the period is a design parameter. Consider a cruise control mechanism on an automobile. The basic operation of cruise control is to keep the speed of the vehicle constant. Suppose the driver selects 60mph as the desired speed. If the vehicle is going slower than 60mph, then the embedded computer sends a signal to the engine controller to accelerate. If the vehicle is going faster than 60mph, it sends a signal to decelerate. A question to ask is: how often does the computer check if the current speed is too slow or too fast? The answer is called the control rate (or frequency). It is defined by the control system designer, who will try to find a rate that is fast enough to meet specifications, but not so fast that it adds unnecessary cost to the system. The period is then the reciprocal of the rate (that is, period = 1/rate). The deadline is typically the beginning of the next cycle of a periodic task, because, to start the new cycle, it needs to be finished with the old one.

Communication systems also have real-time constraints. Suppose a multimedia application needs to compress video data at a rate of 30 frames per second. Before it processes a new frame, it needs to finish processing the old frame, otherwise data might get lost in the form of dropped frames. The period of such a task is the frame rate. Processing the old frame must complete before processing on the new frame can begin. Therefore, the deadline is the beginning of the next frame. [7]

2.3 Aperiodic Tasks

Not all real-time tasks are periodic. Aperiodic tasks, also called aperiodic servers, respond to randomly arriving events. Consider anti-lock braking. If the driver presses the brake pedal, the car must respond very quickly. The response time is the time between the moment the brake pedal is pressed, and the moment the anti-lock braking software actuates the brakes. If the response time was one second, an accident might occur. So the fastest possible response is desired. But, like the cruise control algorithm, fastest is not necessarily best, because it is also desirable to keep the cost of parts down by using small microcontrollers. What is important is for the application requirements to specify a worst-case response time. The hardware and software is then designed to meet those specifications.

Note that many aperiodic tasks can be converted to periodic tasks. This is basically the same transformation as converting an interrupt handler to a polling task. Instead of reacting to an external event the moment it occurs, the software polls the external input regularly, perhaps tens or hundreds of times per second. If the awaited event is detected, the appropriated computation is carried out.

2.4 Hard or Soft?

A real-time system can be classified as either hard or soft. The distinction, however, is somewhat fuzzy. As illustrated in 1, the meaning of real-time spans a spectrum. At one end of the spectrum is non-real-time, where there are no important deadlines (meaning all deadlines can be missed). The other end is hard real-time, where no deadlines can be missed. Every application falls somewhere between the two endpoints.

The Real-Time Spectrum

A hard real-time system is one in which one or more activities must never miss a deadline or timing constraint, otherwise the system fails. Failure includes damage to the equipment, major loss in revenues, or even injury or death to users of the system. One example of a hard real-time system is a flight controller. If action in response to new events is not taken within the allotted time, it could lead to an unstable aircraft, which could, in turn, lead to a crash; by no standard is this acceptable.

In contrast, a soft real-time system is one that has timing requirements, but occasionally missing them has negligible effects, as application requirements as a whole continue to be met. Consider again the cruise control application. Suppose the software fails to measure current velocity in time for the control algorithm to use it. The control algorithm can still use the old value, because the amount that the velocity would have changed between the last sample and this sample is so small that it can still operate correctly. Missing several consecutive samples, on the other hand, could be a problem, as the cruise control would likely stop meeting application requirements because it is not able to maintain the desired speed within a proper error tolerance [6].

2.5 Predictable VS Deterministic

Two more terms often used to describe real-time systems are predictable and deterministic. These terms are related, but because they are often interchanged or used improperly (as compared to their official definition in real-time systems theory), they are often a source of confusion.

Real-time systems researchers generally use the term predictable to refer to a system whose timing behavior is always within an acceptable range. The behavior is specified on a system-wide basis, such as “all tasks will meet all deadlines.” Generally, the period, deadline, and worst-case execution time of each task need to be known to create a predictable system. An appropriate scheduling algorithm with a corresponding schedulability analysis is used to ensure a system is predictable.

A deterministic system is a special case of a predictable system. Not only is the timing behavior within a certain range, but that timing behavior can be pre-determined. For example, a system can be designed with pre-allocated time slots for each task. Execution for each task occurs only during those time slots. Such a system must have execution time for every task known, as well as no anomalies that might cause deviation from the pre-determined behavior. That is, of course, difficult to achieve. Fortunately, determinism is not essential to build predictable real-time systems.

2.5 Time-triggered VS Event-triggered

There are two fundamentally different principles that determine the activation of tasks in a real-time system, event-triggered and time-triggered. In event-triggered systems, all activities are activated in reaction to relevant events external to the system. When a significant event in the outside world happens, it is detected by some sensor, which then causes the attached device (processor) to get an interrupt signal. For soft real-time systems with lots of computing power to spare, this approach is simple, and works well. The main problem with event-triggered systems is that they fail under heavy load conditions, i.e., when many events are happening at once. Event-triggered designs give a faster response at low load but more overhead and chance of failure at high load. This approach is more suitable for dynamic environments, where dynamic activities can arrive at any time.

In a time-triggered system, all activities are activated at certain points in time that are known as a priori. Accordingly, all nodes in time-triggered systems have a common notion of time, based on synchronized clocks. One of the most important advantages of time-triggered systems is the deterministic temporal behaviour of the system, which eases system validation and verification considerably. Time-triggered systems are suitable in static environments in which the system behaviour can be completely known in advance.

2.6 Design Lifecycle of a System

A software development life cycle is the process followed when developing information systems, from the initial stage of information gathering, all the way through to maintenance and support of the system.

The literature mentions an inverse waterfall sort of model to describe the design of a typical system. This is explained comprehensively in detail in a study guide for Information Systems [10] and also in [8] and [9].

The V-Design Model of a General System [10]

This process is known as the "V" model of systems development.[10] At each testing stage (see diagram, above), the corresponding planning stage is referred to, ensuring the system accurately meets the goals specified in the analysis and design stages.

If seen, analytically, we will realize that any system when needs to be designed goes through the following phases [12]:

The Birth of the Concept

This is the first phase of design and as the name suggests, it marks the beginning of identifying the needs of the end-user. Its major steps include the following:

Need Identification

Feasibility Analysis

System Requirements Analysis

System Specification

Conceptual Design Review

We will outline each of these sub-phases of conception. Need Identification enlists the needs of the user. This is usually given in plain English and is noted down by the person in charge of collecting information about what are the user's demands. Once these needs are identified, the software engineer heads towards performing two important analyses: the Feasibility Analysis and System Requirements Analysis. The System Specification comes next which highlights the technical requirements of the system to be developed. As the technical requirements are chalked out here, it helps in the design later on. The last part of this phase is the Conceptual Design Review. This is important because any good document or design is incomplete without performing a review of the thing devised. This review enables the outline produced here to be re-analysed from the perspective of an expert.

Prelim System Design

This is the second phase of design and it marks the beginning of identifying the steps involved in carrying out the system design. Its major steps include the following:

Functional Analysis

Requirements Allocation

Detailed Trade-Off Studies

Synthesis of System Options

Preliminary Design of Engineering Models

Development Specification

Preliminary Design Review

In this phase subsystems are identified which will be responsible for the structure of the system. Then the interfaces between these subsystems are identified. The testing requirements and the evaluation criteria are also laid down here. To mark the end of this phase a Development Specification is produced which equips us with enough material to head towards the detailed design and specification phase.

The Detailed Design and Development

This is the third phase of design and it marks the identification of the details of design and development. Its major steps include the following:

Detailed Design

Detailed Synthesis

Development of Engineering and Prototype Models

Revision of Development Specification

Product, Process and Material Specification

Critical Design Review

This phase simply leads all the things already defined, like the subsystems and the interfaces, into a detailed format. The envisaged environment is created and also evaluated, judged for the maintenance cost that can be incurred. How much and what kind of support is needed is also determined at this phase. If the developer needs to make some changes to the requirements (in collaboration with the user) then this phase is the right time to do it. For instance, as in the waterfall model, the developer re-traces back to the specification, if need arises.

The Much-Awaited Construction

This is the fourth phase of design and it allows the actual product to be assembled by the programmer/engineer. Key steps within the Production/Construction stage include:

Production/Construction of System Components

Acceptance Testing

System Distribution and Operation

Operational Testing and Evaluation

System Assessment

In this phase the system is developed in the true sense and any changes are marked. System assessments are performed to remove errors and also to make the system adaptable to change.

Utilization and Support

This is the fifth phase of design and it caters to the identification of ways and means to ensure support for the software being developed and also to see how it will be utilized. The system is also checked to see if it will operate feasibly in the environment where it will be finally deployed. The important steps in this phase are as follows:

System Operation in the User Environment

Maintenance and Logistics Support

System Modifications for Improvement

System Assessment

Phase-Out and Disposal

This is the last phase of the development lifecycle. The efficiency of the system is tested after installing in the environment where it will be up and running for a long time. Any errors or complaints that surface are catered to. The design engineer looks out for any bugs, any more operations that need to be added-in, matching between operational requirements and system performance and availability of alternative systems.

Waterfall Lifecycle Model, the Spiral Model and all other such models more or less follow this same outline of developing a system. We have seen here the general design strategy and now we head to see how does the design phase differ for Real-Time Systems, as all this high time constraints cannot be catered to by the normal design strategy presented here.
2.7 Design Lifecycle of a Real-Time System

Reactive and real-time systems involve concurrency, have strict requirements, must be reliable, and involve software and hardware components [4].

Reactive systems are computer systems that continuously react to their physical environment, at a speed determined by the environment. This class of systems has been introduced to distinguish them from transformational systems (input, process and output). Reactive Systems include, among others, telephones, communication networks, computer operating systems, man-machine interfaces, etc.

Real-time Systems (RTSs) have reactive behaviour. An RTS involves control of one or more physical devices with essential timing requirements. The correctness of an RTS depends both on the time in which computations are performed as well as the logical correctness of the results. Severe consequences may occur if the requirements of a real-time system are not met. Requirements from an RTS are diverse, ranging from intricacies of interfaces to providing guarantees of safety and reliability of operation.

Real-Time Systems have the following characteristics [6],

They are high in non-functional requirements, viz reliability, fault-tolerance etc.

They are timely, performing within the specified time.

They ought to be reactive.

They ought to handle the execution of threads concurrently.

They ought to be non deterministic.

They ought to be deadline-driven.

These characteristics lead to a difference in the design model, viz each design phase is validated by simulation or verification before going on to the next phase [14].

J. F. Peters and S. Ramanna [13] pointed out the need for a different design strategy for real-time systems by stating that for real-time systems, the original SDLC (System Design Lifecycle) undergoes some changes. They stated that real-time relevant logic must be incorporated at the design phase itself. Thus at the design level it is vital to take into consideration factors which can make the design better via metrics.

2.8 Contrasting the Difference in Design

Ramanna and Peters [13] have further contrasted the designs and given suggestions how to remove the flaws from the orthodox design strategy. This fact is explained diagrammatically below.

2.9 Issues in Real-Time System Design

Designing real-time systems is a challenging task. Most of the challenge comes from the fact that Real-time systems have to interact with real world entities. These interactions can get fairly complex. A typical real-time system might be interacting with thousands of such entities at the same time. For example, a telephone switching system routinely handles calls from tens of thousands of subscriber. The system has to connect each call differently. Also, the exact sequence of events in the call might vary a lot.

In the following sections we will be discussing these very issues [15]...

Real-time Response

Recovering from Failures

Working with Distributed Architectures

Asynchronous Communication

Race Conditions and Timing.

2.9.1 Real-Time Response

Real-Time Systems stand on different grounds than other systems only because they have to respond to external interactions in a predetermined amount of time slot. The response thus received could only be termed to be useful if it would be correct (in value) and within the time slot allowed to it. Delay is simply intolerable and causes the system to fail. What needs to be kept in mind is that both the hardware and software have to be designed keeping in mind the real-time requirements stated. For example, a telephone switching system must respond to thousands of callers/subscribers within the pre-determined time-slot, usually one second or less. To meet these requirements, the sub-systems involved- truncation of call and software communication- have to work in accordance with each other so that the timing requirements can be met. In addition to this all these timing requirements have to be met for any calls set up at any time.

These real-time requirements have to be incorporated very early into the design of the system, in fact right from the architecture design phase these timing constraints are taken into consideration. The hardware and software engineers work in collaboration with one another to achieve these goals. They make the choice of the optimum architecture. The simpler the architecture, the more capable it is to handle the time constraints.

Other things that are taken into consideration are also discussed here. We are asked what kind of processors would be suitable. What kind of speed would help meet time timing requirements? What link speed should be chosen for suitable communication? If the link speeds chosen are not appropriate then queues are built-up and delay can be caused in message transmission. The link speeds should not be more than 40-50% of the total bandwidth.

Another question that is asked is what kind of communication is preferred? Does it have any nodes? What is the CPU utilization speed? The answer lies in choosing powerful and optimum processing components. Both link and peak CPU utilization should be below 50%.

Also the OS suitability has a big question-mark hanging over it. Choosing the right operating system is of utmost importance. Also tasks of critical real-time requirements need to be handled by giving high-priority execution at the operating system level. Also the methodology of pre-emptive scheduling can be used to give importance to the critical tasks. Modes of handling interrupt latency as well as scheduling variance need to be verified at this stage. Scheduling variance refers to predictability in task scheduling times. Interrupt latency refers to the delay with which OS can handle interrupts and schedule tasks to respond to these interrupts. The interrupt latency should be low for the RTOS chosen.

2.9.2 Recovering from Failures

2.9.3 Internal Failures

Software Failures in a Task:

Real-Time Applications cannot rely on the traditional technique used by systems to remove an error. They cannot make a dialogue-box pop-up and then display the error. Nor can they wait for the error to be removed by the user. Real-Time Applications have to use what is known as roll-back conditions, particularly when a task hits a processor exception. The system is simply advised to roll-back into the previous, correctly-functioning saved state. The tasks simply have to be designed to be safeguarded against error conditions. In Real-Time Systems this becomes of crucial events as a series of events in turn trigger another set of events. These new sets of events maybe spontaneously formed and thus all of these cannot be tested in the review section.

Processor Restart:

Recovering Context for the Failed Processor:

When the processor finally comes back to its old status, it will recover all its states and contexts from other processors in the system. There is always a possibility of inconsistencies between this matching of states amongst different processors. In such cases, the system runs audits to solve these problems.

Board Failure:

Realtime systems are expected to recover from hardware failures. The system must be able to detect and recover from board failures. When a printed circuit board fails, the system notifies the operator about it. Also, the system should be able to switch in a spare for the failed board.

Link Failure:

Most of the communication in real-time systems takes place over links connecting the different processing nodes in the system. Again, the system isolates a link failure and re-routes messages so that link failure does not disturb the message communication.

2.9.4 External Failures

Invalid Behavior of External Entities:

When a real-time system interacts with external entities, it should be able to handle all possible failure conditions from these entities. These conditions include any mishaps or even different situations from the end-user.

Inter Connectivity Failure:

2.9.5 Asynchronous Communication

Software design can be facilitated by using Remote Procedure Calls (RPCs). In these the designer/programmer has the liberty of calling the procedures on a remote machine, with the same semantics as that of local procedure calls. This technique does sound good and brings great ease, but only for traditional systems. For Real-Time Systems it hardly provides any relief. RPCs work on a query-response theme, whereas Real-Time Systems are more event-based. The communication for Real-Time Systems is more asynchronous in nature.

Real-Time Systems support state-machine based design where multiple messages can be received in a single state. To which state the control has to be transferred next depends on the state of the received message. State-machine models are query-friendly towards Real-Time Systems, though they come with their own set of complexities.

2.9.6 Race Conditions and Timing

Looking at any real-time systems' protocol, simply points out to one factor…timing. Each stage of the protocol has provisions to handle timing separately. Also, each stage of each protocol also attempts to account the timing values for the increasing load. When all these requirements are implemented, timers are used. Timers look-out for the progress of events. If the anticipated event finishes execution, the timer is stopped. If the anticipated event does not take place, the timer will time-out and recovery action will be triggered.

Sometimes the state of a resource is unpredictable. This is when a race-condition occurs. Two tasks compete against each other on basis of time. This condition is usually resolved by defining rules about who gets to keep the resource when a clash occurs. Devising a method to resolve such race-condition conflicts is easy, the difficulty lies in only identifying such conditions.

2.9.7 Flow Control

This refers to the synchronization of events to accommodate both the sender as well as receiver. The aim is to manage them in such a way that the receiver will follow the sender. Usually for Real-Time Systems the controlled object lies elsewhere and not within the domain of the controlling sub-system. Flow of control is necessary to synchronize events. The correlated event showers can be buffered at the interface between the controlled object and the computer system.

Several engineering solutions have been devised to control this flow of events at the interface. Some of them include low pass filters, the intermediate buffering of events in hardware and/or software and so on. It is difficult to come up with a universal flow-control schema for Real-Time Systems that can ensure that no important events are exploited by the flow control mechanism (as in the case of correlated event showers or by the use of a faulty sensor).

2.9.8 Maximum Execution Time of Programs

The deadline for the delivery of a result can be guaranteed if an upper-bound is available at the design phase itself. The upper bound value should not be significantly high, but only of an optimum value. This bound ought to be tight for two reasons: Firstly, the result should be an outcome of recent input data. Secondly, for the static scheduling system, the upper bound should not be loosely chosen as a lot of valuable resources are wasted unnecessarily.

The Real-Time Systems are usually designed so that they can run for a long, long time. The code should be able to monitor the maximum execution time of a program using language restriction. Recent trends like caches and pipelining makes this computation all the more complex.

2.9.9 Scheduling

In general, the problem of deciding whether a set of real-time tasks whose execution is constrained by some dependency relation (e.g., mutual exclusion), is schedulable belongs to the class of NP-complete problems [5]. Finding a feasible schedule, provided it exists, is another difficult problem. The known analytical solutions to the dynamic scheduling problem [6] assume stringent constraints on the interaction properties of task sets that are difficult to meet in distributed real-time systems.

2.9.10 Testing for Timeliness

In many real-time system projects more than 50% of the resources are spent on testing. It is very difficult to design a constructive test suite to systematically test the temporal behavior of a complex real-time system if no temporal encapsulation is enforced by the system architecture.

2.9.11 Error Detection

In a real-time computer system we have to detect value errors and timing errors before an erroneous output is delivered to the control object. Error detection has to be performed by the receiver and by the sender of information. The provision of an error detection schema that will detect all errors specified in the fault hypothesis with a small latency is another difficult design problem.

This thesis undertakes real-time systems and so we are set to define such systems. We will break down each term; define it individually and then head on for a complete definition.

A system is a mapping of a set of inputs into a set of outputs. Every real-world entity can be mapped as a system.

Real-time refers to the correct response provided within a pre-determined time frame.

Hence, we may say that a real-time system is one in which its proper functioning is based on the correctness of the outputs and their timeliness. Quoting Phillip Laplante [13], the definition is as follows:

‘A real-time system is a system that must satisfy explicit (bounded) response-time constraints or risk severe consequences, including failure.'

Failure for a real-time system doesn't simply mean that the requirements were not met. Usually it means life-threatening situations where the simple loss of not meeting the temporal deadline defined by the designer/programmer leads to loss of lives.

According to Sommerville [16], another way to look at real-time systems is to view them as a stimulus/response system. All the inputs take the role as stimuli, and the outputs as responses. Stimuli may be periodic or aperiodic. Periodic stimuli occur at predictable time intervals. Aperiodic stimuli occur irregularly and are usually signalled using the computer's interrupt mechanism.

As an example of a real-time system, consider a computer-controlled machine on the production line at a bottling plant. The machine's function is simply to cap each bottle as it passes within the machine's field of motion on a continuously moving conveyor belt. If the machine operates too quickly, the bottle won't be there yet. If the machine operates too slowly, the bottle will be too far along for the machine to reach it. Stopping the conveyor belt is a costly operation, because the entire production line must correspondingly be stopped. Therefore, the range of motion of the machine coupled with the speed of the conveyor belt establishes a window of opportunity for the machine to put a cap on the bottle. This window of opportunity distinguishes a real-time system from a non-real one. It indicates that the response has to lie within the time-frame provided otherwise the system is a failed one. It doesn't imply that the system has to be fast to be real-time. It simply has to meet the timing requirement set for it. This window of opportunity is in the form of a time-frame known as a period and deadline.

Real-time systems can be classified into three sub-categories [16]:

Hard Real-Time Systems

‘A hard real-time system is one in which failure to meet a single deadline may lead to complete and catastrophic system failure.'

For instance, an avionics weapons delivery system in which pressing a button launches an air-to-air missile. Missing the deadline to launch the missile within a specified time after pressing the button can cause the target to be missed, which will result in catastrophe.

Soft Real-Time Systems

‘A soft real-time system is one in which performance is degraded but not destroyed by failure to meet response-time constraints.'

E.g. An automated teller machine: missing even many deadlines will not lead to catastrophe failure, only degraded performance.

Firm Real-Time Systems

‘A firm real-time system is one in which a few missed deadlines will not lead to total failure, but missing more than a few may lead to complete and catastrophic system failure.'

E.g. An embedded navigation controller for an autonomous robot weed killer. Missing critical navigation deadline causes the robot to veer hopelessly out of control and damage crops.

All applications fall somewhere within these definitions. Rather the demarcation amongst these types is a bit fuzzy. As illustrated in 6, the meaning of real-time spans a spectrum. At one end of the spectrum is non real-time, where there are no important deadline. The other end is hard real-time, where no deadlines can be missed.

In USA ‘real-time' refers to on-line terminal services such as ATMs, database enquiry and on-line reservation and payment systems. Real-time system comprises of parallel or concurrent activities.

Embedded Real-Time Systems are those type of RTS that are based on specialized hardware and lack an operating system. An embedded RTS is called organic if it is not for a specialized hardware. It is known as loosely coupled/ semi-detached if they can be made organic with the re-write of a few modules.

Real-time Systems are usually event-based. An event in real-time software is anything that causes a change in flow. Real-time systems are always susceptible to change in their normal course of action. This is the reason why the notion of events is used to explain their functioning. Events can be of two types, viz:

1. Synchronous-these are the events which occur at predictable intervals.

2. Asynchronous- these occur at unpredictable events (caused by external sources).

2.10 Other Design Methodologies for RTS

Sommerville [16] proposes a design strategy for real-time systems which is event based. The stages are as follows:

1. Identify the stimuli to be processed and what responses are desired for each.

2. Then determine for each stimuli the timing constraints.

3. Cluster the stimuli and responses together based on behaviour. With each such class associate a process.

4. Identify or design any algorithms to carry out this set of concurrent processes.

5. Design a scheduling system which will ensure that processes are started in time to meet their deadlines.

6. Employ a real-time executive to integrate the system.

Sommerville further also indicates the general components of a real-time executive. He says that these components can be used fully or partially depending on the size of the real-time system.

1. A real-time clock-

This provides information to schedule processes periodically.

2. An interrupt handler

This manages aperiodic requests for service.

3. A scheduler

This component is responsible for examining the processes which can be executed and choosing one of these for execution.

4. A resource manager

Given a process which is scheduled for execution, the resource manager allocates appropriate memory and processor resources.

5. A despatcher

This component is responsible for starting the execution of a process.

6. A configuration manager

This is responsible for the dynamic reconfiguration of the system's hardware.

7. A fault manager

This component is responsible for detecting hardware and software faults and take appropriate action to recover from these faults.

The real-time executive has also to be set to accommodate two types of priority levels for real-time systems:

1. The interrupt level-this is for those processes that need immediate attention on the part of processing. The processes handled by interrupts are usually the ones associated with the foreground processes.

2. Clock level- this level is allocated to periodic processes.

Mani B. Srivasta et al [17] identifies two distinct phases in the real-time systems' design phase. Firstly, the high-level system specification is mapped onto a set of inter-communicating hardware and software modules. Secondly, these identified modules are generated using a mix of mapping, synthesis and library based techniques.

A UML based design methodology for Real-Time and Embedded Systems is presented by Gjalt de Jong [18]. He has combined the informal strengths of UML with the formal strengths of SDL. Then using O-O concepts, he has identified software components.

2.11 Design and Design only

The design of real-time systems prefers the K.I.S.S (Keep It Simple Stupid) principle. In addition to this point of view, Rob Williams [19] states, ‘If you follow a good design technique, appropriate questions will emerge at the right moment, disciplining your thought process.'

Designing a real-time software entails five major phases[15], viz:

1. Software Architecture Definition

Once it has been decided that a real-time software is to be designed, a suitable architecture is chosen. Then the UML based use-case design is carried out, where the system is treated as a black-box and all the users (mechanical or human) are considered as actors. The use-case diagram then shows all the possible interactions amongst the users and the system.

2. Co-Design

Next, for all the hardware, decide what software functionality needs to be allotted to which processor and/or link. The aim is that the resources should not get overloaded; also the system should remain scalable. Similar modules ought to be placed nearby as this reduces delay and eases inter-process message communication.

3. Defining Software Subsystems

These are purely software based, compared to the design decisions mentioned beforehand whose choice depended on hardware considerations too. Determine all the features needed by the system. Group them together and consider whether any sub-system can be made to simplify the design. Also, identify the tasks (along with their respective roles) that will implement the features identified.

4. Feature Design

Once the tasks and features have been done with, what needs to be designed is how the messages will interact amongst these tasks. Some of these tasks will be controlling the other ones by keeping a record of the activity of the feature. For this the concept of running timers is to be employed. The mechanism is such that timers are started to monitor the progress of events. If the desired event/task is carried out as per plan, the timer is stopped otherwise the timer times out and some recovery action comes into play. This recovery action is usually in the form of some roll-back activity. Message interfaces need to be specified in detail (all the fields and possible values).

5. Task Design

Once the tasks are identified it needs to be decided which state machine model will be employed to implement it. We are all aware that real-time systems are mostly state-based systems, so this decision is also vital to complete the design process. The state machine chosen can be either for single, multiple or complex tasks. Moreover the model can be either flat or hierarchical. This is also pivotal as here lies the basis of scheduling rules which are important for the smooth functioning of a real-time software.

Kopetz (1991) [22] present a methodology for the design of real-time systems by breaking down the process from specification to the fine-grained task, message and protocol-level. Mars is the underlying architecture for the proposed design methodology. All the aspects of an engineered hard real-time system are considered, viz: predictability, testability, fault-tolerance (fail-stop or fail-operational), consideration of the complete system (both hardware and software), system decomposability (from abstraction to smaller modules) and evaluability (through an early dependability and timing analysis).

Previous design methodologies include SDARTS, DARTS, SDL, SCR, MASCOT, EPOS, SREM and so on. None of these methodologies provided all the characteristics mentioned above so the authors came up with a novel methodology constricted with some basic assumptions. The design methodology is explained diagrammatically below:

This entire process indirectly sets-up an off-line scheduling system which is the key to fulfilling the timing constraints for real-time systems. However, this indirect off-line scheduling does not suffice for predictable hard real-time systems and other issues also need to be considered simultaneously, viz: static and dynamic scheduling. Other crucial parameters include the following[22]:

* MART (MAximum Response Time)

* MINT (Minimum INTerval)

* MAXTE (estimated maximum execution time)

* MAXTC (calculated maximum execution time)

* Validity (period of time for which data is valid or holds true)

* Maximum execution time of the communication protocol between tasks.

* CPU availability (CPU time usable for application tasks)

* System overheads, i.e: task switching, periodic clock interrupt, CPU cycles used by DMA eg for network access and so on.

* MAXT (execution time: calculated based on a value extracted by all of the timing values given above)

The importance of testing design is also emphasized by these authors. They recommend a testing scenario where each component, cluster (open-looped cluster test and closed-loop cluster test) or task is tested once right after its design and once after the implementation is sought. As we know, the testing done at design has a lower cost (by all means) hence the method is commendable. Other tests mentioned are the system test and the field test.

Finally the authors mention a software, which supports design through MARS, called MARDS. How MARDS aids in the design process is explained through this paper.

Zage points out in a paper [20] that the design phase of a software has two major aspects, viz the architectural design and the detailed design. The author has drawn an analogy between designing a software and constructing a true-to-life model of a building. To assist in devising a better design or tracing out errors in the design already made, two metrics have been developed by the team at Ball State University.

First is the external metric, De, that is based on information extracted during the architectural design, viz “hierarchical module diagrams, dataflow, functional descriptions and interface descriptions”. This basically caters to the inter-modular structure.

Second is the internal metric, DI, that is based on information available after the detailed design, viz all the information given above as well as “any chosen algorithms or the pseudo code developed”. This basically caters to the internal structure of the modules.

Then the author has come up with a composite metric to measure ‘design quality' for a design G.

D(G) = De + Di

where De = e1 (inflow * outflow) + e2 (fan-in * fan-out)

and Di = i1 (CC) + i2 (DSM) + i3 (I/O)

D(G) stands for the design quality,

CC stands for Central Calls,

DSM stands for Data-Structure Manipulations and

I/O refers to the external device accesses.

Moreover, inflow tells about the number of data entities passed to the module, outflow tells about the number of data entities passed from the module, fan-in tells the number of super-ordinate modules directly connected to the given module and fan-out tells the number of sub-ordinate modules directly connected to the given module and both e and i are the weighting factors and can take any values depending on the influence of the parameters involved.

To the calculation of Di, even more crucial parameters could have been added, like ‘cyclomatic complexity, nesting levels, knot counts, live variable counts and declaration-use pairs and so on.' However, the author was not in favour of it as he clearly quotes an important aspect of metrics wherein, trying to cover too many features via metric, muzzles up the result. Similarly, trying to associate just one feature with a metric, doesn't extract any vital information at all.

This metrics suitability to detect potential ‘stress-points' and error-prone modules was then tested against a large-scale software (its suitability for a small-scale software had already been proved). When tested for a large one interesting results were drawn. It was noted that with the calculation of De and Di, the outliers were usually the stress-points. When the outliers were way too many that the standard deviation and the mean didn't have nay sync with each other, the author introduced a method of identifying ‘X-less algorithms'. Once these were identified and marked straightaway as outliers, the rest of the calculations were performed on the remaining modules. These then provided with a better and evenly-distributed result, proving the importance of this metric.

In the end to prove the mettle of this metric even more, the author decided to test a part of it (Di) against a time-based metric called cyclomatic complexity V(G). It was found that Di served the purpose the best so far, even more than V(G). These results were then tallied with LOC-lines of code metric that was available after the generation of the code. As far as overall D(G) metric was concerned, it proved to extract 100% module-error concentrations for large-scale software.

The author also provides a solution to all the modules which do turn out to be error-prone, by saying that the design should be re-tailored or then the coding of such modules should be handed over to the most experienced programmers on the team or the testing-time on the modules should be increased.

However, I would like to point out here that if the solution lied in increasing the testing phase then why to go into such details trying to unfathom the problems at the design phase itself. We should be looking for a solution at the design phase and simply go into re-tailoring the design and running the metrics again.

Design metrics should be in conformance with the requirements set in the preliminary analysis phase. MDD is being used by real-time software developers to assure accurate real-time performance of complex systems. Using the UML (UML 2.1), developers are able to use the abstraction of models to address and understand complexity. The application is simulated to ensure algorithms perform properly; the model is then used to automatically generate real-time code that strictly adhered to design.

The chosen metrics should be able to follow the SMART test, wherein the chosen metric should be S=Smart, M=Measurable, A=Attainable, R=Realistic and T=Timely.

To be able to measure a real-time system, factors that need to be taken into consideration are as follows: timeliness, performance, reactive or not, accuracy, predictability, deterministic or no, maintainability, adaptability, robustness, efficiency, accuracy, reliability, cost-friendly nature, quality-assurance, performance, risk-management, complexity, reliability, fault-tolerance and performance etc.

Fohler et al (2002) [34] suggest a metric for control performance (QoC) based on real-time timing constraints. Only closed-loop control systems have been considered.

Timing constraints and values determine the performance and areas of improvement for such a system. They say that the temporal values are of two types: fixed (task periods-time delay and task deadlines-sampling period) and flexible (sets of feasible instance separation- extracted from the type of controller chosen and response times).

During the design many values qualify in accordance with the timing constraints. Deviations from these values lead to system errors. Two types of system errors are pointed out, namely the IAE (Integral of the Absolute value of the Error) and ITAE (Integral of the Time-weighted Absolute value of the Error).

One of these errors is used to quantify the QoC metric. The QoC metric allows the decisions to be based on both temporal and control information.

A strategy has been devised to improve the performance of real-time closed-loop control systems, viz: instead of time values (fixed or flexible), choose a set of values (<instance separation, response time>) at the design stage and then hand it over to the scheduler to choose the correct/ closest value-set pair. Moreover, the ability to change values at run-time allows improvement of the system.

2.12 Steps to Attain Useful Metrics for RTS

Measurement. Lies at the heart of everything. Standards such as ISO 9000 and SEI's Capability Maturity Model uses metrics too.

As Grady (26) states, “Without such measures for managing software, it is difficult for any organization to understand whether it is successful.” The paper by Linda Westfall (27) outlines “12 Steps to Useful Software Metrics.”Basing our research on these steps, we outline twelve steps for software metrics of real-time systems. The discussion is presented hereforth.

Firstly, identify who has to use the metric. If the metric does not have a user for whom it is being produced, the entire effort is futile. For the software of real-time systems the users can be people related to functional management, project management, the end prosuct.

Secondly, determine which entity precisely needs to be measured? To aid in this process the ‘goal/question/metric' ( 27) ( 28) paradigm may be employed.

Thirdly, structure relevant questions, the answers of which will lead towards the goal(s) determined in the previous step.

Fourthly, for the real-time system software, formulate the objective according to the following formula(27):

Fifthly, hunt for standard definitions of the attributes and/or entities. If there aren't any available or if ambiguity hangs above them, then go ahead and define these things yourself from the perspective of real-time systems. There is a concise set of related definitions available in the IEEE Glossary of Software Engineering Terminology (29).

Sixthly, choose between direct measurement or indirect measurement.

Seventhly, if the measurement method is indirect, break it down to an atomic level so that it is clearly known that which entities need to be measured to achieve the desired goal.

Eighthly, define thresholds, variances, control limits and so. Be specific by giving percentages.and so on.

Ninthly, from the real-time perspective decide the method of reporting. As (27) states, “define the reporting format, data extraction and reporting cycle, reporting mechanisms, distribution and availability.”

Tenthly, determine any additional qualifiers that will be needed if the metric has to be given a wider spectrum than the one allotted to it.

Eleventhly, we ought to be concerned about the collection of data. Since the metrics that have been devised here are concerned with the design phase of real-time systems, thus the collection of data is meager as compared to the entire life-cycle.

Lastly, keep the ethics alive. Make the selection of metrics, collections of data and intervening into professionals easy.