You are on page 1of 7

Research Assessment #3

Date: October 20, 2017

Subject: Software Development

MLA or APA Citation: "Software Development Trends for 2017." SaM Solutions. SaM

Solutions, 15 June 2017. Web.

Analysis:

Since I aspire to go into Software Development, I believe it is important for me to


have a fundamental understanding of the primary topics today within the field.
Therefore, I found this article, published by SaM Solutions, to be intriguing and relevant
to me. This article allowed me to develop a basic understanding of the top five
technological trends utilized by businesses that are projected to be critical in the future:
Internet of Things, Machine Learning, Automation, Agile Methodology, and
Decentralized Teams.
Internet of Things relates to making a variety of devices have access to the
internet. I learned that Internet of Things is currently the most prominent trend today
and find the principle interesting as it is relatable since it affects a variety of places.
Whether for personal use- such as in the house- or while working in agriculture or
banking, Internet of Things makes processes easier, faster, and more connected.
However, I did not realize the broadness of the domain in which Internet of Things is
used. Originally, upon learning of the term, I thought it was only for personal devices.
This article furthermore discusses that as the amount of internet-connected devices
grows, more software is needed to process that data. The article additionally
emphasizes that the issue of ensuring to code software that is apt for the hardware
comes into play. I have not had to consider hardware much in my programming;
however, this year I will have to in my mobile applications programming class as
mobile applications need to be apt for the specific device. I have found Internet of
Things interesting for a while now. I remember watching a TED Talk about how
everything is becoming wireless and utilizing Internet of Things. I additionally have
read Masters papers written by a family member about her project in Internet of Things.
This is a topic I am really interested in within Software Development as it truly connects
people with technology. While Internet of Things allows improved performance, it
brings security and data management challenges. This is probably why so much more
software is necessary- the huge amount of data needs to be accessible, modifiable, and
secure. Also, some of these utilities should have the ability to learn from different data.
Machine Learning deals with machines needing less supervision by
programmers as the machines can analyze data using algorithms by themselves. I have
learned through my interviews and other research assessments that it is crucial to input
the correct amount of data to allow machinery to understand the identification of
something. If too many possible characteristics are entered, the machine will call
everything that item. However, if only a few data sets, without much variation, are
entered, the machine may completely miss the characteristics that are actually
important in identifying the item. I did not realize the broadness of the term machine
learning prior to reading this article. I always thought that machine learning is
primarily allowing machines to understand visuals and surroundings. However, I
learned that all types of data analysis, such as Netflixs recommendations based on
previous activity or Medecisions prediction of aggravation due to diabetes or PayPals
use of test cases to identify fraud ones, all involve machine learning. I find it interesting
that artificial intelligence spurred this development. While the need of data increases,
management becomes more difficult- therefore, automation is crucial.
I learned that automation is different from most of the current trends in Software
Development as automation does not build from previous data. It essentially just saves
manual labor by identifying cases and running algorithms. I did not know that
automation played a role in standardizing the world of information technology. While I
understand that this is crucial due to the scope of technology and how spread out
developers are, I do not understand how automation plays a role in this. I think I may
be understanding standardizing from an incorrect context or missing a key aspect in
automation. It just does not make sense to me how technology that simply evades
manual labor by running algorithms depending on the situation can increase the
standardization of coding. I think the author may be trying to suggest that automation
itself is a standard practice or that the response is standardized if the machine sends the
response. The author additionally asserts that automation must be done systematically
rather than occasionally; I do not understand this either. Using my intuition, I would
think that automating whenever new data arrives makes sense- so automation would
be a continuous process. This means that results would come soon after the data is
received by the system. However, I am pretty sure that my reasoning does not account
for a variety of factors. After reading this article, I realized that I do not understand
automation- I think I will need to find an article about just automation for a future
research assessment and maybe ask questions about automation during interviews.
Agile Methodology is a business-driven principle, so if I work for a software
business, as I am planning to, it will be important for me to know. I always thought the
main aspect of agile development was releasing small bits of code at a time as to ensure
that updates word and can be utilized. However, this article taught me that agile
development allows markets, which are now transforming at a faster rate, to cater to the
demands of customers. These demands also have a shorter time frame. I learned that
the main reason for agile development is to cater to the customers demands in a timely
manner. Additionally, this article reinforced my understanding that agile development
makes it easier to fix errors as it is done as you go. I did not know that this is a
controversial issue and that some say that agile development lacks proper
administration. Everyone I have talked to and all the articles I have read have positive
disposition towards agile development, so agile developments flaws were new to me.
I did not know that decentralized teams were key to software development
within the office. I always thought that centralized teams would promote cooperation
and faster application development. Additionally, I have read in previous research that
software developers have to connect with others. After reading this article, I understand
exactly why decentralized teams tend to do better. It makes sense that individual
members would have better sense of personal responsibility and it would be clearer to
the manager who accomplished what. I do not understand what peer-based rational
control factors are. I did not even consider all the security aspects related to sharing
work that software developers have to deal with. Now I know that when I am
employed, I should ensure to understand business protocol relating to sharing and
cooperating on projects.
Overall, I believe this article was very useful. I now have a basic understanding
of the principles important in software development today and learned a lot about what
to expect when I am employed. After reading this article, I am inspired to read other
articles that deal with these topics in order to deepen my understanding.
(Annotated article below)

You might also like