Instructions
For the Signature Assignment, you will consolidate the work of previous assignments and will present a software engineering plan based on the case scenario selected in Week 2, starting by establishing standards to follow for software solutions design, development, and support. Standards for data schema definition and secure software development must follow the use of project management collaboration tools. A literature review section is required.
Be sure your report format includes the following:
Cover Page
Table of Contents
Introduction – Present an executive summary of the scenario where the software solution was proposed and followed in all subsequent assignments. In the case of an organization, present the nature of the organization, its mission, vision, and strategic goals leading to the need to develop a supporting software solution. In the case of a team project, team composition and workload distribution must be presented.
Project Scope – Purpose and intended outcome of the software solution project based on the problem or needs statement
Justification for the project – Needs assessment, as stated on the project charter
Problem statement and expected results
Project management tools – Kanban board, scrum tools, lean
Software architecture and development standards
Task Distribution (Gantt Chart)
Quality Assurance Plan
Literature review in support of software engineering models, standards, data modeling and quality considerations, including software security criteria.
Prototype Design and Coding Specifications:
Technical specifications
Storyboard designs
Logic flowcharts
Network modeling
Database Schemas
Metrics, usability guidelines, and test cases for software quality
The software development process, release planning, and transfer to production recommendations, based on DevOps and DevSecOps strategies.
Sprint reviews and retrospective
Conclusion
1
Software Solutions Development
Jordan Carter
TIM-8140
Professor Jeevan D’Souza
July 23, 2023
2
Introduction
Software development entails computer activities committed to creating, designing,
implementing, and supporting software. Organizations from diverse industries and sectors
engage in software development for different reasons. Studies have established that some
benefits these organizations get from software development include improved security,
scalability, flexibility, competitive edge, and reduced costs. While personalized software
development yields these benefits, its development and implementation require considerable
technological, financial, and human resources. Therefore, organizations should cautiously assess
their needs before engaging in a software development project (Georgiou, Rizou, & Spinellis,
2019). This paper will analyze a case study scenario that justifies software solutions
development.
Problem Statement
A problem statement from the case that justifies a software solutions development is
NCUONE Cloud Consulting Services’ (NCUONE-CS) lack of an interactive, inclusive, and
active online customer portal that engages with the customers. Specifically, the company’s
current customer portal has limited features and only describes its services and contact
information customers can use. However, the company seeks to increase the portal’s ability to
show comprehensive information. The new customer portal will include a thorough client
inquiry, allowing the clients to provide complete requests for pre-assessment, obtain initial cost
evaluations, and participate in virtual meetings. This new portal will also provide an interactive
demo of the services and brands offered by the company. The demonstration of this portal and
the project management tasks will be available for clients to review.
3
Process Flow and Phases of Software Development
The software development life cycle (SDLC) is an arranged series of phases in software
development to create software (Sen, Patel & Sharma, 2021). These phases assist in the efficient
development of software. The following are the phases of software development;
1. Requirement Determination
The first phase of SDLC is requirement determination, where the project manager and
team obtain business and project requirements from the client and other relevant stakeholders. In
this phase, the project manager meets with the client to collect all relevant data about the
software, such as the features the client wants, the software’s purpose, and the end-users. The
feasibility information about the software is converted into definite requirements for the project
team (Berry et al. 2010). Some of the significant activities in this phase are;
a. Requirements elicitation
This entails communicating and cooperating with relevant stakeholders to amass
information and determine the project’s goals. The development team meets with the client and
other stakeholders at this stage to collect the relevant requirements.
b. Requirements analysis
This stage involves the project team clarifying the expected features and mission of the
project. For instance, in this case, the team clarifies the features that should be included in the
comprehensive customer portal (Berry et al. 2010). Clarifying stakeholders’ anticipations averts
instances of miscommunication during the software’s development and
implementation/installation.
4
c. Requirements specifications
This involves examining the company’s existing software, documenting its features, and
collecting information about the specifications of the new software. Specifically, after this
information is collected, it is analyzed to ascertain the features of the latest software. It involves
assessing data, determining significant requirements, and assortment requirement-fulfilment
approaches. Furthermore, some fact-finding tools that will be used to collect information in the
requirement determination phase are record views, interviews, and observations. All the
collected information will be stored in the Software Requirement Specification (SRS) (Berry et
al. 2010).
2. Design
The second phase of SDLC is software design. This involves using the information of
requirements and designing the software. Essentially, the inputs from the client, users, and
relevant stakeholders collected in the requirement determination phase are utilized (Dwivedi,
Katiyar & Goel, 2022). Some of the activities/stages involved in software design are as follows;
a. Interface design
This activity involves describing the interaction between the software and the users. It
processes a significant degree of abstraction regarding the inner operations of the software. The
focus is on the communication and overall interaction between the software, the users, and other
computer systems within the company (Dwivedi, Katiyar & Goel, 2022). In this case, the
company wants to develop a software solution to enhance client interaction.
b. Architectural design
5
This activity involves the specification of the crucial elements of software, their
properties, tasks, and interfaces. In this stage, the general framework of the software is selected.
Some of the tasks in architectural design are allotment of functional responsibilities to elements,
component interfaces, component scaling, and interactions among elements.
c. Detailed design
This activity entails the description of the internal components of the software’s
elements, processing, interactions, and relevant algorithms. Tasks involved in this phase include
user interface, data interaction, algorithms, decomposition of crucial software elements, and data
frameworks (Dwivedi, Katiyar & Goel, 2022).
Source: (Dwivedi, Katiyar & Goel, 2022).
3. Coding
6
The third phase of SDLC is coding. This phase involves software implementation in
regards to developing a code using a programming language. The activities utilized in this phase
include coding standards and code reviews. The former arises when the project manager and
team develop coding standards and practices before writing the codes. This activity guarantees
the uniformity and sustainability of the code. The latter arises after the code is created, and the
team assesses it to ensure it complies with coding practices and quality standards.
4. Testing
Before the software that supports an interactive customer portal is installed, it is tested.
Studies show that errors may adversely affect the software. Therefore, testing is conducted by the
testing team at different levels. Some testing undertaken include program, module, and end-user
testing, where some users test the software to ascertain its effectiveness. Early detection of errors
in the software and solving them is crucial to dependable software (Dwivedi, Katiyar & Goel,
2022).
5. Integration and Implementation
Before the software is implemented, it can be integrated with other programs and
databases.
Once this activity is completed, the software is installed on the customer portal. This
software supports the preferred features the company wanted, such as allowing the clients to
provide their requests for pre-assessment, participate in virtual meetings, and interact with the
company’s products and services.
6. Maintenance
The final phase of SDLC is maintenance, where the software is evaluated to determine
whether it operates efficiently. In this phase, the users (company’s employees, clients, and other
7
relevant stakeholders) are trained on how to use the software. Also, the project team maintains
the software by updating the codes and fixing bugs (Dwivedi, Katiyar & Goel, 2022).
Importance of Clear Understanding of the Needs, Problems, Opportunities, and
Requirements
One of the importance of clearly understanding the needs, problems, opportunities, and
requirements is ensuring that the software aligns with the needs of the users. Specifically, by
collecting and assessing requirements, the project team can ensure that the software aligns with
the company’s and users’ needs and prospects. For instance, regarding the case study,
understanding the needs and requirements of the company will ensure that the software is
developed in a way that supports the interactive online customer portal (Berry et al. 2010).
Another importance of understanding the needs and requirements is that it helps define
the project scope. When the project manager and team understand the client’s requirements, they
can eradicate misunderstanding or vagueness regarding the required features of the software.
Moreover, costs are saved by understanding the client’s requirements. When the project team
fails to understand the problem and the client’s needs, they may end up developing software that
does not meet the client’s requirements (Berry et al., 2010). This will prompt them to make
costly adjustments affecting the initial project budget.
Software Engineering and Development Framework
Following a software engineering and development framework and utilizing agile and
scrum technologies to develop NCUONE Cloud Consulting Services software solutions facilitate
incremental development. This means that as the software is being developed, each succeeding
8
version is operational and based on the preceding version. Additional features are added to the
software in ensuing sprints and are changed according to the client’s feedback.
Incremental development prompts customer satisfaction, another impact of following
software engineering and using agile and scrum. Giving the client operational functionality in
small “doses” enables them to view what they are receiving gradually and be hopeful that it
signifies the software’s functionality. Moreover, transparency is another impact of following
software engineering and combining scrum and agile in software development. Following these
approaches offer an opportunity to involve NCUONE Cloud Consulting Services in developing
software that supports an interactive online portal for customers. The company ranks features to
be added to the portal for iteration planning (Hayat et al. 2019).
Source: (Hayat et al. 2019)
Conclusion
The software solutions development addresses the problem of the lack of an interactive
and inclusive online customer portal at NCUONE Cloud Consulting Services (NCUONE-CS).
9
This software development will address this problem and ensures that the customer portal fosters
communication and interaction between the clients and the customers. Developing this software
will follow the SDLC phases that begin with requirement determination and finish with
maintenance. The project will follow a software engineering and development framework and
utilizes agile and scrum to enhance incremental development, transparency, and customer
satisfaction.
10
References
Berry, D. M., Czarnecki, K., Antkiewicz, M., & AbdElRazik, M. (2010, September).
Requirements determination is unstoppable: an experience report. In 2010 18th IEEE
International Requirements Engineering Conference (pp. 311-316). IEEE.
Dwivedi, N., Katiyar, D., & Goel, G. (2022). A Comparative Study of Various Software
Development Life Cycle (SDLC) Models. International Journal of Research in
Engineering, Science and Management, 5(3), 141-144.
Georgiou, S., Rizou, S., & Spinellis, D. (2019). Software development lifecycle for energy
efficiency: techniques and tools. ACM Computing Surveys (CSUR), 52(4), 1-33.
Hayat, F., Rehman, A. U., Arif, K. S., Wahab, K., & Abbas, M. (2019, July). The influence of
agile methodology (Scrum) on software project management. In 2019 20th IEEE/ACIS
International Conference on Software Engineering, Artificial Intelligence, Networking
and Parallel/Distributed Computing (SNPD) (pp. 145-149). IEEE.
Ruparelia, N. B. (2010). Software development lifecycle models. ACM SIGSOFT Software
Engineering Notes, 35(3), 8-13.
Sen, S., Patel, M., & Sharma, A. K. (2021). Software Development Life Cycle Performance
Analysis. In Emerging Trends in Data Driven Computing and Communications:
Proceedings of DDCIoT 2021 (pp. 311-319). Springer Singapore.
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.
Read moreEach paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.
Read moreThanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.
Read moreYour email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.
Read moreBy sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.
Read more