User and System Requirements for Successful Software Development

Course 218 | 4 Days

Attendee Rating

Evaluations in the Last 12 Months
  • 5 stars: 75%
    5 Star Ratings: 75%
  • 4 stars: 23%
    4 Star Ratings: 23%
  • 3 stars: 1%
    3 Star Ratings: 1%
  • 2 stars: 1%
    2 Star Ratings: 1%
  • 1 star: 0%
    1 Star Ratings: 0%
User and System Requirements for Successful Software Development

You Will Learn How To

  • Develop requirements for software-intensive systems using proven methodologies
  • Build a use case-based requirements model
  • Write user stories and brief, casual and fully developed use cases
  • Model user interface using mock-ups and develop a data model
  • Validate requirements, manage the changes and keep traceability
Participants mapping essential business processes using UML.

RealityPlus™ Activities

  • Analyzing initiation documents and defining the elicitation approach
  • Modeling requirements with UML diagrams using a CASE tool
  • Capturing, structuring, iteratively writing and refining use cases
  • Developing screen mock-ups
  • Producing a UML requirements data model
  • Validating requirements using IEEE standard checklists
  • Course Info

    Course 218 Content

    The Importance of Software Requirements

    The software development life cycle

    • Defining and differentiating between requirement types
    • Locating requirement sources
    • Development approaches

    Presenting software requirements

    • Structuring the requirements document
    • Requirements components: text, diagrams, data

    Structuring Your Project

    Tuning your methodology to your project size

    • Matching the process to size and complexity of projects
    • Differentiating Agile from standard techniques

    Analyzing stakeholder input

    • Identifying and prioritizing stakeholders
    • Eliciting initial requirements from input documents
    • Iterating requirements collaboratively

    Applying the requirements process

    • Elicitation
    • Analysis
    • Specification
    • Validation
    • IEEE
    • SWEBOK
    • The Unified Process

    Capturing and Refining Use Cases

    Writing user stories

    • Scripting user stories and use cases
    • Iteration and progressive elaboration of use cases

    Creating structured use cases

    • Use-cases as behavioral requirements
    • Identifying stakeholders and actors
    • Naming and scoping use cases
    • Writing scenarios: main and alternatives
    • Adding preconditions and guarantees

    Iterating use cases

    • Refining use cases with stakeholders
    • Factoring common steps
    • Discovering extension scenarios
    • Verifying use case completeness

    Organizing use cases

    • Diagramming scenarios with UML
    • Choosing free text vs. formal use case notation

    Generating Interface Requirements

    Integrating interface requirements

    • Supporting use cases with user interface mock-ups
    • Comparing types of interface

    Producing interface models

    • Storyboarding and prototyping
    • Modeling interfaces with UML state diagrams and navigation maps

    Data Requirements

    Analyzing data requirements

    • Exploring the use cases and the interface
    • Determining data business rules

    Creating a requirements data model

    • Representing data models with UML class diagrams
    • Entities
    • Attributes
    • Associations
    • Adding associations' multiplicity
    • Maintaining the glossary

    Nonfunctional Requirements

    Gathering nonfunctional requirements

    • Obtaining volumetrics
    • Classifying nonfunctional requirements using FURPS

    Documenting nonfunctional requirements

    • System reliability: Availability, Accuracy and Failures
    • Addressing the "-ilities"

    Validating Requirements and Producing Test Scenarios

    Performing requirements validation

    • Achieving well-formed requirements through validation
    • Reviewing requirements with walkthroughs
    • Verifying requirements with inspections

    Generating use case tests from requirements

    • Ensuring testability of requirements
    • Extrapolating test scripts and scenarios from requirements
    • Relating requirements to system and UA testing

    Who Should Attend

    Those developing, leading, designing, testing or managing a requirements initiative for a software system. UML experience is not required.

    Training Hours

    First Day Orientation:
    8:00 a.m. - 9:00 a.m.

    Standard Class Hours:
    9:00 a.m. - 4:30 p.m.

    Last Day Class Hours:
    9:00 a.m. - 3:30 p.m.

    Free Optional Course Exam Last Day:
    3:45 p.m. - 4:30 p.m.

    Each Class Day:
    Upon Request: Informal discussion with instructor about your work-specific projects or areas of special interest:
    4:30 p.m. - 5:00 p.m.

  • More Course Info

    What is this course about?

    Proper requirements gathering is the cornerstone to any software development project, helping to ensure that time, budget and product parameters are successfully met. In this course, you gain the foundation knowledge and skills needed to capture software requirements using clearly defined processes. You learn to specify user and system requirements, match the process to the size of your project, and extract system and user acceptance tests from the requirements model.

    This course uses a reality-based style of learning that includes immersion in an authentic software requirements development process. Working in teams throughout the course, you gain authentic experience in all aspects of constructing a software requirements model.

    Who will benefit from this course?

    This course is valuable for software professionals involved in the development of software and user requirements, such as software analysts, software developers, programmers, system architects, software testers and software development managers. Software project managers, team leaders and business analysts will also benefit.

    What background do I need?

    No previous experience in user and system requirements is needed for this course. Previous experience working with UML is also not required.

    How does this course differ from Course 315?

    Course 315, Developing User Requirements: The Key to Project Success, is designed to provide managers with an essential overall knowledge of user requirements.

    Course 218 is intended to provide those actively involved in a project with the skills to implement requirements for software and software-based systems. Software developers, analysts, managers, programmers, and those applying requirements capturing techniques in a software development project, will benefit greatly from this course.

    How is this course structured?

    This course is structured around a dynamic style of learning created by Learning Tree called RealityPlusTM -- an immersive experience that engages you in authentic tasks within a simulated real-world context. Through media-rich case studies, role playing, and video/computer-based activities, you are immersed throughout the course in an evolving scenario where the decisions you make affect the outcome of the simulation. The RealityPlus learning method is presented in a safe environment where you gain new skills and practice the most effective techniques to bring back to your job. At the end of your course, you are prepared to immediately and successfully apply these new skills within your organization!

    Does this course cover capturing requirements with use cases?

    Yes. Most modern software requirements methodologies are driven by use cases. In this course, use cases are a major focus, both in the course content and in the interactive, hands-on exercises. You learn how to capture, structure and refine use cases, model user interfaces and data, and generate scenarios for test cases.

    I am currently working on a small/large/agile software development project. Is this course right for me?

    Absolutely! The user and system requirements taught in this course are applicable to all size software development projects. Coverage is provided to meet the unique needs of developing requirements in an agile environment.

    Does the style of requirements capture used in this course apply to an object-oriented (OO) software design project?

    Yes. Most modern software design techniques are object-oriented based, given the dominance of OO languages currently in use. The requirements models you generate during this course lead directly to an OO design process. The techniques used in this course are also suited for maintaining and managing change to existing systems.

    How much time is spent on each topic?

    Content Hours
    The importance of software requirements 3.5
    Structuring your project 2.0
    Capturing and refining use cases 7.0
    Generating interface requirements 2.0
    Data and non-functional requirements 3.5
    Validating requirements and producing test scenarios 3.0
    Managing changing requirements 1.0
    User requirements best practices 1.0

    Times, including the workshops, are estimates; exact times may vary according to the needs of each class.

    What type of exercises will I do in the course?

    Approximately 60 percent is spent in activities. Hands-on and small-group, interactive activities include:

    • Capturing stakeholder input from video scenarios that put you at the meeting table
    • Modeling requirements with UML diagrams using a leading CASE tool
    • Capturing, structuring and refining use cases in a realistic, simulated environment
    • Developing screen mock-ups with an interface simulation
    • Applying formal inspections to a use case document
    • Producing a UML requirements data model
    • Validating requirements using IEEE standard checklists
    • Performing inspections on real-world use case documents

    I'm attending this course from work using AnyWare - Learning Tree's web-based remote attendance platform. How will that impact what I learn?

    You will participate fully in the course and acquire the same knowledge and skills as your classmates who participate in the classroom. You will have the same course materials, be able to easily communicate back and forth and ask questions of your instructors and peers, and you will control an in-classroom workstation dedicated entirely to you. Your instructor will be able to see exactly what you're doing and can interactively offer concrete help.

    Is this course endorsed by the IIBA®?

    Yes. Learning Tree is an Endorsed Education Provider (EEPTM) by the International Institute of Business Analysis (IIBA®). This course has been approved by the IIBA® as supporting core concepts and knowledge outlined by IIBA®'s Business Analysis Body of Knowledge® (BABOK®). Completion of this course counts as 23 continuing development units (CDUs), which will assist you in qualifying for or maintaining the Certified Business Analysis ProfessionalTM (CBAP®) certification. For more information about CDUs and how to register them with the IIBA, please see the Learning Tree IIBA® EEPTM Q&A or http://www.theiiba.org.

    Is this course applicable to a Project Management Professional (PMI) certification?

    Yes. Although this course is not designed as preparation for the exam, it is beneficial to anyone working toward PMI's PMP certification. For those who are currently certified, completion of this course counts as 23 professional development units (60 units must be completed every three years to maintain certification). For more details, please see the Learning Tree PMI Registered Education Provider Q&A.

    How does this course relate to other Learning Tree courses?

    Those interested in furthering their knowledge and skills in the software/systems design and engineering should consider:

  • Certification/Credits

    Many Learning Tree courses provide college credit and industry continuing education credits. You can also earn a Learning Tree Professional Certification in your area of expertise and prepare for popular industry certifications. See below for continuing professional development credits associated with this course.

    College Credit – 2 Semester Hours This course qualifies for 2 semester hours of college credit as certified by the American Council on Education's College Credit Recommendation Service (ACE CREDIT). Read More...
    Certification Core Course This course qualifies as a Core Course in our Job-Specific Professional Certification Program. Read More...
    IIBA 23 CDUsThis course is approved by the IIBA® for 23 continuing development units (CDUs). For more on the International Institute of Business Analysis and a full list of courses approved for CDUs. Read More...
    CPE 23 CreditsThis course qualifies for 23 CPE credits from the National Association of State Boards of Accountancy CPE program. Read More...
    PMI 23 PDUThis course is approved by PMI® for 23 professional development units (PDUs). For more on the Project Management Institute and a full list of courses approved for PDUs. Read More...
  • Tuition

    4-Day TuitionNew AttendeeReturning AttendeeNotes
    Commercial $2,810$2,530

    Click here for multi-course savings plans.

    Tuition payment is not required at time of enrollment.

    Government $2,499$2,249
3 Ways to Attend This
Instructor-Led Course

Sort By:
Via Anyware Live In-Class

Course Dates
Learning Tree Education Centers

At
Education Centers

Learning Tree AnyWare from your Home or Work

From Home or Work

Learning Tree AnyWare Education Centers

At AnyWare Centers

  • Jun 4 - 7New York
    Guaranteed to Run
  • Jul 9 - 12Toronto
    Guaranteed to Run
  • Jul 30 - Aug 2Rockville
    Guaranteed to Run
  • Aug 6 - 9Reston
  • Aug 20 - 23New York
  • Aug 27 - 30Los Angeles
    Guaranteed to Run
  • Sep 24 - 27Alexandria
  • Oct 22 - 25Rockville
  • Oct 29 - Nov 1Toronto
  • Nov 5 - 8Reston
  • Nov 12 - 15New York
  • Nov 26 - 29Ottawa
  • Jan 14 - 17Reston
  • Jan 21 - 24Los Angeles
  • Jan 21 - 24Rockville
  • Feb 4 - 7New York
  • Feb 25 - 28Toronto
  • Apr 15 - 18Reston
  • Apr 22 - 25Rockville
  • Apr 29 - May 2New York
  • May 6 - 9Ottawa
Attend all dates from your Home or Work via AnyWareAttend all dates from your nearest Local Training Center via AnyWare

To Begin the Enrollment Process,
please choose an option from the dropdown below

About Attending
via AnyWare Attend from your Home or Work via Learning Tree AnyWare Attend from your nearest Local Trainiing Center via AnyWare

AnyWare, our superior web-based attendance platform, lets you attend ANY of our LIVE instructor-led courses over the Internet. With AnyWare, you will enjoy the same live, interactive educational experience as being there in the classroom.

AnyWare Centers Attend from your nearest Local Trainiing Center via AnyWare

Philadelphia:
  • Bala Cynwyd
  • King of Prussia
  • One Liberty Place
New York:
  • Financial District
Chicago:
  • Schaumburg
Atlanta:
  • Alpharetta
  • Concourse
  • Downtown
Los Angeles:
  • Anaheim
  • Irvine
Washington, DC:
  • Alexandria
  • Columbia
  • Downtown DC
  • Reston
  • Rockville
  • Stafford
Canada:
  • Downtown Toronto
  • Downtown Ottawa

AnyWare Centers provide a distraction-free environment, dual screen computers and high-speed Internet.

New AnyWare Centers
Watch the AnyWare Experience Video

Guaranteed to Run Course Events

Course events marked with this Guaranteed to Run green check icon are absolutely Guaranteed to Run.

NOTE: Guaranteed to Run Guaranteed to Run course events are added twice weekly, please check back here for updates.


Tuition & Savings Plans

Take advantage of our Multi-Course Tuition Savings Plans. Learn more »



Enroll Today – Risk Free!

Call 1-800-843-8733 or enroll online by selecting your date above.

  • No advanced payment required.
  • No fees for cancellation or rescheduling, ever.
  • Take up to 30 days after your course date to pay.
  • Satisfaction guaranteed – or you pay no tuition.

You can bring this course on-site to your organization

Bring Learning Tree Training to your workplace with our On-Site Training Solution. Learn more ».


"I thoroughly enjoyed the User Requirements for Software Development course. The instructor was dynamic, and I found that working in teams really helped me to master the skills we were learning."

– D. Favre
Systems Analyst/Programmer
CareFirst BC/BS