Solved by verified expert:PLEASE REVIEW ATTACHED FILE ON APEX ONLINE BANKING. Provide the following to illustrate the actions taken to implement requirements management:Title slideTopics of Discussion slideSummary of IEEE Standards used during the requirements management process (i.e., IEEE Std 1233 – 1998; IEEE Std 830-1998, SEI CMMI)Introduction and Purpose of Requirements Management (REQM) within CMMIGoals and Practices used during REQM for your projectIdentification of at least 1 Requirements Management tool or software, which would be used in support of your project at a major corporation (i.e., DOORs, Requisite Pro, CASE Spec, Open Source RM, CORE)Use of requirements management to produce metricsSummary slideReference slide in APA formatEach major topic presented from the Summary of the IEEE Standards to the Goals and Practices used during REQM should have 2–3 sentences of explanation or expansion placed in the speaker notes of each slide. References must be placed either on the slide or in the speaker notes in APA format. The overall length of the presentation should be 8–11 slides in PowerPoint.
sethholley_cs455_ip3.docx
Unformatted Attachment Preview
Colorado Technical University
CS455-1704A-01 Software Requirements Engineering
Process of Requirements Development
Student: Seth Holley
30 Oct 2017
Contents
Introduction …………………………………………………………………………………………………………………………………………………………………………………………. 3
Elicitation Process ……………………………………………………………………………………………………………………………………………………………………………… 3
Requirements Gathering Skills …………………………………………………………………………………………………………………………………………………………….. 4
Software Requirements Specification………………………………………………………………………………………………………………………………………………………. 6
Introduction ……………………………………………………………………………………………………………………………………………………………………………………… 6
References ……………………………………………………………………………………………………………………………………………………………………………………….. 7
Overall Description ……………………………………………………………………………………………………………………………………………………………………………. 7
Specific Requirements/Functionality ……………………………………………………………………………………………………………………………………………………. 8
Non-Functional Requirements …………………………………………………………………………………………………………………………………………………………….. 9
Usability ……………………………………………………………………………………………………………………………………………………………………………………….. 9
Reliability…………………………………………………………………………………………………………………………………………………………………………………….. 10
Performance ……………………………………………………………………………………………………………………………………………………………………………….. 10
Supportability………………………………………………………………………………………………………………………………………………………………………………. 11
Design Constraints …………………………………………………………………………………………………………………………………………………………………………… 11
Licensing…………………………………………………………………………………………………………………………………………………………………………………………. 12
Requirements Verification ………………………………………………………………………………………………………………………………………………………………… 12
Requirements Traceability ………………………………………………………………………………………………………………………………………………………………… 13
Test case for login ……………………………………………………………………………………………………………………………………………………………………………….. 14
Testing ……………………………………………………………………………………………………………………………………………………………………………………………….. 16
Appendix ……………………………………………………………………………………………………………………………………………………………………………………………. 23
Introduction
Elicitation Process
The process of elicitation involves requirement gathering, organization, discussion, and specifications. Project developers are
required to have specific skills during the elicitation process. Technical competency is one of the most vital skills of a project developer.
A software developer is required to have a sufficient understating of the client’s expectations and subsequently minimize the complexity
and ambiguity of the stated requirements to the project team (Broy, 2010). A developer is also required to have proper communication
skills. Requirement gathering involves discussion with the client and end users to formulate the expectations of the software. He or she
is also required to communicate with the project team members. The developer should, therefore, have a well-strategized communication
plan to ensure that the requirements are fully gathered.
Organization skills are other expectations required of a software developer. He or she should be able to arrange and prioritize the
requirements in order of urgency, convenience, and importance. A software developer is also required to have excellent negotiation
skills for successful discussion process. If the conditions are ambiguous, or there are significant conflicts, negotiation with stakeholders
is highly required (Broy, 2010). The software requirements can then be reasonably comprised and prioritized. Mediation allows the
project team members to remove ambiguity and enhance clarity of the software requirements. A developer should also have eloquent
documentation skills. All the elements in the elicitation process, formal and informal, functional and non-functional, should be
documentation in preparation for the implementation phase.
Requirements Elicitation process allows efficient identification of all client’s stakeholders, experience, the view point of the
system, needs and general expectations of the software. It allows the engineering team to fully record the requirements in such a way
that would allow correct implementation of software development (Chakraborty, 2010). The elicitation process also aids in driving
design of the software. The documented requirements would make it easy for the software developers to establish a proper
implementation breakdown structure. Elicitation process also formulates an appropriate articulation of the business problem. Well
defined problems and clear state of software requirements ease the implementation phase.
Requirements Gathering Skills
The successful development of software involves a series of specifications that entail elicitation of requirements. Software
requirements are the functionalities and features of a particular target system. Ideally, elements reflect the expectation of users from the
software product being developed. Software Requirements Specifications (SRS) can be classified as both known or unknown, and visible
or hidden from the customer’s point of view. These foundation pillars of a software essentially aid in development, user experience,
driving design, and supporting documentation. (Chung, 2012) Requirement Engineering is the process of gathering software
requirements, analyzing and documenting them. This paper examines the concept of Software Requirement Elicitation.
A kick-off meeting is an essential tool used in the communication of project specifications to the stakeholders. It usually takes
place after the project planning phase and just before the implementation of the project. This meeting is attended by all the relevant
project team as it marks the official start of the project. The project team is informed of the project objectives and the level of commitment
required to meet the specified goals. A kick-off meeting facilitates a successful project initiation and provides an additional boost of
the motivation of the team member (Chakraborty, 2010). Proper management of the kick-off meeting prevents the risk of obstruction
and allows the team to complete the project successfully.
A successful kick-off meeting involves some technical preparations in an attempt to minimize project development obstruction.
Preparation of the kickoff meeting consists of the development of project goals and deliverables. These elements can be documented
and the definitions validated by the project owners (Chakraborty, 2010). The project documentation can also success factors required of
every team member. Identify the project team members and include the resources based on their responsibilities, size, design, nature,
and complexity of the project. The project assumption list should also be developed. It is essential for the project team members to be
fully aware of the technical assumptions of the project.
The preliminary project plan should also be developed. This preparation involves the prior development of responsibilities,
project tasks and timeframes of the project plan. A baseline project plan, for example, provides a summarized overview of the project
and minimizes the risk of complexity (Chung, 2012). The framework for communication should also be included in the preparation of
the meeting. As such, the method of communication will be developed to ensure a successful meeting.
Software Requirements Specification
Introduction
Each piece of software that has been developed is based on the set goals and objectives of the user. These goals and objectives
are provided in the form of the requirements and the desired functionality of the given system. While addressing the issue of system
requirements and requirement traceability, Apex banking system is going to look at the respective requirements for an online banking
system with respect to the various areas of application as far as the system is concerned. Users in this system will be responsible check
account balances, locking cards that have been lost or stolen, adjusting statements, waiving charges, view future auto deposits (2-3
days prior), and helping customer via phone if they decide to call in. Customers responsibilities are going to be checking account
balance, requesting new accounts transfer or send money to someone, pay a bill, deposit check by picture, manage security such as
passcodes, set up alerts and close accounts.
References
Paetsch, F., Eberlein, A., & Maurer, F. (2003, June). Requirements engineering and agile software development. In Enabling
Technologies: Infrastructure for Collaborative Enterprises, 2003. WET ICE 2003. Proceedings. Twelfth IEEE International
Workshops on (pp. 308-313). IEEE.
Glinz, M. (2007, October). On non-functional requirements. In Requirements Engineering Conference, 2007. RE’07. 15th IEEE
International (pp. 21-26). IEEE.
Overall Description
The purpose of this document is to serve as a guideline to the software developers, designers, and testers primarily responsible
for the engineering of the Apex Banking System. It also offers the necessary information that fully allows the design, development, and
testing of software.
This document contains a brief description of the software, Apex Banking System. It includes the scope, the system overview,
functional and non-functional requirements, concise definitions, use cases and references.
Apex banking system is a reliable solution for the integration of all internal processes in a financial organization. It specializes
in the core banking services. Also, it provides functional support for the products and services offered by the financial institution. The
system complies with all reporting and accounting standards.
Specific Requirements/Functionality
The system specifications in terms of the functionality of the system are defined by the functional requirements (Paetsch,
Eberlein & Maurer, 2003). As far as the Apex online banking system is concerned, the requirement specifications are as described.
Functional and the respective specifications for the system include what the system is expected to do to the user as well as to the other
users of the system.
The system will provide the user with a clear user interface to facilitate the operations of the user to the system as far as
banking is concerned. The user will be able to request to open an account online regardless of the user`s geographical location. The
user will also be able to make the desired check deposits into the opened account regardless of the location of the user. The system is
will provide the user with the services of bill paying. In case a user decides to terminate their banking services with the bank, the
system will offer account termination services. The system will also facilitate the user to transfer funds from their account to any
desired account. The specific requirements are as summarized below:
•
Ability to request to open an account.
•
Ability to login and log out of the system as desired.
•
Ability to deposit checks by picture into the created account.
•
Ability to pay bills as desired.
•
Transfer abilities.
The following section is going to address the nonfunctional requirements of the online banking system which relate to the
performance and reliability among other vital issues.
Non-Functional Requirements
Usability
The usability of a system is best described as how a system should consider specific users. There will be two different types of
users in this system, clerk and manager. Both users will be required to have user profiles with special permissions for customer
security purposes. All users will be assigned a unique username and password that is required to changed every 6 months. Clerks will
have permissions such as open an new account, cash transfer up to $5000, view upcoming deposits, set up alerts, lock a card if lost or
stolen, and change personal information on account. Managers will have the same permissions as Clerks but the cash transfer limit is
increases. Both users will receive just about the same training but managers have the ability to escalate issue with the system.
Reliability
The reliability of a system can be defined as the degree to which a given system performs the required tasks as having been
presented by the user whenever required. To measure the reliability of a given system, strategies such as considering the downtime
and the uptime of the given system come in handy. A system is reliable when it performs the required tasks and functions as per the
user`s requirements in most of the time. However, an ideal reliable system is always available whenever needed by a user.
Guaranteeing reliability of this system is done by requiring that the developer set aside a parallel system with all the data from the
primary system. This system will also have a second system that can be referred to as a backup system, just in case the primary system
develops a failure, the backup system takes over seamlessly.
Performance
Performance is a desired feature of any given system. In defining performance, it can be seen to be the measure of the overall
response time that is taken to process a given user request. These requests may include a mouse click or even a key press. To
guarantee a high performance of the system, we will design the system in such a way that it can run on a standard processor. There are
some special case with performance that will be addressed such as, if a customer or user tries to log in and it takes more than 10
seconds the system will automatically notify a member of the development staff so they can track and correct the issue. Another thing
Apex online banking system will do is automatically refresh and let the customer or user know why and what’s going on.
Supportability
Supportability deals with once the software is in use, how the users receive support on fixing bugs in the software. If the
software isn’t working correctly there will be a link to report problems. If the link doesn’t work there will be a toll free number that
only managers are authorized to call and must prove log in and password to authenticate. Along with the ability to report problems
engineers will also monitor the system to make sure the system is functioning properly.
Design Constraints
During the development of a given system, there arise some issues that the developer may not have control over but have a
negative impact on the developed system. These are the design constraints of the system (Glinz, 2007). Some of these design
constraints of the online banking system may include the issue of integration. The system will be designed in such a way that it makes
it possible to be used in various platforms regardless of the operating systems among other issues. In today’s world, you must have a
mobile friendly app for any software to be relevant, so Apex online bank service will have a mobile friendly app. Developers will
design a system that is inclined to be used on a given platform while neglecting the other platforms. The other design constraint is
optimization of the operations of the system to achieve high performance. The system is full duplex and having been designed from a
small but effective code ensures that the system is faster in terms of response time which translates to improved performance.
Licensing
After a system has been developed and installed within the user`s area of application, the developer will offer supportive
services to the system. Before deployment of the system, the necessary licenses will be acquired. These are vital in that they show that
the developed system is up to the set standards and that the system is legal within the given area. Developers of Apex online banking
system will obtain the necessary legal documentation and the deployment documentation for the system to be offered to the user of the
system.
Requirements Verification
System verification is the process that is undertaken to check whether the developed system is up to the set requirements by the
user. This is done by undertaking various tests on the system. One of the most common testing technique is dynamic verification. This
is what Apex online banking will use because it is the most effective test techniques since it involves and works on three distinct
aspects of the entire system. The first aspect involves the test of a single unit. The second aspect is testing of a larger module of the
system. Integration, module and system testing the follow. Dynamic testing also encompasses the testing of the functionality of the
system and on the usability of the system which involves both nonfunctional and functional testing.
Requirements Traceability
Below is the traceability matrix for the given system with respect to the selected test cases on the identified business process.
BR no.
Module
Roles
Details
B1
Login & logout
User
The user can log in
and log out of the
system successfully.
B2
Open new account
User
The user should be
able to request to
open a new account
B3
Transfer cash
User
Ability for the user to
make the desired
transfers.
B4
Check deposits
User
The user should be
able to deposit checks
into the account.
Description of business requirements and technical requirements.
During login, as per the technical requirements, the following should hold.
T92 Username should never be empty.
T93 the password should never be empty.
T94 the correct combination of both the username and password guarantee successful login.
Test case for login
Case no.
TR no.
1
T94
Test
Steps
Test data
Results
followed
used
Lo …
Purchase answer to see full
attachment
You will get a plagiarism-free paper and you can get an originality report upon request.
All the personal information is confidential and we have 100% safe payment methods. We also guarantee good grades
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