0% found this document useful (0 votes)
35 views9 pages

CB012941 NewsWave

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views9 pages

CB012941 NewsWave

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

APIIT: Staffordshire University

COMP70006 - Software Development Practices


2023

MSc. Information Technology Management

Assignment 01 -Individual

Development of Software Application

Submitted by:

CB012941 L.L.K. Alawattegama

Date of submission

22.10.2023

1|Page
Table of Contents

Newswave .............................................................................................................. 3

An introduction to the current software development practices used in the


industry for developing software applications ..................................................... 3

What is “Newswave”? ........................................................................................ 4

Justification for Selection of Agile Software Development Process Model ......... 5

Validation of App Features ................................................................................. 6

Graphical User Interface (GUI)....................................................................... 6

Data Communication ...................................................................................... 7

Bandwidth, Computation, and Battery Optimization ....................................... 7

Data Security and User Privacy....................... Error! Bookmark not defined.

Offline Mode .................................................................................................. 7

Multi-Platform Compatibility ......................................................................... 7

Share and Save ............................................................................................... 8

References .............................................................................................................. 9

2|Page
NewsWave
An introduction to the current software development practices used in the industry for
developing software applications
The implementation of software development practises is critical to the creation of software
systems. The approach to software development serves as a structural, planning, and
controlling framework for the information system development process.

Value stream mapping, Design Thinking, Lean, Agile, and DevOps are a few of the practises
that have enabled transformed organisations to become highly automated, collaborative, self-
managing, innovative, and productive. In the context of software product development, the
establishment of fit-for-need software development processes is critical for maintaining a
competitive edge and ensuring the consistent delivery of high-quality, low-risk products
(Paivarinta & Smolander, 2015). The following are some examples of some of the most
frequent practises for developing software that are employed in the industry today:

Agile development: Agile development is a collaborative methodology for software


development that prioritises user engagement, adaptable planning, and flexible development.
Agile teams engage in iterative development cycles known as sprints, which are typically of a
duration ranging from two to four weeks. At the culmination of each sprint, these teams
produce functional software as a tangible outcome (Tegegne, et al., 2019). This practise enables
teams to obtain frequent and timely feedback from clients, facilitating necessary modifications
to the programme.

Continuous integration and continuous delivery (CI/CD): Continuous Integration and


Continuous Deployment (CI/CD) is a collection of practises that assists teams in automating
the software development and deployment process. In most cases, continuous integration and
continuous delivery pipelines consist of automated code reviews, testing, and deployment. This
makes it possible for teams to deliver software to consumers in a more timely and reliable
manner.

DevOps: DevOps refers to a collection of methodologies that integrate software development


and IT operations. DevOps teams collaborate to automate the process of software development
and deployment, hence enhancing the efficiency and dependability of software delivery.

3|Page
Cloud computing: Cloud computing offers software developers convenient access to
computational resources that can be easily scaled up or down as needed. These resources
include storage, processing capabilities, and networking capabilities.

Other common software development practices include:

Version control: Version control solutions enable software engineers to effectively monitor,
and document alterations made to their code throughout the course of its development. This
feature facilitates the process of reverting to prior iterations of the code in the event of
necessity, as well as merging modifications made by many developers.

Code reviews: Code reviews involve the examination and evaluation of one developer's code
by another developer. This process assists in the identification of software defects and
facilitates the enhancement of code quality.

Testing: The process of software development is significantly enhanced by the inclusion of


testing procedures. The verification process assists in ensuring the software functions as
intended and aligns with the customer's specified criteria.

In addition to the practises, there are a multitude of other emerging trends in software
development practises that are experiencing a surge in popularity:

Machine learning (ML): Machine learning (ML) is currently being employed in the
advancement of novel software development tools and methodologies. Machine learning (ML)
has the potential to facilitate the customization of the development process for individual
developers or teams, as well as to forecast and mitigate issues.

Artificial intelligence (AI): Artificial intelligence (AI) is being employed in diverse manners
to enhance the software development process. One illustration of the use of artificial
intelligence involves its application in automating various operations, including but not limited
to code generation, testing procedures, and security analyses.

Cloud-native development: Cloud-native development refers to a software development


approach designed specifically for cloud computing environments.

What is “Newswave”?
With a clean and incredibly user-friendly design, this program puts a ton of knowledge at the
user's fingertips and offers personalized news experiences depending on their preferences. The
ability to build customized news feeds is one of NewsWave's unique capabilities. It eliminates

4|Page
the overwhelming feeling of information overload by compiling articles from a variety of
reliable sources and customizing the news feed to the user's interests. Users may now choose
to only get the news that interests them. NewsWave provides a wide selection of news
categories to pick from for people with a variety of interests. These cover a wide range of
topics, including business, technology, entertainment, health, sports, and science. Whatever the
user's interest, NewsWave can give them the most recent information on the issues they care
about. Another important feature is In-Depth Analysis, which enables users to explore stories
in greater detail. A thorough understanding of the most current events is attained through in-
depth articles, official reports, and opinion articles.

Justification for Selection of Agile Software Development Process Model


For several compelling reasons, the mobile application "NewsWave" was developed using an
Agile software development process methodology. Agile development approaches provide a
flexible and iterative methodology that is ideally suited to the special requirements and
characteristics of a news-related product like NewsWave.

Agile methodologies, characterised by their iterative and incremental nature, facilitate the
ability to accommodate evolving needs, thereby ensuring the software product remains
consistent with client expectations throughout the entirety of the development lifecycle. The
customer base of NewsWave is broad, with a range of demands and preferences. Continuous
user interaction and input are emphasized in agile approaches like Scrum and Kanban. By using
an iterative development process, the development team may rapidly integrate user customer
insights and modify the product to better match user expectations. Events and customer
preferences change quickly in the news industry. Due of adaptability of agile, changes may be
made while the project is being developed. This is important for an application that depends
on current news material and changing user preferences. In a news app, quality is crucial. Agile
incorporates techniques like testing and continuous integration. An application that depends on
delivering accurate, dependable, and up-to-date news needs to follow certain procedures to
guarantee reliability is managed to maintain throughout the development phase. Agile
emphasizes the importance of producing a Minimum Viable Product (MVP) early in the
development process. This method will assist NewsWave by putting an operating version of
the app in the hands of consumers sooner, allowing for useful feedback and marketing research.
This guarantees that the program can adapt to changing requirements and real-world use. The
incremental development strategy of Agile enables for the gradual addition of functionality.
This is consistent with NewsWave's feature-rich environment. As characteristics are developed

5|Page
and incorporated, the app may adapt in response to user preferences and market developments.
Agile techniques place a premium on producing value quickly and often. A speedier time-to-
market is a big benefit for a news application. Because agile is iterative, features and upgrades
may be delivered more often, allowing NewsWave to adapt to customer needs and developing
trends more promptly. Agile approaches are frequently associated with a more engaged and
motivated development workforce. They promote cooperation, independence, and lifelong
learning. This can result in a more enthusiastic and motivated staff, which is critical for the
success of a complicated program like NewsWave (Ghimire & Charters, 2022).

Validation of App Features


The characteristics outlined in the minimum feature set proposed offer a robust basis for the
NewsWave web application, guaranteeing ease of use for users, effective communication,
optimal utilisation of resources, and safeguarding of data. The following are specific qualities
that must be incorporated to fulfil these requirements:

Graphical User Interface (GUI)


The platform offers a visually appealing and easy design, enabling users to browse effortlessly.
A seamless and enjoyable user experience is guaranteed by the app's user-friendly interface.
Users may easily flip between topic areas and move through their news feed while taking use
of a user-friendly design.

The way that stories are presented includes legible content, excellent graphics, and interactive
elements like social media sharing and bookmarking. Users may customize their news stream
by choosing their chosen news categories, such as business, technology, entertainment, health,
sports, and science.

6|Page
Data Communication
NewsWave can be accessed through a range of communication pathways, including both
cellular networks and WiFi connectivity. NewsWave provides a seamless experience by
utilizing both cellular and Wi-Fi networks, allowing users to access news information from any
location.

Bandwidth, Computation, and Battery Optimization


The software uses data compression technologies to minimize network traffic while effectively
transferring news material. As users browse, the app loads graphics and extra content, lowering
initial page load times and preserving data and device resources.

Offline Mode
The software allows users to access previously seen articles even when they are not connected
to the internet, allowing them to stay up to date on the news even when they are not connected
to the internet.

Multi-Platform Compatibility
The platform features a design that is highly adaptable, allowing for optimal performance
across a range of devices, including smartphones, tablets, and desktop computers.

7|Page
Share and Save
Users may store interesting and entertaining items to read later and share great information
with friends and social networks, making it simple to spread the word.

8|Page
References
Ghimire, D. & Charters, S., 2022. The Impact of Agile Development Practices on Project
Outcomes. MDPI Journals, 1(3), pp. 265-275.

Paivarinta, T. & Smolander, K., 2015. Theorizing about Software Development Practices.
Science of Computer Programming, Volume 101, pp. 124-135.

Tegegne, E. W., Seppänen, P. & Ahmad, M. O., 2019. Software development Methodologies
and Practices in Start-ups. EMI Journals: The Institution of Engineering and Technology,
13(6), pp. 497-509.

9|Page

You might also like