Studies on moving customers to secure software products. This specialization helps students create secure software from the first stage to the end of development.
Suggested by: Coursera (What is Coursera?)
No prior knowledge required
No unnecessary risks
The Software Requirements specialization focuses on traditional techniques for gathering and writing software requirements, while addressing the requirements from an information security perspective. In traditional methods, non-functional requirements, such as security, are often ignored.
In this training, students will deal with:
Peer assessments and reviews will allow you to explore the challenges of software requirements generation, development, writing, and management. Assignments will be based on the desired products described.
Discussion is also a key component – take advantage of the forums!
In the course on Gathering Software Requirements for Secure Development, we will discuss the overall process of software requirements and its implementation in models such as Waterfall, Spiral, and Agile. You will learn about each of these processes and your goals as a software requirements analyst. This is not an easy task! Who do you talk to, when, and what knowledge are you trying to gain at each software life cycle? How do you deal with obstacles along the way? These are the questions we will consider in this course.
In the Artifact and Stakeholder Analysis course, you will learn how to use recorded and unrecorded knowledge in your collection techniques. When you start to discover about the new product, you must first learn about the previous product (if there was one) and then about the future system. You will often find yourself in an environment that you are not familiar with! This course will help you find ways to learn about the domain, the previous system, and the future system.
In this course, we move from speaking to writing precisely. The first step is writing goals. We will talk about goals used in requirements engineering, and from there we will write scripts from what we have learned. The scripts can be in diagram form or written form. Then – bring on the villains – we will discuss misuse cases and exploit cases and how we can deal with them in a requirements environment. In gathering requirements you will be left with many questions. This often leads to the need for additional interviews and group meetings. We will go over how to handle group meetings, handle disagreements, and manage stakeholder conflicts.
The Risk Analysis, Assessment, and Validation course focuses on how to manage conflicts at system levels, but it can also be applied to lower-level assessments. How do you manage and document conflicts, along with alternatives? When analyzing alternatives, you need to consider risks. In this course, we will look at how to analyze risk, assess risk, document risks, and use this information to update requirements. Both qualitative and quantitative approaches will be covered.
As you gather and prioritize requirements, you also need to document them. In this course, we will discuss and challenge you in the process of turning requirements into something readable for high-level customers and developers. When a designer or developer reads your document, they should be able to understand the big picture, scope, domain, resources, expectations, and why we didn’t choose certain alternatives. To create a document this way, you will use a balance between storytelling (with pictures!) and complex diagrams.