If the Specialization includes a separate course for the hands-on project, you'll need to finish each of the other courses before you can start it. When you finish every course and complete the hands-on project, you'll earn a Certificate that you can share with prospective employers and your professional network.
This course highlights the importance and role of software product management. It also provides an overview of the specialization, as well as its goals, structure, and expectations. The course explains the value of process, requirements, planning, and monitoring in producing better software.
This course delves into a variety of processes to structure software development. It also covers the foundations of core Agile practices, such as Extreme Programming and Scrum. This course covers practical techniques to elicit and express software requirements from client interactions. This course covers the techniques required to break down and map requirements into plans that will ultimately drive software production.
Upon successful completion of this course, you will be able to: - Create effective plans for software development - Map user requirements to developer tasks - Assess and plan for project risks - Apply velocity-driven planning techniques - Generate work estimates for software products. If you subscribed, you get a 7-day free trial during which you can cancel at no penalty.
See our full refund policy. To get started, click the course card that interests you and enroll. You can enroll and complete the course to earn a shareable certificate, or you can audit it to view the course materials for free.
Visit your learner dashboard to track your progress. Yes, Coursera provides financial aid to learners who cannot afford the fee. Apply for it by clicking on the Financial Aid link beneath the "Enroll" button on the left. You'll be prompted to complete an application and will be notified if you are approved. You'll need to complete this step for each course in the Specialization, including the Capstone Project.
Learn more. When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. If you only want to read and view the course content, you can audit the course for free. If you cannot afford the fee, you can apply for financial aid. You can access your lectures, readings and assignments anytime and anywhere via the web or your mobile device.
This Specialization doesn't carry university credit, but some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.
Time to completion can vary based on your schedule, but most learners are able to complete the Specialization in about 6 months.
The first five courses in the Specialization are offered once per month. The Capstone is offered on a regular schedule. You should have a basic knowledge on how software is developed. Programming experience is not required. You can change the active elements on the page buttons and links by pressing a combination of keys:.
I accept. Polski English Login or register account. Dabholka, A. Abstract Supporting the varied software feature requirements of multiple variants of a software product-line while promoting reuse forces product line engineers to use general-purpose, feature-rich middleware platforms.
However, each product variant now incurs memory footprint and performance overhead due to the feature-richness of the middleware along with the increased cost of its testing and maintenance.
To address this tension, this paper presents FORMS Feature-Oriented Reverse Engineering for Mmiddleware Specialization , which is a framework to automatically specialize general-purpose middleware for product-line variants. FORMS provides a novel model-based approach to map product-line variant-specific feature requirements to middleware specific features, which in turn are used to reverse engineer middleware source code and transform it to specialized forms resulting in vertical decompositions.
Authors Close. Assign yourself or invite other person as author. It allow to create list of users contirbution. Configurable components that may be modified and configured to specialize them to a new application. Sometimes, it is possible to reconfigure these components without changing their code by using a built-in component configuration language. Specialized, domain-specific components some or all of which may be replaced when a new instance of a product line is created.
Application frameworks vs product lines: Application frameworks rely on object-oriented features such as polymorphism to implement extensions. Product lines need not be object-oriented e. Product lines embed domain and platform information. Product lines often control applications for equipment. Software product lines are made up of a family of applications, usually owned by the same organization.
Product line architectures must be structured in such a way to separate different sub-systems and to allow them to be modified. The architecture should also separate entities and their descriptions and the higher levels in the system access entities through descriptions rather than directly. Various types of specialization of a software product line may be developed: Different versions of the application are developed for different platforms. Different versions of the application are created to handle different operating environments e.
Different versions of the application are created for customers with different functional requirements. Different versions of the application are created to support different business processes. Software product lines are designed to be reconfigurable. This configuration may occur at different stages in the development process: Design time configuration: The organization that is developing the software modifies a common product line core by developing, selecting or adapting components to create a new system for a customer.
Deployment time configuration: A generic system is designed for configuration by a customer or consultants working with the customer. Knowledge of the customer's specific requirements and the system's operating environment is embedded in configuration data that are used by the generic system. An application system product is a software system that can be adapted for different customers without changing the source code of the system.
Application system products are adapted by using built-in configuration mechanisms that allow the functionality of the system to be tailored to specific customer needs. Benefits of application system reuse: As with other types of reuse, more rapid deployment of a reliable system may be possible.
It is possible to see what functionality is provided by the applications and so it is easier to judge whether or not they are likely to be suitable.
Some development risks are avoided by using existing software. However, this approach has its own risks, as I discuss below. Businesses can focus on their core activity without having to devote a lot of resources to IT systems development.
As operating platforms evolve, technology updates may be simplified as these are the responsibility of the COTS product vendor rather than the customer. Problems of application system reuse: Requirements usually have to be adapted to reflect the functionality and mode of operation of the COTS product. The COTS product may be based on assumptions that are practically impossible to change.
There may be a lack of local expertise to support systems development. The COTS product vendor controls system support and evolution. Configurable application systems are generic application systems that may be designed to support a particular business type, business activity or, sometimes, a complete business enterprise.
For example, an application system may be produced for dentists that handles appointments, dental records, patient recall, etc. Domain-specific systems, such as systems to support a business function e. An Enterprise Resource Planning ERP system is a generic system that supports common business processes such as ordering and invoicing, manufacturing, etc.
These are very widely used in large companies - they represent probably the most common form of software reuse. The generic core is adapted by including modules and by incorporating knowledge of business processes and rules.
A number of modules to support different business functions. A defined set of business processes, associated with each module, which relate to activities in that module. A common database that maintains information about all related business functions. A set of business rules that apply to all data in the database. Key elements of an ERP system architecture: A number of modules to support different business functions. An ERP system configuration usually involves: Selecting the required functionality from the system.
0コメント