Before you sit down to design a program, you need to know what the program is expected to do and if there are any functional and non-functional requirements. Defining requirements before you get started saves time in coding. Learn how to identify the features and capabilities needed for specific application programming by watching this online video.
- View Offline
This first step can have other names, even just analysis, but Requirements is a good word.…What is the application required to do, what must it do?…Now the core of your requirements or what are called functional requirements,…literally, what are the features, the capabilities of the application?…What does it need to do?…But there are other non-functional requirements like what kind of help or…documentation needs to be provided? Are there legal requirements?…If you're building a system that does banking transactions or stores healthcare…data, then there may be laws that you need to comply with.…
And do you know those details? If you don't, who does?…Performance requirements, response time, how many people does this app need to support simultaneously?…Support requirements, if there's an issue with the web application at 2 a.m. on…a Sunday morning, what needs to happen?…And security can be considered either non-functional or functional requirement…depending on the app.…Now if you're doing the app for someone else, you'd get a lot of this from your…
Let Simon Allardice introduce you to the terms—words like abstraction, inheritance, polymorphism, subclass—and guide you through defining your requirements and identifying use cases for your program. The course also covers creating conceptual models of your program with design patterns, class and sequence diagrams, and unified modeling language (UML) tools, and then shows how to convert the diagrams into code.
- Why use object-oriented design (OOD)?
- Pinpointing use cases, actors, and scenarios
- Identifying class responsibilities and relationships
- Creating class diagrams
- Using abstract classes
- Working with inheritance
- Creating advanced UML diagrams
- Understanding object-oriented design principles