Tải bản đầy đủ (.pdf) (191 trang)

Doctoral Thesis: A requirements-driven framework bridging model-based strategic representations with software development practices

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (18.45 MB, 191 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

Available at: <small>[Downloaded 2023/11/02 at 02:06:34 ]</small>

"A requirements-driven framework bridging model-basedstrategic representations with software development practices"

Nguyen Huynh Anh, Vu

Information Technology (IT) Governance is closely intertwined with Requirements Engineering. Aligningthe latter with the former indeed allows proposing management rules for evaluating a softwaredevelopment's relevance in alignment with the organization's long-term strategy. Typically, the goal ofgovernance of software engineering is to ensure that the results of a software development align with thestrategic requirements of the organization in terms of business process support and technology adoption.Requirements-driven software development processes, such as (I-)Tropos, are using coarse-grained (i.e.,high-level) and social-oriented models to drive the software life-cycle both in terms of project managementand forward engineering techniques. To support the governance of software developments realized withI-Tropos in terms of business and IT alignment as well as investment decision, this thesis proposes aprocess framework called GI-Tropos including a meta-model formalization of relevant process elements,the process description itself as well as its application onto two examples.

CITE THIS VERSION

<i>Nguyen Huynh Anh, Vu. A requirements-driven framework bridging model-based strategicrepresentations with software development practices.</i>  Prom. : Kolp, Manuel ; Wautelet, Yves dépôt institutionnel DIAL est destiné au dépôtet à la diffusion de documents scientifiquesémanant des membres de l'UCLouvain. Touteutilisation de ce document à des fins lucrativesou commerciales est strictement interdite.L'utilisateur s'engage à respecter les droitsd'auteur liés à ce document, principalement ledroit à l'intégrité de l'œuvre et le droit à lapaternité. La politique complète de copyright est

DIAL is an institutional repository for the depositand dissemination of scientific documents fromUCLouvain members. Usage of this documentfor profit or commercial purposes is striclyprohibited. User agrees to respect copyrightabout this document, mainly text integrity andsource mention. Full content of copyright policy

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

Vu NGUYEN HUYNH ANH

Doctoral Thesis 05 | 2020

A Requirements-Driven Framework Bridging Model-Based

Strategic Representations with Software Development Practices

<b>Université catholique de Louvain </b>

LOUVAIN RESEARCH INSTITUTE I N MANAGEMENT AND ORG ANIZATIONS

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

1. Problem Identification & Motivation

2. Definition of the objectives for a solution

3. Design & Development

4. Demonstration

5. Evaluation

6. Communication

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

Chapter 7

Framework Specification & Validation

Chapter 3(ICSOFT 2017)

Chapter 4(SEKE 2018

Background

</div><span class="text_page_counter">Trang 48</span><div class="page_container" data-page="48">

theEnterpriseEnd to End

3.Applying aSingleIntegratedFramework4.Enabling a

HolisticApproach5. Separating

GovernanceFromManagement

</div><span class="text_page_counter">Trang 51</span><div class="page_container" data-page="51">

The Business Model Canvas

<small>g by: Strategyzer AG</small>

<small>The makers of Business Model Generation and Strategyzer</small>

<small>This work is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported License. To view a copy of this license, visit: or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.</small>

<small>Revenue Streams</small>

<small>Customer SegmentsValue Propositions</small>

<small>Key ActivitiesKey Partners</small>

<small>Cost Structure</small>

<small>Customer Relationships</small>

<small>ChannelsKey Resources</small>

</div><span class="text_page_counter">Trang 57</span><div class="page_container" data-page="57">

<small>PRINCE2 PRINCIPLESPRINCE2 THEMES</small>

<small>Starting Up</small>

<small>a Project</small> <sup>Initiating</sup><small>a Project</small> <sup>Controlling</sup><small>a Stage</small>

<small>Closinga ProjectDirecting a Project</small>

<small>PlanningCorporate / Programme Management</small>

<small>Management Level</small>

<small>Delivery LevelDirection Level</small>

</div><span class="text_page_counter">Trang 58</span><div class="page_container" data-page="58">

Controlling

Enter Phase /

</div><span class="text_page_counter">Trang 59</span><div class="page_container" data-page="59">

Stage DescriptionRequirement

Understand what are required for the system-to-be in terms of functionalitiesand other constraints. This phase can split up into several smaller activities,for example: feasibility study, requirement capture, requirement analysis,requirement specification and requirement validation. It is also called assoftware specification.

design, algorithm design) that can be directly implemented.

to be validated in the next phase.Validation

Compare the implemented system with the specification to realize if thebuilt software can perform and give the correct outcomes as defined in thespecification document. At the end of this phase, the built system is ready todeliver and deploy.

</div><span class="text_page_counter">Trang 60</span><div class="page_container" data-page="60">

<small>Evolution</small>

</div><span class="text_page_counter">Trang 61</span><div class="page_container" data-page="61">

<small>Design Unit Tests </small>

<small>Specification </small>

<small>Architectural Design </small>

<small>Detailed Design </small>

<small>Implementation </small>

<small>System Testing Integration </small>

<small>Testing Unit Testing </small>

<small>Design Integration Tests </small>

<small>Design System Tests </small>

<small>Design Aceptance Tests </small>

<small>DomainEngineeringSelection/</small>

</div><span class="text_page_counter">Trang 62</span><div class="page_container" data-page="62">

<small>Requirement </small>

<small>Analysis </small>

<small>Design </small>

<small>Implemetation & Testing Customer </small>

<small>Validation Customer Communication </small>

<small>CodeTest</small>

</div><span class="text_page_counter">Trang 63</span><div class="page_container" data-page="63">

<small>TestingPlanning</small>

</div><span class="text_page_counter">Trang 67</span><div class="page_container" data-page="67">

<small>Software ProjectManagement</small>

<small>Software ProjectManagement</small>

<small>Software ProjectManagement</small>

<small>Software ProjectManagement</small>

<small>Software ProjectManagement</small>

<small>Software ProjectManagement</small>

<small>Software ProjectManagement</small>

<small>ITERATION</small>

</div><span class="text_page_counter">Trang 68</span><div class="page_container" data-page="68">

Phase Role

identify and evaluate quality factors.

The purpose of Organizational Modelling discipline is to understand theproblem by studying the existing organizational setting based onunderstanding services that motivate system requirements.Requirements

The purpose of Requirements Engineering discipline is to extend modelscreated previously by including the system to-be, modelled as one or moreactors.

The purpose of Architectural Design discipline is to construct the system’sarchitecture specification with the purpose of fit functional and non-functional requirements of the system by forming the dependencies betweenthe several identified sub-actors.

Detailed

</div><span class="text_page_counter">Trang 70</span><div class="page_container" data-page="70">

Structured Methods Agile Methods

4. Incremental model5. Spiral model6. PRINCE27. PMBOK8. Scrum9. XP

10. Lean development11. Kanban

12. RUP13. OpenUP14. EUP

<small>12131415</small>

</div><span class="text_page_counter">Trang 74</span><div class="page_container" data-page="74">

Association

</div><span class="text_page_counter">Trang 75</span><div class="page_container" data-page="75">

Client <sub>Administrator</sub>

Delete UserView Account

View HistoryCreate Account

Close AccountLogin

<<include>><<extend>>

</div><span class="text_page_counter">Trang 81</span><div class="page_container" data-page="81">

The depender depends on the dependee for the availability of a physical orinformational entity (Resource dependency), or carrying out an activity(Task dependency), or generating a certain state in the world (Goaldependency), or performing some task that achieves a quality (Qualitydependency).

Specifying a relationship between an end, and a means for achieving it. The"means" is stated in the form of a task and with the "end" is stated as a goal.In the graphical notation, the arrowhead points from the means to the end. Ifthere is more than one means to specify the different ways to obtain the end,an OR relation will be used.

Contribution<sup>Corresponding to means-end links where the end is a quality enables</sup><sub>expressing explicitly if the contribution is negative or positive (+,-).</sub>Task

Expressing the decomposition of a task into different intentional elements:goal, task, resource and quality. An AND relation will be used to illustrate atask is decomposed.

</div><span class="text_page_counter">Trang 82</span><div class="page_container" data-page="82">

Element Description Actor

Actors are used to model people, organizations, or systems that are players of some activities. Service Depender or Service Dependee, the main stakeholders for the Service, are instances of Actor in the context of service modelling. They are involved in the dependency relationship.

Service

Service is described as "an abstract set of functionalities that are provided by a specific actor" while "an actor can be an organizational entity… that uses or offers services" [21, 47]. Services need to fulfill goals and softgoals, achieve tasks, or furnish resources for some actors’ activities.

Quality Expectation and Threats

A Quality Expectation (QE) is a constraint of particular service through an agreement. A Threat describes an occurrence that can be negative for the proper fulfillment of a service. A service fulfillment is aimed to the satisfaction of a QE or help lowering the probability of occurrence of the threat by a series of softgoals, goals, tasks, and resources at tactical level.

</div><span class="text_page_counter">Trang 88</span><div class="page_container" data-page="88">

<small>- level: {governance, management}</small>

<small>Phase- life-cycle objective: String</small>

<small>0..*+cre a te s</small>

<small>+face s</small>

<small>+o btains+m ake sfulfills</small>

</div><span class="text_page_counter">Trang 90</span><div class="page_container" data-page="90">

Operational levelStrategic

Sevice Model

Strategic Dependency

Model

Strategic Rationale Model

<small>Refining</small>

</div><span class="text_page_counter">Trang 91</span><div class="page_container" data-page="91">

Strategic Rationale DiagramStrategic Dependency DiagramStrategic

LevelTactical LevelOperational Level

Strategic Services Diagram

</div><span class="text_page_counter">Trang 95</span><div class="page_container" data-page="95">

Phase Goal Setting

Aligning software development-based services with strategic business goals; identifying and specifying most stakeholders’ requirements, have a first approach of the environment scope, identify and evaluate threats and identify and evaluate quality factors.

Blueprinting

Producing a consistent architecture based on the identified software development-based IT services and their internal / operational behavior, eliminate riskiest features in priority and evaluate blueprints/prototypes to stakeholders.

Building <sup>Implementing the software development-based services that are in the </sup>backlog of each iteration and validate them; they are at the end of each iteration ready to be put in production.

Setuping Finalising production, delivering document, and training users. Operation <sup>Providing support to live services but also providing support for their </sup><sub>development in order to smoothen the production. </sub>

</div><span class="text_page_counter">Trang 97</span><div class="page_container" data-page="97">

Stage Goal

Evaluate

Examining and judging current and future use of IT services including strategy proposals, supply arrangements, considering internal and external pressures (technological changes, economic trends, social trends, and political influences)’ evaluating continuously, considering current and future business needs and objectives: competitive advantage and specific strategies.

Direct

Assigning responsibility and directing preparation and implementation of software development-based IT services, establishing sound behavior in IT services use through policies, properly plan transition of project to

operational status, encouraging culture of good IT governance, directing submission of proposals identifying needs.

Monitor

Monitoring and measuring software development-based IT services performance, assuring that performance is in accordance with plans and business objectives, ensuring that software development-based IT services conforms with external obligations (regulatory, legislation, common law, and contractual), ensuring that software development-based IT services conforms with internal work practices.

Plan

Covering the use of information and technology and how best it can be used in an organization to help achieve the organization’s goals and objectives. It also highlights the organizational and infrastructural form IT is to take in order to achieve the optimal results and to generate the most benefits from the use of software development-based IT services.

Deploy <sup>Identifying software development-based IT services requirements, acquiring </sup>the technology, and implementing it within the enterprise’s current business processes.

Deliver

Focusing on the delivery aspects of the software development-based IT services. It covers areas such as the execution of the software system within the IT system and its results, in addition to, the support processes that enable the effective and efficient execution of these IT systems.

Assess

Dealing with an enterprise’s strategy in assessing the needs of the enterprise and whether or not the current software development-based IT services still meets the objectives for which it was designed and the controls necessary to comply with regulatory requirements. Monitoring also covers the issue of an independent assessment of the effectiveness of software development-based IT services in its ability to meet business objectives and the enterprise’s control processes by internal and external auditors.

</div><span class="text_page_counter">Trang 98</span><div class="page_container" data-page="98">

<small>IT ServiceManagement</small>

<small>Actor</small>

</div><span class="text_page_counter">Trang 100</span><div class="page_container" data-page="100">

<small>IT ServiceManagement</small>

<small>IT servicesquality</small>

<small>Implements ITmanagementstructure</small>

<small>development& operationsContinuous</small>

<small>operateIT services</small>

<small>Dependency link</small>

Legend<small>:</small>

</div><span class="text_page_counter">Trang 102</span><div class="page_container" data-page="102">

<small>OperatorManagement</small><sup>IT Service</sup><small>Board</small>

<small>InfrastructureIT services</small>

<small>quality</small> <sup>Organizational</sup><small>structuresOrganization</small>

<small>strategiesImplements IT</small>

<small>development& operationsContinuous</small>

<small>operateIT services</small>

<small>prior-toLegend:</small>

</div><span class="text_page_counter">Trang 106</span><div class="page_container" data-page="106">

<small>IT Governance ProcessesEvaluate</small>

<small>KnowledgeManagementProcessesQualityManagementProcessesChangeManagementProcessesRiskManagementProcesses</small>

</div><span class="text_page_counter">Trang 107</span><div class="page_container" data-page="107">

TaskDefinition WorkProductDefinition GuidanceActivityPhase

</div><span class="text_page_counter">Trang 109</span><div class="page_container" data-page="109">

Estimating<small><< include >></small>

<small><< include >><< include >></small>

<small><< include >><< include >></small>

<small><< include >></small>

<small><< include >></small>

<small><< include >><< include >></small>

<small><< include >></small>

<small><< include >></small>

<small><< include >></small>

<small><< include >><< include >></small>

<small><< include >><< include >></small>

<small><< include >></small>

<small><< include >></small>

<small><< include >></small>

</div><span class="text_page_counter">Trang 110</span><div class="page_container" data-page="110">

Software Project and Process Governance

<small>ITPerformanceIT Plans</small>

<small>and PoliciesDirections for IT</small>

<small>Service-SpecificStrategic Rationale</small>

<small>DiagramIT</small>

</div><span class="text_page_counter">Trang 111</span><div class="page_container" data-page="111">

<small>Needsand Options</small><sup>Conditions</sup> <small>and Policies</small><sup>IT Plans</sup> <sup>Directions for IT</sup><sub>Investments</sub>

<small>IT Behavior</small>

<small>IT Performance[New iteration]</small>

</div><span class="text_page_counter">Trang 112</span><div class="page_container" data-page="112">

<small>StakeholdersIT Governance BoardIT Service Management Board</small>

<small>and Policies</small>

<small>Conditions and Options</small>

<small>Directions for ITInvestmentsStakeholder Needs</small>

<small>Service Pipeline</small>

<small>Strategic ServicesModel</small>

<small>Deployed Services</small>

<small>Service Realization</small>

</div><span class="text_page_counter">Trang 113</span><div class="page_container" data-page="113">

<small>IT Service Management Board</small>

<small>Service(s)to build</small>

<small>IT Governance BoardStakeholders</small>

</div><span class="text_page_counter">Trang 116</span><div class="page_container" data-page="116">

WorkProduct name Type Description IT Governance

Model <sup>WorkProduct A model consists of WorkProducts, Guidances, </sup>Text Documents... IT Plans and

Policies Document <sup>Text </sup>

Describing responsibility and directing preparation and implementation of software development-based IT services.

<small>PoliciesIT BehaviorIT PerformanceIT Governance</small>

<small>Services Model</small>

</div><span class="text_page_counter">Trang 117</span><div class="page_container" data-page="117">

WorkProduct name Type Description IT Management

Model <sup>WorkProduct </sup>

Describing the functional and non-functional

requirements of the services of IT in the organization at rationale level.

IT Performance WorkProduct <sup>Describing the performance of using software </sup><sub>development-based IT services in the organization. </sub>

<small>IT ManagementModel</small>

<small>IT PerformanceService-Specific</small>

<small>Strategic Rationale</small>

<small>IT RequirementsService(s) to build</small>

</div><span class="text_page_counter">Trang 118</span><div class="page_container" data-page="118">

Knowledge Management

Knowledge Management Board

<small>MechanismsInfrastructure</small><sup>KM</sup> <sup>Knowledge</sup><sup>Tacit</sup> <small>Knowledge</small><sup>Explicit</sup> <sup>KM Services</sup> <sup>KM Performance</sup>

<small>[New iteration]</small>

</div><span class="text_page_counter">Trang 119</span><div class="page_container" data-page="119">

<small>Knowledge Management BoardStakeholders</small>

<small>Develop</small> <sup>Preserve</sup><small>KM Infrastructure</small>

<small>KM Performance</small>

<small>Tacit Knowledge</small>

<small>KM Services</small>

</div><span class="text_page_counter">Trang 121</span><div class="page_container" data-page="121">

WorkProduct name Type Description KM

Infrastructure <sup>WorkProduct </sup>

Including organization culture, organization structure, information technology infrastructure, common knowledge, and physical environment.

KM Mechanisms WorkProduct <sup>Organizational or structural means used to promote </sup><sub>knowledge management. </sub>KM Technologies WorkProduct <sup>Information technologies that can be used to facilitate </sup><sub>knowledge management. </sub>

Tacit Knowledge WorkProduct Knowledge that has not been documented. Explicit

Knowledge <sup>WorkProduct Knowledge that has been documented. </sup>

KM Services WorkProduct <sup>Describing the services of knowledge management in </sup><sub>the enterprise. </sub>KM Performance WorkProduct <sup>Describing the performance of managing knowledge </sup><sub>in the enterprise. </sub>

<small>Explicit Knowledge</small>

<small>Tacit Knowledge</small>

</div>

×