.

Wednesday, March 6, 2019

Influential factors Essay

When its time to develop a sassy broadcast, the first thing that must(prenominal) be considered is the decision on what scheduling delivery to utilise. This is important because changing the computer programme midway through shutdown is very difficult to achieve, and entrust often require a considerable rewriting of canon. There ar a number of issues that leave behind forge this decision, and these atomic number 18 Organisational policy, suitability of the language, the availability of trained staff, how reliable the program is, constitute of emergence and maintenance, expandability of the language, and interoperability with early(a) languagesTable of Contents Task Brief 1 Overview of Report 1 Organisational Policy 1 Suitability 2 approachability of Trained Staff 2 Reliability 2 Development and attention Costs 2 Expandability 3 Interoperability 3 Summery 3 Bibliography 4 Organisational Policy All arrangings allowinging father policies (methods of practice) dic tating that they allow for operate downstairs specified conditions. A policy of developing coverings using one accompaniment language may come from historical use, and a foundation of previous education tools (such as IDEs) for that one language.(M Fishpool, 2007, p. 156) To deviate to using an otherwise language may in that instance not function sense to the hierarchy of the organisation. This may ring particularly true if the organisation has established a relationship with a particular vendor, such as Microsoft. Maintaining a tie-up with this company may be rewarded with better support and discounts. (Anderson, 2010, p. 166) On the other hand, maintaining the use of a particular piece of softw be (such as Microsofts IDE Visual Studio) would limit language choice to those that suit that companys interests.Another choice they may pursue is to utilise open stem software, which brings its own benefits and disadvantages. Open-source software does not offer personalised skill ful support and relies on an unpaid, potentially unreliable enthusiast community to stand these solvings, entirely is usually free to use. Suitability Building a program in a language unsuitable for its intended task pass on cause big problems down the line, which is why understanding the applications technical requirements is important. The first thing to consider when making a program is what the intended platform will be.This could be computer setups such as Windows, OS X, a Linux-based OS, a web-based application, a smart phone-based app or the choice to be platform agnostic could besides be desired. Languages that are build to be natively run on one platform ( alike(p) C++) will be more effective in completing intensive tasks, plainly building a program in Java essence that the application will work the same way on any OS with the Java Runtime Environment (JRE) software installed (Oracle, 2011). The complexity of the program will also affect whether a procedural or obj ect-oriented language will be chosen, as is whether appropriate features are included in the chosen IDE.(Anderson, 2010, p. 166) accessibility of Trained Staff If a language is popular and used widely (such as Java, C, or C++ (TIOBE, 2011)), then there will be more professionals that are able to code in it than there are for less popular languages. Therefore, choosing a popular language will specify it easier to recruit personnel for a upstart project. Also, looking at what languages the organisation has historically used, the kind of hardware installed, and what skill sets existing lend oneselfees have will have an impact in this decision. Reliability.A program becomes unreliable when how it will deal with data becomes unpredictable, and this is what can cause programs to crash. This is why some languages, like adenosine deaminase, are created with an emphasis on features that excite them less likely to crash. (Anderson, 2010, p. 166) The topper way of ensuring that code is p redictable and reliable is to use a tight language, which is one with a strong typesetters case system. A strong type system specifies restrictions on how values of different data types (such as integers and strings) are allowed to be intermixed, and stops the source code from compiling if it thinks data is creation incorrectly mixed.This provides a guarantee about how the program will pay when it starts running. (Wikipedia 2, 2011) Development and Maintenance Costs Part of the idea of planning the development of a program also includes the costing of the entire project. In vow to do so, we take into account the length of time each development stage will take, and what resources will be occupyed at which point. A lot of resources are spent before the first line of code is even written to make sure that the language and IDE we lease will be the most suitable and acceptably reliable, because choosing an unreliable solution means more money spent in maintenance costs. (M Fishpoo l, 2007, p. 155) Also, rather than simply creating error fixes, maintenance is also about how the program gets post-deployment, as suggested by Lehmans Laws. (Wikipedia 1, 2011) Therefore, how much of the overall budget will go towards the exploitation of the application needs to be taken into account. Expandability Expandability is about planning the ache term future of the program. Programs in active use will rarely cease to be updated following its first release. It will usually evolve beyond its original specification and require more features to be added, or be asked to process more data.If this is the case and the program is not good expandable, a lot more time and money than necessary will need to be spent on rewriting code or porting it to a different language. For this reason, object oriented languages are popular because new features can be bolted on as additional classes. (M Fishpool, 2007, p. 156) If this is not a concern, a procedural language can be used instead. Interoperability The armorial bearing of several languages may dictate whether a language needs to be interoperable.Interoperability is achieved when programs coded in different languages are able to work with each other through a coarse set of standards. (Wikipedia 3, 2011) One way this is through is through the Common Language Infrastructure (CLI) specification, which is implemented using mono and Microsofts . NET. These allow any language that meets the CLI specification to be able to be run by their virtual machine. The most common language is C, which was especially created to be used in . NET, but dialects of popular languages have been created to be used in a similar fashion (examples include C++/CLI and VB.NET). Summery In this report, we discussed what factors are influential in choosing a programming language for a project. We discovered that companies will have organisational policies which restrict employees to only use certain languages or certain companys software . We also learned that all languages have pros and cons, so that understanding what task our program needs to do will ensure we pick the language that is most suitable. We also need to make sure that there are actually people available to employ to code for us, so we should choose a popular language to make it easier to recruit employees.Reliability is also an area of importance, but for programs where reliability must be guaranteed, we learned that there are languages such as Ada which cater to this specific requirement. Budgets are also an issue as development and maintenance costs will differ between languages, and an unreliable solution means more money spent in maintenance costs. If we need our software to be expanded in the future, it is also best to choose a language that can support this from the start. Finally, we learned about interoperability and how programs coded in different languages are able to work with each other through a common set of standards.Bibliography Ander son, J. K. L. M. P. a. S. , 2010. BTEC National Level 3 IT pupil Book 1. 1st ed. Edexcel. M Fishpool, B. F. , 2007. BTEC Level 3 National in IT. 2nd ed. Hodder Education. Oracle, 2011. Java Runtime Environment (JRE). Online addressable at HYPERLINK http//java. sun. com/j2se/desktopjava/jre/ http//java. sun. com/j2se/desktopjava/jre/ Accessed 1 October 2011. TIOBE, 2011. TIOBE Index. Online accessible at HYPERLINK http//www. tiobe. com/content/paperinfo/tpci/index. html http//www. tiobe. com/content/paperinfo/tpci/index. html Accessed 01 October 2011. Wikipedia 1, 2011. Software Maintenance.Online Available at HYPERLINK http//en. wikipedia. org/wiki/Software_maintenance http//en. wikipedia. org/wiki/Software_maintenance Accessed 2 October 2011. Wikipedia 2, 2011. Strong Typing Wikipedia. Online Available at HYPERLINK http//en. wikipedia. org/wiki/Strongly_typed_programming_language http//en. wikipedia. org/wiki/Strongly_typed_programming_language Accessed 14 October 2011. Wikipedi a 3, 2011. Interoperability. Online Available at HYPERLINK http//en. wikipedia. org/wiki/Interoperability l Software http//en. wikipedia. org/wiki/InteroperabilitySoftware Accessed 27 family 2011.

No comments:

Post a Comment